DL StreamerパイプラインフレームワークとOpenVINO™を使用した、Intel Core Ultra Series 3上のUltralytics YOLO26#
DL Streamer Pipeline FrameworkおよびOpenVINO™ toolkitを使用して、Intel Core Ultra Series 3プラットフォーム上にUltralytics YOLO26をデプロイするための詳細な手順を説明する包括的なガイドです。ここでは、IntelのCPU、内蔵およびディスクリートGPU、NPUでの推論性能を最大化するためにOpenVINO™を使用します。
目次: What is Intel DL Streamer? • Prerequisites • YOLO26 Model Preparation • Running Inference with YOLO26 • Multi-Stream Setup • FAQ
Intel DL Streamerとは?#
Deep Learning Streamer (DL Streamer) Pipeline Framework は、GStreamer マルチメディアフレームワークをベースにしたオープンソースのストリーミングメディア分析フレームワークであり、クラウドやエッジ向けの複雑なメディア分析パイプラインを作成できるように設計されています。
DL Streamerは、オーディオおよびビデオストリームの解析を可能にし、オブジェクト、イベント、人物の検出、分類、追跡、識別、カウントを行います。Intelハードウェア向けに最適化されており、様々なバックエンドライブラリ上に構築されたGStreamerプラグイン間の相互運用性を提供します。
- 推論: Intel の CPU、GPU、NPU 向けに最適化された OpenVINO™ 推論エンジン
- ビデオエンコード/デコード: VA-API経由のGPUアクセラレーション
- 画像処理: VA-API経由のGPUアクセラレーション
- メタデータ: 構造化された推論結果のためのGStreamer Analytics
- エコシステム: メディアI/O、多重化/分離、コーデックサポートなどのための数百ものGStreamerプラグイン
DL Streamerは、すべてOpenVINO™形式の、Ultralytics YOLOファミリー全体(YOLOv5からYOLO26まで)を含む多くのAIモデルをサポートしています。
DL Streamer は、System Requirements — Open Edge Platform Documentation で提供されているシステムで定期的に検証されています。
前提条件#
開始する前に、Intelシステム上で以下がインストールおよび設定されていることを確認してください。
YOLO26モデルの準備#
DL Streamer は、OpenVINO™ IR format のモデルを使用します。Ultralytics YOLO26 モデルは、Ultralyticsエクスポーターを使用してPyTorchからOpenVINO™ IRにエクスポートされます。DL Streamer は、Intel ハードウェア向けに最適化されたエクスポートおよび推論機能を提供する公式の Ultralytics OpenVINO™ integration を活用しています。
~/intel/dlstreamer_demoフォルダーを作成し、仮想環境に OpenVINO™ と Ultralytics をインストールします
mkdir -p ~/intel/dlstreamer_demo && cd ~/intel/dlstreamer_demo
python3 -m venv .dls-venv && source .dls-venv/bin/activate
pip install openvino==2026.2.0 ultralytics==8.4.92- UltralyticsからPyTorch YOLO26sモデルをダウンロードし、OpenVINO™ IR形式に変換して、INT8精度バリアントを生成します。
yolo export model=yolo26s.pt format=openvino dynamic=True quantize=8 data=coco128.yamlモデルは ~/intel/dlstreamer_demo/yolo26s_int8_openvino_model フォルダーにダウンロードする必要があります。
モデル精度#
DL StreamerはFP32、FP16、およびINT8精度のモデルをサポートしています。それぞれに個別のエクスポート手順が必要です。
# FP32 (default precision, highest accuracy)
yolo export model=yolo26s.pt format=openvino dynamic=True
# FP16 (recommended for GPU inference, good accuracy/performance balance)
yolo export model=yolo26s.pt format=openvino dynamic=True quantize=16
# INT8 (maximum performance, requires calibration dataset)
yolo export model=yolo26s.pt format=openvino dynamic=True quantize=8 data=coco128.yaml以下の例では、準備ステップでエクスポートされた INT8 モデルを使用します。FP32 または FP16 モデルを使用するには、それに応じてモデルパスを置き換えます(例:yolo26s_openvino_model/yolo26s.xml)。
YOLO26による推論の実行#
DL Streamer の YOLO26 推論検出パイプラインを実行する前に、インタラクティブモードで DL Streamer の docker イメージを実行します。 YOLO26 Model Preparation ステップに従って、Pexels データベースから次のビデオファイルをダウンロードしてください。
curl -L https://videos.pexels.com/video-files/1192116/1192116-sd_640_360_30fps.mp4 --output ~/intel/dlstreamer_demo/video1.mp4DL Streamer Dockerイメージをインタラクティブモードで実行します。
このコマンドは、内蔵GPU(iGPU)およびNPUを搭載したIntel Core Ultra Series 3プロセッサを備えたシステムを対象としています。
docker run -it --rm \
-v ~/intel/dlstreamer_demo:/home/dlstreamer/demo \
-v "$HOME/.Xauthority:/root/.Xauthority:rw" \
-e DISPLAY=$DISPLAY \
-e XDG_RUNTIME_DIR=/tmp \
-v /tmp/.X11-unix:/tmp/.X11-unix \
--device /dev/dri \
--group-add $(stat -c "%g" /dev/dri/render*) \
--device /dev/accel \
--group-add $(stat -c "%g" /dev/accel/accel*) \
-e ZE_ENABLE_ALT_DRIVERS=libze_intel_npu.so \
intel/dlstreamer:latestINT8精度(最大パフォーマンス)#
INT8量子化は、モデルの重みを8ビット整数に削減することで、最大の処理能力を実現します。Ultralyticsエクスポート機能はキャリブレーションを自動的に処理します。
GPU上でINT8を使用してYOLO26sを実行します。#
gst-launch-1.0 filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU ! queue ! vapostproc ! gvawatermark ! gvafpscounter ! autovideosink sync=false
GPU上でINT8を使用してYOLO26sを実行し、出力をビデオファイル(~/intel/dlstreamer_demo/yolo_video1_yolo26s_INT8_GPU.mp4)に保存します。#
gst-launch-1.0 filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU ! queue ! vapostproc ! gvawatermark ! gvafpscounter ! vah264enc ! h264parse ! mp4mux ! filesink location=/home/dlstreamer/demo/yolo_video1_yolo26s_INT8_GPU.mp4NPU上でINT8を使用してYOLO26sを実行します。#
gst-launch-1.0 filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=NPU ! queue ! vapostproc ! gvawatermark ! gvafpscounter ! autovideosink sync=false
マルチストリーム設定#
DL Streamer はマルチストリーム処理をサポートしており、複数のビデオソースを同時にデコードして推論することができます。GStreamerの vacompositor エレメントを使用して複数のパイプラインを並行して起動し、複数のストリームを組み合わせることができます。
複数のパイプライン(4ストリーム)の並列実行(GPU)#
gst-launch-1.0 vacompositor name=comp sink_0::xpos=0 sink_0::ypos=0 sink_1::xpos=660 sink_1::ypos=0 sink_2::xpos=0 sink_2::ypos=380 sink_3::xpos=660 sink_3::ypos=380 ! autovideosink sync=false \
filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU model-instance-id=inf0 scheduling-policy="latency" ! queue ! gvawatermark ! gvafpscounter ! comp.sink_0 \
filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU model-instance-id=inf0 scheduling-policy="latency" ! queue ! gvawatermark ! gvafpscounter ! comp.sink_1 \
filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU model-instance-id=inf0 scheduling-policy="latency" ! queue ! gvawatermark ! gvafpscounter ! comp.sink_2 \
filesrc location=/home/dlstreamer/demo/video1.mp4 ! decodebin3 ! gvadetect model=/home/dlstreamer/demo/yolo26s_int8_openvino_model/yolo26s.xml device=GPU model-instance-id=inf0 scheduling-policy="latency" ! queue ! gvawatermark ! gvafpscounter ! comp.sink_3
よくある質問 (FAQ)#
IntelプラットフォームでDL Streamerを使用してUltralytics YOLO26をセットアップするにはどうすればよいですか?#
インストールガイドに従って DL Streamer をインストールし、source /opt/intel/dlstreamer/scripts/setup_dls_env.sh で環境を設定し、Ultralytics と OpenVINO™ をインストールし、download_ultralytics_models.sh を使用してモデルをダウンロードします。次に、YOLO26 推論パイプラインを実行するためのすぐに使えるスクリプトを提供する DL Streamer のサンプルアプリケーション yolo_detect.sh で推論を実行します。実行方法については、簡単なチュートリアルを確認してください。
Intelハードウェア上でYOLO26とOpenVINO™を使用する利点は何ですか?#
OpenVINO™ は、グラフ最適化、レイヤー融合、ハードウェア固有のカーネルチューニングなどの手法を通じて、Intel ハードウェア専用に YOLO26 モデルを最適化します。DL Streamer の VA-API アクセラレーテッドデコードおよびゼロコピーの va-surface-sharing 前処理と組み合わせることで、完全なビデオ分析パイプラインは最適化されていないフレームワークよりも大幅に高いスループットを実現します。
異なるIntelデバイス上でDL Streamerを使用してYOLO26を実行できますか?#
はい。DL Streamer は、複数の Intel プラットフォーム世代にわたる Intel CPU(Core、Core Ultra、Xeon)、内蔵 GPU(Iris Xe、Arc)、ディスクリート GPU(Arc A シリーズ、B シリーズ)、および NPU(AI Boost)での推論をサポートしています。単に DEVICE パラメーターを CPU、GPU、または NPU に変更するだけです。
FP16とINT8の精度のどちらを選択すべきですか?#
- FP16は、GPU推論のデフォルトとして推奨されます。FP32に近い精度を維持しつつ、約2倍のスループット向上を実現します。
- INT8は、わずかな精度のトレードオフで最大のパフォーマンス(FP32比で2~3倍)を提供し、最大スループットが優先される場合に最適です。INT8モデルは、Ultralyticsエクスポート中に自動的にキャリブレーションされます。
どのYOLO26タスクがサポートされていますか?#
DL Streamerは、すべてのYOLO26タスクバリアントをサポートしています: - 検出: yolo26n, yolo26s, yolo26m, yolo26l, yolo26x - 指向性バウンディングボックス (OBB): yolo26s-obb(およびすべてのサイズバリアント) - インスタンスセグメンテーション: yolo26s-seg(およびすべてのサイズバリアント) - 姿勢推定: yolo26s-pose(およびすべてのサイズバリアント) - 分類: yolo26s-cls(検出との複合パイプライン)
検出結果を構造化データとしてエクスポートするにはどうすればよいですか?#
json 出力オプションを使用して、検出結果を JSON ラインとしてファイルに書き込みます。
./yolo_detect.sh yolo26s GPU input_video.mp4 json va-surface-sharing INT8または、カスタムパイプラインで gvametapublish エレメントを使用して、メタデータをファイル、MQTT、または Kafka にパブリッシュします。