رؤية YOLO لعام 2026:

Ultralytics YOLO26 على معالجات Intel Core Ultra Series 3 باستخدام إطار عمل خط أنابيب DL Streamer وOpenVINO™#

يقدم هذا الدليل الشامل شرحاً تفصيلياً لنشر Ultralytics YOLO26 على منصات Intel Core Ultra Series 3 باستخدام DL Streamer Pipeline Framework ومجموعة أدوات OpenVINO™. نستخدم هنا OpenVINO™ لتحقيق أقصى أداء للاستدلال على وحدة المعالجة المركزية (CPU) من Intel، ووحدات معالجة الرسومات المدمجة والمستقلة، ووحدات المعالجة العصبيّة (NPU).

Intel DL Streamer

المحتويات: ما هو Intel DL Streamer؟المتطلبات الأساسيةإعداد نموذج YOLO26تشغيل الاستدلال باستخدام YOLO26إعداد التدفقات المتعددةالأسئلة الشائعة

ما هو Intel DL Streamer؟#

Deep Learning Streamer (DL Streamer) Pipeline Framework هو إطار عمل لتحليل وسائط البث مفتوح المصدر مستند إلى إطار عمل الوسائط المتعددة GStreamer، ومصمم لإنشاء مسارات تحليل وسائط معقدة للسحابة أو على حافة الشبكة (Edge).

يمكّن DL Streamer من تحليل تدفقات الصوت والفيديو لاكتشاف الكائنات والأحداث والأشخاص وتصنيفهم وتتبعهم وتحديد هويتهم وعدّهم. إنه مُحسّن لأجهزة Intel ويوفر قابلية التشغيل البيني بين إضافات GStreamer المبنية على مكتبات خلفية مختلفة:

  • الاستدلال: محرك الاستدلال OpenVINO™، المُحسَّن لوحدات المعالجة المركزية (CPU) ووحدات معالجة الرسومات (GPU) ووحدات المعالجة العصبيّة (NPU) من Intel
  • ترميز/فك تشفير الفيديو: تسريع وحدة معالجة الرسومات عبر VA-API
  • معالجة الصور: تسريع وحدة معالجة الرسومات عبر VA-API
  • البيانات الوصفية: GStreamer Analytics لنتائج الاستدلال المهيكلة
  • النظام البيئي: مئات من إضافات GStreamer لإدخال/إخراج الوسائط، والدمج/الفك، ودعم الترميز، والمزيد

يدعم DL Streamer العديد من نماذج الذكاء الاصطناعي بما في ذلك عائلة Ultralytics YOLO الكاملة (من YOLOv5 إلى YOLO26) جميعها بتنسيق OpenVINO™.

يتم التحقق من صحة DL Streamer بانتظام مع الأنظمة المتوفرة في متطلبات النظام — وثائق Open Edge Platform

المتطلبات الأساسية#

قبل البدء، تأكد من تثبيت وتكوين ما يلي على نظام Intel الخاص بك:

إعداد نموذج YOLO26#

يستخدم DL Streamer النماذج بتنسيق OpenVINO™ IR format. يتم تصدير نماذج Ultralytics YOLO26 من PyTorch إلى OpenVINO™ IR باستخدام أداة التصدير من Ultralytics. يستفيد DL Streamer من تكامل Ultralytics OpenVINO™ الرسمي، والذي يوفر إمكانات تصدير واستدلال محسنة لأجهزة Intel.

  1. أنشئ المجلد ~/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
  1. قم بتنزيل نموذج PyTorch YOLO26s من Ultralytics، وقم بتحويله إلى تنسيق 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 في الوضع التفاعلي. تأكد من اتباع خطوة إعداد نموذج YOLO26 وتنزيل ملف الفيديو التالي من قاعدة بيانات Pexels.

curl -L https://videos.pexels.com/video-files/1192116/1192116-sd_640_360_30fps.mp4 --output ~/intel/dlstreamer_demo/video1.mp4

قم بتشغيل صورة DL Streamer docker في الوضع التفاعلي.

ملاحظة

هذا الأمر مخصص للأنظمة المجهزة بمعالجات Intel Core Ultra Series 3 مع وحدة معالجة رسومات مدمجة (iGPU) ووحدة معالجة عصبية (NPU) مدمجة.

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:latest

دقة INT8 (أقصى أداء)#

يوفر تكميم INT8 أعلى معدل نقل من خلال تقليل أوزان النموذج إلى أعداد صحيحة من 8 بت. تتعامل أداة التصدير من Ultralytics مع المعايرة تلقائياً.

تشغيل YOLO26s مع INT8 على GPU#

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
Intel DL Streamer GPU

تشغيل YOLO26s مع INT8 على GPU، وحفظ الإخراج في ملف فيديو (~/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.mp4

تشغيل YOLO26s مع INT8 على NPU#

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
Intel DL Streamer NPU

إعداد البث المتعدد#

يدعم DL Streamer معالجة التدفقات المتعددة، حيث يتم فك تشفير مصادر فيديو متعددة واستدلالها في وقت واحد. يمكنك إطلاق مسارات متعددة بشكل متوازٍ باستخدام عنصر vacompositor في GStreamer لدمج تدفقات متعددة.

تشغيل خطوط أنابيب متعددة (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
Intel DL Streamer Multistream GPU

موارد إضافية#

الأسئلة الشائعة#

  • قم بتثبيت DL Streamer باتباع دليل التثبيت، واضبط البيئة باستخدام source /opt/intel/dlstreamer/scripts/setup_dls_env.sh، وثبّت Ultralytics وOpenVINO™، وقُم بتنزيل النماذج باستخدام download_ultralytics_models.sh. ثم قُم بتشغيل الاستدلال باستخدام تطبيق عينة DL Streamer yolo_detect.sh الذي يوفر نصاً برمجياً جاهزاً للاستخدام لتشغيل مسارات استدلال YOLO26. راجع البرنامج التعليمي القصير حول كيفية تشغيله.

  • يعمل OpenVINO™ على تحسين نموذج YOLO26 خصيصاً لأجهزة Intel من خلال تقنيات مثل تحسين الرسم البياني (graph optimization)، ودمج الطبقات (layer fusion)، وضبط وحدات المعالجة الخاصة بالأجهزة. وبالاشتراك مع فك التشفير المُسَرَّع بواسطة VA-API في DL Streamer ومعالجة va-surface-sharing المسبقة بدون نسخ (zero-copy)، يحقق مسار تحليل الفيديو بالكامل معدل إنتاجية أعلى بكثير مقارنة بالأطر غير المُحسَّنة.

  • نعم. يدعم DL Streamer الاستدلال على وحدات المعالجة المركزية من Intel (Core، Core Ultra، Xeon)، ووحدات معالجة الرسومات المدمجة (Iris Xe، Arc)، ووحدات معالجة الرسومات المستقلة (Arc A-Series، B-Series)، ووحدات المعالجة العصبيّة NPU (AI Boost) عبر أجيال منصات Intel المتعددة. ما عليك سوى تغيير معلمة DEVICE إلى CPU أو GPU أو NPU.

    • FP16 موصى به كافتراضي لاستدلال GPU — فهو يوفر دقة قريبة من FP32 مع تحسن في معدل النقل يقارب الضعف.
    • INT8 يوفر أعلى أداء (2-3 أضعاف مقارنة بـ FP32) مع مقايضة طفيفة في الدقة، وهو مثالي عندما تكون الأولوية لأقصى معدل نقل. يتم معايرة نماذج INT8 تلقائياً أثناء تصدير Ultralytics.
  • يدعم DL Streamer جميع متغيرات مهام YOLO26: - الاكتشاف (Detection): yolo26n, yolo26s, yolo26m, yolo26l, yolo26x - صندوق الإحاطة الموجه (OBB): yolo26s-obb (وجميع متغيرات الحجم) - تجزئة المثيل (Instance Segmentation): yolo26s-seg (وجميع متغيرات الحجم) - تقدير الوضع (Pose Estimation): yolo26s-pose (وجميع متغيرات الحجم) - التصنيف (Classification): yolo26s-cls (خط أنابيب مركب مع الاكتشاف)

  • استخدم خيار الإخراج json لكتابة نتائج الاكتشاف كتنسيق JSON-lines في ملف:

    ./yolo_detect.sh yolo26s GPU input_video.mp4 json va-surface-sharing INT8

    بدلاً من ذلك، استخدم عنصر gvametapublish في المسارات المخصصة لنشر البيانات الوصفية إلى الملفات، أو بروتوكول MQTT، أو Kafka.

التعليقات