Mixtileエッジ2キットでYOLOv8を動かす

YOLOv8は、その速度と効率性から、エッジ・デバイスやリアルタイム・アプリケーションへの展開に適している。このチュートリアルでは rknn_model_zoo で、YOLOv8をMixtile Edge 2 Kit(以下、Edge 2)にデプロイし、推論を行う方法を説明する。

前提条件

始める前に、あなたが持っていることを確認してください:

このガイドは Debian 11.

依存関係をインストールする

sudo apt update
sudo apt install -y libopencv-dev cmake build-essential

デモとモデルのダウンロード

  1. デモをEdge 2の任意のディレクトリ(ホームディレクトリとします)にダウンロードします:

    cd ~
    git clone https://github.com/airockchip/rknn_model_zoo
    
  2. ダウンロード yolov8n.rknn モデルである:

    cd rknn_model_zoo/examples/yolov8/model
    wget https://downloads.mixtile.com/doc-files/yolov8/rk3568/yolov8n.rknn
    

    について yolov8n.rknn 上記のモデルは yolov8n.onnx をご覧ください。 RKNNに変換).必要に応じて他のモデルを使うこともできる。

デモをコンパイルする

# rknn_model_zooディレクトリに移動します。
cd ~/rknn_model_zoo

# build-linux.shにパーミッションを与えます。
chmod 777 build-linux.sh

#デモをコンパイルする
./build-linux.sh -t rk3568 -a aarch64 -d yolov8

デモがコンパイルされると、実行ファイル RKNN_YOLOV8_DEMO に出力される。 rknn_model_zoo/install/rk356x_linux_aarch64/rknn_yolov8_demo:

インストール
└── rk356x_linux_aarch64
    └── rknn_yolov8_demo
        ├── lib
        ├── librga.so
        ├── librknnrt.so
        モデル
        │ ├── bus.jpg
        │ ├── coco_80_labels_list.txt
        │ └── yolov8n.rknn
        ├── rknn_yolov8_demo
        └──rknn_yolov8_demo_zero_copy

推論を行う

使い方:

./rknn_yolov8_demo  <入力イメージ

以下の例は、以下の推論を実行する。 モデル/バス.jpg 入力画像を model/yolov8n.rknn モデルである:

# 実行ファイルのディレクトリに移動します。
cd ~/rknn_model_zoo/install/rk356x_linux_aarch64/rknn_yolov8_demo/ ディレクトリに移動します。

# set LD_LIBRARY_PATH
export LD_LIBRARY_PATH=./lib

#推論を実行する
./rknn_yolov8_demo model/yolov8n.rknn model/bus.jpg

期待される結果

出力には、ラベル、座標、対応するスコアなど、以下のような情報が含まれる:

人@ (211 241 282 506) 0.864
バス@ (96 136 549 449) 0.864
人@ (109 235 225 535) 0.860
人@ (477 226 560 522) 0.848
人@ (79 327 116 513) 0.306

出力画像は rknn_model_zoo/install/rk356x_linux_aarch64/rknn_yolov8_demo/out.png:

yolov8-inference-bus-output

この記事は役に立ちましたか?

関連記事