我正在尝试使用OpenCV显示图像。我有以下非常基本的代码:
import cv2
img = cv2.imread('myimage.png', 0) # Reads a Gray-scale image
img2 = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
cv2.imshow("window", img2)
正确打开窗口,尺寸正确,但它是灰色的 - 没有图像。正确读取图像(在调试器中查看img和img2,我看到了预期的值,而不仅仅是一个阴影)。
注意:显然我打算在显示图像之前进行一些图像处理,但首先我需要能够看到图像......
答案 0 :(得分:13)
好的,明白了。
原来我需要让OpenCV开始处理事件,它没有处理WM_PAINT事件。添加cv2.waitKey()修复此问题。
答案 1 :(得分:0)
有时图像大小足够imshow()
。
尝试通过以下方式调整图像大小:
dimensions = (400,800)
image= cv2.imread('myimage.png', 0)
resized = cv2.resize(image, dimensions, interpolation = cv2.INTER_AREA)
cv2.imshow("window", resized )