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

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

تطور مجال الكشف عن الكائنات في الوقت الفعلي بسرعة كبيرة، حيث توسع كل إصدار جديد حدود الإمكانيات المتاحة على الأجهزة الطرفية وخوادم السحابة على حد سواء. عند تقييم البنى الهندسية لمشاريع الرؤية الحاسوبية، يقارن المطورون في كثير من الأحيان المعايير المعمول بها بالابتكارات الحديثة. يقارن هذا الدليل الشامل بين معلمتين أساسيتين في YOLO : YOLOv7 و YOLOv9.

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

سلسلة الطراز والمواصفات الفنية

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

YOLOv7: رائد حقيبة الهدايا المجانية

صدر YOLOv7 في منتصف عام 2022، YOLOv7 نفسه كبنية عالية الموثوقية ومُحسّنة بشكل كبير. وقد أدخل إعادة تحديد المعلمات الهيكلية ونهج "حقيبة الهدايا القابلة للتدريب" للحفاظ على سرعات استدلال عالية دون المساس بمتوسط الدقة (mAP).

الابتكارات المعمارية: يتميز YOLOv7 بشبكة تجميع الطبقات الموسعة الفعالة (E-ELAN)، التي تسمح للنموذج بتعلم ميزات أكثر تنوعًا عن طريق توسيع وتبديل ودمج الكاردينالية. يؤدي هذا التصميم إلى استخدام ممتاز لوحدة GPU ووقت استجابة استدلال منخفض. ومع ذلك، قد يتطلب ذاكرة كبيرة أثناء عمليات التدريب المعقدة مقارنةً بالإصدارات الحديثة.

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

YOLOv9: حل مشكلة عنق الزجاجة المعلوماتي

تم طرح YOLOv9 في أوائل عام 2024 من قبل نفس فريق البحث، YOLOv9 "اختناق المعلومات" المتأصل في الشبكات العصبية العميقة. غالبًا ما تضيع التفاصيل المهمة أثناء مرور البيانات عبر الطبقات العميقة. YOLOv9 هذه المشكلة من خلال تصميمات طبقات جديدة تمامًا.

الابتكارات المعمارية: يقدم YOLOv9 معلومات التدرج القابلة للبرمجة (PGI) وشبكة تجميع الطبقات الفعالة المعممة (GELAN). تضمن PGI الحفاظ على التدرجات الموثوقة وإعادتها لتحديث الأوزان بدقة. تعمل GELAN على زيادة كفاءة المعلمات إلى أقصى حد، مما يمكن YOLOv9 من تحقيق دقة عالية مع عدد أقل بكثير من FLOPs مقارنةً بأسلافها.

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

تحليل الأداء

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

النموذجالحجم
(بالبكسل)
mAPval
50-95
السرعة
وحدة المعالجة المركزية CPU ONNX
(بالمللي ثانية)
السرعة
T4 TensorRT10
(بالمللي ثانية)
المعلمات
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
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

النقاط الرئيسية

  • كفاءة المعلمات: يطابق YOLOv9m دقة YOLOv7l (51.4% mAP) بينما يستخدم ما يقرب من 45% أقل من المعلمات (20.0 مليون مقابل 36.9 مليون). هذا التخفيض الكبير يجعل نشر YOLOv9m أسهل بكثير على أجهزة الذكاء الاصطناعي الطرفية ذات الذاكرة المحدودة.
  • عمليات النشر المصغرة: يوفر تقديم متغير YOLOv9t (الصغير) سرعات مذهلة (2.3 مللي ثانية على T4 TensorRT) للبيئات التي تكون فيها قيود الوقت الفعلي مطلقة.
  • أقصى دقة: للتطبيقات التي تكون فيها الدقة أمرًا بالغ الأهمية، يدفع YOLOv9e دقة الكشف إلى 55.6% mAP، متفوقًا بشكل كبير على YOLOv7x.

تأمين مستقبل مشاريع الرؤية الحاسوبية الخاصة بك

في حين YOLOv9 YOLOv7 YOLOv9 YOLO26 الذي تم إصداره مؤخرًا يمثل قفزة نوعية إلى الأمام. يقدم YOLO26 تصميمًا أصليًا شاملاً NMS، مما يلغي المعالجة اللاحقة المعقدة ويعزز سرعات CPU بنسبة تصل إلى 43٪. من خلال استخدام مُحسِّن MuSGD الجديد ووظائف الخسارة ProgLoss + STAL المحسّنة، يوفر YOLO26 استقرارًا لا مثيل له في التدريب ودقة في اكتشاف الأجسام الصغيرة.

ميزة Ultralytics

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

سهولة الاستخدام وكفاءة التدريب

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

علاوة على ذلك، Ultralytics استخدام الذاكرة أثناء التدريب والاستدلال. على عكس نماذج المحولات الثقيلة (مثل RT-DETR)، فإنYOLO Ultralytics YOLO تتدرب بشكل أسرع بكثير وتتطلب CUDA أقل بكثير، مما يجعلها مثالية لوحدات معالجة الرسومات (GPU) المخصصة للمستهلكين.

مثال برمجي: تدريب مبسط

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

from ultralytics import YOLO

# Initialize the model (you can swap 'yolov9c.pt' with 'yolov7.pt' or 'yolo26n.pt')
model = YOLO("yolov9c.pt")

# Train the model on the COCO8 sample dataset
train_results = model.train(
    data="coco8.yaml",
    epochs=50,
    imgsz=640,
    device="0",  # Use GPU 0 if available
    batch=16,  # Optimized batch size for memory efficiency
)

# Validate the model's performance on the validation set
metrics = model.val()

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

تنوع لا مثيل له في المهام

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

حالات الاستخدام والتطبيقات المثالية

YOLOv9 يعتمد الاختيار بين YOLOv7 YOLOv9 على قيود الصناعة المحددة لديك وتوافر الأجهزة.

متى تستخدم YOLOv7

  • عمليات النشر الطرفية القديمة: لبيئات الأجهزة التي تم ضبطها وتحسينها بشكل كبير بالفعل لبنية E-ELAN الخاصة بـ YOLOv7، يظل خيارًا قويًا لـ إنترنت الأشياء الصناعية.
  • مراقبة حركة المرور: تجعل معدلات الإطارات العالية والاستقرار المثبت لـ YOLOv7 ممتازًا للبنية التحتية للمدن الذكية وإدارة حركة المرور في الوقت الفعلي.
  • تكامل الروبوتات: يتطلب التنقل في البيئات الديناميكية معالجة بزمن استجابة منخفض، وهو سيناريو تم فيه اختبار متغيرات YOLOv7 بشكل مكثف.

متى تستخدم YOLOv9

  • التصوير الطبي: بنية PGI في YOLOv9 استثنائية في الحفاظ على التفاصيل الدقيقة عبر الطبقات العميقة، وهو أمر بالغ الأهمية عند تحليل مهام تحليل الصور الطبية المعقدة مثل detect الأورام.
  • تحليلات التجزئة الكثيفة: لتتبع وعد العناصر المكدسة بكثافة على أرفف المتاجر، يوفر دمج ميزات YOLOv9 دقة فائقة ويقلل من الإيجابيات الكاذبة.
  • الصور الجوية وصور الطائرات بدون طيار: تسمح كفاءة المعلمات في YOLOv9m بمعالجة الصور عالية الدقة على الطائرات بدون طيار، مما يساعد في الحفاظ على الحياة البرية والمراقبة الزراعية دون استنزاف عمر البطارية.

الخلاصة

لقد رسخ كل من YOLOv7 وYOLOv9 مكانتهما في تاريخ الرؤية الحاسوبية. فقد قدم YOLOv7 تحسينات أساسية للمعالجة في الوقت الفعلي، بينما عالج YOLOv9 الاختناقات الهيكلية للتعلم العميق لزيادة كفاءة المعلمات إلى أقصى حد.

ومع ذلك، بالنسبة للمطورين الذين يبدؤون مشاريع جديدة اليوم، فإن الاستفادة من Ultralytics — وخاصة نماذج الجيل التالي مثل YOLO11 و YOLO26- توفر أفضل توازن بين السرعة والدقة وتجربة المطور. بفضل ابتكارات مثل مُحسّن MuSGD وإزالة Distribution Focal Loss (DFL) من أجل توافق أوسع مع الأجهزة، Ultralytics توفير الأدوات الأكثر سهولة وقوة لمحترفي الذكاء الاصطناعي في مجال الرؤية.


تعليقات