Running YOLOv8 on Mixtile Blade 3

YOLOv8は、その速度と効率性から、エッジ・デバイスやリアルタイム・アプリケーションへの展開に適している。このチュートリアルでは rknn_model_zoo to describe how to deploy YOLOv8 on Mixtile Blade 3 (hereinafter referred to as Blade 3) and perform inference.

前提条件

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

このガイドは Ubuntu 22.04 Desktop.

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

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

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

  1. Download the demo to a desired directory on Blade 3 (let’s say the home directory):

    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/rk3588/yolov8n.rknn
    

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

デモをコンパイルする

# go to the rknn_model_zoo directory
cd ~/rknn_model_zoo

# grant permission to build-linux.sh
chmod 777 build-linux.sh

# compile the demo
./build-linux.sh -t rk3588 -a aarch64 -d yolov8

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

install
└── rk3588_linux_aarch64
    └── rknn_yolov8_demo
        ├── lib
        │   ├── librga.so
        │   └── librknnrt.so
        ├── model
        │   ├── bus.jpg
        │   ├── coco_80_labels_list.txt
        │   └── yolov8n.rknn
        ├── rknn_yolov8_demo
        └── rknn_yolov8_demo_zero_copy

推論を行う

使い方:

./rknn_yolov8_demo  <入力イメージ

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

# go to the directory of the executable file
cd ~/rknn_model_zoo/install/rk3588_linux_aarch64/rknn_yolov8_demo/

# set LD_LIBRARY_PATH
export LD_LIBRARY_PATH=./lib

# perform inference
./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/rk3588_linux_aarch64/rknn_yolov8_demo/out.png:

yolov8-inference-bus-output

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

関連記事