البداية السريعة لـ YOLOv5 🚀
انطلق في رحلتك إلى العالم الديناميكي لـ الكشف عن الكائنات في الوقت الفعلي مع Ultralytics YOLOv5! تم تصميم هذا الدليل ليكون بمثابة نقطة انطلاق شاملة لعشاق الذكاء الاصطناعي والمهنيين الذين يهدفون إلى إتقان YOLOv5. بدءًا من الإعداد الأولي وحتى تقنيات التدريب المتقدمة، فإننا نوفر لك كل ما تحتاجه. بحلول نهاية هذا الدليل، ستكون لديك المعرفة اللازمة لتنفيذ YOLOv5 في مشاريعك بثقة باستخدام أحدث أساليب التعلم العميق. دعنا نشعل المحركات وننطلق إلى YOLOv5!
تثبيت
استعد للانطلاق عن طريق استنساخ مستودع YOLOv5 وإنشاء البيئة. وهذا يضمن تثبيت جميع المتطلبات الضرورية. تحقق من أن لديك Python>=3.8.0 و PyTorch>=1.8 جاهزين للإقلاع. هذه الأدوات الأساسية ضرورية لتشغيل YOLOv5 بفعالية.
git clone https://github.com/ultralytics/yolov5 # clone repository
cd yolov5
pip install -r requirements.txt # install dependencies
الاستدلال باستخدام PyTorch Hub
اختبر بساطة استنتاج YOLOv5 PyTorch Hub، حيث يتم تنزيل النماذج بسلاسة من أحدث إصدار YOLOv5. تستفيد هذه الطريقة من قوة PyTorch لسهولة تحميل النموذج وتنفيذه، مما يجعل الحصول على التنبؤات أمرًا سهلاً.
import torch
# Model loading
model = torch.hub.load("ultralytics/yolov5", "yolov5s") # Can be 'yolov5n' - 'yolov5x6', or 'custom'
# Inference on images
img = "https://ultralytics.com/images/zidane.jpg" # Can be a file, Path, PIL, OpenCV, numpy, or list of images
# Run inference
results = model(img)
# Display results
results.print() # Other options: .show(), .save(), .crop(), .pandas(), etc. Explore these in the Predict mode documentation.
الاستدلال باستخدام detect.py
Harness detect.py
متعدد الاستخدامات الاستدلال على مصادر مختلفة. يقوم تلقائيًا بجلب النماذج من أحدث YOLOv5 إصدار ويحفظ النتائج بسهولة. هذا البرنامج النصي مثالي للاستخدام في سطر الأوامر ودمج YOLOv5 في أنظمة أكبر، ويدعم مدخلات مثل الصور ومقاطع الفيديو والأدلة وكاميرات الويب وحتى البث المباشر.
python detect.py --weights yolov5s.pt --source 0 # webcam
python detect.py --weights yolov5s.pt --source image.jpg # image
python detect.py --weights yolov5s.pt --source video.mp4 # video
python detect.py --weights yolov5s.pt --source screen # screenshot
python detect.py --weights yolov5s.pt --source path/ # directory
python detect.py --weights yolov5s.pt --source list.txt # list of images
python detect.py --weights yolov5s.pt --source list.streams # list of streams
python detect.py --weights yolov5s.pt --source 'path/*.jpg' # glob pattern
python detect.py --weights yolov5s.pt --source 'https://youtu.be/LNwODJXcvt4' # YouTube video
python detect.py --weights yolov5s.pt --source 'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream
التدريب
تكرار YOLOv5 مجموعة بيانات COCO المقاييس المرجعية باتباع تعليمات التدريب أدناه. الضروري النماذج و مجموعات البيانات (مثل coco128.yaml
أو الكامل coco.yaml
) يتم سحبها مباشرة من أحدث YOLOv5 إصدار: تدريب YOLOv5n/s/m/l/x على V100 GPU عادةً ما يستغرق 1/2/4/6/8 أيام على التوالي (لاحظ أن التدريب على وحدات معالجة الرسوميات المتعددة تعمل عمليات الإعداد بشكل أسرع). قم بزيادة الأداء إلى أقصى حد باستخدام أعلى قيمة ممكنة --batch-size
أو استخدم --batch-size -1
لـ YOLOv5. AutoBatch ميزة، والتي تجد تلقائيًا الأمثل حجم الدفعة: أحجام الدُفعات التالية مثالية لوحدات معالجة الرسوميات V100-16GB. راجع دليل التكوين للحصول على تفاصيل حول ملفات تكوين النموذج (*.yaml
).
# Train YOLOv5n on COCO128 for 3 epochs
python train.py --data coco128.yaml --epochs 3 --weights yolov5n.pt --batch-size 128
# Train YOLOv5s on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5s.yaml --batch-size 64
# Train YOLOv5m on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5m.yaml --batch-size 40
# Train YOLOv5l on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5l.yaml --batch-size 24
# Train YOLOv5x on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5x.yaml --batch-size 16
في الختام، YOLOv5 ليست مجرد أداة حديثة للكشف عن الكائنات ولكنها أيضًا دليل على قوة التعلم الآلي في تغيير الطريقة التي نتفاعل بها مع العالم من خلال الفهم البصري. بينما تتقدم خلال هذا الدليل وتبدأ في تطبيق YOLOv5 على مشاريعك، تذكر أنك في طليعة ثورة تكنولوجية، قادرة على تحقيق إنجازات رائعة في رؤية الكمبيوتر. إذا كنت بحاجة إلى مزيد من الأفكار أو الدعم من زملائك الباحثين، فأنت مدعو إلى مستودع GitHub الخاص بنا، وهو موطن لمجتمع مزدهر من المطورين والباحثين. استكشف المزيد من الموارد مثل Ultralytics HUB لإدارة البيانات وتدريب النماذج بدون تعليمات برمجية، أو تحقق من صفحة الحلول الخاصة بنا للحصول على تطبيقات واقعية وإلهام. استمر في الاستكشاف، واستمر في الابتكار، واستمتع بعجائب YOLOv5. كشف سعيد! 🌠🔍