Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将图像中的零填充自动添加到预期形状?_Python_Tensorflow - Fatal编程技术网

Python 如何将图像中的零填充自动添加到预期形状?

Python 如何将图像中的零填充自动添加到预期形状?,python,tensorflow,Python,Tensorflow,我有一个形状为200x250x3的图像。我想在图像的顶部、左侧、右侧和底部添加零填充,以实现目标形状256x256x3。我怎样才能在tensorflow中完成它?我找到了函数tf.pad,但它需要计算填充大小,而我的任务必须自动计算它 对于将图像填充到目标形状,可以使用。如果图像大于目标大小,则此操作将裁剪图像;如果图像较小,则使用零填充(均匀地在所有边上) >>> a = tf.ones([3, 4, 3]) >>> tf.image.resize_ima

我有一个形状为
200x250x3
的图像。我想在图像的顶部、左侧、右侧和底部添加零填充,以实现目标形状
256x256x3
。我怎样才能在tensorflow中完成它?我找到了函数tf.pad,但它需要计算填充大小,而我的任务必须自动计算它


对于将图像填充到目标形状,可以使用。如果图像大于目标大小,则此操作将裁剪图像;如果图像较小,则使用零填充(均匀地在所有边上)

>>> a = tf.ones([3, 4, 3])
>>> tf.image.resize_image_with_crop_or_pad(a, 5, 5)
<tf.Tensor 'Squeeze:0' shape=(5, 5, 3) dtype=float32>
a=tf.one([3,4,3]) >>>tf.image.使用裁剪或焊盘(a、5、5)调整图像大小
如果要使用填充,可以定义一个函数,使用所需大小和张量形状之间的差值()计算填充量,并填充差值,检查填充。

太好了。那是我要找的。你能告诉我如何将结果从张量转换成图像吗。因为我的期望是image@Jame如果你的意思是在图形运行时保存/显示结果,我不确定你将张量转换为图像是什么意思。它可能会给您一个图像形状的numpy数组,您可以使用matplotlib将其保存到磁盘或打印。如果你想让tensorflow对张量进行编码,我从来没有用过,但似乎已经用过了。谢谢。我的意思是我的输入是RGB图像。使用tf函数后,它返回一个张量类型。因此,我的预期输出也与输入类型相同,即RGB@Jame哦,tensorflow只适用于张量,一旦图形运行,结果可以作为numpy数组接收。将具有相同的形状(高度、宽度、通道)。您需要从使用的库中将该numpy数组转换为RGB图像。比如说,如果您使用的是opencv,它将numpy用作底层数据结构,您可以使用
cv2.imwrite()
cv2.imshow()
将它们转换为人类可读的格式。如果您正在使用枕头(PIL),您可以使用
img=Image.fromarray()
谢谢。我想我通过使用tensorflow会话
init=tf.initialize\u all_variables()sess=tf.session()sess.run(init)
解决了这个问题。谢谢你的帮助。我有个小问题。在我们使用填充达到目标结果后,是否可以从填充图像中恢复原始图像(如相反的问题)?
>>> a = tf.ones([3, 4, 3])
>>> tf.image.resize_image_with_crop_or_pad(a, 5, 5)
<tf.Tensor 'Squeeze:0' shape=(5, 5, 3) dtype=float32>