ailia SDKをJetsonNanoやChromeBookで動かす
ailia SDKをJetsonNanoやChromeBookで動作させる解説です。ailia SDKを利用することでディープラーニングの推論をクロスプラットフォームで行うことができます。ailia SDKについて詳しくはこちらをご覧ください。
JetsonNano
ailia SDK 1.2.3以降の場合
下記のチュートリアルにJetsonを追加しましたので、こちらを参照してください。
ailia SDK 1.2.1の場合
JetsonNanoではailia SDKのJetsonバイナリを実行することができます。JetsonNanoでailia SDKを使用することで、ONNXから直接、GPU推論することができ、ailia-modelsに公開されている多様なモデルを使用することができます。
Jetsonバイナリはailia SDK 1.2.1以降のlibrary/experimental/jetsonに含まれています。下記のチュートリアルはUbuntu 18.04 LTSに向けたものです。
ailia SDKをダウンロードします。

python/ailiaを/usr/local/lib/python3.6/dist-packagesに、library/experimental/jetson/libailia.soとlibrary/experimental/jetson/libailia_pose_estimate.soとlibrary/experimental/jetson/libailia_cuda.soを/usr/local/lib/python3.6/dist-packages/ailiaにコピーします。
cd ailia_sdk_1_21
sudo cp -r python/ailia /usr/local/lib/python3.6/dist-packages
sudo cp library/experimental/jetson/libailia.so /usr/local/lib/python3.6/dist-packages/ailia
sudo cp library/experimental/jetson/libailia_pose_estimate.so /usr/local/lib/python3.6/dist-packages/ailia
sudo cp library/experimental/jetson/libailia_cuda.so /usr/local/lib/python3.6/dist-packages/ailia
dist-packagesが存在しない場合は、下記のコマンドでパスを確認します。
python3 -c “import site; print (site.getsitepackages())”
ailiaフォルダに実行権限を付与します。
sudo chmod 757 /usr/local/lib/python3.6/dist-packages/ailia
opencv-pythonはプリインストールされています。
numpyはapt経由でインストールします。
sudo apt install python3-numpy
samples/models/download_model.shを実行してモデルをダウンロードします。ダウンロードに必要なcurlをインストールします。
sudo apt install curl
モデルをダウンロードします。
cd samples/models
chmod +x download_model.sh
./download_model.sh
ailia SDKのサンプルを実行します。
cd ../../samples/python
python3 ailia_classifier.py
推論結果が出力されます。
class_count=3
+ idx=0
category=409[ analog clock ]
prob=0.7738379836082458
+ idx=1
category=892[ wall clock ]
prob=0.1796753704547882
+ idx=2
category=826[ stopwatch, stop watch ]
prob=0.03009628877043724
この状態では、推論はCPUで実行されています。cuDNNを使用して高速なGPU推論を利用するには、samples/pythonフォルダにlibrary/experimental/jetson/libailia_cuda.soをコピーします。
cp library/experimental/jetson/libailia_cuda.so samples/python
推論環境を列挙します。
python3 ailia_environment.py
cuDNNが使用できる場合、下記が列挙されます。
env[1]=Environment(id=1, type=’GPU’, name=’cuDNN-NVIDIA Tegra X1 (5.3)’, backend=’CUDA’, props=’NORMAL’)
この状態で、ailia_classifier.pyを実行すると、cuDNNを使用した高速なGPU推論が可能です。
ChromeBook
ChromeBook(Intel CPU)ではailia SDKのLinuxバイナリを実行することができます。ChromeBookでailia SDKを使用することで、教育用途でもディープラーニングを使用することができます。
まず、公式の手順に従って、Linuxモードを有効にします。

ailia SDKをダウンロードします。ダウンロード後、Linuxファイルに内容をコピーします。

python/ailiaを/usr/local/lib/python3.5/dist-packagesに、library/linux/libailia.soとlibrary/linux/libailia_pose_estimate.soを/usr/local/lib/python3.5/dist-packages/ailiaにコピーします。
cd ailia_sdk_1_21
sudo cp -r python/ailia /usr/local/lib/python3.5/dist-packages
sudo cp library/linux/libailia.so /usr/local/lib/python3.5/dist-packages/ailia
sudo cp library/linux/libailia_pose_estimate.so /usr/local/lib/python3.5/dist-packages/ailia
ailiaフォルダに実行権限を付与します。
sudo chmod 755 /usr/local/lib/python3.5/dist-packages/ailia
ChromeBookはPython3.5がデフォルトでインストールされていますが、pipはインストールされていませんので、下記のコマンドでインストールします。
curl -O https://bootstrap.pypa.io/get-pip.py
sudo python3 get-pip.py
必要な依存関係をインストールします。
pip3 install opencv-python numpy
samples/models/download_model.shを実行してモデルをダウンロードします。
cd samples/models
chmod +x download_model.sh
./download_model.sh
ailia SDKのサンプルを実行します。
cd ../../samples/python
python3 ailia_classifier.py
推論結果が出力されます。
class_count=3
+ idx=0
category=409[ analog clock ]
prob=0.7738379836082458
+ idx=1
category=892[ wall clock ]
prob=0.1796753704547882
+ idx=2
category=826[ stopwatch, stop watch ]
prob=0.03009628877043724
現状、ChromeBookでは、CPUモードの推論のみ実行可能です。将来的にChromeOSがVulkanやOpenCLに対応したタイミングで、GPU対応を計画しています。
アイリア株式会社はAIを実用化する会社として、クロスプラットフォームでGPUを使用した高速な推論を行うことができるailia SDKを開発しています。アイリア株式会社ではコンサルティングからモデル作成、SDKの提供、AIを利用したアプリ・システム開発、サポートまで、 AIに関するトータルソリューションを提供していますのでお気軽にお問い合わせください。
ailia Tech BLOG