Я не знаю вспомогательной функции, но если вы хотите увидеть все фильтры, вы можете упаковать их в одно изображение с некоторыми причудливыми видами использования tf.transpose
.
Так что если у вас есть тензор, что это images
х ix
х iy
х channels
>>> V = tf.Variable()
>>> print V.get_shape()
TensorShape([Dimension(-1), Dimension(256), Dimension(256), Dimension(32)])
Таким образом, в этом примере ix = 256
, iy=256
, channels=32
первый кусочек от 1 изображения и удалить image
измерение
V = tf.slice(V,(0,0,0,0),(1,-1,-1,-1)) #V[0,...]
V = tf.reshape(V,(iy,ix,channels))
Затем добавьте пару пикселей нулей вокруг изображения
ix += 4
iy += 4
V = tf.image.resize_image_with_crop_or_pad(image, iy, ix)
Тогда перекроить так, что вместо 32 каналов у вас есть 4x8 каналы, позволяет называть их cy=4
и cx=8
.
V = tf.reshape(V,(iy,ix,cy,cx))
Теперь сложная часть. tf
, похоже, возвращает результаты в C-порядке, по умолчанию numpy.
Текущий порядок, если уплощенный, можно было бы перечислить все каналы для первого пикселя (итераций по cx
и cy
), прежде чем списку каналов второго пиксела (приращение ix
). Переход по строкам пикселей (ix
) до приращения в следующую строку (iy
).
Мы хотим, чтобы заказ, который выкладывал изображения в сетке. Итак, вы переходите по строке изображения (ix
), прежде чем ступить по ряду каналов (cx
), когда вы попадаете в конец ряда каналов, вы переходите к следующей строке на изображении (iy
), и когда вы закончите или строки в изображении, которое вы увеличиваете до следующей строки каналов (cy
). так:
V = tf.transpose(V,(2,0,3,1)) #cy,iy,cx,ix
Лично я предпочитаю np.einsum
для фантазии транспонирования, для удобства чтения, но это не в tf
yet.
newtensor = np.einsum('yxYX->YyXx',oldtensor)
во всяком случае, теперь, когда пиксели в нужном порядке, можно смело расплющить его в 2d тензором:
# image_summary needs 4d input
V = tf.reshape(V,(1,cy*iy,cx*ix,1))
попробовать tf.image_summary
на том, что вы должны получить сетку маленьких изображений.
Ниже приведено изображение того, что можно получить после следующих шагов здесь.

Спасибо за ваш ответ, я застрял на транспонированной части. Я закончил использование [немного другой версии] (https://gist.github.com/panmari/4622b78ce21e44e2d69c), так как я в порядке с просмотром только первых нескольких сверток (мне не нужны все они собраны в сетка). Сетку трудно проверить на тензометрическом щите. – panmari
Мне кажется, что последние fy и fx, которые вы написали, фактически являются cy и cx – jean
. Более того, вы можете передать только тензор 4D на 'tf.image_summary', поэтому вам придется изменить форму V = tf.reshape (V, (1,4 * 256,8 * 256,1)) ' – jean