NVIDIA Jetson Nano を使ってみる(開発環境編)


2022/07/30  アップデート済(updated)


Jetson Nanoを使うからには、当然、機械学習やディープラーニングの環境を整えることが必要になります。

Dockerを使う予定でしたけど、いろいろ問題点があるようですので、解決したら更新します。

【参考までに】Jetson Nano の場合


【フレームワーク周り】

使用したイメージ(Jetpack4.6)のOS (Ubuntu 18.04 LTS) に実装されているPythonの現バージョンは3.6.9です。

pip3

 

scikit-learn

mlxtendを使う場合

$sudo apt-get install libfreetype6 libfreetype6-dev
$sudo pip3 install cython
$sudo pip3 install mlxtend

 

Jupyter Notebook

Jupyterを起動してブラウザーで開きます。

jupyter notebook

 

 

Chainer

$sudo pip3 install chainer

Caffe

NVIDIA版Caffe -> NVCaffe(工事中)

 

ここを参考

Makefile.configの編集

● JetsonのPythonは3.6なので、3.5の部分は置き換え

● JetsonのGPUアーキテクチャーはcompute20をサポートしていないので削除

● lhdf5_hlがないというコンパイルエラーが出た場合

JetsonのCPUアーキテクチャーはaarch64なので以下ように置き換え

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/aarch_64-linux-gnu/hdf5/serial

 

skimageインストール

$sudo pip3 install scikit-image

import時にscipyのDecoratorエラーが出た場合はscipyのアップグレードかインストール

$sudo pip3 install (-U) scipy

 

TensrFlow

NVIDIAの公式で紹介されている方法ではできないようです….?wheelでインストール

$sudo pip3 install wheel

依存ライブラリ

sudo  apt-get install libhdf5-serial-dev

インストール

sudo pip3 install https://developer.download.nvidia.com/compute/redist/jp/v42/tensorflow-gpu/tensorflow_gpu-1.13.1+nv19.5-cp36-cp36m-linux_aarch64.whl

アップグレード

$sudo pip3 install –upgrade –extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v42 tensorflow-gpu

2019/08/17現在の最新バージョンは1.14.0

 

PyTorch 

v 1.12.0

Keras

$sudo apt-get install -y liblapack-dev gfortran

$sudo pip3 install keras

OpenCV 3.4.6

$git clone https://github.com/jkjung-avt/jetson_nano.git

$cd jetson_nano

$./install_opencv-3.4.6.sh

Darknet

このページ参照


学習モデルの相互変換(クロス・フレームワーク・ソリューション)

Microsoft謹製 MMdnn

インストール

$sudo pip3 install mmdnn

サポートされているフレームワーク

 



【H/W周り】

Camera

●USBカメラ(/dev/video0)の場合

この方のスクリプトをお借りします。

$wget https://gist.githubusercontent.com/jkjung-avt/86b60a7723b97da19f7bfa3cb7d2690e/raw/9561b135c1b40f82afe46afcc1f326a2e913e08c/tegra-cam.py

以下を実行してOpenCVでカメラウィンドウが開けばOK

注:カメラが古すぎるとOpenCVが見つけられないことがあるようです。Webカメラは新しい型をつかいましょう。

OR

以下のコマンドでアサインされているvideo番号を確認

/dev/video1にカメラがアサインされている場合

(リモートデスクトップでも画像を確認できます)

 

 

 

●ラズパイ用のカメラモジュール V2の場合(V1は使用できません)

ちなみに、カメラのレンズの向きとフラットケーブルの印刷面は同じ向きです。ケーブルを交換するとき注意しましょう。

 

/dev/video0が存在するか確認

$ls -al /dev/video0

以下のコマンドでHDMIディスプレイに画像が表示されればOK

(リモートデスクトップでは確認できません)

$nvgstcapture

回転(1:90度、2:180度、3:270度)

 

 

Microphone

Jetsonでの予定なし

Speaker

Jetsonにはステレオジャックがついてないので、Quimatディスプレイのジャックに接続

HDMIを選んで出力を確認します

 

 

【通信】

無線LAN(Wi-Fi)

ラズパイのような使い方はしないと思うので今回は見送り

Bluetooth

不要と判断

無線通信を実現するには「M.2用 WiFi Bluetoothコンボカード」ってのが必要なようです。

ヒートシンクとプロセッシング・ユニットのモジュール部分を外して取り付けるそうです。


 

Be the first to comment

Leave a Reply

Your email address will not be published.


*