python - "cv2.imshow ()"函数有问题

标签 python python-2.7 opencv numpy matplotlib

我在 python 2.7 中安装了 openCV 和 numpy 库。

我已经使用命令 import cv2import 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/

相关文章:

python - 无法在不同计算机上使用套接字传输文件

python - 为什么单击不同按钮时我的按钮单击事件处理程序会停止?

python - 如何将查询结果插入 BigQuery 前缀表

python - 共存 Python 2 和 3 的包管理

c# - 使用emgu cv将两个子图像添加到一个新图像中

c++ - Visual Studio 2012 - 无法以 32 位运行项目(0xc000007b 错误)

python - 有没有办法从后记文件中提取文本信息? (.ps.eps)

python - 带有 flask 的 mod_wsgi 配置

c++ - 如何使用 Matlab 函数 ordfilt2 到 C++ 和 OpenCV

python - Django case when else in filter