关于python下cv.waitKey无响应的原因及解决方法

yipeiwu_com6年前Python基础

按下键的时候,焦点要落在窗口上,不能落在cmd窗口上。

另外,一般在imshow()后要使用waitKey(),给图像绘制留下时间,不然窗口会出现无响应情况,并且图像无法显示出来。

int waitKey(int delay=0) 
- 延时delay = 0 函数则延时无限长,必须有键按下才继续执行。 
- 延时delay > 0 函数返回值为按下的键的ASCII码值,超时则返回-1。
OpenCV: waitKey
waitKey 
Waits for a pressed key.
C++: int waitKey(int delay=0) 
Python: cv2.waitKey([delay]) → retval

Parameters: delay – Delay in milliseconds. 0 is the special value that means “forever”.
The function waitKey waits for a key event infinitely (when \texttt{delay}\leq 0 ) or for delay milliseconds, when it is positive. Since the OS has a minimum time between switching threads, the function will not wait exactly delay ms, it will wait at least delay ms, depending on what else is running on your computer at that time. It returns the code of the pressed key or -1 if no key was pressed before the specified time had elapsed.
Note 
This function is the only method in HighGUI that can fetch and handle events, so it needs to be called periodically for normal event processing unless HighGUI is used within an environment that takes care of event processing.
Note 
The function only works if there is at least one HighGUI window created and the window is active. If there are several HighGUI windows, any of them can be active.

也就是说必须在有窗口显示的情况下,waitKey才有作用,否则无效。

比如调用cv.waitKey(0),如果此时没有活动的窗口,该函数立刻返回-1

以上这篇关于python下cv.waitKey无响应的原因及解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

用Anaconda安装本地python包的方法及路径问题(图文)

用Anaconda安装本地python包的方法及路径问题(图文)

Anaconda确实带来了很多方便,但是之前也过多的依赖了conda自带的一键下载python包的功能。这不,这几天突然要用FastFM这个包,无奈conda里没有,于是只能从githu...

matplotlib实现区域颜色填充

matplotlib实现区域颜色填充

本文实例为大家分享了matplotlib实现区域颜色填充的具体代码,供大家参考,具体内容如下 import matplotlib.pyplot as plt import nump...

pandas表连接 索引上的合并方法

如下所示: left1 = pd.DataFrame({‘key':[‘a','b','a','a','b','c'],'value':range(6)}) right1 = pd...

Python中关于Sequence切片的下标问题详解

前言 在python中, 切片是一个经常会使用到的语法, 不管是元组, 列表还是字符串, 一般语法就是: sequence[ilow:ihigh:step] # ihigh,step...

python中reload(module)的用法示例详解

前言 本文主要给大家介绍了关于python中reload(module)用法的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 1、Python2中可以和Pyt...