Ultralytics YOLOv8
لمحة عامة
YOLOv8 هو أحدث تكرار في سلسلة YOLO من أجهزة الكشف عن الأجسام في الوقت الحقيقي، حيث يقدم أداءً متطورًا من حيث الدقة والسرعة. وبناءً على التطورات التي شهدتها الإصدارات السابقة YOLO ، يقدم YOLOv8 ميزات وتحسينات جديدة تجعله خيارًا مثاليًا لمختلف مهام الكشف عن الأجسام في مجموعة واسعة من التطبيقات.
شاهد: Ultralytics YOLOv8 نظرة عامة على النموذج
الميزات الرئيسية
- بنيات العمود الفقري والرقبة المتقدمة: YOLOv8 يستخدم أحدث بنيات العمود الفقري والرقبة المتقدمة، مما يؤدي إلى تحسين أداء استخراج الميزات واكتشاف الأجسام.
- الرأس المنفصل الخالي من المرساة Ultralytics : يعتمد YOLOv8 على رأس Ultralytics المنفصل الخالي من المرساة ، مما يساهم في دقة أفضل وعملية كشف أكثر كفاءة مقارنةً بالنهج القائم على المرساة.
- المفاضلة المُحسّنة بين الدقة والسرعة: مع التركيز على الحفاظ على التوازن الأمثل بين الدقة والسرعة، فإن YOLOv8 مناسب لمهام اكتشاف الأجسام في الوقت الحقيقي في مجالات التطبيق المتنوعة.
- مجموعة متنوعة من النماذج المُدرَّبة مسبقًا: YOLOv8 تقدم مجموعة من النماذج المُدرَّبة مسبقًا لتلبية مختلف المهام ومتطلبات الأداء، مما يسهل العثور على النموذج المناسب لحالة الاستخدام الخاصة بك.
المهام والأوضاع المدعومة
تقدم سلسلة YOLOv8 مجموعة متنوعة من النماذج، كل منها متخصص في مهام محددة في مجال الرؤية الحاسوبية. صُممت هذه النماذج لتلبية مختلف المتطلبات، بدءًا من اكتشاف الأجسام إلى المهام الأكثر تعقيدًا مثل تجزئة النماذج، واكتشاف الوضع/النقاط الرئيسية، واكتشاف الأجسام الموجهة، والتصنيف.
تم تحسين كل متغير من سلسلة YOLOv8 لمهمة كل منها، مما يضمن أداءً ودقة عالية. بالإضافة إلى ذلك، فإن هذه النماذج متوافقة مع مختلف الأوضاع التشغيلية بما في ذلك الاستدلال والتحقق من الصحة والتدريب والتصدير، مما يسهل استخدامها في مراحل مختلفة من النشر والتطوير.
الطراز | أسماء الملفات | المهمة | الاستدلال | التحقق من الصحة | التدريب | التصدير |
---|---|---|---|---|---|---|
YOLOv8 | yolov8n.pt yolov8s.pt yolov8m.pt yolov8l.pt yolov8x.pt |
الكشف | ✅ | ✅ | ✅ | ✅ |
YOLOv8-سيج | yolov8n-seg.pt yolov8s-seg.pt yolov8m-seg.pt yolov8l-seg.pt yolov8x-seg.pt |
تجزئة المثيل | ✅ | ✅ | ✅ | ✅ |
YOLOv8-الغرض | yolov8n-pose.pt yolov8s-pose.pt yolov8m-pose.pt yolov8l-pose.pt yolov8x-pose.pt yolov8x-pose-p6.pt |
الوضعية/النقاط الرئيسية | ✅ | ✅ | ✅ | ✅ |
YOLOv8-أوب | yolov8n-obb.pt yolov8s-obb.pt yolov8m-obb.pt yolov8l-obb.pt yolov8x-obb.pt |
الكشف الموجه | ✅ | ✅ | ✅ | ✅ |
YOLOv8-CLS | yolov8n-cls.pt yolov8s-cls.pt yolov8m-cls.pt yolov8l-cls.pt yolov8x-cls.pt |
التصنيف | ✅ | ✅ | ✅ | ✅ |
يقدم هذا الجدول نظرة عامة على متغيرات نموذج YOLOv8 ، مع تسليط الضوء على قابليتها للتطبيق في مهام محددة وتوافقها مع مختلف الأوضاع التشغيلية مثل الاستدلال والتحقق من الصحة والتدريب والتصدير. وهو يعرض تنوع ومتانة سلسلة YOLOv8 ، مما يجعلها مناسبة لمجموعة متنوعة من التطبيقات في مجال الرؤية الحاسوبية.
مقاييس الأداء
الأداء
راجع مستندات الكشف للاطلاع على أمثلة استخدام هذه النماذج المدرّبة على COCO، والتي تتضمن 80 فئة مدرّبة مسبقًا.
الطراز | الحجم (بكسل) |
مافال 50-95 |
السرعة CPU ONNX (مللي ثانية) |
السرعة A100 A100 TensorRT (مللي ثانية) |
بارامز (م) |
(ب) |
---|---|---|---|---|---|---|
YOLOv8n | 640 | 37.3 | 80.4 | 0.99 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 1.20 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 1.83 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 2.39 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 3.53 | 68.2 | 257.8 |
راجع مستندات الاكتشاف للاطلاع على أمثلة استخدام هذه النماذج المدرّبة على Open Image V7، والتي تتضمن 600 فئة مدرّبة مسبقًا.
الطراز | الحجم (بكسل) |
مافال 50-95 |
السرعة CPU ONNX (مللي ثانية) |
السرعة A100 A100 TensorRT (مللي ثانية) |
بارامز (م) |
(ب) |
---|---|---|---|---|---|---|
YOLOv8n | 640 | 18.4 | 142.4 | 1.21 | 3.5 | 10.5 |
YOLOv8s | 640 | 27.7 | 183.1 | 1.40 | 11.4 | 29.7 |
YOLOv8m | 640 | 33.6 | 408.5 | 2.26 | 26.2 | 80.6 |
YOLOv8l | 640 | 34.9 | 596.9 | 2.43 | 44.1 | 167.4 |
YOLOv8x | 640 | 36.3 | 860.6 | 3.56 | 68.7 | 260.6 |
راجع مستندات التجزئة للاطلاع على أمثلة استخدام هذه النماذج المدرّبة على COCO، والتي تتضمن 80 فئة مدرّبة مسبقًا.
الطراز | الحجم (بكسل) |
mAPbox 50-95 |
mAPmask 50-95 |
السرعة CPU ONNX (مللي ثانية) |
السرعة A100 A100 TensorRT (مللي ثانية) |
بارامز (م) |
(ب) |
---|---|---|---|---|---|---|---|
YOLOv8n-سيج | 640 | 36.7 | 30.5 | 96.1 | 1.21 | 3.4 | 12.6 |
YOLOv8s-سيج | 640 | 44.6 | 36.8 | 155.7 | 1.47 | 11.8 | 42.6 |
YOLOv8m-سيج | 640 | 49.9 | 40.8 | 317.0 | 2.18 | 27.3 | 110.2 |
YOLOv8l-سيج | 640 | 52.3 | 42.6 | 572.4 | 2.79 | 46.0 | 220.5 |
YOLOv8x-سيج | 640 | 53.4 | 43.4 | 712.1 | 4.02 | 71.8 | 344.1 |
راجع مستندات التصنيف للاطلاع على أمثلة استخدام هذه النماذج المدرّبة على ImageNet، والتي تتضمن 1000 فئة مدرّبة مسبقًا.
الطراز | الحجم (بكسل) |
اعتماد توب 1 |
أعلى 5 |
السرعة CPU ONNX (مللي ثانية) |
السرعة A100 A100 TensorRT (مللي ثانية) |
بارامز (م) |
(ب) عند 640 (ب) في 640 |
---|---|---|---|---|---|---|---|
YOLOv8n-CLS | 224 | 69.0 | 88.3 | 12.9 | 0.31 | 2.7 | 4.3 |
YOLOv8s-CLS | 224 | 73.8 | 91.7 | 23.4 | 0.35 | 6.4 | 13.5 |
YOLOv8m-CLS | 224 | 76.8 | 93.5 | 85.4 | 0.62 | 17.0 | 42.7 |
YOLOv8l-CLS | 224 | 76.8 | 93.5 | 163.0 | 0.87 | 37.5 | 99.7 |
YOLOv8x-CLS | 224 | 79.0 | 94.6 | 232.0 | 1.01 | 57.4 | 154.8 |
راجع مستندات تقدير الوضعية للاطلاع على أمثلة استخدام هذه النماذج المدرّبة على COCO، والتي تتضمن فئة واحدة مدرّبة مسبقًا، "شخص".
الطراز | الحجم (بكسل) |
mAPpose 50-95 |
mAPpose 50 |
السرعة CPU ONNX (مللي ثانية) |
السرعة A100 A100 TensorRT (مللي ثانية) |
بارامز (م) |
(ب) |
---|---|---|---|---|---|---|---|
YOLOv8n-الغرض | 640 | 50.4 | 80.1 | 131.8 | 1.18 | 3.3 | 9.2 |
YOLOv8s-الغرض | 640 | 60.0 | 86.2 | 233.2 | 1.42 | 11.6 | 30.2 |
YOLOv8m-الغرض | 640 | 65.0 | 88.8 | 456.3 | 2.00 | 26.4 | 81.0 |
YOLOv8l-الغرض | 640 | 67.6 | 90.0 | 784.5 | 2.59 | 44.4 | 168.6 |
YOLOv8x-الغرض | 640 | 69.2 | 90.2 | 1607.1 | 3.73 | 69.4 | 263.2 |
YOLOv8x-pose-p6 | 1280 | 71.6 | 91.2 | 4088.7 | 10.04 | 99.1 | 1066.4 |
راجع مستندات الكشف الموجّه للاطلاع على أمثلة الاستخدام مع هذه النماذج المدرّبة على DOTAv1، والتي تتضمن 15 فئة مدرّبة مسبقًا.
الطراز | الحجم (بكسل) |
اختبار mAPtest 50 |
السرعة CPU ONNX (مللي ثانية) |
السرعة A100 A100 TensorRT (مللي ثانية) |
بارامز (م) |
(ب) |
---|---|---|---|---|---|---|
YOLOv8n-أوب | 1024 | 78.0 | 204.77 | 3.57 | 3.1 | 23.3 |
YOLOv8s-أوب | 1024 | 79.5 | 424.88 | 4.07 | 11.4 | 76.3 |
YOLOv8m-أوب | 1024 | 80.5 | 763.48 | 7.61 | 26.4 | 208.6 |
YOLOv8l-أوب | 1024 | 80.7 | 1278.42 | 11.83 | 44.5 | 433.8 |
YOLOv8x-أوب | 1024 | 81.36 | 1759.10 | 13.23 | 69.5 | 676.7 |
أمثلة على الاستخدام
يوفر هذا المثال أمثلة بسيطة للتدريب والاستدلال YOLOv8 . للحصول على وثائق كاملة حول هذه الأوضاع وغيرها من الأوضاع، راجع صفحات مستندات التنبؤ والتدريب والتقييم والتصدير.
لاحظ أن المثال أدناه مخصص لنماذج YOLOv8 Detect لا كتشاف الكائنات. للاطلاع على المهام الإضافية المدعومة راجع مستندات التقسيم والتصنيف و OBB ومستندات الوضعية.
مثال على ذلك
PyTorch ما قبل التدريب *.pt
النماذج وكذلك التكوين *.yaml
يمكن تمرير الملفات إلى YOLO()
لإنشاء مثيل للنموذج في python:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv8n model
model = YOLO("yolov8n.pt")
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the YOLOv8n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
CLI الأوامر متاحة لتشغيل النماذج مباشرةً:
الاستشهادات والشكر والتقدير
Ultralytics YOLOv8 المنشورات
Ultralytics لم تنشر ورقة بحثية رسمية عن YOLOv8 بسبب الطبيعة السريعة التطور للنماذج. نحن نركز على تطوير التكنولوجيا وتسهيل استخدامها، بدلاً من إنتاج وثائق ثابتة. للحصول على أحدث المعلومات حول بنية YOLO وميزاته واستخدامه، يُرجى الرجوع إلى مستودع GitHub والوثائق الخاصة بنا.
إذا كنت تستخدم نموذج YOLOv8 أو أي برنامج آخر من هذا المستودع في عملك، يرجى الاستشهاد به باستخدام التنسيق التالي:
يُرجى ملاحظة أن DOI معلق وسيتم إضافته إلى الاقتباس بمجرد توفره. YOLOv8 يتم توفير نماذج بموجب AGPL-3.0 وتراخيص المؤسسات.
الأسئلة الشائعة
ما هو YOLOv8 وكيف يختلف عن الإصدارات السابقة YOLO ؟
YOLOv8 هو أحدث تكرار في سلسلة Ultralytics YOLO ، وهو مصمم لتحسين أداء الكشف عن الأجسام في الوقت الفعلي بميزات متقدمة. وخلافًا للإصدارات السابقة، يشتمل YOLOv8 على رأس Ultralytics منقسم بدون مثبت، وبنية العمود الفقري والرقبة الحديثة، ويوفر مفاضلة محسّنة بين الدقة والسرعة، مما يجعله مثاليًا للتطبيقات المتنوعة. لمزيد من التفاصيل، راجع قسمي نظرة عامة والميزات الرئيسية.
كيف يمكنني استخدام YOLOv8 في مهام الرؤية الحاسوبية المختلفة؟
YOLOv8 يدعم مجموعة واسعة من مهام الرؤية الحاسوبية، بما في ذلك اكتشاف الأجسام، وتجزئة النماذج، واكتشاف الوضع/النقاط الرئيسية، واكتشاف الأجسام الموجهة، والتصنيف. تم تحسين كل متغير نموذج لمهمته المحددة ومتوافق مع أوضاع تشغيلية مختلفة مثل الاستدلال والتحقق من الصحة والتدريب والتصدير. راجع قسم المهام والأوضاع المدعومة لمزيد من المعلومات.
ما هي مقاييس الأداء لنماذج YOLOv8 ؟
YOLOv8 تحقق النماذج أحدث أداء عبر مختلف مجموعات البيانات المعيارية. على سبيل المثال، يحقق النموذج YOLOv8n متوسط دقة mAP (متوسط الدقة المتوسطة) يبلغ 37.3 على مجموعة بيانات COCO وسرعة 0.99 مللي ثانية على A100 TensorRT. يمكن العثور على مقاييس الأداء التفصيلية لكل متغير نموذج عبر مهام ومجموعات بيانات مختلفة في قسم مقاييس الأداء.
كيف يمكنني تدريب نموذج YOLOv8 ؟
يمكن إجراء تدريب نموذج YOLOv8 باستخدام Python أو CLI. فيما يلي أمثلة لتدريب نموذج باستخدام نموذج YOLOv8 تم تدريبه مسبقًا على مجموعة بيانات COCO8 لـ 100 حلقة تدريبية:
مثال على ذلك
لمزيد من التفاصيل، يرجى زيارة وثائق التدريب.
هل يمكنني قياس أداء النماذج YOLOv8 للأداء؟
نعم، يمكن قياس نماذج YOLOv8 لقياس الأداء من حيث السرعة والدقة عبر تنسيقات التصدير المختلفة. يمكنك استخدام PyTorch و ONNX و و TensorRT وغيرها لقياس الأداء. فيما يلي أمثلة لأوامر قياس الأداء باستخدام Python و CLI:
مثال على ذلك
للحصول على معلومات إضافية، راجع قسم مقاييس الأداء.