2017-10-27 15 views
1

cv2.waitKey(0)を使用してキー値を読み取ろうとしていますが、機能しません。永遠に待つ。私はcv2.waitKey(1)を使ってそれが何を返すかを確認し、どのキーを押しても常に255であった。cv2.waitKeyはすべてのキーで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'を押すと中断しません。

答えて

5

解決策を見つけました。 キー値を読み取るために名前付きウィンドウが開かれているように見えます。だから私は次のことを試してみました。

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() 
+0

私は実際に回答を作成していました。よくやった。 – ZdaR

+0

ありがとうございました:) – janu777

関連する問題