OpenCVのwaitKey
関数は、キーボード入力を待ち受ける関数で、画像処理や動画処理において非常に重要な役割を果たします。この記事では、PythonとOpenCVを使用してwaitKey
関数の使い方とその仕組みについて詳しく解説します。
waitKey関数の基本
waitKey
関数は、指定した時間だけキーボードの入力を待ち、キーが押された場合はそのキーのASCIIコードを返します。具体的な使用例は以下の通りです。
import cv2
while True:
# 何らかの処理...
if cv2.waitKey(1) & 0xFF == ord('q'):
break
上記のコードでは、cv2.waitKey(1)
が1ミリ秒間キーボード入力を待ち、その間にq
キーが押された場合、無限ループから抜け出します。
waitKey関数の応用
waitKey
関数は、さまざまなキー入力に対応することができます。例えば、以下のコードでは、s
キーが押されたときに画像を保存します。
import cv2
img = cv2.imread('input.jpg')
cv2.imshow('image', img)
k = cv2.waitKey(0)
if k == ord('s'):
cv2.imwrite('output.jpg', img)
また、waitKey
関数は、キーボードからの複数の異なるキー入力を待つことも可能です。
import cv2
while True:
# 何らかの処理...
pressedKey = cv2.waitKey(1) & 0xFF
if pressedKey == ord('q'):
break
elif pressedKey == ord('w'):
print('w is pressed')
このように、waitKey
関数を使うことで、キーボード入力に基づいてプログラムの動作を制御することが可能になります。
まとめ
PythonとOpenCVのwaitKey
関数は、キーボード入力を待ち受けるための強力なツールです。画像や動画の表示、保存、処理の制御など、さまざまな場面で活用できます。この記事が、waitKey
関数の理解と使用に役立つことを願っています。Happy coding!.