Vitis AI API_1 を使用した開発 - 3.5 日本語

Vitis AI ライブラリ ユーザー ガイド (UG1354)

Document ID
UG1354
Release Date
2023-06-29
Version
3.5 日本語

Vitis AI API_1 は、分類、検出、セグメンテーションなどの各種ビジョン タスクに関連する高レベル API ベースのライブラリ セットです。プリプロセスとポストプロセスを含むアルゴリズム フロー全体に最適化されており、AI Model Zoo のモデルをサポートしています。

  1. https://github.com/Xilinx/Vitis-AI から対応する Docker イメージをダウンロードします。
  2. Docker イメージをロードして実行します。
  3. ホスト側でフォルダーを作成し、そのフォルダー内にフロート モデルを配置し、Vitis AI クオンタイザーを使用してモデルを量子化します。詳細は、 『Vitis AI ユーザー ガイド』 (UG1414) を参照してください。
  4. Vitis AI コンパイラを使用してモデルをコンパイルし、yolov3_custom.xmodel などの xmodel ファイルを生成します。詳細は、 『Vitis AI ユーザー ガイド』 (UG1414) を参照してください。
  5. 次のスニペットに示すように、yolov3_custom.prototxt ファイルを作成します。
    model {
      name: "yolov3_custom"
      kernel {
         name: "yolov3_custom"
         mean: 0.0
         mean: 0.0
         mean: 0.0
         scale: 0.00390625
         scale: 0.00390625
         scale: 0.00390625
      }
      model_type : YOLOv3
      yolo_v3_param {
        num_classes: 20
        anchorCnt: 3
        layer_name: "59"
        layer_name: "67"
        layer_name: "75"
        conf_threshold: 0.3
        nms_threshold: 0.45
        biases: 10
        biases: 13
        biases: 16
        biases: 30
        biases: 33
        biases: 23
        biases: 30
        biases: 61
        biases: 62
        biases: 45
        biases: 59
        biases: 119
        biases: 116
        biases: 90
        biases: 156
        biases: 198
        biases: 373
        biases: 326
        test_mAP: false
      }
    }
  6. yolov3_custom フォルダーを作成します。yolov3_custom.xmodel および yolov3_custom.prototxt ファイルを yolov3_custom フォルダーに置きます。
  7. yolov3_custom フォルダーをターゲットの /usr/share/vitis_ai_library/models にコピーします。
  8. アプリケーション コードには、Yolov3 のサンプル コードを使用してください。編集する必要はありません。
    int main(int argc, char* argv[]) {
      std::string model = argv[1];
      return vitis::ai::main_for_jpeg_demo(
        argc, argv,
        [model] {
          return vitis::ai::YOLOv3::create(model);
        },
        process_result, 2);
    }
    
  9. プログラムをクロス コンパイルして、実行可能ファイル test_jpeg_yolov3 を生成します。
    cd Vitis-AI/examples/vai_library/samples/yolov3
    sh -x build.sh
  10. scp を使用して、実行可能なプログラムをターゲット ボードにコピーします。
    scp test_jpeg_yolov3 root@IP_OF_BOARD:~/
  11. VART ランタイムをターゲットにインストールします。詳細は、ステップ 3: AI ライブラリ パッケージをインストールする を参照してください。
  12. ターゲット ボードでプログラムを実行すると、次の結果が表示されます。
    ./test_jpeg_yolov3 yolov3_custom sample.jpg 
注記: Vitis AI API_1 を使用して開発する場合は、model.xmodel および model.protxt ファイルを用意します。Vitis AI ライブラリのサンプルを使用してモデルを実行します。Vitis AI ライブラリのサンプルはすべて Vitis-AI/examples/vai_library/samples フォルダーにあります。