تخطي إلى المحتوى

YOLO YOLOv10: تطور الكشف الفعال عن الكائنات في الوقت الفعلي

شهد مجال الرؤية الحاسوبية تطوراً سريعاً في هياكل الكشف عن الأجسام في الوقت الفعلي. عند مقارنة YOLO و YOLOv10، نلاحظ فلسفتين متميزتين في تصميم النموذج: البحث الآلي عن البنية مقابل التحسين الشامل NMS. في حين أن كلاهما يوسع حدود الدقة والسرعة، فإن هياكلهما الأساسية وحالات الاستخدام المثالية تختلف بشكل كبير.

YOLO: البحث عن بنية عصبية على نطاق واسع

تم تطويرYOLO بواسطة مجموعة Alibaba،YOLO ككاشف قوي يركز على الاستفادة من الاكتشاف الآلي لتحقيق الكفاءة الهيكلية.

  • المؤلفون: شيانزه شو، يي تشي جيانغ، وي هوا تشن، ييلون هوانغ، يوان تشانغ، وشيو يو صن
  • التاريخ: 23 نوفمبر 2022
  • Arxiv:2211.15444v2
  • GitHub:tinyvision/DAMO-YOLO

أبرز الملامح المعمارية

YOLO بشكل كبير على البحث عن البنية العصبية (NAS) لتحقيق التوازن بين الأداء والكمون. ويستخدم العمود الفقري له، المسمى MAE-NAS، البحث التطوري متعدد الأهداف في ظل ميزانيات حسابية صارمة للعثور على العمق والعرض الأمثل للطبقة.

للتعامل مع دمج الميزات عبر المقاييس، يستخدم النموذج شبكة RepGFPN (شبكة هرمية عامة للميزات المعاد معايرتها) فعالة. هذا التصميم الثقيل الرقبة بارع بشكل خاص في استخراج التسلسلات الهرمية المكانية المعقدة، مما يجعله مفيدًا في سيناريوهات مثل تحليل الصور الجوية. بالإضافة إلى ذلك،YOLO ZeroHead، وهو رأس كشف مبسط يقلل بشكل كبير من تعقيد طبقات التنبؤ النهائية، بالاعتماد على عملية تحسين تقطير قوية أثناء التدريب.

تدريب على التقطير

YOLO يستخدمYOLO عملية تقطير المعرفة متعددة المراحل. ويتطلب ذلك تدريب نموذج "مدرس" أثقل لتوجيه نموذج "طالب" أصغر، والذي يستخرج mAP متوسط الدقة) أعلى ولكنه يزيد بشكل كبير من وقت GPU المطلوب GPU .

تعرف على المزيد حول DAMO-YOLO

YOLOv10: رائد في مجال الكشف الشامل عن الأجسام

صدر YOLOv10 بعد عام ونصف، YOLOv10 تحولًا جذريًا من خلال التخلص تمامًا من الحاجة إلى تقنية Non-Maximum Suppression (NMS) أثناء الاستدلال.

أبرز الملامح المعمارية

الميزة البارزة في YOLOv10 مهامها المزدوجة المتسقة للتدريب NMS. تتنبأ أجهزة الكشف التقليدية بوجود عدة مربعات حدودية متداخلة لكائن واحد، مما يتطلب NMS التكرارات. تخلق خطوة المعالجة اللاحقة هذه عنق زجاجة، خاصة على الأجهزة الطرفية. YOLOv10 هذه المشكلة من خلال السماح للنموذج بالتنبؤ بشكل طبيعي بمربع حدودي واحد ودقيق لكل كائن.

ركز المؤلفون أيضًا على تصميم نموذج شامل قائم على الكفاءة والدقة. من خلال تحليل دقيق للتكرار الحسابي في البنى الحالية، قاموا بتحسين العمود الفقري والرأس لتقليل عدد FLOPs والمعلمات. يضمن هذا التصميم الخفيف الوزن YOLOv10 زمن استدلال استثنائي عند تصديره إلى تنسيقات مثل TensorRT أو OpenVINO.

تعرف على المزيد حول YOLOv10

الأداء والمعايير

يوضح الجدول أدناه مقاييس الأداء الأولية على COCO . تم تمييز أفضل القيم الإجمالية في كل عمود بالخط العريض.

النموذجالحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

بينماYOLO بدقته، يوفر YOLOv10 زمن انتقال أقل وأوزان نموذج أصغر بكثير. على سبيل المثال، يحقق YOLOv10s معدل mAP أعلى قليلاً mAP 46.7٪) من DAMO-YOLOs (46.0٪) مع استخدام أقل من نصف المعلمات (7.2 مليون مقابل 16.3 مليون). تجعل متطلبات الذاكرة المنخفضة من YOLOv10 متعدد الاستخدامات بشكل استثنائي للأنظمة المدمجة.

كفاءة التدريب وسهولة الاستخدام

عند الانتقال من البحث الأكاديمي إلى الإنتاج، فإن سهولة الاستخدام أمر بالغ الأهمية. يمكن أن تشكل عملية التقطير متعددة المراحل وتكوينات NAS المعقدةYOLO منحنيات تعلم حادة لفرق الهندسة.

على العكس من ذلك، YOLOv10 بشكل كبير من كونه مدمجًا بالكامل في Ultralytics Python . يتطلب تدريب نموذج مخصص الحد الأدنى من الكود النمطي. Ultralytics زيادة البيانات وضبط المعلمات الفائقة وتتبع التجارب تلقائيًا.

from ultralytics import YOLO

# Load a pretrained YOLOv10 nano model
model = YOLO("yolov10n.pt")

# Train on a custom dataset with built-in validation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image seamlessly
prediction = model("path/to/image.jpg")
prediction[0].show()

النماذج الأولية السريعة

يتيح استخدام Ultralytics للمطورين الانتقال من النموذج الأولي إلى ONNX مُصدَّر بالكامل في بضع أسطر من التعليمات البرمجية، متجاوزين الإعدادات المعقدة للبيئة التي تتطلبها الأطر القديمة.

حالات الاستخدام في العالم الحقيقي

  • التجزئة الذكية (YOLO): دقةYOLO مناسبة تمامًا لبيئات الخوادم عالية الكثافة التي تحلل سلوك العملاء حيث تتوفر وحدات معالجة الرسومات (GPU) بكثرة ويمكن إدارة NMS في الوقت الفعلي.
  • المركبات ذاتية القيادة (YOLOv10): تضمن البنية NMS زمن انتقال حتمي وقابل للتنبؤ، وهو أمر بالغ الأهمية لأنظمة السلامة في القيادة الذاتية.
  • الأتمتة الصناعية (YOLOv10): يتطلب اكتشاف العيوب في خطوط التجميع سريعة الحركة نماذج تعمل على زيادة سرعة الاستدلال في الوقت الفعلي إلى أقصى حد دون استهلاك مساحة كبيرة من ذاكرة VRAM، مما يجعل YOLOv10 مثاليًا للنشر على الحافة.

حالات الاستخدام والتوصيات

YOLOv10 الاختيار بينYOLO YOLOv10 على متطلبات مشروعك المحددة وقيود النشر وتفضيلات النظام البيئي.

متى تختار DAMO-YOLO

YOLO خيار قوي لـ:

  • تحليلات الفيديو عالية الإنتاجية: معالجة تدفقات الفيديو عالية معدل الإطارات في الثانية علىGPU NVIDIA GPU الثابتة حيث يكون إنتاجية الدفعة 1 هو المقياس الأساسي.
  • خطوط التصنيع الصناعي: سيناريوهات ذات قيود صارمة GPU على الأجهزة المخصصة، مثل فحص الجودة في الوقت الفعلي على خطوط التجميع.
  • أبحاث البحث عن البنية العصبية: دراسة تأثيرات البحث الآلي عن البنية (MAE-NAS) والبنى الأساسية المعاد معايرتها بكفاءة على أداء الكشف.

متى تختار YOLOv10

يوصى YOLOv10 في الحالات التالية:

  • الكشف في الوقت الفعليNMS: تطبيقات تستفيد من الكشف الشامل بدون قمع غير أقصى، مما يقلل من تعقيد النشر.
  • التوازن بين السرعة والدقة: المشاريع التي تتطلب توازناً قوياً بين سرعة الاستدلال ودقة الكشف عبر نماذج مختلفة.
  • تطبيقات ذات زمن انتقال ثابت: سيناريوهات النشر التي يكون فيها زمن الاستدلال المتوقع أمرًا بالغ الأهمية، مثل الروبوتات أو الأنظمة المستقلة.

متى تختار Ultralytics YOLO26)

بالنسبة لمعظم المشاريع الجديدة، يوفر Ultralytics أفضل مزيج من الأداء وتجربة المطور:

  • نشر الحافةNMS: التطبيقات التي تتطلب استنتاجًا متسقًا ومنخفض التأخير دون تعقيدات المعالجة اللاحقة لـ Non-Maximum Suppression.
  • بيئاتCPU: الأجهزة التي لا تحتوي على GPU مخصص، حيث يوفر CPU الأسرع بنسبة تصل إلى 43٪ في YOLO26 ميزة حاسمة.
  • كشف الأجسام الصغيرة: سيناريوهات صعبة مثل صور الطائرات بدون طيار أو تحليل مستشعرات إنترنت الأشياء حيث يعزز ProgLoss و STAL الدقة بشكل كبير على الأجسام الصغيرة.

الجيل القادم: دخول Ultralytics

بينما YOLOv10 الأساس للكشف NMS تطورت هذه التقنية بسرعة. بالنسبة للتطبيقات الحديثة، يوفر نموذج Ultralytics أداءً وقابلية استخدام لا مثيل لهما، حيث يستفيد من أفضل ما في الأجيال السابقة ويحسنها من أجل الإنتاج.

يتميز YOLO26 بتصميم داخلي صارم من طرف إلى طرف، مما يلغي الحاجة إلى NMS من أجل تبسيط عمليات النشر عبر الأجهزة الطرفية. علاوة على ذلك، أدى إزالة خسارة التركيز التوزيعي (DFL) إلى تحسين التوافق بشكل كبير مع أجهزة الذكاء الاصطناعي الطرفية منخفضة الطاقة.

على صعيد التدريب، يقدم YOLO26 مُحسّن MuSGD، وهو مُحسّن هجين مستوحى من تقنيات تدريب نموذج اللغة الكبيرة (LLM). ويضمن ذلك تدريباً أكثر استقراراً وتقارباً أسرع. إلى جانب وظائف الخسارة ProgLoss + STAL، يُظهر YOLO26 تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهي ميزة مهمة لحماية الحياة البرية وعمليات الطائرات بدون طيار.

والأهم من ذلك، أن YOLO26 ليس مجرد كاشف للأجسام. فهو يقدم تحسينات محددة للمهام على جميع الأصعدة، ويدعم بشكل أساسي تقسيم الحالات، وتقدير الوضع باستخدام تقدير الاحتمالية المتبقية (RLE)، وخسائر الزاوية المتخصصة للمربعات المحددة الاتجاه (OBB). وبفضل CPU الأسرع بنسبة تصل إلى 43% مقارنة بسابقاتها، فإنها تعد الخيار الأمثل لفرق الهندسة المرنة.

للإدارة المركزية والتعليق والتدريب السحابي لنماذج YOLO26، توفر Ultralytics واجهة سهلة الاستخدام تعمل على تبسيط دورة حياة الرؤية الحاسوبية بأكملها.

يمكن للمطورين المهتمين باستكشاف التطورات الحديثة الأخرى تقييم Ultralytics YOLO11 أو RT-DETR للسيناريوهات التي تتطلب حلولًا معمارية متميزة.


تعليقات