Setting up OpenCV Python (CV)
OpenCVをPython言語を使用して開発するための環境設定の方法を解説します。
Webカメラの画像を取得し・表示するアプリケーションを例に、設定方法を説明します。
1. コーディング
OpenCVが正常にインストールされていればPythonを使う場合には特に設定は必要ありません。
うまくいかない場合は、もう一度インストール編を確認して下さい。
それでは早速コーディングを行います。
以下のコードを適当なテキストエディタでcamera.pyに入力して下さい。
2. おわりに
これで、OpenCVをPython言語で開発できました。
Pythonでは非常に簡単に、開発できることがわかったと思います。
動作確認として、Webカメラから画像を取得しウィンドウに表示するアプリケーションを作成しました。
この取得した画像に処理を加えることで様々な用途に使用することができます。
OpenCVは高度な処理が簡単に使用できますので、色々試して見て下さい。
コーディングができたら、プログラムを実行します。
▶ Windowsの場合
camera.pyをダブルクリックして下さい。
▶ Ubuntu / Raspbianの場合
コードの解説を行います。
-
1行目
Linuxで動作させる場合にはこの記述を行って下さい。
-
2行目
必要なモジュールをインポートします。
-
6行目
CaptureFromCAMの初期化を行います。
-
7行目
キャプチャした画像を表示するウィンドウを設定します。
-
9-15行目
Webカメラの画像をキャプチャしウィンドウに表示します。
キー入力があるまで処理を続けます。
-
10行目
Webカメラから画像を取得します。
-
11行目
取得した画像をウィンドウに表示します。
-
13-15行目
キー入力を30 ms*1待ちます。
*1 ほとんどのWebカメラは30 fpsで動作するので、30 ms待っています。お使いのカメラに合わせて調整してください。
キー入力があった場合に、frame.pngというファイルに画像を保存し、ループから脱出します。
-
17行目
全てのウィンドウを破棄します。
-
# -*- coding: utf-8 -*-
-
import cv2.cv as cv
-
-
if __name__=="__main__":
-
-
cap = cv.CaptureFromCAM(0)
-
cv.NamedWindow("Capture", 1)
-
-
while True:
-
frame = cv.QueryFrame(cap)
-
cv.ShowImage("Capture", frame)
-
-
if cv.WaitKey(30) >= 0:
-
cv.SaveImage("frame.png", frame)
-
break
-
-
cv.DestroyAllWindows()
$ python camera.py
プログラムを実行すると、Webカメラから取得された画像がウィンドウに表示されます。
終了するときはキーボードから適当なキーを押して下さい。
すると、画像が保存されプログラムが終了します。
これで動作確認は終了です。
