我试图用TensorFlow在同一张图片中提取一组2D地标周围的多个补丁。
[batch_size, num_landmarks, 2]
以及输入图像的形状张量
[batch_size, num_rows, num_cols, num_channels]
[batch_size, num_landmarks, patch_rows, patch_cols, num_channels]
.
现在我们可以假设
batch_size=1
如果是这样,以下代码将执行上述操作:
im = tf.tile(im, (num_landmarks, 1, 1, 1))
patches = tf.image.extract_glimpse(im, (patch_cols, patch_rows), landmarks, centered=False, normalized=False)
我基本上重复输入图像的次数,因为我有地标,然后提取了一瞥。这当然是疯狂的,当我有很多地标,所以我想知道是否有更好的方法。
编辑:
tf.gather_nd
可以做到这一点,所以我正在建立索引,提取补丁。