2020.08.22
【Webマガジン Vol.38- Aug., 2020】Column: イメージセンサーのカメラモジュール化
WEBマガジン
カメラ接続確認の例
$v4l2-ctl ––list-devices
USB2.0 Camera: USB2.0 Camera (usb-1c1b000.usb-1):
/dev/video0 ← video0として認識している。
NanoPi Neo2には多数のポートがあり、複数のカメラモジュールを接続することも可能です。その場合は、一つのUSBポートにシリアル接続するのではなく、各々別のUSBポートに接続します。
NanoPi Neo2 のLANポートをWiFiルータに接続して、ネット環境を構築します。WiFiに接続したPCなどの端末から、所定のURLを通して、カメラ出力をモニターできます。この際、WiFiへのログイン設定により、ある程度のセキュリティを確保できます。
図10 システム構成の概要
画像の配信には、RTSPを用いました。RTSP(Real Time Streaming Protocol)は、メディアのストリーミング配信用のプロトコルで、システム上にRTSPサーバを構築することで利用できます。
RTSPサーバ用のライブラリとして、今回はv4l2rtspserverを使用しました。大まかには、以下のような手順で環境をビルドできます。
$ git clone https://github.com/mpromonet/h264_v4l2_rtspserver.git
$ cd h264_v4l2_rtspserver
$ sudo cmake .
$ sudo make install
RTSPサーバは、次のコマンドで起動されます。
・ユニキャストの場合
-P はポート番号です。
・マルチキャストの場合
-P はポート番号です。-mはマルチキャストの引数で、「multi」はURLに反映されます。
なお、コマンドの詳細は、以下のヘルプで参照できます。
配信URLは、モニター画面のLog中にも表示されますが、以下のようになります。
rtsp://195.826.0.21:8554/multi
ポート番号より前の 195.826.0.21は、NanoPi Neo2のIP addressです。
画像の受信は、RTSP対応ソフトから、このURLにアクセスすることで行います。 例えば、Windows PCでは、汎用ツールのVLC media playerが使用できます。
図11 メディア → ネットワークストリームを開く → 「ネットワーク」タブを選択→RTSP URLを入力マルチキャストの場合、複数のPCから同時モニターすることも可能です。
NanoPi に複数のカメラを接続している場合は、各々にURLを設定することで、同時配信が可能です。受信側では、アクセスするURLを切り替えることで、カメラの切り替えができます。インターフェースにカメラ切り替えのハードを構築する必要がないのも利点です。
以上の方法で、複数のカメラの画像を、任意のデバイスで同時にモニターすることができます。煩雑なカメラインターフェースの構築も、カメラ切替えの機構も不要です。
Appendix
Teledyne e2vでは、センサーとレンズを基板に装着、入出力をFFCコネクタにまとめた、簡易モジュールのお取り扱いがございます。
※イメージセンサーはSnappy 2Mです。詳細は、メーカーサイトをご参照ください。
※ センサー出力を処理するためのISP基板が別途必要です。
※本モジュールに関する詳細は、ページ下部のお問い合わせフォームより、お問い合わせください。