YOLOv10 مقابل PP-YOLOE+: مقارنة تقنية شاملة
يعد اختيار النموذج الصحيح للكشف عن الأجسام خطوة محورية في تطوير تطبيقات رؤية حاسوبية فعالة. يتضمن الاختيار غالبًا المفاضلة بين سرعة الاستدلال ودقة الكشف وقيود الأجهزة. تحلل هذه المقارنة التقنية YOLOv10، وهو كاشف متكامل في الوقت الحقيقي من جامعة تسينغهوا، ونموذج PP-YOLOE+، وهو نموذج عالي الدقة من نظام PaddlePaddle من بايدو. يقدم كلا النموذجين ابتكارات معمارية مهمة، لكنهما يلبيان احتياجات النشر وبيئات التطوير المختلفة.
YOLOv10: المعيار الجديد للكشف من البداية إلى النهاية في الوقت الفعلي
يمثّل YOLOv10 قفزة كبيرة في سلسلة YOLO (أنت تنظر مرة واحدة فقط) ، مع التركيز على إزالة اختناقات الأداء المرتبطة بالمعالجة اللاحقة التقليدية. تم تطويره من قِبل باحثين في جامعة تسينغهوا، وهو يحقق زمن استجابة أقل وكفاءة أعلى من خلال التخلص من الحاجة إلى الكبت غير الأقصىNMS.
المؤلفون: Ao Wang, Hui Chen, Lihao Liu, et al.
المنظمة:جامعة تسينغهوا
التاريخ: 2024-05-23
ArXiv:https://arxiv.org/abs/2405.14458
GitHub:https://github.com/THU-MIG/yolov10
Docsultralytics
البنية والميزات الرئيسية
يقدم YOLOv10 استراتيجية تعيين ثنائية متسقة أثناء التدريب. تسمح هذه الطريقة للنموذج بالتنبؤ بأفضل مربع واحد لكل كائن أثناء الاستدلال، مما يلغي الحاجة إلى المعالجة اللاحقةNMS . هذا التصميمNMS" يقلل بشكل كبير من زمن الاستنتاج، خاصةً في المشاهد التي تحتوي على مجموعات أجسام كثيفة.
تشمل التطورات المعمارية الرئيسية ما يلي:
- تصميم شامل بين الكفاءة والدقة: يوظف النموذج رؤوس تصنيف خفيفة الوزن وتقليل التباين بين القنوات المكانية لتقليل التكلفة الحسابية(FLOPs) دون التضحية بالدقة.
- تصميم الكتل الموجهة بالترتيب: لتحسين المفاضلة بين السرعة والدقة، تستخدم مراحل مختلفة من النموذج تصاميم كتل مختلفة، مما يقلل من التكرار في الطبقات العميقة.
- التلافيف ذات النواة الكبيرة: يعزز الاستخدام الاستراتيجي للتلافيف ذات النواة الكبيرة المجال الاستقبالي مما يسمح للنموذج بفهم السياق بشكل أفضل detect الأجسام الصغيرة.
نقاط القوة والضعف
صُمم YOLOv10 لتحقيق أقصى قدر من الكفاءة، مما يجعله خياراً هائلاً للتطبيقات في الوقت الحقيقي.
- نقاط القوة: يؤدي التخلص من NMS إلى سرعات استدلالية حتمية أسرع. يوفر كفاءة فائقة في استخدام البارامترات، ويحقق درجات عالية mAP بمعلمات أقل من سابقاتها. يضمن تكامله في نظام Ultralytics سهولة تدريبه ونشره باستخدام واجهة برمجة تطبيقاتPython API بسيطة.
- نقاط الضعف: بصفته كاشفاً متخصصاً للأجسام، فإنه يركز حالياً بشكل أساسي على اكتشاف الصندوق المحدود، في حين أن النماذج الأخرى في مجموعة Ultralytics تدعم مجموعة أوسع من المهام مثل التجزئة وتقدير الوضع.
حالات الاستخدام المثالية
- الروبوتات المستقلة: تُعد طبيعة YOLOv10 ذات الكمون المنخفض أمرًا بالغ الأهمية للروبوتات التي تتطلب اتخاذ قرارات في جزء من الثانية للملاحة وتجنب العقبات.
- نشر الذكاء الاصطناعي على الحافة: مع وجود متغيرات صغيرة مثل YOLOv10 فهي مناسبة تماماً للأجهزة المتطورة مثل NVIDIA Jetson أو Raspberry Pi.
- مراقبة حركة المرور: إن قدرة النموذج على التعامل مع المشاهد الكثيفة دون الحاجة إلى NMS في الوقت الفعلي تجعله مثاليًا لإدارة حركة المرور في الوقت الفعلي.
PP-YOLOE+: الهندسة الدقيقة في نظام PaddlePaddle البيئي
PP-YOLOE+ هو تطوير لسلسلة PP-YOLOE، التي طورتها Baidu. تم تصميمه كجهاز كشف قابل للتطوير وخالٍ من المراسي يعطي الأولوية للدقة العالية. وهو بمثابة نموذج حجر الزاوية في PaddlePaddle المحسّن خصيصًا لتلك البيئة.
المؤلفون: PaddlePaddle المؤلفون
المنظمة:بايدو
التاريخ: 2022-04-02
ArXiv:https://arxiv.org/abs/2203.16250
GitHub:PaddlePaddle
المستندات:PaddlePaddle
البنية والميزات الرئيسية
تتبنى PP-YOLOE+ بنية خالية من الارتكاز، مما يبسّط مساحة البحث في المعلمة الفائقة مقارنةً بسابقاتها القائمة على الارتكاز.
تشمل الميزات الرئيسية ما يلي:
- العمود الفقري CSPRepResNet: يجمع هذا العمود الفقري بين مزايا التدفق المتدرج لشبكة CSPNet وكفاءة الاستدلال لمجموعات ResNet المعاد تحديدها.
- تعلُّم محاذاة المهام (TAL): استراتيجية تعيين التسمية المتخصصة التي تعمل على مواءمة جودة تصنيف الارتكاز مع دقة التوطين بشكل ديناميكي.
- الرأس الفعال المتوافق مع المهام (ET-Head): رأس كشف منفصل يعالج ميزات التصنيف والتوطين بشكل مستقل لتجنب التعارض.
نقاط القوة والضعف
يعد PP-YOLOE+ نموذجًا قويًا ولكنه ينطوي على تبعيات قد تؤثر على اعتماده.
- نقاط القوة: يوفر دقة ممتازة في معايير مثل COCOخاصةً في تكويناته الأكبر (L وX). تم تحسينه بشكل كبير للأجهزة التي يدعمها محرك الاستدلال PaddlePaddle .
- نقاط الضعف: القيد الأساسي هو اعتمادها على نظام PaddlePaddle البيئي. بالنسبة للمطورين الذين اعتادوا على PyTorchفإن الترحيل إلى PP-YOLOE+ ينطوي على منحنى تعليمي أكثر حدة واحتكاك محتمل في تكامل الأدوات. بالإضافة إلى ذلك، فإن عدد معلماته أعلى بكثير من YOLOv10 للحصول على دقة مماثلة، مما يؤدي إلى استخدام ذاكرة أعلى.
حالات الاستخدام المثالية
- الفحص الصناعي: دقة عالية تجعله مناسبًا للكشف عن العيوب الدقيقة في التصنيع.
- تحليلات البيع بالتجزئة: فعالة لعد المخزون والتعرف على المنتجات في بيئات البيع بالتجزئة الذكية.
- فرز المواد: يُستخدم في مرافق إعادة التدوير للفرز الآلي للمواد المتنوعة.
تحليل الأداء: الكفاءة مقابل الدقة
عند مقارنة المقاييس التقنية، يُظهر YOLOv10 ميزة واضحة في الكفاءة. فهو يحقق دقة مماثلة أو متفوقةmAP) مع استخدام عدد أقل بكثير من المعلمات والموارد الحسابية (FLOPs).
| النموذج | الحجم (بالبكسل) | mAPفال 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 |
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
النقاط الرئيسية
- الكفاءة: يُحقق YOLOv10l mAP أعلى في استخدام المعلمات(53.3%) مقارنةً بـ PP-YOLOE+l (52.9%) مع استخدام معلمات أقل بنسبة 44% تقريبًا. وهذا يجعل YOLOv10 أخف في التخزين وأسرع في التحميل.
- السرعة: يُترجم تصميم YOLOv10 NMS إلى زمن انتقال أقل في جميع المجالات. على سبيل المثال، يتميز YOLOv10n بسرعة استثنائية تبلغ 1.56 مللي ثانية، مما يجعله متفوقًا في تحليلات الفيديو عالية السرعة.
- قابلية التوسع: على الرغم من أن PP-YOLOE+x يتمتع بميزة طفيفة في mAP الخام (أعلى بنسبة 0.3%)، إلا أنه يتطلب ضعف المعلمات تقريبًا (98.42 مليون مقابل 56.9 مليون) وعمليات التشغيل المتتالية مقارنةً بـ YOLOv10x.
كفاءة الذاكرة
عادةً ما تُظهر نماذج Ultralytics مثل YOLOv10 و YOLO11 متطلبات ذاكرة أقل أثناء التدريب والاستدلال مقارنةً بالبنى القديمة أو النماذج القائمة على المحولات الثقيلة. تسمح هذه الكفاءة بأحجام دفعات أكبر ودورات تدريب أسرع على أجهزة GPU القياسية.
ميزة Ultralytics
في حين أن كلا النموذجين قادران، فإن اختيار نموذج داخل نظامUltralytics - مثل YOLOv10 أو أحدث طراز YOLO11-يوفر مزايا مميزة للمطورين.
- سهولة الاستخدام: تلخصواجهة برمجة تطبيقات Ultralytics Python API التعليمات البرمجية النمطية المعقدة. يمكنك تدريب نموذج والتحقق من صحته ونشره ببضعة أسطر من Python.
- نظام بيئي جيد الصيانة: يستفيد المستخدمون من التحديثات المتكررة، ومجتمع نابض بالحياة على GitHub، والتكامل السلس مع أدوات MLOPS مثل Ultralytics HUB و Weights & Biases.
- تعدد الاستخدامات: بالإضافة إلى الكشف القياسي عن الأجسام، تدعم أطر Ultralytics تجزئة النماذج وتصنيف الصور وتقدير الوضعية والكشف عن الصندوق المحيط الموجه (OBB) ، مما يوفر حلاً موحدًا لمهام الرؤية الحاسوبية المتنوعة.
مثال على الكود: تشغيل YOLOv10 مع Ultralytics
يعد دمج YOLOv10 في سير عملك أمرًا سهلاً ومباشرًا باستخدام مكتبة Ultralytics :
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Run inference on an image
results = model.predict("path/to/image.jpg")
# Display the results
results[0].show()
الخلاصة
في المقارنة بين YOLOv10وPP-YOLOOE+، يبرز YOLOv10 كخيار متفوق لمعظم تطبيقات الرؤية الحاسوبية ذات الأغراض العامة. تعمل بنيتهNMS على حل عنق الزجاجة طويل الأمد في زمن انتقال اكتشاف الأجسام، كما أن استخدام المعلمات عالي الكفاءة يجعله متاحًا للنشر على نطاق أوسع من الأجهزة، بدءًا من الأجهزة المتطورة إلى الخوادم السحابية.
لا يزال PP-YOLOE+ منافسًا قويًا للمستخدمين المرتبطين بشكل صارم بإطار عمل PaddlePaddle أو أولئك الذين يعطون الأولوية للمكاسب الهامشية في الدقة على الكفاءة الحسابية. ومع ذلك، بالنسبة للمطورين الذين يسعون إلى تحقيق التوازن بين السرعة والدقة وسهولة الاستخدام، فإن YOLOv10ونظام Ultralytics الأوسع نطاقًا - يقدم مسارًا أكثر ملاءمةً للمطورين وأكثر ملاءمةً للمستقبل.
استكشف نماذج أخرى
إذا كنت مهتمًا باستكشاف المزيد من الخيارات داخل نظام Ultralytics ففكر في الاطلاع على هذه المقارنات:
- YOLO11 مقابل YOLOv10: شاهد كيف يقارن أحدث طراز رائد بـ YOLOv10 الذي يركز على الكفاءة.
- YOLOv10 مقابل RT-DETR: مقارنة المحولات في الوقت الحقيقي مع بنيات YOLO القائمة على CNN.
- YOLOv8 مقابل PP-YOLOE+: تحليل أداء YOLOv8 المعتمد على نطاق واسع مقابل نموذج بايدو.