Zao SDKでMIPIカメラを使った超低遅延映像伝送
はじめに
Zao SDK for Jetson 1.1.0.0では、MIPIカメラが新たにサポートされています。
この記事では、Zao SDKでMIPIカメラを使って超短遅延の映像転送を行う方法を説明します。
具体的な機材としてはJetson Nano Developer Kit (B01) (以下、Jetson Nanoと表記) とLI-IMX219-MIPI-FF-NANOを用います。
まだZao SDK for Jetsonを1.1.0.0にアップデートしていない場合は、こちらの記事を参照してアップデートを行なってください。
1:MIPIカメラの接続
Jetson Nanoの電源を入れる前にMIPIカメラを接続します。
Jetson Nanoには、MIPI CSI-2コネクタが 2 つありますが、どちらに接続しても問題ありません。
フラットケーブルには表裏があります。電極の側がヒートシンク側になるように挿入します。
Jetson NanoとJetPack4.6.1の組み合わせでは、イメージセンサIMX219搭載のカメラモジュールなら基本的に接続するだけでカメラを認識します。
以下のカメラモジュールが動作することを確認できています。
- Raspberry Pi Camera Module V2.1
- Leopard LI-IMX219-MIPI-FF-NANO
2:カメラ接続の確認
Webカメラは接続せず、Jetson Nanoの電源を入れます。
Zao SDKの画面が表示されたらAlt + F2キーを押し、tty2へ切り替えログインします (JetPack 初期設定で指定したユーザー名・パスワードでログインできます)。
カメラが正しく認識されているか確認します。
以下のように /dev/video0 が存在していれば、カメラは認識されています。
$ ls /dev/video*
/dev/video0
3: 設定ユーティリティでMIPIカメラ映像送信に切り替え
以下のコマンドでZao SDK for Jetsonの設定ユーティリティを起動します。
$ sudo ZaoSetting
上下キー操作で Video を選択してEnterを押します。
Select ZaoVideoSource Process を選択してEnterで進みます。
ZaoVideoSourceArgus を選択した状態にしてTabキーでカーソルを <Ok> に合わせてEnterで決定します。
MIPI カメラからの映像送信の設定はデフォルトでは/dev/video0, 1920x1080, 30fpsの設定になっています。
変更する場合は Configure ZaoVideoSourceArgus の階層で設定を変更することが可能です。
あとは、<Back> で階層を戻っていき、最後に <Exit> を選択し、設定ユーティリティを終了します。
再起動が求められますので、以下のコマンドで再起動します。
$ sudo reboot
4: 動作確認
再起動後にはMIPIカメラからの映像が伝送できているはずです。
PCでZao Cloud Viewを起動し映像が送られていることを確認します。
補足: カメラの色味の修正
映像が赤みかかっている場合があります。
この場合はカメラパラメータの調整ファイルを読み込むことで改善することがあります。
設定前はこのように映っていました。
カメラパラメータの調整ファイルは以下のサイトで配布されています。
- https://www.arducam.com/downloads/Jetson/Camera_overrides.tar.gz
- https://www.waveshare.com/w/upload/e/eb/Camera_overrides.tar.gz
以下のコマンドでここからファイルをダウンロードし、設定ファイルを配置します。
$ wget https://www.arducam.com/downloads/Jetson/Camera_overrides.tar.gz
$ tar xf Camera_overrides.tar.gz
$ sudo install -o root -g root -m 664 camera_overrides.isp /var/nvidia/nvcam/settings/
再起動後、確認すると、赤みが修正されました!
おわりに
Zao SDKでMIPIカメラからの映像を伝送することができました。
いくつかのWebカメラと比較すると、今回説明したMIPIカメラでの映像伝送はより短遅延を実現できています。
新たな機能を活用し、さまざまなプロジェクトで利用されることを期待しています。
Zao SDKの今後のアップデートもお楽しみに!
Discussion