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

YOLOv9 YOLOv5: دراسة تقنية متعمقة حول الكشف الحديث عن الكائنات

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

الابتكارات المعمارية والأصول التقنية

إن فهم الآليات الأساسية لهذين النموذجين يوفر سياقًا مهمًا لملامح أدائهما.

YOLOv9: معلومات التدرج القابلة للبرمجة

تم تطوير YOLOv9 من قبل الباحثين Chien-Yao Wang و Hong-Yuan Mark Liao في معهد علوم المعلومات، أكاديمية سينكا في تايوان، YOLOv9 إصداره في 21 فبراير 2024. يقدم النموذج مفهومين رائدين لمعالجة مشكلة اختناق المعلومات الشائعة في الشبكات العصبية العميقة: معلومات التدرج القابلة للبرمجة (PGI) وشبكة تجميع الطبقات الفعالة المعممة (GELAN).

من خلال استخدام PGI، YOLOv9 الاحتفاظ بالمعلومات الهامة طوال عملية التغذية الأمامية، مما يؤدي إلى تحديثات دقيقة للغاية للتدرج. وفي الوقت نفسه، تعمل بنية GELAN على تعظيم كفاءة المعلمات، مما يسمح للنموذج بتحقيق دقة متطورة مع تكلفة حسابية منخفضة بشكل مدهش. يمكنك استكشاف التفاصيل الفنية في ورقةYOLOv9 الرسمية أو عرض مستودعYOLOv9 .

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

Ultralytics YOLOv5: معيار الإنتاج

كتبه جلين جوشر ونشرته Ultralytics 26 يونيو 2020، YOLOv5 إمكانية الوصول إلى الرؤية الحاسوبية. باعتباره أحد أول نماذج الكشف عن الكائنات التي تم إنشاؤها أصلاً على PyTorch ، فقد تجاوز تعقيدات إطار عمل Darknet C القديم. YOLOv5 العمود الفقري CSPNet المحسّن للغاية وعنق PANet، مع إعطاء الأولوية للتوازن السلس بين السرعة والدقة.

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

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

كفاءة الذاكرة

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

تحليل الأداء: السرعة مقابل الدقة

عند تصميم خط أنابيب الرؤية الحاسوبية، يجب على المطورين الموازنة بين الدقة والكمون. يوضح الجدول التالي الاختلافات في الأداء على COCO القياسية.

النموذجالحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

تحليل المقايضات

YOLOv9 هيمنة مطلقة في الدقة الخام. يوسع YOLOv9e حدود mAP 55.6٪، مستفيدًا من طبقات GELAN للحفاظ على التفاصيل الدقيقة. وهذا يجعله خيارًا استثنائيًا للتصوير الطبي أو السيناريوهات التي تتطلب دقة صارمة على الأجسام الصغيرة.

على العكس من ذلك، YOLOv5 يتميز بسرعة النشر الخام ومرونة الأجهزة. يشتهر YOLOv5n (Nano) بخفة وزنه، حيث ينفذ الاستدلالات في 1.12 مللي ثانية فقط على GPU T4 GPU TensorRT. إذا كنت تقوم بالنشر على أجهزة إنترنت الأشياء المقيدة أو الهواتف المحمولة أو Raspberry Pi، YOLOv5 حجم ذاكرة YOLOv5 موثوقًا للغاية.

ميزة النظام البيئي لـ Ultralytics

أحد الاعتبارات الرئيسية عند اختيار نموذج ما هو النظام البيئي للبرمجيات المحيطة. في حين YOLOv9 معايير بحثية من الدرجة الأولى، فإن استخدام كلا النموذجين من خلال Python Ultralytics Python الحديثة يسد الفجوة، ويوفر للمطورين تجربة موحدة ومبسطة.

سهولة الاستخدام والتصدير

Ultralytics العقبات الهندسية المعقدة. يتم التعامل مع ميزات مثل زيادة البيانات تلقائيًا وضبط المعلمات الفائقة بشكل فوري. كما أن نقل النماذج إلى مرحلة الإنتاج أمر بسيط للغاية، بفضل أوامر التصدير المدمجة لتحويل النماذج إلى ONNXو OpenVINOأو TFLite .

تنوع المهام

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

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

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

متى تختار YOLOv9

YOLOv9 خيار قوي لـ:

  • أبحاث عن اختناق المعلومات: مشاريع أكاديمية تدرس هياكل معلومات التدرج القابلة للبرمجة (PGI) وشبكة تجميع الطبقات الفعالة المعممة (GELAN).
  • دراسات تحسين التدفق التدرجي: تركز الأبحاث على فهم وتخفيف فقدان المعلومات في طبقات الشبكة العميقة أثناء التدريب.
  • مقارنة أداء الكشف عالي الدقة: سيناريوهات تتطلب أداء YOLOv9 القوي COCO كنقطة مرجعية لمقارنات الهندسة المعمارية.

متى تختار YOLOv5

YOLOv5 في الحالات التالية:

  • أنظمة إنتاج مجربة: عمليات النشر الحالية التي تُقدّر فيها track YOLOv5 الطويل في الاستقرار، والوثائق الشاملة، والدعم المجتمعي الهائل.
  • التدريب المحدود الموارد: البيئات ذات GPU المحدودة حيث يكون خط التدريب الفعال YOLOv5 ومتطلبات الذاكرة المنخفضة ميزة.
  • دعم واسع النطاق لتنسيقات التصدير: المشاريع التي تتطلب النشر عبر العديد من التنسيقات بما في ذلك ONNXو TensorRTو CoreMLو TFLite.

متى تختار Ultralytics YOLO26)

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

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

مثال على التنفيذ

جمال Ultralytics البيئي هو أنه يمكنك التبديل بين YOLOv5 YOLOv9 ببساطة عن طريق تغيير سلسلة الوزن.

from ultralytics import YOLO

# Load a pretrained YOLOv9 model (swap to "yolov5s.pt" to use YOLOv5)
model = YOLO("yolov9c.pt")

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

# Run inference on new images
predictions = model.predict("https://ultralytics.com/images/zidane.jpg")

# Export to ONNX for seamless deployment
model.export(format="onnx")

استكشاف هياكل جديدة

في حين أن YOLOv5 YOLOv9 نموذجان ممتازان يتمتعان بمزايا واضحة، إلا أن هذا المجال لا يزال في طور التطور. قد يرغب المستخدمون الذين يستكشفون مشاريع جديدة في تقييم أحدث إصدارات Ultralytics.

  • YOLO11: تطور قوي ومحسّن YOLOv8 يوفر توازنًا ممتازًا بين السرعة والدقة في جميع مهام الرؤية.
  • YOLO26: تم إصدار YOLO26 في عام 2026، وهو التوصية المثلى للخطوط الحديثة. يقدم تصميمًا شاملاً NMS، مما يزيل تمامًا اختناقات المعالجة اللاحقة. مع إزالة DFL (إزالة Distribution Focal Loss لتبسيط التصدير وتحسين توافق الأجهزة ذات الحواف/الطاقة المنخفضة)، يحقق CPU أسرع بنسبة تصل إلى 43٪ CPU . يتم تعزيز استقرار التدريب من خلال مُحسِّن MuSGD الجديد، ويوفر ProgLoss + STAL وظائف خسارة محسّنة مع تحسينات ملحوظة في التعرف على الأجسام الصغيرة، وهو أمر بالغ الأهمية بالنسبة لإنترنت الأشياء والروبوتات والصور الجوية، مما يجعله أقوى بنية لكل من عمليات النشر على الحافة والسحابة.

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


تعليقات