チュートリアル
本チュートリアルでは、SoftNeuro SDKのセットアップから実際に推論処理を実行するまでの流れを解説します。
セットアップ
セットアップ(for Linux)
1. ライブラリ・CLIツールのセットアップ
※本節におけるlinux_x64
は環境によってはlinux_armv8
となります
-
SDKのトップディレクトリに移動します。
-
linux_x64
を任意の場所へコピーし、環境変数SOFTNEURO_DIR
にその親ディレクトリを追加してください。 -
環境変数
PATH
に${SOFTNEURO_DIR}/linux_x64
を追加してください。 bashでは、下記のコマンドを実行します。mkdir ~/.softneuro cp -r linux_x64 ~/.softneuro export SOFTNEURO_DIR=~/.softneuro export PATH=${SOFTNEURO_DIR}/linux_x64:${PATH}
-
(Ver5.1のみ)Ver5.1の場合は下記の手順でライセンスキーの登録を行います。
-
(optional)versionの確認をします。Ver5.1の場合は以降の手順を行います。
$ softneuro version SoftNeuro 5.1.0.xxxxxxx
-
CLIツールで
softneuro license
を実行し、User IDを確認して下さい。$ softneuro license softneuro:Error: No license key. softneuro:Error: User ID: 12345678-ABCDEFGH.
-
ライセンス発行ページでUser IDを入力し、ライセンスキーを発行して下さい。
-
CLIツールで
--key
にライセンスキーを渡しsoftneuro license
を実行して、登録が完了します。$ softneuro license --key 12345678-90123456-ABCDEFGH-IJKLMNOP
-
-
pluginsコマンドを実行してプラグインをインストールします。
プラグインの個別インストール手順については、CLIツールマニュアルを参照してください。$ softneuro plugins --install auto
2. Pythonモジュールのインストール
pipコマンドで実行環境にあったバージョンのPythonモジュールをインストールして下さい。
Python3.6の環境では以下のようなファイル名のwhlを利用します。
$ pip install whl/softneuro-5.2.0-cp36-cp36m-*.whl
下記はサンプルコードの実行に必要です。
$ pip install scipy opencv-python
セットアップ(for Windows)
1. ライブラリ・CLIツールのセットアップ
- SDKのトップディレクトリに移動します。
win_x64
を任意の場所へコピーし、環境変数SOFTNEURO_DIR
にその親ディレクトリを追加してください。-
環境変数
PATH
に%SOFTNEURO_DIR%\win_x64
を追加してください。 Windowsでは、下記の手順です。- クイック検索に "env" と入力し、"システム環境変数の編集" を選択する。
- "環境変数(N)..." をクリックする。
- 必要な環境変数を設定する。
-
(Ver5.1のみ)Ver5.1の場合は下記の手順でライセンスキーの登録を行います。
-
(optional)versionの確認をします。Ver5.1の場合は以降の手順を行います。
$ softneuro version SoftNeuro 5.1.0.xxxxxxx
-
CLIツールで
softneuro license
を実行し、User IDを確認して下さい。$ softneuro license softneuro:Error: No license key. softneuro:Error: User ID: 12345678-ABCDEFGH.
-
ライセンス発行ページでUser IDを入力し、ライセンスキーを発行して下さい。
-
CLIツールで
--key
にライセンスキーを渡しsoftneuro license
を実行して、登録が完了します。$ softneuro license --key 12345678-90123456-ABCDEFGH-IJKLMNOP
-
-
pluginsコマンドを実行してプラグインをインストールします。
$ softneuro plugins --install auto
プラグインの個別インストール手順については、CLIツールマニュアルを参照してください。
2. Pythonモジュールのインストール
pipコマンドでPythonモジュールをインストールして下さい。
$ pip install whl/softneuro-5.2.0-cp36-cp36m-*.whl
下記はサンプルコードの実行に必要です。
$ pip install scipy opencv-python
CLIツールを利用した推論処理の実行(画像分類)
上記のセットアップ完了後、CLIツールを用いた推論処理の実行が可能となります。
例えばモデルファイルexamples/models/mobilenetv2-7.dnn
と画像ファイルexamples/data/classification_sample.jpg
を利用した推論処理は、runコマンドを利用して以下のように実行することができます。
$ softneuro run --top 5 examples/models/mobilenetv2-7.dnn examples/data/classification_sample.jpg
---------------------------------
Top 5 Labels
---------------------------------
# SCORE LABEL
1 0.9996 goose
2 0.0003 black_swan
3 0.0000 drake
4 0.0000 peacock
5 0.0000 American_coot
---------------------------------
Statistics
---------------------------------
FUNCTION AVE(us) MIN(us) MAX(us) #RUN
Dnn_load() 9,395 9,395 9,395 1
Dnn_compile() 23,249 23,249 23,249 1
Dnn_forward() 6,774 6,774 6,774 1
Used memory: 40,955,904 Bytes
Pythonからの推論処理の実行(画像分類)
SoftNeuroには、Pythonコードから各種機能を利用するためのAPIが用意されています。
SoftNeuro SDKにはこのPython APIを利用して画像分類の推論処理を実行するためのPythonコードがサンプルとして同梱されています。
画像分類用の学習済みモデルファイルはSDKに同梱されているexamples/models/mobilenetv2-7.dnn
です。
SoftNeuro Model Zooからも同じモデルファイルをダウンロードできます。
サンプルコードを利用した画像分類処理はexamples/python/classification
ディレクトリで
以下のようなコマンドを入力することで実行できます。
$ python classification.py ../../models/mobilenetv2-7.dnn ../../data/classification_sample.jpg
[Label Name] : [Probability]
0.goose : 0.9995970129966736
1.black_swan : 0.000263840367551893
2.peacock : 3.83547849196475e-05
3.drake : 3.685235060402192e-05
4.American_coot : 2.5823321266216226e-05
Pythonからの推論処理の実行(物体検出)
SoftNeuro SDKには物体検出の推論処理を実行するためのPythonコードがサンプルとして同梱されています。
物体検出用の学習済みモデルファイルは、SoftNeuro Model Zooからダウンロードしてください。
サンプルコードを利用した物体検出処理はexamples/python/detection
ディレクトリで以下のようなコマンドで実行できます。
※検出結果の画像がresult.pngとして出力されます
$ python detection.py yolov4.dnn ../../data/detection_sample.jpg
Inference is done.
result.png is saved.
Pythonからの推論処理の実行(セグメンテーション)
SoftNeuro SDKにはセグメンテーションの推論処理を実行するためのPythonコードがサンプルとして同梱されています。
セグメンテーション用の学習済みモデルファイルは、SoftNeuro Model Zooからダウンロードしてください。
サンプルコードを利用したセグメンテーション処理はexamples/python/segmentation
ディレクトリで以下のようなコマンドで実行できます。
※セグメンテーション結果の画像がresult.png, blended.pngとして出力されます
$ python segmentation.py duc.dnn ../../data/segmentation_sample.png
Inference is done.
result.png and blended.png are saved.