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

YOLOv7 YOLOv9: تطور الكشف عن الكائنات في الوقت الفعلي

شهد مجال الرؤية الحاسوبية تطوراً سريعاً، حيث تتصدر عائلة YOLO You Only Look Once) باستمرار مجال الكشف عن الأجسام في الوقت الفعلي. وهناك معلمان هامان في هذا المجال هما YOLOv7، الذي تم إصداره في يوليو 2022، و YOLOv9، الذي تم إصداره في فبراير 2024. على الرغم من أن كلا الهيكلين تم تطويرهما من قبل باحثين في معهد علوم المعلومات، أكاديمية سينيكا، إلا أنهما يمثلان جيلين متميزين من تحسين التعلم العميق.

يقدم هذا الدليل مقارنة تقنية بين هذين النموذجين القويين، ويحلل ابتكاراتهما المعمارية ومقاييس أدائهما وحالات الاستخدام المثالية ضمن Ultralytics .

الابتكارات المعمارية

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

YOLOv7: حقيبة المجانيات

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

YOLOv7 بـ "Bag-of-Freebies" — وهي مجموعة من أساليب التدريب التي تعمل على تحسين الدقة دون زيادة تكلفة الاستدلال. وتشمل هذه الأساليب تقنيات إعادة تحديد المعلمات والإشراف المساعد، والتي تساعد النموذج على تعلم تمثيلات أفضل أثناء التدريب، ولكن يتم دمجها أو إزالتها أثناء تصدير النموذج من أجل نشر أسرع.

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

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

YOLOv9، الذي طوره Chien-Yao Wang و Hong-Yuan Mark Liao، يعالج مشكلة "اختناق المعلومات" المتأصلة في الشبكات العميقة. مع مرور البيانات عبر طبقات متتالية، غالبًا ما تضيع المعلومات المدخلة. YOLOv9 مفهومين رائدين مفصلين في ورقتهم البحثية على Arxiv:

  1. GELAN (شبكة تجميع الطبقات الفعالة المعممة): بنية تجمع بين نقاط قوة CSPNet و ELAN لتعظيم كفاءة المعلمات.
  2. PGI (معلومات التدرج القابلة للبرمجة): إطار عمل إضافي للإشراف يولد تدرجات موثوقة لتحديث أوزان الشبكة، مما يضمن احتفاظ النموذج بالمعلومات الهامة في جميع مستويات الشبكة.

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

تحليل الأداء

عند الاختيار بين البنى المختلفة، يجب على المطورين الموازنة بين متوسط الدقة (mAP) وسرعة الاستدلال والتكلفة الحسابية (FLOPs). يوضح الجدول أدناه الاختلافات في الأداء على 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 نفس الدقة (51.4٪ mAP) مثل YOLOv7l ولكن مع معلمات أقل بنسبة 45٪ تقريبًا (20.0 مليون مقابل 36.9 مليون) و FLOPs أقل بكثير.
  • السرعة: بالنسبة للتطبيقات في الوقت الفعلي حيث كل مللي ثانية مهمة، يوفر YOLOv9t سرعات مذهلة (2.3 مللي ثانية على T4 TensorRT) مناسبة للأجهزة الطرفية.
  • الدقة: يوسعYOLOv9e حدود دقة الكشف، حيث يحقق 55.6٪ mAP مما يجعله متفوقًا في المهام التي تتطلب دقة عالية.

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

بغض النظر عما إذا كنت تختار YOLOv7 YOLOv9 فإن استخدامهما من خلال Python Ultralytics Python يوفر تجربة موحدة ومبسطة.

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

Ultralytics حلقات التدريب المعقدة الموجودة في PyTorch الأولية. يمكن للمطورين التبديل بين البنى الهندسية عن طريق تغيير حجة سلسلة واحدة، مما يبسط ضبط المعلمات الفائقة والتجريب.

from ultralytics import YOLO

# Load a pre-trained YOLOv9 model (or substitute with "yolov7.pt")
model = YOLO("yolov9c.pt")

# Train on the COCO8 dataset with efficient memory management
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Validate performance
metrics = model.val()

إدارة الذاكرة والموارد

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

إدارة قواعد البيانات المتكاملة

Ultralytics بتنزيل مجموعات البيانات وتنسيقها تلقائيًا. يمكنك البدء في التدريب على الفور باستخدام مجموعات البيانات القياسية مثل COCO8 أو Objects365 دون الحاجة إلى كتابة برامج تحميل بيانات معقدة.

تطبيقات عملية في أرض الواقع

متى تختار YOLOv7

YOLOv7 خيارًا قويًا للأنظمة التي تعتمد على التوافق مع الإصدارات القديمة.

  • خطوط الأنابيب القائمة: قد تجد المشاريع التي تم دمجها بالفعل مع خطوط أنابيب تصدير C++ لعام 2022 أنه من الأسهل الاستمرار في استخدام YOLOv7.
  • الكشف للأغراض العامة: بالنسبة لتحليلات الفيديو القياسية التي لا يمثل فيها الحد الأدنى المطلق لعدد المعلمات القيد الأساسي، YOLOv7 يؤدي أداءً رائعًا.

متى تختار YOLOv9

YOLOv9 عمومًا YOLOv9 في عمليات النشر الجديدة نظرًا لكفاءة معلماته الفائقة.

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

الجيل القادم: YOLO26

على الرغم من أن YOLOv7 YOLOv9 نموذجان ممتازان، إلا أن مجال الذكاء الاصطناعي يتجه نحو مزيد من البساطة والسرعة. أدخل YOLO26، أحدث إصدار من Ultralytics في يناير 2026.

يمثل YOLO26 تحولًا جذريًا بفضل تصميمه الشامل NMS. من خلال إزالة Non-Maximum Suppression (NMS)، يزيل YOLO26 أحد العوائق الرئيسية في خطوط الاستدلال، مما يبسط عملية النشر إلى TensorRT و ONNX.

  • مُحسّن MuSGD: مستوحى من الابتكارات في تدريب LLM (مثل Kimi K2 من Moonshot AI)، يستخدم YOLO26 مُحسّن MuSGD لتحقيق تقارب أسرع واستقرار أكبر.
  • تحسين الحافة: مع إزالة Distribution Focal Loss (DFL) ووظائف الخسارة المحسّنة مثل ProgLoss + STAL، يعمل YOLO26 بسرعة تصل إلى 43٪ على وحدات المعالجة المركزية (CPU)، مما يجعله الخيار الأول للذكاء الاصطناعي الحافة.
  • تعدد الاستخدامات: على عكس النماذج السابقة التي قد تكون مخصصة للكشف فقط، يدعم YOLO26 بشكل أساسي تقدير الوضع والتجزئة ومربعات الحدود الموجهة (OBB).

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

الخلاصة

YOLOv9 كل من YOLOv7 YOLOv9 بشكل كبير في تطوير الرؤية الحاسوبية. YOLOv7 معايير عالية للسرعة والدقة في عام 2022، بينما YOLOv9 تغييرات معمارية جديدة لتحسين تدفق التدرج وكفاءة المعلمات في عام 2024.

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


تعليقات