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

RTDETRv2 مقابل YOLOv10: التطورات في الكشف عن الكائنات في الوقت الحقيقي NMS

لقد كان التطور في مجال الرؤية الحاسوبية مدفوعًا إلى حد كبير بالسعي الدؤوب لتحقيق التوازن بين السرعة والدقة. تقليديًا، اعتمدت خطوط إنتاج الكشف عن الكائنات في الوقت الفعلي على تقنية Non-Maximum Suppression (NMS) كخطوة ما بعد المعالجة لتصفية المربعات المتداخلة. ومع ذلك، NMS اختناقات في زمن الاستجابة وتعقيدًا في ضبط المعلمات الفائقة. مؤخرًا، ظهرت طريقتان معماريتان متميزتان لحل هذه المشكلة بشكل أصلي: النماذج القائمة على المحولات مثل RTDETRv2 والنماذج القائمة على CNN مثل YOLOv10.

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

RTDETRv2: محولات الكشف في الوقت الحقيقي

RTDETRv2 مبني على RT-DETR الأصلية، بهدف الجمع بين فهم السياق العالمي لـ Vision Transformers ومتطلبات السرعة في الوقت الفعلي التي تهيمن عليها عادةً YOLO .

الخصائص الرئيسية:

  • المؤلفون: وينيو لوف، ييان تشاو، تشينياو تشانغ، كوي هوانغ، غوانزونغ وانغ، ويي ليو
  • المنظمة: Baidu
  • التاريخ: 2024-07-24
  • Arxiv: https://arxiv.org/abs/2407.17140
  • GitHub: RT-DETR

الهندسة المعمارية ومنهجيات التدريب

يستخدم RTDETRv2 بنية محول شاملة تتجنب NMS بشكل أساسي. وهو يحسن من سابقه من خلال إدخال نهج "Bag-of-Freebies" (حقيبة الهدايا المجانية)، وتحسين استراتيجية التدريب ودمج قدرات الكشف متعددة المقاييس. يستخدم النموذج هيكل CNN لاستخراج خرائط الميزات (التفاصيل المرئية مثل الحواف والأنسجة)، والتي تتم معالجتها بعد ذلك بواسطة بنية محول التشفير-الترميز. وهذا يسمح للنموذج بتحليل سياق الصورة بالكامل في وقت واحد، مما يجعله فعالًا للغاية في فهم المشاهد المعقدة حيث تكون الكائنات مكتظة أو متداخلة.

نقاط القوة والضعف

نقاط القوة:

  • السياق العالمي: تسمح آلية الانتباه للنموذج بالتفوق في البيئات المعقدة والمزدحمة.
  • NMS: يتنبأ مباشرة بإحداثيات الكائنات، مما يبسط عملية النشر.
  • دقة عالية: يحقق متوسط دقة ممتاز (mAP) على مجموعة COCO .

نقاط الضعف:

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

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

YOLOv10: الكشف الشامل عن الأجسام في الوقت الفعلي

YOLOv10 تحولًا كبيرًا في سلسلة اكتشافYOLO من خلال معالجة NMS طويل الأمد مباشرةً ضمن إطار عمل CNN.

الخصائص الرئيسية:

الهندسة المعمارية ومنهجيات التدريب

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

نقاط القوة والضعف

نقاط القوة:

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

نقاط الضعف:

  • مفهوم الجيل الأول: باعتباره أول YOLO هذه البنية المحددة NMS، فقد أرسى الأساس ولكنه ترك مجالًا لتعدد المهام والتنوع والتحسين الذي شوهد في الطرز اللاحقة مثل YOLO11 و YOLO26.

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

مقارنة الأداء

عند تقييم نماذج الإنتاج، من الضروري تحقيق التوازن بين الدقة والتكلفة الحسابية. يوضح الجدول أدناه المفاضلات في الأداء بين مختلف أحجام RTDETRv2 و YOLOv10.

النموذجالحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
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

بينما يوفر RTDETRv2 دقة عالية، YOLOv10 ميزة ملحوظة في زمن الاستجابة وكفاءة المعلمات، لا سيما في إصداراته الأصغر حجماً (Nano و Small)، مما يجعله جذاباً للغاية لتطبيقات الحوسبة الطرفية و AIoT.

اختيار المقياس المناسب

إذا كنت تقوم بالنشر على وحدات معالجة رسومات (GPU) من فئة الخوادم حيث حجم الدفعة و VRAM أقل تقييدًا، فإن الطرز الأكبر حجمًا (مثل -x أو -l) لتحقيق أقصى دقة. بالنسبة للأجهزة الطرفية مثل Raspberry Pi أو الهواتف المحمولة، أعط الأولوية لـ nano (-n) أو صغيرة (-s) المتغيرات للحفاظ على معدلات الإطارات في الوقت الفعلي.

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

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

متى تختار RT-DETR

RT-DETR خيار قوي لـ:

  • أبحاث الكشف القائمة على المحولات: مشاريع تستكشف آليات الانتباه وبنى المحولات من أجل الكشف الشامل عن الأجسام دون الحاجة إلى NMS.
  • سيناريوهات عالية الدقة مع زمن انتقال مرن: التطبيقات التي تكون فيها دقة الكشف هي الأولوية القصوى ويكون زمن الانتقال الاستدلالي الأعلى قليلاً مقبولاً.
  • كشف الأجسام الكبيرة: المشاهد التي تحتوي بشكل أساسي على أجسام متوسطة إلى كبيرة الحجم، حيث توفر آلية الانتباه الشامل للمحولات ميزة طبيعية.

متى تختار YOLOv10

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

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

متى تختار Ultralytics YOLO26)

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

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

Ultralytics : تقديم YOLO26

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

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

  • تصميم NMS من البداية إلى النهاية: بناءً على المفهوم الذي ابتكرته YOLOv10، يلغي YOLO26 بشكل أساسي NMS ، مما ينتج عنه منطق نشر أسرع وأبسط وتباين زمن انتقال صفر.
  • إزالة DFL: من خلال إزالة Distribution Focal Loss (فقدان بؤرة التوزيع)، يبسط YOLO26 عملية تصدير النموذج ويحسن بشكل كبير التوافق مع الأجهزة المتطورة والأجهزة منخفضة الطاقة.
  • MuSGD Optimizer: مزيج من SGD Muon (مستوحى من ابتكارات تدريب LLM)، يوفر هذا المحسن الجديد تدريبًا أكثر استقرارًا وتقاربًا أسرع بكثير مقارنة بالطرق التقليدية.
  • CPU أسرع بنسبة تصل إلى 43٪ CPU : تم تحسينه بعناية للبيئات التي لا تحتوي على وحدات معالجة رسومات مخصصة، مما يتيح للجميع الاستفادة من الذكاء الاصطناعي عالي الأداء في مجال الرؤية.
  • ProgLoss + STAL: توفر وظائف الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهو أمر بالغ الأهمية للتطبيقات التي تستخدم الطائرات بدون طيار وأجهزة استشعار إنترنت الأشياء.
  • تنوع لا مثيل له: على عكس النماذج المحدودة بمربعات الحدود، يدعم YOLO26 مجموعة كاملة من المهام بما في ذلك تقسيم المثيلات وتقدير الوضع وتصنيف الصور وكشف OBB، مع تحسينات خاصة بالمهام مثل تقدير الاحتمالية المتبقية (RLE) للوضع.

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

تنفيذ سلس باستخدام Python

تم تصميم تدريب ونشر هذه النماذج باستخدام واجهة برمجة Python Ultralytics Python بحيث تكون سلسة. متطلبات الذاكرة أقل بشكل ملحوظ أثناء التدريب مقارنة بالبنى الثقيلة المحولة، مما يتيح لك تدريب نماذج قوية على أجهزة قياسية.

from ultralytics import YOLO

# Load the cutting-edge YOLO26 model (recommended)
# Alternatively, load a YOLOv10 model using YOLO('yolov10n.pt')
model = YOLO("yolo26n.pt")

# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Easily export to various formats for edge deployment
model.export(format="onnx", simplify=True)

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


تعليقات