Ultralytics YOLOv10 YOLOv5: تطور الكشف عن الكائنات في الوقت الفعلي
يتطلب اختيار نموذج الكشف عن الأجسام المناسب تحقيق التوازن بين كفاءة البنية وقيود النشر ودعم المجتمع. تستكشف هذه المقارنة الشاملة الاختلافات التقنية بين YOLOv10، وهو اختراق أكاديمي في مجال الكشف الشامل، و YOLOv5، المعيار الصناعي الأسطوري الذي أعاد تعريف سهولة الاستخدام في الرؤية الحاسوبية.
يمثل كلا النموذجين قفزات كبيرة في YOLO . في حين أن YOLOv5 المعيار الذهبي لتجربة المستخدم والموثوقية، YOLOv10 حدود زمن الاستجابة من خلال إزالة القمع غير الأقصى (NMS) من خط أنابيب الاستدلال. بالنسبة للمطورين الذين يبحثون عن أحدث ما توصلت إليه التكنولوجيا في مجال السرعة والبنية الشاملة، فإن Ultralytics الذي تم إصداره مؤخرًا يبني على هذه الأسس مع تحسينات فائقة للأجهزة المتطورة.
مقارنة مقاييس الأداء
يوضح الجدول أدناه المفاضلات في الأداء بين البنيتين. توفر YOLOv10 دقة أعلى (mAP) وتقضي على NMS بينما YOLOv5 خيارًا تنافسيًا للغاية نظرًا لدعمها الواسع للنشر ونضجها.
| النموذج | الحجم (بالبكسل) | mAPval 50-95 | السرعة وحدة المعالجة المركزية CPU ONNX (بالمللي ثانية) | السرعة T4 TensorRT10 (بالمللي ثانية) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
YOLOv10: المبتكر الشامل
YOLOv10 تحولًا جذريًا من خلال التخلص من الحاجة إلى تقنية Non-Maximum Suppression (NMS) أثناء المعالجة اللاحقة. وهذا يتيح نشرًا شاملاً بالفعل، مما يقلل من زمن الاستدلال وتعقيده.
الميزات المعمارية الرئيسية
- تدريبNMS: يستخدم مهام مزدوجة متسقة للتدريب NMS، مما يمكّن النموذج من التنبؤ مباشرةً بمربعات الحدود المميزة.
- تصميم الكفاءة الشاملة: يعمل على تحسين مختلف المكونات (مثل العمود الفقري والرقبة) لتقليل التكرار الحسابي.
- تقليل الدقة المكانية-القناة المنفصلة: يحسن الاحتفاظ بالمعلومات أثناء تقليل حجم خريطة الميزات.
- تصميم الكتل الموجه بالرتبة: يكيّف مراحل الكتل لتقليل التكرار بناءً على تحليل الرتبة الجوهري.
المؤلفون: Ao Wang، Hui Chen، Lihao Liu، وآخرون.
المنظمة:جامعة تسينغهوا
التاريخ: 2024-05-23
الروابط:Arxiv | GitHub
زمن الوصول من طرف إلى طرف
من خلال إزالة NMS يقلل YOLOv10 من تباين الاستدلال. في YOLO القياسية، يتناسب NMS مع عدد الكائنات المكتشفة، مما قد يتسبب في ارتفاعات في زمن الاستجابة في المشاهد المزدحمة. يجعل وقت الإخراج الثابت YOLOv10 منه خيارًا مثاليًا للأنظمة التي تعمل في الوقت الفعلي مع ميزانيات زمنية صارمة.
YOLOv5: المعيار الصناعي
أطلقت Ultralytics عام 2020، YOLOv5 هذا المجال ليس فقط من خلال هندستها، ولكن من خلال سهولة الوصول إليها. فقد أعطت الأولوية لتجربة سلسة "جاهزة للاستخدام"، وقابلية تصدير قوية، ونظام دعم ضخم.
نقاط القوة الرئيسية
- نظام بيئي ناضج: تيسر الوثائق الشاملة والبرامج التعليمية ودعم المجتمع عملية استكشاف الأخطاء وإصلاحها.
- توافق واسع النطاق: TensorRT دعم التصدير لـ TFLite و CoreML و ONNX و TensorRT إمكانية النشر على أي جهاز تقريبًا، من iOS إلى وحدات TPU المتطورة.
- تعدد الاستخدامات: دعم أصلي لتقسيم المثيلات وتصنيف الصور إلى جانب الكشف.
- استقرار التدريب: معروف بكونه قويًا في مواجهة تغيرات المعلمات الفائقة والتقارب الموثوق به في مجموعات البيانات المخصصة المتنوعة.
المؤلف: جلين جوشر
المنظمة:Ultralytics
التاريخ: 2020-06-26
الروابط:GitHub | Docs
مقارنة تفصيلية
الهندسة المعمارية والتدريب
YOLOv10 تحسينات تشبه Transformer والتمييز المتقدم حسب القناة لتحقيق دقة عالية بمعلمات أقل. تسمح استراتيجية "التعيين المزدوج المتسق" الخاصة به بالتعلم المطابق واحد لواحد أثناء التدريب، مما يلغي NMS .
YOLOv5 هيكل CSPDarknet الكلاسيكي مع PANet neck، وهو مُحسّن لتحقيق التوازن بين السرعة والدقة. ويستخدم الكشف القائم على المراسي، والذي يتطلب ضبطًا دقيقًا لمربعات المراسي للحصول على الأداء الأمثل على مجموعات البيانات الفريدة، على الرغم من أن ميزة تطوير المراسي التلقائي تتولى ذلك تلقائيًا لمعظم المستخدمين.
حالات الاستخدام والتطبيقات الواقعية
السيناريوهات المثالية لـ YOLOv10:
- الحشود الكثيفة: حيث NMS يبطئ NMS المعالجة بسبب تداخل العديد من المربعات.
- الروبوتات منخفضة الكمون: حيث يكون وقت الاستدلال المتسق أمرًا بالغ الأهمية لدورات التحكم.
- البحث الأكاديمي: لدراسة آليات الكشف الشاملة واستراتيجيات تخصيص العلامات.
السيناريوهات المثالية لـ YOLOv5:
- النشر على الأجهزة المحمولة: خطوط أنابيب مجربة iOS Android iOS باستخدام TFLite CoreML.
- الفحص الصناعي: حيث الاستقرار طويل الأمد وقابلية التكرار أكثر أهمية من أحدث تقنيات mAP.
- مشاريع للمبتدئين: أسهل نقطة انطلاق للطلاب الذين يتعلمون الرؤية الحاسوبية.
سهولة الاستخدام والنظام البيئي
YOLOv5 بدمجه في نظام Ultralytics . يمكن للمستخدمين تصور عمليات التدريب باستخدام Comet track ونشر النماذج بسلاسة. تعمل Ultralytics على تبسيط ذلك بشكل أكبر من خلال توفير واجهة بدون كود لإدارة مجموعات البيانات وتدريب النماذج.
على الرغم من أن YOLOv10 فيPython Ultralytics Python YOLOv10 يتيح استخدام صيغة مألوفة، إلا أنه في المقام الأول مساهمة أكاديمية. وبالتالي، قد لا يتلقى نفس تكرار التحديثات أو عمق الصيانة مثل Ultralytics الأساسية مثل YOLO11 أو YOLO26 المتطورة.
أمثلة برمجية
يتشارك كلا النموذجين Ultralytics الموحدة، مما يسهل التبديل بينهما لإجراء المقارنات المعيارية.
from ultralytics import YOLO
# Load a pretrained YOLOv10 model
model_v10 = YOLO("yolov10n.pt")
# Train YOLOv10 on a custom dataset
model_v10.train(data="coco8.yaml", epochs=100, imgsz=640)
# Load a pretrained YOLOv5 model (via the v8/v11/26 compatible loader)
model_v5 = YOLO("yolov5nu.pt")
# Train YOLOv5 using the modern Ultralytics engine
model_v5.train(data="coco8.yaml", epochs=100, imgsz=640)
الخلاصة: أيهما تختار؟
إذا كانت أولويتك هي الدقة المتطورة واتساق زمن الاستجابة، خاصة في المشاهد المزدحمة، YOLOv10 هو خيار ممتاز. توفر ابتكاراته المعمارية لمحة عن مستقبل الكشف NMS.
ومع ذلك، إذا كنت بحاجة إلى حل تم اختباره في الميدان مع أدلة نشر شاملة ودعم واسع للأجهزة وأقصى قدر من الاستقرار، YOLOv5 يظل خيارًا قويًا.
بالنسبة للمطورين الذين يرغبون في الحصول على أفضل ما في العالمين —استدلال شامل NMS ودقة فائقة، ودعم كامل من Ultralytics — نوصي بشدة باستكشاف YOLO26. يدمج YOLO26 التصميم NMS الذي ابتكره YOLOv10 يعززه بمحسن MuSGD ووظائف الخسارة المحسنة للحصول على CPU أسرع بنسبة تصل إلى 43٪ CPU .
اكتشف المزيد من النماذج
- YOLO11: الجيل السابق من SOTA، الذي يوفر تنوعًا ممتازًا في المهام.
- RT-DETR: كاشف يعمل في الوقت الحقيقي يعتمد على محول ويزيل أيضًا NMS.
- YOLO26: أحدث وأكثر النماذج تقدمًا من Ultralytics ويتميز بمعالجة شاملة وتحسين الحافة.