OpenCV

waitKey

2023-03-08

cv2.waitKey[[opencv-python]] 中用于等待按键事件的函数。

语法

cv2.waitKey(delay)

  • delay: 等待时间,单位为毫秒,0 表示无限等待

使用

通过 [[imshow]] 显示图像或视频后等待按键事件:

import cv2
cv2.imshow("image", image)
cv2.waitKey(0)

默认情况下 waitKey(0) 会无线等待,直到按下任意按键,但在看处理视频流时,如果希望按指定按键退出,稍加修改就可以实现:

import cv2
while True:
cv2.imshow("video", frame)
# 按 q 键退出
if cv2.waitKey(1) & 0xFF == ord("q"):
break

如果希望按 ESC 键退出,可以修改为:

if cv2.waitKey(1) & 0xFF == 27:
break
  • 空格:32
  • ESC:27
  • Enter:13

或者设置多个按键执行不同操作:

while True:
cv2.imshow("video", frame)
key = cv2.waitKey(1) & 0xFF
if key == ord("q"):
break
elif key == ord("s"):
# 保存图像
cv2.imwrite("image.png", image)
elif key == 32:
# 暂停
cv2.waitKey(0)