0


Opencv之cv2.waitKey()

函数介绍

cv2.waitKey(delay_time)

这个函数主要用于同图片显示搭配使用。在一段程序运行的过程中突然出现这么一个函数,可以理解为程序将暂停delay_time后,再继续执行后面的代码。

参数介绍

  • delay_time - 若值为0,意味着一直等待按键的按下,只有按键按下之后后面的程序才会继续执行- 若值为正整数, 假设delay_time=30,程序将在30ms内等待按键的按下,若期间有按键按下,则立刻跳出等待执行后面的程序,反之,需要完整等候30ms再继续执行后面的程序

返回值

返回按键的ASCII值。若没有按键按下则返回-1。

示例

通过3个示例让大家对函数有更加深刻得认识

示例1

同图片显示搭配使用,等待任意按键的按下,即delay_time=0,最终效果是按下任意按键后图片关闭

import cv2
#图片读取函数defcv_read(path):
    ret=cv2.imread(path)if ret isNone:print("Error!")
        exit()return ret
#图片显示函数defcv_show(name,image):#创建窗口,大小可改变
    cv2.namedWindow(name,cv2.WINDOW_NORMAL)
    cv2.imshow(name,image)#等待任意按键按下
    cv2.waitKey(0)
    cv2.destroyAllWindows()#图片路径 建议将图片放到项目文件下
path='jiaoyan.jpg'
img=cv_read(path)
cv_show('image',img)

示例2

延时后继续执行代码,将上面的delay_time 更换为10000后,图片将等待10秒后关闭,若在10秒内按下任意按键图片就会立刻关闭

import cv2
defcv_read(path):
    ret=cv2.imread(path)if ret isNone:print("Error!")
        exit()return ret
defcv_show(name,image):
    cv2.namedWindow(name,cv2.WINDOW_NORMAL)
    cv2.imshow(name,image)
    cv2.waitKey(10000)
    cv2.destroyAllWindows()
path='jiaoyan.jpg'
img=cv_read(path)
cv_show('image',img)

示例3

import cv2
defcv_read(path):
    ret=cv2.imread(path)if ret isNone:print("Error!")
        exit()return ret
defcv_show(name,image):
    cv2.namedWindow(name,cv2.WINDOW_NORMAL)
    cv2.imshow(name,image)# 持续检测按键情况whileTrue:# 当按键为‘q’时才能够关闭所有窗口if cv2.waitKey(1)&0xFF==ord('q'):break
    cv2.destroyAllWindows()
path='C:\\Users\\86185\\opencv\\jiaoyan.jpg'
img=cv_read(path)
cv_show('image',img)

结语

希望通过3个示例能让大家对cv2.waitKey()有初步的认识


本文转载自: https://blog.csdn.net/weixin_73004718/article/details/140738523
版权归原作者 xdy517 所有, 如有侵权,请联系我们删除。

“Opencv之cv2.waitKey()”的评论:

还没有评论