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

YOLOv10 ضد DAMO-YOLO: مقارنة فنية

يعد اختيار نموذج الكشف عن الكائنات الأمثل قرارًا حاسمًا يوازن بين المفاضلات بين الدقة والسرعة والتكلفة الحسابية. تقدم هذه الصفحة مقارنة فنية مفصلة بين YOLOv10، وهو أحدث نموذج عالي الكفاءة مدمج في نظام Ultralytics البيئي، و DAMO-YOLO، وهو كاشف قوي من مجموعة Alibaba. سنقوم بتحليل بنياتها ومقاييس الأداء وحالات الاستخدام المثالية لمساعدتك في اتخاذ خيار مستنير لمشاريع رؤية الحاسوب الخاصة بك.

YOLOv10: كشف شامل في الوقت الفعلي

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

تفاصيل فنية:
المؤلفون: Ao Wang, Hui Chen, Lihao Liu, et al.
المنظمة:Tsinghua University
التاريخ: 2024-05-23
Arxiv:https://arxiv.org/abs/2405.14458
GitHub:https://github.com/THU-MIG/yolov10
المستندات:https://docs.ultralytics.com/models/yolov10/

البنية والميزات الرئيسية

تم بناء YOLOv10 على إطار عمل Ultralytics القوي، حيث يرث سهولة استخدامه ونظامه البيئي القوي. تقدم بنيته العديد من التطورات الرئيسية لتحقيق كفاءة وأداء فائقين:

  • تدريب بدون NMS: يستخدم YOLOv10 تعيينات مزدوجة متسقة للتسميات أثناء التدريب. يتيح ذلك للنموذج إنتاج تنبؤات نظيفة دون الحاجة إلى خطوة المعالجة اللاحقة لـ NMS، مما يبسط خط أنابيب النشر ويجعله شاملاً حقًا.
  • تصميم شامل للكفاءة والدقة: تم تحسين بنية النموذج بشكل شامل لتقليل التكرار الحسابي. يتضمن ذلك رأس تصنيف خفيف الوزن وتقليل أبعاد مفصول مكانيًا وقنواتيًا، مما يعزز كلاً من السرعة والقدرة.
  • تكامل سلس مع Ultralytics: كجزء من نظام Ultralytics البيئي، يستفيد YOLOv10 من تجربة مستخدم مبسطة. ويشمل ذلك Python API بسيط، و وثائق شاملة، و عمليات تدريب فعالة، وأوزان مُدرَّبة مسبقًا متاحة بسهولة. هذا التكامل يجعل من السهل للغاية على المطورين البدء ونشر النماذج بسرعة.

أهمية التخلص من NMS

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

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

DAMO-YOLO: كفاءة مدفوعة بـ NAS

DAMO-YOLO هو نموذج سريع ودقيق لاكتشاف الكائنات تم تطويره بواسطة مجموعة Alibaba. تم إصداره في نوفمبر 2022، وقدم العديد من التقنيات الجديدة لدفع حدود أداء أجهزة detect بنمط YOLO، مع التركيز بشكل كبير على التحسين المعماري من خلال خوارزميات البحث.

تفاصيل فنية:
المؤلفون: Xianzhe Xu, Yiqi Jiang, Weihua Chen, et al.
المنظمة:Alibaba Group
التاريخ: 2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444
GitHub:https://github.com/tinyvision/DAMO-YOLO
المستندات:https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md

البنية والميزات الرئيسية

تستكشف DAMO-YOLO تقنيات متقدمة لتحسين المفاضلة بين السرعة والدقة. تتميز بنيتها بما يلي:

  • البحث عن التصميم العصبي (NAS): تم إنشاء الهيكل الأساسي لـ DAMO-YOLO باستخدام NAS، مما يتيح شبكة استخلاص الميزات مُحسَّنة للغاية ومصممة خصيصًا لمهام الكشف.
  • عنق RepGFPN فعال: يتضمن تصميمًا جديدًا لـ شبكة هرم الميزات (FPN) يسمى RepGFPN يدمج الميزات بكفاءة من مقاييس مختلفة.
  • ZeroHead and AlignedOTA: يستخدم النموذج رأسًا مبسطًا بصفر معلمة واستراتيجية محسنة لتعيين التسميات تسمى AlignedOTA (تعيين النقل الأمثل المحاذي) لتحسين دقة detect وتحديد الموقع.
  • تقطير المعرفة: تستفيد DAMO-YOLO من تقطير المعرفة لتعزيز أداء النماذج الأصغر حجمًا عن طريق التعلم من شبكات التدريس الأكبر.

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

مقارنة أداء مباشرة

يقارن الجدول التالي أداء أحجام نماذج YOLOv10 و DAMO-YOLO المختلفة على مجموعة بيانات COCO. يُظهر YOLOv10 باستمرار أداءً فائقًا، حيث يقدم دقة أعلى مع وقت استجابة أقل وعدد أقل من المعلمات.

النموذجالحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
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
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

كما تظهر البيانات، تتفوق نماذج YOLOv10 بشكل عام على نظيراتها من DAMO-YOLO في الكفاءة. على سبيل المثال، يحقق YOLOv10-S قيمة mAP أعلى (46.7 مقابل 46.0) من DAMO-YOLO-S مع كونه أسرع بشكل ملحوظ (2.66 مللي ثانية مقابل 3.45 مللي ثانية) ولديه أقل من نصف عدد المعلمات (7.2 مليون مقابل 16.3 مليون). هذا الاتجاه مستمر عبر جميع أحجام النماذج، وبلغ ذروته بوصول YOLOv10-X إلى أعلى mAP وهو 54.4.

تحليل نقاط القوة والضعف

نقاط قوة YOLOv10

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

نقاط قوة DAMO-YOLO

  • أداء عالي: يحقق DAMO-YOLO دقة وسرعة تنافسيتين، مما يجعله منافسًا قويًا في مجال الكشف عن الأجسام.
  • تقنيات مبتكرة: يتضمن مفاهيم بحثية متطورة مثل NAS واستراتيجيات متقدمة لتعيين التسميات والتي تعتبر ذات قيمة للاستكشاف الأكاديمي.

نقاط الضعف

  • YOLOv10: في حين أنه استثنائي لـ اكتشاف الكائنات، يركز YOLOv10 حاليًا على هذه المهمة الفردية فقط، على عكس Ultralytics YOLO11 متعدد الاستخدامات الذي يدعم التقطيع والتصنيف وتقدير الوضعية خارج الصندوق.
  • DAMO-YOLO: إن بنية النموذج ومسار التدريب الخاص به أكثر تعقيدًا مقارنةً بـ YOLOv10. وهو متاح بشكل أساسي داخل صناديق أدوات بحثية محددة، والتي يمكن أن تكون عائقًا أمام المطورين الذين يفضلون حلاً أكثر تكاملاً وسهل الاستخدام مثل الحل الذي تقدمه Ultralytics.

ميزة Ultralytics

في حين أن كلا النموذجين مثيران للإعجاب، إلا أن نماذج Ultralytics مثل YOLOv10 و YOLO11 الرائدة توفر ميزة واضحة للمطورين والباحثين:

  1. نظام بيئي موحد: توفر Ultralytics نظامًا أساسيًا متماسكًا حيث يحدث شرح البيانات والتدريب والنشر بسلاسة.
  2. سهولة الاستخدام: مع واجهة Python API بسيطة، يمكنك تحميل نموذج وتشغيل الاستدلال في بضعة أسطر فقط من التعليمات البرمجية.
  3. تنوع الاستخدامات: يدعم Ultralytics مجموعة واسعة من المهام بما في ذلك تقسيم المثيلات، و تصنيف الصور، و تقدير الوضعية، و الصناديق المحيطة الموجهة (OBB).
  4. دعم المجتمع: يضمن المجتمع النابض بالحياة والوثائق الشاملة عدم تعثرك في مشكلة لفترة طويلة.

مثال للاستخدام: YOLOv10 مع Ultralytics

يعد تشغيل YOLOv10 أمرًا مباشرًا باستخدام حزمة Ultralytics Python. إليك كيفية تحميل نموذج مُدرَّب مسبقًا وتشغيل التنبؤ على صورة:

from ultralytics import YOLO

# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")

# Perform object detection on an image
results = model("path/to/image.jpg")

# Display the results
results[0].show()

الخلاصة

يعتبر كل من YOLOv10 و DAMO-YOLO نموذجين هائلين للكشف عن الكائنات. يعتبر DAMO-YOLO مرجعًا ممتازًا للبحث في architectures القائمة على NAS ودمج الميزات المتقدمة. ومع ذلك، بالنسبة للنشر العملي وكفاءة MLOps، يبرز YOLOv10 باعتباره الخيار الأفضل. تضمن بنيته الخالية من NMS، جنبًا إلى جنب مع نظام Ultralytics البيئي الشامل، أنه يمكنك الانتقال من المفهوم إلى الإنتاج بشكل أسرع وبأداء أفضل.

بالنسبة للمستخدمين الذين يحتاجون إلى تنوع أكبر عبر مهام رؤية متعددة، نوصي بشدة باستكشاف YOLO11، الذي يحدد أحدث ما توصلت إليه عائلة YOLO.

استكشف مقارنات النماذج الأخرى

لمعرفة كيف تتفوق هذه النماذج على البنى الرائدة الأخرى، تحقق من هذه المقارنات:


تعليقات