Python 3 に OpenCV を設定したときの動作確認用のサンプルコードです。
USB カメラを接続して動作確認をします。
下記の環境1、2のいずれでも動作することを確認しています。
環境1:Windows 10 + Anaconda + Python 3
環境2:Raspberry Pi (Raspbian, Buster) + Python 3
いずれも、OpenCV インストール済み
背景
Python や OpenCV などのインストールを完了したら、動作確認が必要になります。
そこで、最もベーシックな動作確認として、USB カメラ/ウェブカメラを接続してライブ画像を表示するサンプルコードをまとめておきます。
Python、OpenCV、周辺機器の動作確認が、コピー&ペースト程度の最短手順でできるよう意図しています。
使い方
① 先に USB カメラ等を PC (または、ラズパイ)につなげておいてください。
② フォルダを作成して、その中に “python-opencv-test1.py” 等の名前のテキストを作ってください。
③ ②のテキストに下記のサンプルコードを貼りつけて保存してください。
④ コマンドプロンプトから、②のスクリプトを実行してください。(python python-opencv-test1.py + [enter] 等とする。)
⑤ ライブ画像の表示中、キーボードで [enter] キーか、[q] キーを押すと終了します。
サンプルコードの説明
・ 最初に import cv2 として、OpenCV をインポートします。
・ つぎに、USB カメラを起動します。
・ while 文で、カメラから1フレームずつ画像を呼び出します。
呼び出した画像はウィンドウに表示します。
・ キーイベントを常時モニタします。
キーイベントを取得して、[enter] か [q] キーが押された場合は、break して while 文を終了します。
・ 最後は、カメラとウィンドウの終了処理を行っています。
まとめ
Python で OpenCV を使う際のサンプルコードをまとめました。
なお、他にも Python 環境で OpenCV をインストールする手順など、以下の関連リンクににまとめています。もしも関心があるようでしたら、活用してみてください。
関連リンク
・ OpenCV がインストールできないとき 【Anaconda】:Windows 10 の場合
・ 初期設定のまとめ 【OpenCV & Raspberry Pi】:Raspberry Pi の場合
・ 接続中のカメラ番号を抽出する 【OpenCV & Python】
サンプルコード: OpenCV でライブ画像を表示
import cv2
cap1 = cv2.VideoCapture(0)
if cap1.isOpened():
flag1 = True
else:
flag1 = False
while flag1:
result1, frame1 = cap1.read()
if not result1:
break
cv2.imshow('camera1', frame1)
key1 = cv2.waitKey(1)
if (key1 == 13) or (key1 == 113):
break
cap1.release()
cv2.destroyWindow('camera1')