我在 python 2.7 中安装了 openCV 和 numpy 库。
我已经使用命令 import cv2
和 import numpy
对它们进行了测试,并且编译成功。
但是当我使用 cv2.imshow('frame', ----)
函数时,它显示一个窗口但不显示图像。并且显示“框架没有响应”。
因此,我尝试使用 matplotlib 函数来显示图像并且成功了。
我在第二种情况下插入了 cv2.imshow
函数并且它起作用了。
版本 [Python-2.7.10, OpenCV-2.4.11]
下面是代码,
情况 1:不工作,显示窗口但不显示图像(显示 FRAME IS NOT RESPONDING)
import cv2
import numpy
img = cv2.imread('a.jpg')
cv2.imshow('FRAME',img)
案例二:工作
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import numpy as np
import cv2
img = mpimg.imread('a.jpg')
img2 = cv2.imread('b.jpg')
cv2.imshow('FRAME',img2)
plt.imshow(img)
plt.show()
最佳答案
imshow后面应该是waitKey显示指定毫秒图像的函数。否则,它不会显示图像。例如,waitKey(0) 将无限显示窗口,直到任何按键按下(适用于图像显示)。 waitKey(25) 将显示一帧 25 毫秒,之后显示将自动关闭。 (如果你把它放在一个循环中读取视频,它会逐帧显示视频)。这是一个工作示例:
import cv2
img = cv2.imread('a.jpg')
cv2.imshow('FRAME', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
关于python - "cv2.imshow ()"函数有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41067007/