我正在训练CNN生成图像。所有图像的类型都是张量。我希望它们被转换成numpy数组,然后我可以使用opencv处理它们。
我知道.numpy()
方法,它将我的张量转换为numpy数组,但形状仍然是张量。我不能让它在cv2中工作。
这是我的代码:
p=model_(x)
s=p.numpy()
print(s.shape)
cv2.imwrite("hello.jpg",s)
(1,183275,3(,这是使用.numpy()
生成的阵列的形状,如何更改其形状以保留输出图像?
您需要去掉第一个dim(批(,只需使用带reshape
的切片。
s=p.numpy()
print(s.shape)
cv2.imwrite("hello.jpg",s.reshape(s.shape[1:]))