RTDETRv2 مقابل YOLOv10#
لقد كان تطور رؤية الحاسوب مدفوعاً بشكل كبير بالسعي الحثيث لتحقيق التوازن بين السرعة والدقة. تقليدياً، اعتمدت خطوط معالجة كشف الأجسام في الوقت الفعلي على تقنية "إلغاء الحد الأقصى غير الضروري" (NMS) كخطوة معالجة لاحقة لتصفية صناديق التحديد المتداخلة. ومع ذلك، تؤدي تقنية NMS إلى اختناقات في وقت الاستجابة وضبط معقد للمعاملات الفائقة. مؤخراً، ظهر نهجان معماريان متميزان لحل هذه المشكلة بشكل أصيل: النماذج القائمة على Transformer مثل RTDETRv2 والنماذج القائمة على CNN مثل YOLOv10.
يقدم هذا الدليل مقارنة تقنية شاملة لهذين النموذجين، حيث يحلل معماريتهما، ومقاييس الأداء، وحالات الاستخدام المثالية، مع تسليط الضوء أيضاً على كيفية توفير أحدث الابتكارات في نظام Ultralytics البيئي للحل الأمثل للنشر الحديث.
RTDETRv2: محولات اكتشاف الوقت الفعلي#
يعتمد RTDETRv2 على معمارية RT-DETR الأصلية، بهدف الجمع بين فهم السياق العالمي لـ Vision Transformers ومتطلبات السرعة في الوقت الفعلي التي تهيمن عليها تقليدياً نماذج YOLO.
الخصائص الرئيسية:
- المؤلفون: Wenyu Lv، Yian Zhao، Qinyao Chang، Kui Huang، Guanzhong Wang، و Yi Liu
- المؤسسة: Baidu
- التاريخ: 2024-07-24
- Arxiv: https://arxiv.org/abs/2407.17140
- GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
البنية ومنهجيات التدريب#
يستخدم RTDETRv2 معمارية transformer شاملة (end-to-end) تتجنب تقنية NMS بشكل أساسي. وهو يتحسن عن سابقه من خلال تقديم نهج "مجموعة الهدايا" (Bag-of-Freebies)، مما يعمل على تحسين استراتيجية التدريب ودمج قدرات الكشف متعددة النطاقات. يستخدم النموذج هيكلاً أساسياً من نوع CNN لاستخراج خرائط الميزات (تفاصيل بصرية مثل الحواف والقوام)، والتي تتم معالجتها بعد ذلك بواسطة هيكل ترميز-فك تشفير (encoder-decoder) من نوع transformer. يسمح هذا للنموذج بتحليل سياق الصورة بالكامل في وقت واحد، مما يجعله فعالاً للغاية في فهم المشاهد المعقدة حيث تكون الأجسام متكدسة أو متداخلة بكثافة.
نقاط القوة والضعف#
نقاط القوة:
- السياق العالمي: تسمح آلية الانتباه للنموذج بالتفوق في البيئات المعقدة والمزدحمة.
- خالٍ من NMS: يتنبأ بإحداثيات الأجسام مباشرة، مما يبسط خط أنابيب النشر.
- دقة عالية: يحقق متوسط دقة متوسط (mAP) ممتازاً على مجموعة بيانات COCO.
نقاط الضعف:
- استهلاك مكثف للموارد: تتطلب معماريات Transformer عادةً ذاكرة CUDA أكثر بكثير أثناء التدريب مقارنة بـ CNNs، مما يجعل ضبطها الدقيق مكلفاً على الأجهزة القياسية.
- تباين سرعة الاستنتاج: على الرغم من سرعته، يمكن أن تؤدي حسابات الانتباه الثقيلة إلى انخفاض إطارات في الثانية في رؤية الحاسوب على الأجهزة الطرفية التي تفتقر إلى مسرعات AI مخصصة.
YOLOv10: اكتشاف كائنات في الوقت الفعلي ومن الطرف إلى الطرف (End-to-End)#
يمثل YOLOv10 تحولاً رئيسياً في سلالة كشف الأجسام YOLO من خلال معالجة اختناق NMS المستمر مباشرة ضمن إطار عمل CNN.
الخصائص الرئيسية:
- المؤلفون: Ao Wang، Hui Chen، Lihao Liu، وآخرون.
- المنظمة: جامعة تسينغhua
- التاريخ: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
البنية ومنهجيات التدريب#
الابتكار الجوهري في YOLOv10 هو تخصيصاته المزدوجة المتسقة للتدريب بدون NMS. فهو يستخدم رأسي كشف أثناء التدريب: أحدهما بتخصيص واحد-للكثير (مثل YOLOs التقليدية) لتوفير إشارات إشراف غنية، والآخر بتخصيص واحد-لواحد للقضاء على الحاجة إلى NMS. أثناء الاستنتاج، يتم استخدام الرأس واحد-لواحد فقط، مما يؤدي إلى عملية شاملة (end-to-end). علاوة على ذلك، طبق المؤلفون استراتيجية تصميم نموذج قائمة على الكفاءة والدقة الشاملة، مما أدى إلى تحسين المكونات المختلفة بشكل شامل لتقليل التكرار الحسابي.
نقاط القوة والضعف#
نقاط القوة:
- سرعة فائقة: من خلال إزالة NMS وتحسين المعمارية، يحقق YOLOv10 زمن استجابة استنتاج منخفضاً للغاية.
- الكفاءة: يتطلب عدداً أقل من المعلمات وعمليات الفاصلة العائمة (FLOPs) لتحقيق دقة مماثلة للنماذج الأخرى، مما يجعله مناسباً جداً للبيئات المقيدة.
- عمليات نشر بدون NMS: تبسط التكامل في التطبيقات الطرفية مثل المراقبة الذكية.
نقاط الضعف:
- مفهوم الجيل الأول: كأول نموذج YOLO يطبق هذه المعمارية المحددة الخالية من NMS، وضع حجر الأساس ولكنه ترك مجالاً لتعدد المهام والتحسينات التي تظهر في النماذج اللاحقة مثل YOLO11 و YOLO26.
مقارنة الأداء#
عند تقييم النماذج للإنتاج، يعد موازنة الدقة مع التكلفة الحسابية أمراً بالغ الأهمية. يسلط الجدول أدناه الضوء على مقايضات الأداء بين أحجام مختلفة من RTDETRv2 و YOLOv10.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ms) | السرعة T4 TensorRT10 (ms) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
بينما يوفر RTDETRv2 دقة قوية، يظهر YOLOv10 ميزة ملحوظة في زمن الاستجابة وكفاءة المعلمات، خاصة في متغيراته الأصغر (Nano و Small)، مما يجعله جذاباً للغاية لتطبيقات الحوسبة الطرفية و AIoT.
إذا كنت تنشر على وحدات معالجة رسومية (GPUs) من فئة الخوادم حيث تكون حجم الدفعة وذاكرة الفيديو (VRAM) أقل تقييداً، فإن النماذج الأكبر (مثل -x أو -l) تزيد الدقة إلى أقصى حد. بالنسبة للأجهزة الطرفية مثل Raspberry Pi أو الهواتف المحمولة، أعط الأولوية للمتغيرات nano (-n) أو small (-s) للحفاظ على معدلات إطارات في الوقت الفعلي.
حالات الاستخدام والتوصيات#
يعتمد الاختيار بين RT-DETR و YOLOv10 على متطلبات مشروعك المحددة، وقيود النشر، وتفضيلات النظام البيئي.
متى تختار RT-DETR#
RT-DETR خيار قوي لـ:
- أبحاث الاكتشاف القائمة على Transformer: المشاريع التي تستكشف آليات الانتباه وهياكل transformer لاكتشاف الكائنات بنهاية واحدة دون NMS.
- سيناريوهات الدقة العالية مع زمن انتقال مرن: التطبيقات التي تكون فيها دقة الاكتشاف هي الأولوية القصوى ويكون زمن انتقال الاستنتاج الأعلى قليلاً مقبولاً.
- اكتشاف الكائنات الكبيرة: المشاهد التي تحتوي بشكل أساسي على كائنات متوسطة إلى كبيرة حيث توفر آلية الانتباه العالمي للمحولات ميزة طبيعية.
متى تختار YOLOv10#
يوصى باستخدام YOLOv10 في الحالات التالية:
- الكشف الفوري بدون NMS: التطبيقات التي تستفيد من الكشف الشامل (end-to-end) بدون تقنية Non-Maximum Suppression، مما يقلل من تعقيد النشر.
- الموازنة بين السرعة والدقة: المشاريع التي تتطلب توازناً قوياً بين سرعة الاستدلال ودقة الكشف عبر مختلف أحجام النماذج.
- تطبيقات زمن الاستجابة المتسق: سيناريوهات النشر التي تكون فيها أوقات الاستدلال القابلة للتنبؤ أمراً بالغ الأهمية، مثل الروبوتات أو الأنظمة ذاتية القيادة.
متى تختار Ultralytics (YOLO26)#
بالنسبة لمعظم المشاريع الجديدة، يقدم Ultralytics YOLO26 أفضل مزيج من الأداء وتجربة المطورين:
- نشر الحافة الخالي من NMS: التطبيقات التي تتطلب استنتاجاً متسقاً ومنخفض زمن الانتقال دون تعقيدات معالجة ما بعد المعالجة باستخدام كبت غير الأقصى.
- بيئات وحدة المعالجة المركزية (CPU) فقط: الأجهزة التي لا تحتوي على تسريع مخصص بوحدة معالجة الرسوميات (GPU)، حيث توفر سرعة استنتاج CPU أسرع بنسبة تصل إلى 43% في YOLO26 ميزة حاسمة.
- اكتشاف الكائنات الصغيرة: السيناريوهات الصعبة مثل صور الطائرات بدون طيار أو تحليل مستشعرات IoT حيث تعزز ProgLoss و STAL الدقة بشكل كبير على الكائنات الصغيرة جداً.
ميزة Ultralytics: تقديم YOLO26#
بينما يوفر كل من RTDETRv2 و YOLOv10 تطورات أكاديمية مقنعة، فإن نشرها في سيناريوهات العالم الحقيقي يتطلب نظاماً برمجياً قوياً ومصان جيداً. توفر منصة Ultralytics تجربة مطور لا مثيل لها، تجمع بين سهولة الاستخدام، والوثائق الشاملة، والأدوات القوية لـ توسيم البيانات والنشر.
بالنسبة للمطورين الذين يسعون للحصول على أحدث التقنيات في عام 2026، فإن Ultralytics YOLO26 هو التوصية النهائية. فهو يجمع بين أفضل الأفكار من كلا المعمارتين مع تقديم تحسينات رائدة:
- تصميم شامل (End-to-End) بدون NMS: بناءً على المفهوم الذي ابتكره YOLOv10، يلغي YOLO26 معالجة NMS اللاحقة أصلاً، مما يؤدي إلى منطق نشر أسرع وأبسط وتباين زمن استجابة صفري.
- إزالة DFL: من خلال إزالة Distribution Focal Loss، يبسط YOLO26 تصدير النموذج ويحسن التوافق بشكل كبير مع الأجهزة الطرفية ومنخفضة الطاقة.
- مُحسن MuSGD: هجين من SGD و Muon (مستوحى من ابتكارات تدريب LLM)، يوفر هذا المُحسن الجديد تدريباً أكثر استقراراً وتقارباً أسرع بكثير مقارنة بالطرق التقليدية.
- استنتاج أسرع بنسبة تصل إلى 43% على وحدة المعالجة المركزية (CPU): تم تحسينه بعناية للبيئات التي لا تحتوي على وحدات معالجة رسومية مخصصة، مما يضفي طابعاً ديمقراطياً على رؤية الذكاء الاصطناعي عالية الأداء.
- ProgLoss + STAL: تحقق دوال الخسارة المتقدمة هذه تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهو أمر بالغ الأهمية لـ التطبيقات التي تستخدم الطائرات بدون طيار ومستشعرات IoT.
- تعدد استخدامات لا مثيل له: على عكس النماذج المقتصرة على صناديق التحديد، يدعم YOLO26 مجموعة كاملة من المهام بما في ذلك تجزئة الأجسام، وتقدير الوضع، وتصنيف الصور، وكشف OBB، مع استكمال تحسينات خاصة بالمهمة مثل تقدير احتمالية اللوغاريتم المتبقي (RLE) للوضع.
تنفيذ سلس باستخدام Python#
تم تصميم تدريب ونشر هذه النماذج باستخدام واجهة برمجة تطبيقات Ultralytics Python لتكون خالية من الاحتكاك. متطلبات الذاكرة أقل بشكل ملحوظ أثناء التدريب مقارنة بالمعماريات الثقيلة المعتمدة على transformer، مما يسمح لك بتدريب نماذج قوية على أجهزة قياسية.
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 يتقن هذه الصيغة، مقدماً أفضل توازن بين الأداء، والمرونة، والجاهزية للإنتاج.