前の 2 ステップを完了すると、モデルベンチマークツール axcl_run_model
が使用できるようになります。
このツールには多数のパラメータがあり、axcl_run_model --help
で利用可能なパラメータを確認できます。
また、その実装メカニズムに興味がある場合は、対応する sample
ディレクトリ内のソースコードを確認することも可能です。
このツールや他の cv & llm sample
はすべてソースコード形式で提供されており、ユーザーが API
の使い方を理解しやすくなっています。
例えば、あるモデルの実行速度をテストする場合は、axcl_run_model -m your_model.axmodel -r 10
のように、-m
でモデルを指定し、-r
で繰り返し回数を指定することで、簡単にモデルの速度を測定できます。
モデルを取得:
wget https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/linux/ax8850_card/yolo11s.axmodel
テスト実行:
axcl_run_model -m yolo11s.axmodel -r 10
実行結果例:
m5stack@raspberrypi5:~ $ axcl_run_model -m yolo11s.axmodel -r 10
Run AxModel:
model: yolo11s.axmodel
type: 3 Core
vnpu: Disable
warmup: 1
repeat: 10
batch: { auto: 1 }
axclrt ver: 1.0.0
pulsar2 ver: 3.2 99cf147d
tool ver: 0.0.1
cmm size: 10488066 Bytes
------------------------------------------------------
min = 3.391 ms max = 3.414 ms avg = 3.402 ms
------------------------------------------------------
上記の実行例からわかるように、モデルの実行時間だけでなく、ツールチェーンのバージョンやモデルタイプなどの情報も表示されます。
sudo apt install zip
wget https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/linux/ax8850_card/cv_demo.zip
unzip cv_demo.zip
cd cv_demo
imagenet
データセットの imagenet_cat.jpg
を分類対象として使用します。sample
実行後、以下のような出力が得られます(モデルや入力画像は実際の状況に応じて調整してください)。
実行コマンド:
./axcl_sample_classification -m mobilenetv2.axmodel -i cat.jpg
出力結果例:
m5stack@raspberrypi5:~/cv_demo $ ./axcl_sample_classification -m mobilenetv2.axmodel -i cat.jpg
axcl initializing...
axcl inited.
Select axcl device{index: 0} as {1}.
axclrt Engine inited.
--------------------------------------
model file : mobilenetv2.axmodel
image file : cat.jpg
img height : 224
img width : 224
--------------------------------------
282: 9.8%, tiger cat
285: 9.8%, Egyptian cat
283: 9.5%, Persian cat
281: 9.4%, tabby, tabby cat
463: 7.5%, bucket, pail
--------------------------------------
PASCAL VOC
データセットの voc_dog.jpg
を検出対象として使用します。sample
実行後、以下のような出力が得られます(モデルや入力画像は実際の状況に応じて調整してください)。
実行コマンド:
./axcl_sample_yolov5s -m yolov5s.axmodel -i dog.jpg
出力結果例:
m5stack@raspberrypi5:~/cv_demo $ ./axcl_sample_yolov5s -m yolov5s.axmodel -i dog.jpg
axcl initializing...
axcl inited.
Select axcl device{index: 0} as {1}.
axclrt Engine inited.
--------------------------------------
model file : yolov5s.axmodel
image file : dog.jpg
img height : 640
img width : 640
--------------------------------------
post process cost time:0.61 ms
--------------------------------------
Repeat 1 times, avg time 8.10 ms, max_time 8.10 ms, min_time 8.10 ms
--------------------------------------
16: 91%, [ 138, 218, 310, 541], dog
2: 69%, [ 470, 76, 690, 173], car
1: 56%, [ 158, 120, 569, 420], bicycle
3 つの物体が検出され、クラス ID
、信頼度、座標が出力されていることが確認できます。sample
実行ディレクトリ内には yolov5s_out.jpg
という検出結果も保存され、画像ビューアで開いて確認可能です。