KV260でVitis AI ONNX Runtime Engine (VOE) を試してみた

本サイトはアフィリエイト広告を利用しています。
AI

KV260でVitis AI ONNX Runtimeをテストしてみました。

KR260で実施した同じ対応で出来ました。

YOLOX+PythonをONNX環境でテストした内容を紹介します。

 

スポンサーリンク

KV260でVitis AI ONNX Runtime Engine (VOE) を試してみた

前回KV260とPetaLinuxの環境でPyTorchのYOLOXを動作させました。

KV260とPetalinuxでPyTorchのテスト(YOLOX+Python編)

KV260とPetalinuxでPyTorchのテスト(YOLOX+Python編)
KV260とPetalinuxの環境構築して、DPUで物体検出してみました。 PyTorchのYOLOXをPythonで動かしています。 VARTのAPIを使ってプログラムしたコード含めて紹介しています。 KV260とPetalinuxでP...

 

続きで応用して、ONNX環境でもYOLOXをテストしてみます。

別のコンテストでKR260で同様にONNXで動かしましたので、その展開となります。

テスト動画は下記です。

 

実際に動かしたプログラム(.py)や設定ファイルなどは下記GitHubに保存しています。

GitHub - iotengineer22/kv260-yolox-test: This repository present solution for my KV260 PetaLinux test
This repository present solution for my KV260 PetaLinux test - iotengineer22/kv260-yolox-test

 

英語ですが、KR260で同様なテストをして下記記事で詳細に記載しています。

そのため今回は、大分(雑に)省略した形でメモレベルで記載しています。

 https://www.hackster.io/iotengineer22/vitis-ai-onnx-runtime-engine-voe-with-kr260-python-0d02c3

 

 

 

テスト環境

テスト環境は以下の通りです。

  • Vivado, Vitis, PetaLinux…2023.1
  • Vitis AI …3.5

使用評価ボードはKV260です。

 

ONNX Runtimeをインストールする

ONNX Runtimeで必要な環境をインストールします。

 

一度リブートして、xmutilでDPUを起動後プログラムを走らせます。

但しDPUではなくCPUモードで動いてしまいました。

CPUのため、YOLOXの推論(inference)時間が約300msと遅いです。

 

原因を確認すると,ONNX環境を作るときに入れた、Vitis AIライブラリが原因でした。

/etc/vart.confのファイルをデフォルト値に上書きしていました。

 

そのため用意していた、vart.confを再度上書きしました。その後リブートしています。

(GitHub上にも保存しています)

 

リブート後に再度DPUを起動して、プログラムを実行するとDPUモードで動きました。

約10msでした。常に高速にDPUの推論(inference)が出来ていました。

テスト結果例

CPUでのYOLOXの物体検出(写真1枚)の実行例です。

 

DPUでのYOLOXの物体検出(写真1枚)の実行例です。

 

 

コメント