我正在尝试使用cv2.waitKey(0)读取键值,但它不起作用。它永远等待。我使用cv2.waitKey(1)检查它返回的内容,无论我按哪个键,它总是255。
while True:
key = cv2.waitKey(0)
print(key)
无论我按哪个键,上面的代码都不起作用。
while True:
key = cv2.waitKey(1) & 0xFF
print(key)
if key == ord('q'):
break
保持打印255,如果我按“q”,则不会中断。
答案 0 :(得分:9)
我找到了解决方案。 看起来它需要打开一个命名窗口才能读取键值。所以我尝试了下面的方法并且有效。
cap = cv2.VideoCapture(0)
cv2.namedWindow('frame', cv2.WINDOW_NORMAL)
while(True):
ret, frame = cap.read()
cv2.imshow('frame',frame)
key=cv2.waitKey(0) & 0xFF
print(key)
if key == ord('q'):
break
cv2.destroyAllWindows()