所以,我想用pythonnumpy库创建一个500x500的白色图像,尽管我可以在photoshop中轻松地完成。下面的代码是有效的,图像是白色的(因为我用cv2.imsave函数保存了图像,后来我用windows photos viewer打开了它)。但是当我尝试使用cv2.imshow函数显示它时,会显示一个黑色图像。为什么?这是cv2的缺点吗?在
import cv2
import numpy as np
img = np.arange(500*500*3)
for i in range(500*500*3):
img[i] = 255
img = img.reshape((500, 500, 3))
cv2.imwrite("fff.jpg", img)
cv2.imshow('', img)
注意到,{{CD1>}模块是围绕C++ OpenCV包的一个薄薄包装。这是它的文档,并且与它们接口的python包装器函数的签名不会改变。从documentation-
默认情况下,numpy数组初始化为
np.int32
或np.int64
类型(这取决于您的计算机)。如果希望数组不做任何更改地显示,则应确保将它们作为8位无符号传递。对你来说,像这样-或者,在初始化数组时,请执行以下操作-
^{pr2}$相关问题 更多 >
编程相关推荐