繁体   English   中英

if cv2.waitKey(1) 有 2 种情况

[英]if cv2.waitKey(1) with 2 cases

我在用着

if cv2.waitKey(1) & 0xFF == ord('q'):

退出程序,但我想将输入类型分为两种情况,例如:如果按“q”则退出,否则,如果按“d”则执行某些操作。 我尝试使用 elif 但无法正常工作,因为程序仍在等待“q”。


另一个问题是:如果我想使用超时,以防万一你不按任何按钮使用 cv2.waitKey(1) & 0xFF == ord('q'),我该怎么做?

伪代码*

if timeout:
   if cv2.waitKey(1) & 0xFF == ord('q'):
      break
else:
   print("no interaction")
   do something

有任何类型的变量(超时)可以做到这一点吗?

感谢帮助。

这会等待一个键被按下并将其存储在key中,您可以在您的条件下使用键码,如果在 1000 毫秒内没有按下任何键(k 将为 -1),它将退出。

k = cv2.waitKey(1000)
if k == -1:
    cv2.destroyAllWindows()
elif k == ord('a'):
    print("a key")


cv2.waitKey(0)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM