Link to this sectionUltralytics YOLOv5#
Link to this sectionنظرة عامة#
يمثل YOLOv5u تقدماً في منهجيات اكتشاف الكائنات. ينحدر YOLOv5u من البنية الأساسية لنموذج YOLOv5 الذي طورته شركة Ultralytics، ويدمج الرأس المنفصل الخالي من الرواسي (anchor-free) والخالي من خاصية كينونة الكائن (objectness-free)، وهي ميزة تم تقديمها سابقاً في نماذج YOLOv8. يعمل هذا التكيف على تحسين بنية النموذج، مما يؤدي إلى توازن أفضل بين الدقة والسرعة في مهام اكتشاف الكائنات. وبالنظر إلى النتائج التجريبية والميزات المشتقة منه، يوفر YOLOv5u بديلاً فعالاً لأولئك الذين يبحثون عن حلول قوية في كل من الأبحاث والتطبيقات العملية.

توفر Ultralytics متغيراً خالياً من الرواسي لنموذج YOLOv5. لا يمكن تحميل النماذج التي تم تدريبها باستخدام مستودع ultralytics/yolov5 باستخدام مكتبة ultralytics/ultralytics. لاستخدام YOLOv5 هنا، قم بتدريب نموذج جديد من نقطة تفتيش Ultralytics YOLOv5u (على سبيل المثال yolov5su.pt).
استكشف وقم بتشغيل نماذج YOLOv5 مباشرة على منصة Ultralytics.
Link to this sectionالمميزات الرئيسية#
-
رأس Ultralytics المنفصل والخالي من الرواسي: تعتمد نماذج اكتشاف الكائنات التقليدية على صناديق رواسي (anchor boxes) محددة مسبقاً للتنبؤ بمواقع الكائنات. ومع ذلك، يقوم YOLOv5u بتحديث هذا النهج. فمن خلال تبني رأس Ultralytics منفصل وخالٍ من الرواسي، فإنه يضمن آلية اكتشاف أكثر مرونة وتكيفاً، مما يعزز الأداء في سيناريوهات متنوعة.
-
توازن مُحسَّن بين الدقة والسرعة: غالباً ما تسير السرعة والدقة في اتجاهين متعاكسين، لكن YOLOv5u يتحدى هذا المقايضة. فهو يوفر توازناً مُعايرًا، مما يضمن عمليات اكتشاف في الوقت الفعلي دون المساس بالدقة. تعتبر هذه الميزة ذات قيمة خاصة للتطبيقات التي تتطلب استجابات سريعة، مثل المركبات ذاتية القيادة والروبوتات وتحليلات الفيديو في الوقت الفعلي.
-
مجموعة متنوعة من النماذج المدربة مسبقاً: إدراكاً منا بأن المهام المختلفة تتطلب مجموعات أدوات مختلفة، يوفر YOLOv5u عدداً كبيراً من النماذج المدربة مسبقاً. سواء كنت تركز على الاستدلال (Inference) أو التحقق (Validation) أو التدريب (Training)، فهناك نموذج مصمم خصيصاً في انتظارك. يضمن هذا التنوع أنك لا تستخدم حلاً واحداً يناسب الجميع، بل نموذجاً تم ضبطه بدقة لتلبية تحديك الفريد.
Link to this sectionالمهام والأنماط المدعومة#
تتفوق نماذج YOLOv5u، بأوزانها المدربة مسبقاً المختلفة، في مهام اكتشاف الكائنات. وهي تدعم مجموعة شاملة من الأنماط، مما يجعلها مناسبة لتطبيقات متنوعة، بدءاً من التطوير وحتى النشر.
| نوع النموذج | الأوزان المدربة مسبقاً | المهمة | الاستدلال (Inference) | التحقق | التدريب | تصدير |
|---|---|---|---|---|---|---|
| YOLOv5u | yolov5nu, yolov5su, yolov5mu, yolov5lu, yolov5xu, yolov5n6u, yolov5s6u, yolov5m6u, yolov5l6u, yolov5x6u | اكتشاف الكائنات | ✅ | ✅ | ✅ | ✅ |
يقدم هذا الجدول نظرة عامة تفصيلية على متغيرات نموذج YOLOv5u، مع تسليط الضوء على قابليتها للتطبيق في مهام اكتشاف الكائنات ودعمها لأنماط تشغيل مختلفة مثل الاستدلال والتحقق والتدريب والتصدير. يضمن هذا الدعم الشامل أن يتمكن المستخدمون من الاستفادة الكاملة من قدرات نماذج YOLOv5u في مجموعة واسعة من سيناريوهات اكتشاف الكائنات.
Link to this sectionمقاييس الأداء#
راجع مستندات الكشف لمعرفة أمثلة الاستخدام لهذه النماذج المدربة على COCO، والتي تتضمن 80 فئة مدربة مسبقاً.
| نموذج | YAML | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ملي ثانية) | السرعة A100 TensorRT (ms) | المعلمات (مليون) | FLOPs (مليار) |
|---|---|---|---|---|---|---|---|
| yolov5nu.pt | yolov5n.yaml | 640 | 34.3 | 73.6 | 1.06 | 2.6 | 7.7 |
| yolov5su.pt | yolov5s.yaml | 640 | 43.0 | 120.7 | 1.27 | 9.1 | 24.0 |
| yolov5mu.pt | yolov5m.yaml | 640 | 49.0 | 233.9 | 1.86 | 25.1 | 64.2 |
| yolov5lu.pt | yolov5l.yaml | 640 | 52.2 | 408.4 | 2.50 | 53.2 | 135.0 |
| yolov5xu.pt | yolov5x.yaml | 640 | 53.2 | 763.2 | 3.81 | 97.2 | 246.4 |
| yolov5n6u.pt | yolov5n6.yaml | 1280 | 42.1 | 211.0 | 1.83 | 4.3 | 7.8 |
| yolov5s6u.pt | yolov5s6.yaml | 1280 | 48.6 | 422.6 | 2.34 | 15.3 | 24.6 |
| yolov5m6u.pt | yolov5m6.yaml | 1280 | 53.6 | 810.9 | 4.36 | 41.2 | 65.7 |
| yolov5l6u.pt | yolov5l6.yaml | 1280 | 55.7 | 1470.9 | 5.47 | 86.1 | 137.4 |
| yolov5x6u.pt | yolov5x6.yaml | 1280 | 56.8 | 2436.5 | 8.98 | 155.4 | 250.7 |
Link to this sectionأمثلة الاستخدام#
يوفر هذا المثال نماذج بسيطة لتدريب واستدلال YOLOv5. للحصول على وثائق كاملة حول هذه الأنماط وغيرها modes، راجع صفحات وثائق Predict وTrain وVal وExport.
يمكن تمرير نماذج PyTorch المدربة مسبقاً ذات الامتداد *.pt بالإضافة إلى ملفات التهيئة *.yaml إلى فئة YOLO() لإنشاء مثيل نموذج في بايثون:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv5n model
model = YOLO("yolov5n.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 YOLOv5n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")Link to this sectionالاقتباسات والتقديرات#
لم تنشر Ultralytics بحثاً علمياً رسمياً عن YOLOv5 نظراً للطبيعة المتطورة بسرعة للنماذج. نحن نركز على تطوير التكنولوجيا وجعلها أسهل في الاستخدام، بدلاً من إنتاج وثائق ثابتة. للحصول على أحدث المعلومات حول بنية YOLO والميزات والاستخدام، يرجى الرجوع إلى مستودع GitHub والوثائق الخاصة بنا.
إذا كنت تستخدم YOLOv5 أو YOLOv5u في بحثك، يرجى الاستشهاد بمستودع Ultralytics YOLOv5 كما يلي:
@software{yolov5,
title = {Ultralytics YOLOv5},
author = {Glenn Jocher},
year = {2020},
version = {7.0},
license = {AGPL-3.0},
url = {https://github.com/ultralytics/yolov5},
doi = {10.5281/zenodo.3908559},
orcid = {0000-0001-5950-6979}
}يرجى ملاحظة أن نماذج YOLOv5 مقدمة بموجب تراخيص AGPL-3.0 وEnterprise.
Link to this sectionأسئلة شائعة#
Link to this sectionما هو Ultralytics YOLOv5u وكيف يختلف عن YOLOv5؟#
Ultralytics YOLOv5u هو إصدار متقدم من YOLOv5، يدمج الرأس المنفصل الخالي من الرواسي والذي يعزز توازن الدقة-السرعة لمهام اكتشاف الكائنات في الوقت الفعلي. على عكس YOLOv5 التقليدي، يتبنى YOLOv5u آلية اكتشاف خالية من الرواسي، مما يجعله أكثر مرونة وتكيفاً في سيناريوهات متنوعة. لمزيد من المعلومات التفصيلية حول ميزاته، يمكنك الرجوع إلى نظرة عامة على YOLOv5.
Link to this sectionكيف يعمل رأس Ultralytics الخالي من الرواسي على تحسين أداء اكتشاف الكائنات في YOLOv5u؟#
يعمل رأس Ultralytics الخالي من الرواسي في YOLOv5u على تحسين أداء اكتشاف الكائنات من خلال التخلص من الاعتماد على صناديق الرواسي المحددة مسبقاً. يؤدي هذا إلى آلية اكتشاف أكثر مرونة وتكيفاً يمكنها التعامل مع أحجام وأشكال الكائنات المختلفة بكفاءة أكبر. يساهم هذا التحسين بشكل مباشر في تحقيق توازن بين الدقة والسرعة، مما يجعل YOLOv5u مناسباً للتطبيقات في الوقت الفعلي. تعرف على المزيد حول بنيته في قسم الميزات الرئيسية.
Link to this sectionهل يمكنني استخدام نماذج YOLOv5u المدربة مسبقاً لمهام وأنماط مختلفة؟#
نعم، يمكنك استخدام نماذج YOLOv5u المدربة مسبقاً لمهام مختلفة مثل اكتشاف الكائنات. تدعم هذه النماذج أنماطاً متعددة، بما في ذلك الاستدلال والتحقق والتدريب والتصدير. تتيح هذه المرونة للمستخدمين الاستفادة من قدرات نماذج YOLOv5u عبر متطلبات تشغيلية مختلفة. للحصول على نظرة عامة مفصلة، راجع قسم المهام والأنماط المدعومة.
Link to this sectionكيف تقارن مقاييس أداء نماذج YOLOv5u على منصات مختلفة؟#
تختلف مقاييس أداء نماذج YOLOv5u اعتماداً على المنصة والأجهزة المستخدمة. على سبيل المثال، يحقق نموذج YOLOv5nu دقة mAP تبلغ 34.3 على مجموعة بيانات COCO بسرعة 73.6 مللي ثانية على وحدة المعالجة المركزية (CPU) (باستخدام ONNX) و1.06 مللي ثانية على A100 TensorRT. يمكن العثور على مقاييس أداء تفصيلية لنماذج YOLOv5u المختلفة في قسم مقاييس الأداء، والذي يوفر مقارنة شاملة عبر الأجهزة المختلفة.
Link to this sectionكيف يمكنني تدريب نموذج YOLOv5u باستخدام واجهة برمجة تطبيقات بايثون من Ultralytics؟#
يمكنك تدريب نموذج YOLOv5u عن طريق تحميل نموذج مدرب مسبقاً وتشغيل أمر التدريب باستخدام مجموعة البيانات الخاصة بك. إليك مثال سريع:
from ultralytics import YOLO
# Load a COCO-pretrained YOLOv5n model
model = YOLO("yolov5n.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)لمزيد من التعليمات التفصيلية، تفضل بزيارة قسم أمثلة الاستخدام.