03-3258-1238
03-3258-1238平日9:00 ~ 18:00(土日祝日除く)
OpenCVには、解像度、明るさ、コントラスト、色相、ホワイトバランスなどを始めとした、カメラの設定を確認、変更するコマンドが用意されています。 本記事では、それらのコマンドの使い方を解説します。
画像処理ライブラリ「OpenCV」のインストールがまだという方は、こちらもご確認ください。 初めてのOpen CV(画像処理ライブラリ)ガイド
カメラの設定を確認するためのコマンドはget()です。
例えば、取得画像の解像度(横)の値を確認したい場合、画像の幅を設定するパラメータが、CAP_PROP_FRAME_WIDTH なので、以下のようなコマンドで設定の値を取得することができます。
cap.get(cv2.CAP_PROP_FRAME_WIDTH)
コマンドの"cap”の部分は、VideoCaptureコマンドで指定したカメラのオブジェクト名です。(カメラのオブジェクト名とは) また、”cv2”の部分は、importコマンドで読み込んでいるライブラリ名で、PythonのAPIの場合はOpenCVのバージョンに関わらず、”cv2”となります。 そして、"CAP_PROP_FRAME_WIDTH"の部分に、OpenCVのカメラ設定パラメーター一覧に記載したパラメータを挿入すると各項目の設定値がわかります。
また、取得した設定値を、Pythonのプログラムを起動しているWindow(コマンドプロンプトなど)に表示するのであれば、cap.get()の前にprint記述を追加する必要があり、以下のようになります。
print(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
※サンプルコードで、複数のパラメータを行列とfor文を使用して効率よく確認する方法をご紹介します。こちら
カメラの設定を変更するためのコマンドがset()です。
基本的には、”get()”と同じで、設定したいパラメータ名を記載するのですが、その後に設定値も合わせて記述する必要があります。 例えば、画像の幅のパラメータは、"CAP_PROP_FRAME_WIDTH"なので、画像の幅を"1280"に設定したい場合には、以下のようになります。
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280)
カメラがサポートしてない値の場合には設定されないので、設定後には、前述したカメラの設定を確認するコマンドで設定が正しく行われたかを確認することが望ましいです。
解像度や明るさなどのパラメータの一覧を紹介します。解像度やカメラの設定を行う際の参考にしてください。 また、詳細に関してはOpenCVの公式ページもご確認ください。
最後に、OpenCVのカメラの設定値を取得するPythonのサンプルコードをご紹介します。
import cv2 cap = cv2.VideoCapture(0) camera_parameter = ['CAP_PROP_FRAME_WIDTH', 'CAP_PROP_FRAME_HEIGHT', 'CAP_PROP_FOURCC', 'CAP_PROP_BRIGHTNESS', 'CAP_PROP_CONTRAST', 'CAP_PROP_SATURATION', 'CAP_PROP_HUE', 'CAP_PROP_GAIN', 'CAP_PROP_EXPOSURE',] for x in range(9): print(camera_parameter[x], '=', cap.get(x))
上記のcamera_parameter内に確認したいパラメータを増やすと確認が可能になります。
CAP_PROP_FRAME_WIDTH = 1280.0 CAP_PROP_FRAME_HEIGHT = 1024.0 CAP_PROP_FOURCC = -1.0 CAP_PROP_BRIGHTNESS = 640.0 CAP_PROP_CONTRAST = 480.0 CAP_PROP_SATURATION = 30.0 CAP_PROP_HUE = 20.0 CAP_PROP_GAIN = 1.0 CAP_PROP_EXPOSURE = 1.0
サンプルコードの実行には、PythonとOpenCVのインストールが必要です。
→Pythonのインストール方法 →Open CV(画像処理ライブラリ)のインストール方法
v4l2でカメラパラメータを確認
初めてのPythonガイド
初めてのOpenCVガイド
カメラの設定の確認・変更
カメラの設定Windowを簡単に出す
フレームレートの設定・確認方法
USBケーブルの延長方法
ハイスピードカメラとは
USBカメラの「ゲイン」設定
産業用カメラの選び方
KLV大学マシンビジョンコース
詳細ページ