2017-10-20 23 views
1

执行tf.extract_image_patches在哪里?我检查了我找不到的tensorflow库。执行tf.extract_image_patches

文件tensorflow/core/kernels/extract_image_patches_op.cc不包含实现。

回答

1

这是一个有趣的问题。路径如下:

  • 的Python tf.extract_image_patches函数在所生成的文件tensorflow/python/ops/gen_array_ops.py,这将调用"ExtractImagePatches"天然运算实现。

  • 对于CPU和GPU设备,此操作由中的ExtractImagePatchesOp实现。主要电话是functor::ExtractImagePatchesForward ...

  • ...它定义在core/kernels/extract_image_patches_op.h。实际的逻辑被委托给输入张量的::extract_image_patches()方法。张量的类型为TTypes<T, 4>::ConstTensor,这是一个Eigen::TensorMapcore/framework/tensor_types.h的类型定义。

在这一点上,人的失控tensorflow源基地,因为Eigen是从第三方eigen libraryGitHub mirror)。它的源代码有点non-trivially downloaded and linked张量流,但现在我们有兴趣在Eigen::TensorMap::extract_image_patches()功能。

注意Eigen库的特定版本可以在不同的不同构建tensorflow,你应该在巴泽尔配置检查。