البدء السريع باستخدام 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#
استمتع ببساطة الاستدلال باستخدام PyTorch Hub في YOLOv5، حيث تُنزَّل النماذج بسلاسة من أحدث إصدار من 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#
استفد من 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التدريب#
كرّر معايير مجموعة بيانات COCO الخاصة بـ YOLOv5 باتباع تعليمات التدريب أدناه. تُجلب النماذج ومجموعات البيانات اللازمة (مثل coco128.yaml أو coco.yaml الكاملة) مباشرةً من أحدث إصدار من YOLOv5. يستغرق تدريب YOLOv5n/s/m/l/x على GPU من طراز V100 عادةً يومًا واحدًا أو يومين أو أربعة أيام أو ستة أيام أو ثمانية أيام على التوالي (لاحظ أن إعدادات التدريب باستخدام وحدات GPU متعددة تعمل بسرعة أكبر). حقّق أقصى أداء باستخدام أعلى قيمة ممكنة لـ --batch-size، أو استخدم --batch-size -1 للاستفادة من ميزة AutoBatch في YOLOv5، التي تعثر تلقائيًا على حجم الدفعة الأمثل. تُعد أحجام الدفعات التالية مثالية لوحدات V100-16GB GPU. راجع دليل الإعداد للاطلاع على التفاصيل المتعلقة بملفات إعداد النموذج (*.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 لإدارة مجموعات البيانات وتدريب النماذج دون كتابة تعليمات برمجية، أو تفقّد صفحة الحلول للاطلاع على التطبيقات الواقعية ومصادر الإلهام. واصل الاستكشاف والابتكار، واستمتع بروائع YOLOv5. اكتشافًا موفقًا! 🌠🔍