2018年7月25日水曜日

PiCameraをOpenCVのCameraCaptureで使用する

v4l2ドライバーの読み込み


Raspberry Pi の PiCameraをOpenCVのカメラキャプチャで使用する場合、オフィシャルのV4L2ドライバーをロードする必要がある。

$ sudo modprobe bcm2835-v4l2

起動時に自動的にロードできるように、/etc/modules ファイルに以下の行を追加する。

bcm2835-v4l2


大きい解像度でカメラキャプチャすると画像が青みがかる


640×480などの解像度でカメラキャプチャする場合、問題ないが、1640×1232や3280×2464などの解像度を指定すると、カメラキャプチャした画像が青みがかってしまう。

原因は、bcm2835-v4l2は、パラメータを指定しない場合、1280×720までしか対応していないためである。これより大きい解像度を使う場合、ドライバーのロード時のパラメータを設定する必要がある(解像度が限定されている理由はv4l2ドライバーではFPSが低下するための模様)。

$ sudo modprobe bcm2835-v4l2 max_video_width=3280 max_video_height=2464

※解像度の指定はPiCamera v2.1の最大解像度

あとは、起動時にもパラメータを指定するために、/etc/modprobe.d/bcm2835-v4l2.conf ファイルを新規作成し、以下のオプションを指定する。
options bcm2835-v4l2 max_video_width=3280 max_video_height=2464


参考

0 件のコメント:

コメントを投稿