kawasan_mt
2025年6月25日 17時19分
いつもお世話になっております。
以下の件に対してご指導をいただけると助かります。
よろしくお願いいたします。
・やりたいこと:
物体検出としてYOLOv8n利用をターゲットにしている
・現状:
NPU指定時にスループットがでない。(CPU利用時:1.25fps、NPU併用時:0.2fps)
onnx化し、Armadillo-X2のonnxruntimeで動作するが以下エラー(ログの279行目以降を参照)が発生。
fallbackが発生している可能性あり。
E [vsi_nn_CalcReshapeTensor:1410]Wrong reshape parameters.
E [setup_node:473]Setup node[4] RESHAPE fail
※エラーログを添付 2025-06-25_YOLOv8nをONNX動作(CPUとNPU).log
・推測:
エラーの正確な意味は分からないが、onnx内のReshapeノードの4つ目でパラメータエラーが起きていると推測
Netronで見たところ、4つ目のReshapeノードは1x64x8400→1x4x16x8400を行っている。
(これが問題の起きているノードと仮定)
※ Netron 4つ目のReshape画像添付 01_RESHAPEの4つ目.png
・このReshapeノードだけが3次元→4次元変換を行っている。(他のReshpeノードは2次元、3次元変換)
・このReshapeノードだけが入出力サイズが大きい(他のreshpeは1x144x20*20、1x1x4x8400程度)
テンソル形状やテンソルサイズに制限がある可能性を考えている
テンソルサイズの制限の可能性を考え、96x96の画像を試したが改善せず。
よってテンソル形状に問題がある可能性が高い。
・確認事項:
①上記の対策方法をご存じないでしょうか?
②NPUの仕様書をいただけないでしょうか?
対応している演算ノードや、テンソル形状及びサイズ制限を把握したい。
※swish,sigmoid,tanhの非線形関数
ReLU,ReLU6,LeakyReLUの分段線形関数
HardSwish,HardSigmoidのような非線形関数に対する線形近似関数
Add,Sub,Mul,Div,Exp,Log等の演算関数
テンソル操作:Reshape,Transpose,Squeeze,Flatten
③Armadillo-X2で物体検出の実績があるモデルをご紹介いただけますか?
YOLOv3,v5、MobileNet-SSD v2以外にあれば。
本NPUとの相性の良さも含めて情報があると助かります。
・補足
Windows 10環境にてYOLOv8n.ptをONNX形式に変換する作業のLOGを添付 2025-06-25_ONNX変換.txt
==========
製品型番:Armadillo-X2
Debian/ABOSバージョン:3.20.2-at.1
カーネルバージョン:5.10.222-0-at
3G/LTE モジュール情報 (Debianのみ):
その他:/opt/firmware/etc/imxlib_version = 2.2.0
==========
ファイル | ファイルの説明 |
---|---|
2025-06-25_FILEs.zip | 操作LOGファイル、Netron画像、スクリプト(ONNX変換、推論実行) |