Intel ディスクリート グラフィックス カードに基づいてビデオ AI コンピューティング ボックスを構築し、トレーニングとプッシュの統合を実現します - パート 2

著者: Intel AI エバンジェリスト、Wu Zhuo 博士

記事「Intel Sharp™ Graphics + oneAPI と OpenVINO™ Realize Intel® Video AI Computing Box Training and Push Integration - Part 1」では、Intel ディスクリート グラフィックスに基づいて YOLOv7 モデルを構築するためのトレーニング環境を詳しく紹介し、YOLOv7 を完成させました。モデルのトレーニング。最高の精度を持つモデルの重み: runs/train/yolov7_tiny_pothole_fixed_res/weights/ best.pt

この記事では、引き続きOpenVINOを使用してトレーニング済みのYOLOv7モデルを最適化およびデプロイする方法を紹介します。

OpenVINOを使用したトレーニング済みYOLOv7モデルの最適化とデプロイ

さらに、OpenVINO を使用して、トレーニングされた YOLOv7 モデルを最適化し、インテル® CPU、統合グラフィックス、ディスクリートグラフィックスなどの複数のインテルハードウェアプラットフォームに展開できます。導入プロセス全体は、次の手順で実行できます。

ステップ 1: トレーニングされたモデルからの推論結果を確認する

トレーニングされたモデルの推論効果は何ですか? 次のコマンドを使用して、推論効果を表示できます。

python -W ignore detect.py --weights ./ runs/train/yolov7_tiny_pothole_fixed_res/weights/best.pt --conf 0.25 --img-size 640 --source ../pothole_dataset/images/test/G0026953.jpg

同時に、次のコマンドを使用して推論結果のグラフを出力できます。

from PIL import Image

# visualize prediction result

Image.open('runs/detect/exp5/G0026953.jpg')

推論結果は下図のようになります

ステップ 2: モデルをONNX形式にエクスポートする

次のコマンドを使用して、トレーニングされたモデルを onnx 形式にエクスポートします。

python -W ignore export.py --weights ./ runs/train/yolov7_tiny_pothole_fixed_res/weights/best.pt --grid

ステップ 3: モデルをOpenVINO IR形式に変換する

モデル変換 API を使用して、モデルを OpenVINO IR 形式に変換します。

from openvino.tools import mo

from openvino.runtime import serialize



model = mo.convert_model('model_trained/best.onnx')

# serialize model for saving IR

serialize(model, 'model_trained/best.xml')

ステップ 4: OpenVINO ランタイムを使用して独立したグラフィックス カードで推論を実行する

Intel dGPU で OpenVINO ランタイムを使用して推論を実行するには、次のコマンドを使用します。マシンに統合 GPU があるため、OpenVINO のランタイム デバイス名を「GPU.1」に設定する必要があります。

from openvino.runtime import Core

core = Core()

# read converted model

model = core.read_model('model_trained/best.xml')

# load model on CPU device

compiled_model = core.compile_model(model, 'GPU.1')

226-yolov7-optimizationで定義された前処理関数と後処理関数を使用すると、以下の図に示すように、OpenVINO 推論結果を視覚化できます。

完全な YOLOv7 推論コードは、https: //github.com/openvinotoolkit/openvino_notebooks/notebooks/226-yolov7-optimization.ipynbにオープンソース化されています。

開発者自身がダウンロードして使用することを歓迎します。

要約する

この時点で、モデルのトレーニングからインテル® ビデオ AI コンピューティング ボックスに基づいた最適化された展開まで 、AI トレーニングおよび推論パイプラインを構築する完全なプロセスが導入されており、すべてのコードはオープンソース化されています

https://github.com/zhuo-yoyowz/training-deployment-dGPU

上記のコードをローカル マシンに複製して使用してください。問題が発生した場合は、私の GitHub リポジトリにメッセージを残してください。

当社が提供する 300 を超える検証済み、最適化された事前トレーニング モデルを含む、Intel OpenVINOTM オープン ソース ツール スイートの詳細については、https://www.intel.com/content/www/us/en/developer/tools をクリックしてください。 /openvino-toolkit/overview.html

さらに、誰もが OpenVINOTM の使用法を理解し、すぐに使いこなせるよう、一連のオープンソース Jupyter ノートブック デモも提供しています。これらのノートブックを実行すると、OpenVINOTM を使用して、さまざまなシナリオで一連のコンピューター ビジョン、音声、自然言語処理タスクを実装する方法をすぐに理解できます。OpenVINOTM ノートブックのリソースは、Github: https://github.com/openvinotoolkit/openvino_notebooksからダウンロードしてインストールできます。

通知と免責事項

インテル テクノロジーでは、ハードウェア、ソフトウェア、またはサービスのアクティベーションを有効にする必要がある場合があります。

完全に安全な製品やコンポーネントは存在しません。

費用と結果は異なる場合があります。

© インテル株式会社。Intel、Intel ロゴ、およびその他の Intel マークは、Intel Corporation またはその子会社の商標です。他の名前およびブランドは、他者の所有物として主張される場合があります。

おすすめ

転載: blog.csdn.net/gc5r8w07u/article/details/132402473