我有张量[批次,高度,宽度,深度]的图像,我想使用ksize=5x5
和stride=1x1
从每个批次和每个深度中提取补丁。
tf.extract_image_patches(images=images, ksizes=[1, 5, 5, 1], strides=[1, 1, 1, 1], rates=[1, 1, 1, 1], padding='same')
现在问题是当输入张量的深度不同时,我会得到不同的结果,但我使用相同的图像。 案例1:输入张量,一批图像[4,28,28,1]产生输出张量[4,28,28,25]。
案例2:输入张量,一批图像,[4,28,28,8]产生输出张量[4,28,28,200]。
请注意,案例1 [0,:,:,]中的图像与案例2 [0,:,:,0]相同。
我认为Case 1 [0,:,:,]的输出张量值与Case 2 tensor [0,:,:,0:25]的值相同。
但是当我使用case1 == case 2
检查矩阵时,我发现我的假设是错误的,返回false。
当输入张量包含多于1个没有循环的深度时,任何想法如何产生与情况1相同的结果?
答案 0 :(得分:0)
不要case1 == case2
;使用tf.equal(case1, case2)
代替创建一个操作,该操作在运行时将评估它们是否相等。