【Jetson Nano 2GB】Dockerコンテナの導入とカメラモジュールが認識されなかった話

実家に帰っても暇なので、Jetson Nano 2GBとモバイルモニターを持ってってセッティングの続きを実施。
Jetson Nano 2GBで物体認識や物体検出を行うにはDockerを入れるのが手っ取り早いらしい。

以下のページを参考に実施してみる。
arkouji.cocolog-nifty.com

1.Dockerの導入

github.com

上記のGitHubからコンテナを導入する。
どうやらJetPack-L4Tのバージョンは記載しているものに合っていないといけないらしい。
JetPack-L4Tってなんぞや?っと思って調べてみると、L4Tは「JetPack SDK includes the Jetson Linux Driver Package」のこと?らしい。
では、自分が入れているバージョンはどれなのか、というのは、以下の2つのコマンドでそれぞれ確認可能。

cat /etc/nv_tegra_release
# R32 (release), REVISION: 6.1, GCID: 27863751, BOARD: t210ref, EABI: aarch64, DATE: Mon Jul 26 19:20:30 UTC 2021

$ dpkg-query --show nvidia-l4t-core
nvidia-l4t-core 32.6.1-20210726122000

1つ目は、R32とREVISION: 6.1で「L4T R32 6.1」と判断できる。
2つ目は、32.6.1と出てくれるので、そのまま読み取れる。

GitHubに記載されているContainerTagはr32.6.1とあるが、該当するL4T versionはL4T R32 6.0とある。
先程のコマンドで使用しているバージョンはR32.6.1と出たが、これは問題なく動くのだろうか・・・?
まぁとりあえず、説明に沿って実行してみます。

$ git clone --recursive https://github.com/dusty-nv/jetson-inference
$ cd jetson-inference
$ docker/run.sh


※先に取り上げたL4Tのバージョンについては、上記GitHubで取得したjetson-inferenceのtool配下に、l4t-version.shを叩くことでも確認が可能。
$ ~/jetson-inference/tools/l4t-version.sh
reading L4T version from /etc/nv_tegra_release
L4T BSP Version: L4T R32.6.1


docker/run.shを実行すると以下の画面が出てきます。
f:id:engetu21:20211231232208p:plain

好みの?モデルを選択することができます。
選択後に自動でダウンロードされるため、あとは待つだけ。
f:id:engetu21:20211231233214p:plain

モデルインストール後に以下のようにメッセージが出るため、他のモデルもインストールしたいな、というときにはこの通りにするといいらしい。

[jetson-inference] to run this tool again, use the following commands:

$ cd /tools
$ ./download-models.sh

あとはカメラモジュールでテストすればいいのですが・・・

2.カメラモジュール(OV5647)が認識しない

ラズパイで認識されたので、てっきりJetson Nano 2GBも認識すると思いましたが、
どうやらOV5647と呼ばれるカメラモジュール(Raspberry Pi Camera Rev 1.3)は認識されないようです。
does Jetson Nano support CSI camera with sensor ov5647? - Jetson Nano - NVIDIA Developer Forums

どうやらEOLとのことで正式にはサポートしていない模様。
一応ドライバインストールを自力で実施する方法はいかに記載されてますが・・・これを頑張るくらいであれば、素直にUSBカメラをつけたほうが良さそう。
自宅だったらUSBカメラがあるのでリアルタイムでのカメラ確認ができるけど、あいにくと実家なのが悔やまれる。
Omnivision Linux Drivers | OmniVision OV5647 Linux Driver for Jetson Nano | RidgeRun

とりあえず、サンプル動画で色々試してみることとし、カメラによるリアルタイム分析を利用するのはまた今度。