python - 如何在 tensorflow 中将图像张量转换为numpy数组?

标签 python arrays numpy tensorflow opencv

我正在训练CNN以生成图像。所有图像的类型均为张量。我希望将它们转换为numpy数组,然后可以使用opencv处理它们。
我知道.numpy()方法,它将我的张量转换成一个numpy数组,但是形状仍然是张量。我无法在cv2中使用它。
这是我的代码:

p=model_(x) 
s=p.numpy()
print(s.shape)
cv2.imwrite("hello.jpg",s)
(1,183,275,3),这是使用.numpy()生成的数组的形状,如何更改其形状以保留输出图像?

最佳答案

您需要摆脱第一个dim(批处理),只需对reshape使用 slice 即可。

s=p.numpy()
print(s.shape)
cv2.imwrite("hello.jpg",s.reshape(s.shape[1:]))

关于python - 如何在 tensorflow 中将图像张量转换为numpy数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63705534/

相关文章:

python - Numpy 子数组的外部添加

c++ - 使用指针的数组长度

java - LinkedList 中重复错误

Python 自定义 Zipf 数字生成器性能不佳

python - 在 BeagleBone Black 上使用 numpy(不是 scipy!)编写一个 butterworth 过滤器

python - 使用具有稀疏和密集矩阵的 sklearn RandomizedPCA 时的不同结果

python - 我如何在django中没有任何 View 的情况下调用html模板

python - 有没有办法将仅包含一个元素的列表与列表的所有其他元素组合起来?

python - 从空格分隔的 .dat 文件获取日期时间 - python/pandas

python - 在 Reddit 上查找用户 karma