Intel OpenVINO エクスポート#
このガイドでは、YOLO26モデルを OpenVINO フォーマットにエクスポートする方法について説明します。これにより、CPU で最大3倍の高速化が実現でき、インテルの GPU および NPU ハードウェアでのYOLO推論を加速できます。
OpenVINO(Open Visual Inference & Neural Network Optimization toolkitの略)は、AI推論モデルを最適化およびデプロイするための包括的なツールキットです。「Visual」という名前が含まれていますが、OpenVINOは言語、音声、時系列など、さまざまな追加タスクもサポートしています。
Watch: How to Export Ultralytics YOLO26 to Intel OpenVINO Format for Faster Inference 🚀
サポートされているタスク#
OpenVINOのエクスポートは、7つのUltralyticsタスクすべてをサポートしています。セマンティックセグメンテーションと深度推定は、それらのヘッドを搭載する唯一のファミリーであるYOLO26でのみ利用可能です。
使用例#
OpenVINOフォーマットは、Export、Predict、および Validate モードをサポートしています。モデルをエクスポートした後、エクスポートしたモデルを読み込んで、インテルのCPU、統合/ディスクリートGPU、またはNPUで推論を実行したり、精度を検証したりします。
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to OpenVINO format
model.export(format="openvino") # creates 'yolo26n_openvino_model/'from ultralytics import YOLO
# Load the exported OpenVINO model
model = YOLO("yolo26n_openvino_model/")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
# Run inference on a specific device, available devices: ["intel:gpu", "intel:npu", "intel:cpu"]
results = model("https://ultralytics.com/images/bus.jpg", device="intel:gpu")from ultralytics import YOLO
# Load the exported OpenVINO model
model = YOLO("yolo26n_openvino_model/")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")エクスポートの引数#
| 引数 | タイプ | デフォルト | 説明 |
|---|---|---|---|
format | str | 'openvino' | エクスポートするモデルのターゲット形式。さまざまなデプロイ環境との互換性を定義します。 |
imgsz | int または tuple | 640 | モデル入力の希望する画像サイズ。正方形の画像の場合は整数、特定の寸法の指定にはタプル (height, width) を使用できます。 |
quantize | int または str | None | 量子化精度:16(FP16)または 8(INT8/PTQ。キャリブレーション data / fraction が必要);32 / 未設定はFP32です。非推奨となった half / int8 フラグに置き換わるものです。 |
dynamic | bool | False | 動的な入力サイズを許可し、さまざまな画像次元を扱う際の柔軟性を高めます。 |
nms | bool | False | Non-Maximum Suppression (NMS) を追加します。これは正確で効率的な検出後処理に不可欠です。 |
batch | int | 1 | エクスポートモデルのバッチ推論サイズ、またはpredictモードでエクスポートされたモデルが同時に処理する画像の最大数を指定します。 |
data | str | None | データセットのYAMLへのパス(量子化に必須)です。分類の場合は、データセットディレクトリまたは組み込みのデータセット名を指定します。quantize=8 を指定して省略した場合、Ultralytics はモデルタスクに応じたデフォルトのキャリブレーション用データセットを選択します。 |
fraction | float | 1.0 | INT8量子化キャリブレーションに使用するデータセットの割合を指定します。フルデータセットのサブセットでキャリブレーションを行えるため、実験やリソースが限られている場合に便利です。INT8が有効で指定されていない場合、フルデータセットが使用されます。 |
エクスポートプロセスの詳細については、Ultralytics documentation page on exporting をご覧ください。
OpenVINO™はほとんどのIntel®プロセッサと互換性がありますが、最適なパフォーマンスを確保するためには以下の点を確認してください:
-
OpenVINO™のサポートを確認する インテルの互換性リストを使用して、インテル®チップがOpenVINO™によって公式にサポートされているかどうかを確認します。
-
アクセラレータを特定する インテルのハードウェアガイドを参照して、プロセッサに統合NPU(Neural Processing Unit)またはGPU(統合GPU)が含まれているかどうかを確認します。
-
最新のドライバをインストールする チップがNPUまたはGPUをサポートしているにもかかわらずOpenVINO™が検出しない場合は、関連するドライバをインストールまたは更新する必要がある場合があります。ドライバのインストール手順に従って、完全なアクセラレーションを有効にしてください。
これら3つのステップに従うことで、Intel®ハードウェア上でOpenVINO™が最適に動作するように設定できます。
OpenVINOの利点#
- パフォーマンス: OpenVINOは、Intel CPU、統合およびディスクリートGPU、FPGAのパワーを活用し、高性能な推論を提供します。
- ヘテロジニアス実行のサポート: OpenVINOは、一度記述すればサポートされているすべてのIntelハードウェア(CPU、GPU、FPGA、VPUなど)上でデプロイできるAPIを提供します。
- Model Optimizer: OpenVINOは、PyTorch、TensorFlow、TensorFlow Lite、Keras、ONNX、PaddlePaddle、Caffeなどの主要なdeep learningフレームワークからモデルをインポート、変換、最適化するためのModel Optimizerを提供します。
- 使いやすさ: ツールキットには、ツールキットのさまざまな側面を学習するための多数のチュートリアルノートブック(YOLO26の最適化を含む)が付属しています。
OpenVINOエクスポート構造#
モデルをOpenVINO形式にエクスポートすると、以下の内容を含むディレクトリが生成されます:
- XMLファイル: ネットワークトポロジーを記述します。
- BINファイル: 重みとバイアスのバイナリデータを含みます。
- マッピングファイル: 元のモデルの出力テンソルとOpenVINOテンソル名のマッピングを保持します。
これらのファイルを使用して、OpenVINO推論エンジンによる推論を実行できます。
デプロイメントでのOpenVINOエクスポートの使用#
モデルがOpenVINO形式に正常にエクスポートされたら、推論を実行するために主に2つの選択肢があります:
-
高レベルAPIを提供し、OpenVINO Runtimeをラップする
ultralyticsパッケージを使用します。 -
推論動作をより高度に、またはカスタムで制御するには、ネイティブの
openvinoパッケージを使用します。
Ultralyticsでの推論#
ultralyticsパッケージを使用すると、predictメソッドを介してエクスポートされたOpenVINOモデルを使用して簡単に推論を実行できます。また、device引数を使用してターゲットデバイス(例:intel:gpu、intel:npu、intel:cpu)を指定することもできます。
from ultralytics import YOLO
# Load the exported OpenVINO model
ov_model = YOLO("yolo26n_openvino_model/") # the path of your exported OpenVINO model
# Run inference with the exported model
ov_model.predict(device="intel:gpu") # specify the device you want to run inference onこのアプローチは、推論パイプラインを完全に制御する必要がない場合、迅速なプロトタイピングやデプロイメントに最適です。
OpenVINO Runtimeでの推論#
OpenVINO Runtimeは、サポートされているすべてのインテルハードウェアで推論を行うための統一されたAPIを提供します。また、インテルハードウェア間でのロードバランスや非同期実行などの高度な機能も提供します。推論の実行の詳細については、YOLO26ノートブックを参照してください。
Runtimeを使用してモデルを適切に設定・使用するには、XMLファイルとBINファイルだけでなく、入力サイズや正規化のためのスケール係数など、アプリケーション固有の設定が必要になることに注意してください。
デプロイ用アプリケーションでは、通常以下の手順を実行します:
core = Core()を作成してOpenVINOを初期化します。core.read_model()メソッドを使用してモデルを読み込みます。core.compile_model()関数を使用してモデルをコンパイルします。- 入力(画像、テキスト、音声など)を準備します。
compiled_model(input_data)を使用して推論を実行します。
詳細な手順とコードスニペットについては、OpenVINOドキュメントまたはAPIチュートリアルを参照してください。
OpenVINO YOLO26ベンチマーク#
Ultralyticsチームは、さまざまなモデルフォーマットと精度でYOLO26のベンチマークを実施し、OpenVINOと互換性のあるさまざまなインテルデバイスでの速度と精度を評価しました。
-
以下のベンチマーク結果は参考値であり、システムの正確なハードウェアおよびソフトウェア構成、ならびにベンチマーク実行時のシステムの負荷状況によって異なる場合があります。
-
すべてのベンチマークは、
openvinoPythonパッケージのバージョン 2026.2.1 を使用して実行されました。 -
NPU上のYOLO26モデルは、2xxVシリーズおよび3xxシリーズ以降のIntel® Core™ Ultra™システムでのみサポートされています。
Intel® Core™ Ultra™#
Intel® Core™ Ultra™シリーズは、ゲーマーやクリエイターからAIを活用するプロフェッショナルまで、現代のユーザーの進化する需要を満たすよう設計された、高性能コンピューティングの新しい基準を象徴しています。この次世代ラインアップは従来のCPUシリーズの枠を超え、強力なCPUコア、統合された高性能GPU機能、専用のNeural Processing Unit(NPU)を単一チップに組み合わせており、多様で集中的な計算負荷に対して統合的なソリューションを提供します。
Intel® Core Ultra™アーキテクチャの中心には、従来の処理タスク、GPUアクセラレーション負荷、AI主導の操作全体で卓越したパフォーマンスを実現するハイブリッド設計があります。NPUの搭載はオンデバイスAI推論を強化し、幅広いアプリケーションでより高速で効率的な機械学習とデータ処理を可能にします。
Core Ultra™ファミリーには、さまざまなパフォーマンスニーズに合わせて調整された多様なモデルが含まれています。省電力設計から、「H」指定のハイパワーバリエーション(深刻な演算能力を必要とするラップトップや小型フォームファクタに最適)まで、幅広い選択肢が用意されています。ラインアップ全体を通して、ユーザーはCPU、GPU、NPU統合の相乗効果から恩恵を受け、優れた効率性、応答性、マルチタスク能力を実現します。
Intelの継続的なイノベーションの一環として、Core Ultra™シリーズは将来を見据えたコンピューティングの新しい基準を打ち立てています。複数のモデルが利用可能であり、今後もさらなる展開が予定されているこのシリーズは、次世代のインテリジェントでAIが強化されたデバイスに向けた、最先端のソリューションを提供するというIntelのコミットメントを強調するものです。
以下のベンチマークは、Intel® Core™ Ultra™ X7 358H、Intel® Core™ Ultra™ 7 258V、およびIntel® Core™ Ultra™ 7 155H上で、FP32、FP16、およびINT8精度にて実行されました。
Intel® Core™ Ultra™ X7 358H#
詳細なベンチマーク結果
| モデル | 形式 | 適合率 | ステータス | サイズ (MB) | metrics/mAP50-95(B) | 推論時間 (ms/im) |
|---|---|---|---|---|---|---|
| YOLO26n | PyTorch (CPU) | FP32 | ✅ | 5.3 | 0.4765 | 29.28 |
| YOLO26n | OpenVINO | FP32 | ✅ | 9.7 | 0.4762 | 4.09 |
| YOLO26n | OpenVINO | FP16 | ✅ | 5.1 | 0.4762 | 4.03 |
| YOLO26n | OpenVINO | INT8 | ✅ | 3.2 | 0.4634 | 4.24 |
| YOLO26s | PyTorch (CPU) | FP32 | ✅ | 19.5 | 0.5703 | 59.32 |
| YOLO26s | OpenVINO | FP32 | ✅ | 36.7 | 0.5616 | 5.08 |
| YOLO26s | OpenVINO | FP16 | ✅ | 18.7 | 0.5616 | 5.14 |
| YOLO26s | OpenVINO | INT8 | ✅ | 10.0 | 0.5462 | 4.47 |
| YOLO26m | PyTorch (CPU) | FP32 | ✅ | 42.2 | 0.6196 | 143.21 |
| YOLO26m | OpenVINO | FP32 | ✅ | 78.4 | 0.6166 | 7.1 |
| YOLO26m | OpenVINO | FP16 | ✅ | 39.5 | 0.6166 | 7.06 |
| YOLO26m | OpenVINO | INT8 | ✅ | 20.6 | 0.6055 | 5.61 |
| YOLO26l | PyTorch (CPU) | FP32 | ✅ | 50.7 | 0.6215 | 181.16 |
| YOLO26l | OpenVINO | FP32 | ✅ | 95.3 | 0.6205 | 8.45 |
| YOLO26l | OpenVINO | FP16 | ✅ | 48.1 | 0.6205 | 8.49 |
| YOLO26l | OpenVINO | INT8 | ✅ | 25.2 | 0.5938 | 6.25 |
| YOLO26x | PyTorch (CPU) | FP32 | ✅ | 113.2 | 0.6512 | 379.75 |
| YOLO26x | OpenVINO | FP32 | ✅ | 213.3 | 0.6568 | 13.03 |
| YOLO26x | OpenVINO | FP16 | ✅ | 107.1 | 0.6568 | 12.98 |
| YOLO26x | OpenVINO | INT8 | ✅ | 54.8 | 0.6385 | 8.74 |
Intel® Core™ Ultra™ 7 258V#
詳細なベンチマーク結果
| モデル | 形式 | 適合率 | ステータス | サイズ (MB) | metrics/mAP50-95(B) | 推論時間 (ms/im) |
|---|---|---|---|---|---|---|
| YOLO26n | PyTorch (CPU) | FP32 | ✅ | 5.3 | 0.4765 | 27.33 |
| YOLO26n | OpenVINO | FP32 | ✅ | 9.6 | 0.4764 | 3.33 |
| YOLO26n | OpenVINO | FP16 | ✅ | 5.1 | 0.4764 | 3.34 |
| YOLO26n | OpenVINO | INT8 | ✅ | 3.2 | 0.4634 | 3.46 |
| YOLO26s | PyTorch (CPU) | FP32 | ✅ | 19.5 | 0.5703 | 60.2 |
| YOLO26s | OpenVINO | FP32 | ✅ | 36.7 | 0.5616 | 4.66 |
| YOLO26s | OpenVINO | FP16 | ✅ | 18.6 | 0.5616 | 4.65 |
| YOLO26s | OpenVINO | INT8 | ✅ | 10.0 | 0.5462 | 3.99 |
| YOLO26m | PyTorch (CPU) | FP32 | ✅ | 42.2 | 0.6196 | 152.87 |
| YOLO26m | OpenVINO | FP32 | ✅ | 78.4 | 0.6168 | 9.03 |
| YOLO26m | OpenVINO | FP16 | ✅ | 39.5 | 0.6168 | 8.98 |
| YOLO26m | OpenVINO | INT8 | ✅ | 20.6 | 0.6055 | 5.7 |
| YOLO26l | PyTorch (CPU) | FP32 | ✅ | 50.7 | 0.6215 | 201.57 |
| YOLO26l | OpenVINO | FP32 | ✅ | 95.3 | 0.6203 | 11.32 |
| YOLO26l | OpenVINO | FP16 | ✅ | 48.1 | 0.6203 | 11.36 |
| YOLO26l | OpenVINO | INT8 | ✅ | 25.2 | 0.5938 | 7.45 |
| YOLO26x | PyTorch (CPU) | FP32 | ✅ | 113.2 | 0.6512 | 431.04 |
| YOLO26x | OpenVINO | FP32 | ✅ | 213.2 | 0.6568 | 19.08 |
| YOLO26x | OpenVINO | FP16 | ✅ | 107.1 | 0.6568 | 19.63 |
| YOLO26x | OpenVINO | INT8 | ✅ | 54.8 | 0.6385 | 13.69 |
Intel® Core™ Ultra™ 7 155H#
詳細なベンチマーク結果
| モデル | 形式 | 適合率 | ステータス | サイズ (MB) | metrics/mAP50-95(B) | 推論時間 (ms/im) |
|---|---|---|---|---|---|---|
| YOLO26n | PyTorch (CPU) | FP32 | ✅ | 5.3 | 0.4765 | 33.19 |
| YOLO26n | OpenVINO | FP32 | ✅ | 9.6 | 0.4758 | 9.13 |
| YOLO26n | OpenVINO | FP16 | ✅ | 5.1 | 0.4758 | 9.07 |
| YOLO26n | OpenVINO | INT8 | ✅ | 3.2 | 0.4573 | 5.79 |
| YOLO26s | PyTorch (CPU) | FP32 | ✅ | 19.5 | 0.5703 | 70.92 |
| YOLO26s | OpenVINO | FP32 | ✅ | 36.7 | 0.5616 | 16.37 |
| YOLO26s | OpenVINO | FP16 | ✅ | 18.6 | 0.5616 | 16.65 |
| YOLO26s | OpenVINO | INT8 | ✅ | 10.0 | 0.545 | 9.27 |
| YOLO26m | PyTorch (CPU) | FP32 | ✅ | 42.2 | 0.6196 | 192.45 |
| YOLO26m | OpenVINO | FP32 | ✅ | 78.4 | 0.6167 | 34.47 |
| YOLO26m | OpenVINO | FP16 | ✅ | 39.5 | 0.6167 | 35.71 |
| YOLO26m | OpenVINO | INT8 | ✅ | 20.6 | 0.6039 | 15.46 |
| YOLO26l | PyTorch (CPU) | FP32 | ✅ | 50.7 | 0.6215 | 239.19 |
| YOLO26l | OpenVINO | FP32 | ✅ | 95.3 | 0.621 | 43.24 |
| YOLO26l | OpenVINO | FP16 | ✅ | 48.1 | 0.621 | 43.4 |
| YOLO26l | OpenVINO | INT8 | ✅ | 25.2 | 0.5999 | 19.72 |
| YOLO26x | PyTorch (CPU) | FP32 | ✅ | 113.2 | 0.6512 | 511.89 |
| YOLO26x | OpenVINO | FP32 | ✅ | 213.2 | 0.6552 | 79.49 |
| YOLO26x | OpenVINO | FP16 | ✅ | 107.1 | 0.6552 | 79.45 |
| YOLO26x | OpenVINO | INT8 | ✅ | 54.8 | 0.642 | 34.66 |
結果の再現#
上記すべてのエクスポートフォーマットでUltralyticsのベンチマークを再現するには、次のコードを実行します。
from ultralytics import YOLO
# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")
# Benchmark YOLO26n speed and accuracy on the COCO128 dataset for all export formats
results = model.benchmark(data="coco128.yaml")ベンチマークの結果は、システムの正確なハードウェアおよびソフトウェア構成、ならびにベンチマーク実行時のシステムの現在の負荷によって異なる場合があることに注意してください。最も信頼性の高い結果を得るには、多数の画像を含むデータセット(例:data='coco.yaml'(5000枚の検証画像))を使用してください。
結論#
ベンチマークの結果から、YOLO26モデルをOpenVINO形式にエクスポートする利点が明確にわかります。さまざまなモデルやハードウェアプラットフォームにおいて、OpenVINO形式は推論速度の面で他の形式を一貫して上回り、同等の精度を維持しています。
これらのベンチマークは、ディープラーニングモデルをデプロイするためのツールとしてのOpenVINOの有効性を裏付けています。モデルをOpenVINO形式に変換することで、開発者はパフォーマンスを大幅に向上させ、実世界のアプリケーションへのデプロイを容易にすることができます。
OpenVINOの使用に関する詳細な情報と手順については、公式OpenVINOドキュメントを参照してください。
よくある質問 (FAQ)#
YOLO26モデルをOpenVINO形式にエクスポートするにはどうすればよいですか?#
YOLO26モデルをOpenVINO形式にエクスポートすることで、CPU速度を大幅に向上させ、Intelハードウェア上のGPUおよびNPUアクセラレーションを活用できるようになります。エクスポートには、以下に示すようにPythonまたはCLIのいずれかを使用できます。
from ultralytics import YOLO
# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")
# Export the model
model.export(format="openvino") # creates 'yolo26n_openvino_model/'詳細については、エクスポートフォーマットのドキュメントを参照してください。
YOLO26モデルでOpenVINOを使用する利点は何ですか?#
IntelのOpenVINOツールキットをYOLO26モデルで使用することには、いくつかの利点があります。
- パフォーマンス: CPU推論で最大3倍の速度向上を実現し、Intel GPUやNPUによるアクセラレーションを活用できます。
- モデルオプティマイザー: PyTorch、TensorFlow、ONNXなどの主要なフレームワークのモデルを変換、最適化、実行できます。
- 使いやすさ: YOLO26向けをはじめ、ユーザーがすぐに使い始められるよう多数のチュートリアルノートブックが用意されています。
- 異機種混合実行: 統一されたAPIを使用して、さまざまなIntelハードウェアにモデルをデプロイできます。
詳細なパフォーマンス比較については、ベンチマークセクションをご覧ください。
OpenVINOにエクスポートしたYOLO26モデルを使用して推論を実行するにはどうすればよいですか?#
YOLO26nモデルをOpenVINO形式にエクスポートした後、PythonまたはCLIを使用して推論を実行できます。
from ultralytics import YOLO
# Load the exported OpenVINO model
ov_model = YOLO("yolo26n_openvino_model/")
# Run inference
results = ov_model("https://ultralytics.com/images/bus.jpg")詳細については、predictモードのドキュメントを参照してください。
OpenVINOエクスポートにおいて、他のモデルではなくUltralytics YOLO26を選ぶべき理由は何ですか?#
Ultralytics YOLO26は、リアルタイム物体検出のために高い精度と速度を追求して最適化されています。特にOpenVINOと組み合わせることで、YOLO26は以下の利点を提供します。
- Intel CPUでの最大3倍の速度向上
- Intel GPUおよびNPUへのシームレスなデプロイ
- さまざまなエクスポート形式にわたる一貫した同等の精度
パフォーマンスの詳細な分析については、さまざまなハードウェアにおける詳細なYOLO26ベンチマークをご確認ください。
YOLO26モデルをPyTorch、ONNX、OpenVINOなどの異なる形式でベンチマークできますか?#
はい、YOLO26モデルはPyTorch、TorchScript、ONNX、OpenVINOを含む様々な形式でベンチマーク可能です。選択したデータセットでベンチマークを実行するには、以下のコードスニペットを使用してください。
from ultralytics import YOLO
# Load a YOLO26n PyTorch model
model = YOLO("yolo26n.pt")
# Benchmark YOLO26n speed and [accuracy](https://www.ultralytics.com/glossary/accuracy) on the COCO8 dataset for all export formats
results = model.benchmark(data="coco8.yaml")詳細なベンチマーク結果については、ベンチマークセクションおよびエクスポートフォーマットのドキュメントを参照してください。