首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >cv2.waitKey()

cv2.waitKey()

作者头像
狼啸风云
修改2022-09-03 21:50:21
修改2022-09-03 21:50:21
2.4K0
举报

cv2.waitKey接口

代码语言:javascript
复制
Python: cv2.waitKey([delay]) → retval
代码语言:javascript
复制
Parameters: 
delay – Delay in milliseconds. 0 is the special value that means “forever”.
代码语言:javascript
复制
The function waitKey waits for a key event infinitely (when delay <= 0 ) or for delay milliseconds, when it is positive. 
It returns the code of the pressed key or -1 if no key was pressed before the specified time had elapsed.
代码语言:javascript
复制
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.

test

  • code 1
代码语言:javascript
复制
import cv2

def test():
    lena = cv2.imread('lena.jpg')
    cv2.imshow('image', lena)
    cv2.waitKey(0)
    print "I'm done"

if __name__ == '__main__':
    test()

图片显示着,直到你按下任意一个键,才被关掉,打印出I'm done

  • code 2
代码语言:javascript
复制
import cv2

def test():
    lena = cv2.imread('lena.jpg')
    cv2.imshow('image', lena)
    keycode = cv2.waitKey(1000)
    print keycode
    print "I'm done"

if __name__ == '__main__':
    test()

结果图片只显示1秒,如果此期间你按下一个键,比如键a,那么将打印出

代码语言:javascript
复制
97
I'm done

如果在图片显示时,不按键,则将打印出

代码语言:javascript
复制
-1
I'm done
  • code 3
代码语言:javascript
复制
import cv2

def test():
    lena = cv2.imread('lena.jpg')
    while True:
        cv2.imshow('image', lena)
        if cv2.waitKey(1) & 0xFF == ord('q'):
            print "I'm done"
            break;

if __name__ == '__main__':
    test()

运行代码,会显示一张图片,当你按下q键时,显示图片的窗口被关掉,并打印出I'm done,结束程序。

关于为什么要有0xFF:

代码语言:javascript
复制
On some systems, waitKey() may return a value that encodes more than just the ASCII keycode. 
On all systems, we can ensure that we extract just the ASCII keycode by reading the last byte from the return value like this: 
keycode = cv2.waitKey(1)
if keycode != -1: 
  keycode &= 0xFF
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年09月18日,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • cv2.waitKey接口
  • test
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档