中文 | halaman | 日本語 | Русский | Jerman | Perancis | Spanyol | Portugis | Turki | Tiếng Việt | العربية
YOLOv5? adalah AI vision yang paling disukai di dunia, mewakili penelitian sumber terbuka Ultralytics mengenai metode AI vision masa depan, menggabungkan pembelajaran dan praktik terbaik yang dikembangkan selama ribuan jam penelitian dan pengembangan.
Kami berharap sumber daya di sini akan membantu Anda memaksimalkan YOLOv5. Silakan telusuri Dokumen YOLOv5 untuk mengetahui detailnya, ajukan masalah di GitHub untuk mendapatkan dukungan, dan bergabunglah dengan komunitas Discord kami untuk mengajukan pertanyaan dan diskusi!
Untuk meminta Lisensi Perusahaan, harap lengkapi formulir di Lisensi Ultralytics.
YOLO11? BARU
Kami sangat bersemangat untuk meluncurkan peluncuran Ultralytics YOLO11?, kemajuan terbaru dalam model visi tercanggih (SOTA) kami! Tersedia sekarang di GitHub , YOLO11 dibangun berdasarkan warisan kecepatan, presisi, dan kemudahan penggunaan kami. Baik Anda menangani deteksi objek, segmentasi gambar, atau klasifikasi gambar, YOLO11 memberikan kinerja dan fleksibilitas yang diperlukan untuk unggul dalam beragam aplikasi.
Mulailah hari ini dan buka potensi penuh YOLO11! Kunjungi Dokumen Ultralytics untuk mendapatkan panduan dan sumber daya yang komprehensif:
pip instal ultralitik
Dokumentasi
Lihat Dokumen YOLOv5 untuk dokumentasi lengkap tentang pelatihan, pengujian, dan penerapan. Lihat di bawah untuk contoh mulai cepat.
Kloning repo dan instal requiremen.txt di lingkungan Python>=3.8.0 , termasuk PyTorch>=1.8 .
git clone https://github.com/ultralytics/yolov5 # clonecd yolov5 pip install -r persyaratan.txt # install
Inferensi YOLOv5 PyTorch Hub. Model diunduh secara otomatis dari rilis YOLOv5 terbaru.
impor obor# Modelmodel = torch.hub.load("ultralytics/yolov5", "yolov5s") # atau yolov5n - yolov5x6, custom# Imagesimg = "https://ultralytics.com/images/zidane.jpg" # atau file, Path, PIL, OpenCV, numpy, list# Inferenceresults = model(img)# Resultsresults.print() # atau .show(), .save(), .crop(), .pandas(), dll.
detect.py
menjalankan inferensi pada berbagai sumber, mengunduh model secara otomatis dari rilis YOLOv5 terbaru dan menyimpan hasilnya ke runs/detect
.
python deteksi.py --weights yolov5s.pt --source 0 # webcam img.jpg #gambar vid.mp4 #video layar # tangkapan layar jalur/ # direktori list.txt # daftar gambar list.streams # daftar aliran 'path/*.jpg' # glob 'https://youtu.be/LNwODJXcvt4' # YouTube 'rtsp://example.com/media.mp4' # RTSP, RTMP, aliran HTTP
Perintah di bawah ini mereproduksi hasil YOLOv5 COCO. Model dan kumpulan data diunduh secara otomatis dari rilis YOLOv5 terbaru. Waktu pelatihan untuk YOLOv5n/s/m/l/x adalah 1/2/4/6/8 hari pada GPU V100 (kali Multi-GPU lebih cepat). Gunakan --batch-size
sebesar mungkin, atau berikan --batch-size -1
untuk YOLOv5 AutoBatch. Ukuran batch ditampilkan untuk V100-16GB.
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5n.yaml --batch-size 128 yolov5s 64 yolov5m 40 yolov5l 24 yolov5x 16
Latih Data Khusus? DIREKOMENDASIKAN
Tips Hasil Latihan Terbaik ☘️
Pelatihan Multi-GPU
Pusat PyTorch? BARU
TFLite, ONNX, CoreML, Ekspor TensorRT?
Penerapan platform NVIDIA Jetson? BARU
Augmentasi Waktu Tes (TTA)
Perakitan Model
Model Pemangkasan/Ketersebaran
Evolusi Hiperparameter
Mentransfer Pembelajaran dengan Lapisan Beku
Ringkasan Arsitektur? BARU
Ultralytics HUB untuk melatih dan menerapkan YOLO? DIREKOMENDASIKAN
Pencatatan ClearML
YOLOv5 dengan Deepsparse Neural Magic
Pencatatan Komet? BARU
Integrasi
Integrasi utama kami dengan platform AI terkemuka memperluas fungsionalitas penawaran Ultralytics, meningkatkan tugas seperti pelabelan set data, pelatihan, visualisasi, dan manajemen model. Temukan bagaimana Ultralytics, bekerja sama dengan W&B, Comet, Roboflow, dan OpenVINO, dapat mengoptimalkan alur kerja AI Anda.
HUB Ultralitik? | W&B | Komet ⭐ BARU | Sihir Saraf |
---|---|---|---|
Sederhanakan alur kerja YOLO: Beri label, latih, dan terapkan dengan mudah menggunakan Ultralytics HUB. Coba sekarang! | Lacak eksperimen, hyperparameter, dan hasil dengan Bobot & Bias | Gratis selamanya, Comet memungkinkan Anda menyimpan model YOLOv5, melanjutkan pelatihan, dan memvisualisasikan serta men-debug prediksi secara interaktif | Jalankan inferensi YOLO11 hingga 6x lebih cepat dengan Neural Magic DeepSparse |
HUB Ultralitik
Rasakan AI yang mulus dengan Ultralytics HUB ⭐, solusi lengkap untuk visualisasi data, YOLOv5 dan YOLOv8 ? pelatihan dan penerapan model, tanpa pengkodean apa pun. Ubah gambar menjadi wawasan yang dapat ditindaklanjuti dan wujudkan visi AI Anda dengan mudah menggunakan platform mutakhir kami dan Aplikasi Ultralytics yang mudah digunakan. Mulailah perjalanan Anda Gratis sekarang!
Mengapa YOLOv5
YOLOv5 telah dirancang agar sangat mudah untuk dimulai dan dipelajari. Kami memprioritaskan hasil nyata.
COCO AP val menunjukkan metrik [email protected]:0.95 yang diukur pada kumpulan data COCO val2017 5.000 gambar pada berbagai ukuran inferensi dari 256 hingga 1536.
Kecepatan GPU mengukur waktu inferensi rata-rata per gambar pada dataset COCO val2017 menggunakan instans AWS p3.2xlarge V100 pada ukuran batch 32.
Data EfficientDet dari google/automl pada ukuran batch 8.
Direproduksi dengan python val.py --task study --data coco.yaml --iou 0.7 --weights yolov5n6.pt yolov5s6.pt yolov5m6.pt yolov5l6.pt yolov5x6.pt
Model | ukuran (piksel) | peta val 50-95 | peta val 50 | Kecepatan CPU b1 (MS) | Kecepatan V100b1 (MS) | Kecepatan V100 b32 (MS) | param (M) | FLOP @640 (B) |
---|---|---|---|---|---|---|---|---|
YOLOv5n | 640 | 28.0 | 45.7 | 45 | 6.3 | 0,6 | 1.9 | 4.5 |
YOLOv5s | 640 | 37.4 | 56.8 | 98 | 6.4 | 0,9 | 7.2 | 16.5 |
YOLOv5m | 640 | 45.4 | 64.1 | 224 | 8.2 | 1.7 | 21.2 | 49.0 |
YOLOv5l | 640 | 49.0 | 67.3 | 430 | 10.1 | 2.7 | 46.5 | 109.1 |
YOLOv5x | 640 | 50.7 | 68.9 | 766 | 12.1 | 4.8 | 86.7 | 205.7 |
YOLOv5n6 | 1280 | 36.0 | 54.4 | 153 | 8.1 | 2.1 | 3.2 | 4.6 |
YOLOv5s6 | 1280 | 44.8 | 63.7 | 385 | 8.2 | 3.6 | 12.6 | 16.8 |
YOLOv5m6 | 1280 | 51.3 | 69.3 | 887 | 11.1 | 6.8 | 35.7 | 50.0 |
YOLOv5l6 | 1280 | 53.7 | 71.3 | 1784 | 15.8 | 10.5 | 76.8 | 111.4 |
YOLOv5x6 + TTA | 1280 1536 | 55.0 55.8 | 72.7 72.7 | 3136 - | 26.2 - | 19.4 - | 140.7 - | 209.8 - |
Semua pos pemeriksaan dilatih hingga 300 zaman dengan pengaturan default. Model Nano dan Kecil menggunakan hyp.scratch-low.yaml hyp, semua model lainnya menggunakan hyp.scratch-high.yaml.
Nilai mAP val adalah untuk model tunggal skala tunggal pada dataset COCO val2017.
Reproduksi dengan python val.py --data coco.yaml --img 640 --conf 0.001 --iou 0.65
Kecepatan rata-rata pada gambar COCO val menggunakan instans AWS p3.2xlarge. Waktu NMS (~1 ms/img) tidak termasuk.
Reproduksi dengan python val.py --data coco.yaml --img 640 --task speed --batch 1
Augmentasi Waktu Tes TTA mencakup augmentasi refleksi dan skala.
Reproduksi dengan python val.py --data coco.yaml --img 1536 --iou 0.7 --augment
Segmentasi
Model segmentasi instans YOLOv5 rilis v7.0 baru kami adalah yang tercepat dan paling akurat di dunia, mengalahkan semua tolok ukur SOTA saat ini. Kami membuatnya sangat mudah untuk dilatih, divalidasi, dan diterapkan. Lihat detail selengkapnya di Catatan Rilis kami dan kunjungi Notebook Colab Segmentasi YOLOv5 untuk tutorial memulai cepat.
Kami melatih model segmentasi YOLOv5 di COCO selama 300 epoch pada ukuran gambar 640 menggunakan GPU A100. Kami mengekspor semua model ke ONNX FP32 untuk pengujian kecepatan CPU dan ke TensorRT FP16 untuk pengujian kecepatan GPU. Kami menjalankan semua pengujian kecepatan pada notebook Google Colab Pro agar mudah direproduksi.
Model | ukuran (piksel) | kotak peta 50-95 | topeng peta 50-95 | Waktu kereta 300 zaman A100 (jam) | Kecepatan CPU ONNX (MS) | Kecepatan TRT A100 (MS) | param (M) | FLOP @640 (B) |
---|---|---|---|---|---|---|---|---|
YOLOv5n-seg | 640 | 27.6 | 23.4 | 80:17 | 62.7 | 1.2 | 2.0 | 7.1 |
YOLOv5s-seg | 640 | 37.6 | 31.7 | 88:16 | 173.3 | 1.4 | 7.6 | 26.4 |
YOLOv5m-seg | 640 | 45.0 | 37.1 | 108:36 | 427.0 | 2.2 | 22.0 | 70.8 |
YOLOv5l-seg | 640 | 49.0 | 39.9 | 66:43 (2x) | 857.4 | 2.9 | 47.9 | 147.7 |
YOLOv5x-seg | 640 | 50.7 | 41.4 | 62:56 (3x) | 1579.2 | 4.5 | 88.8 | 265.7 |
Semua pos pemeriksaan dilatih hingga 300 epoch dengan pengoptimal SGD dengan lr0=0.01
dan weight_decay=5e-5
pada ukuran gambar 640 dan semua pengaturan default.
Berjalan dengan login ke https://wandb.ai/glenn-jocher/YOLOv5_v70_official
Nilai akurasi untuk model tunggal skala tunggal pada dataset COCO.
Reproduksi dengan python segment/val.py --data coco.yaml --weights yolov5s-seg.pt
Kecepatan dirata-ratakan pada 100 gambar inferensi menggunakan instance Colab Pro A100 RAM Tinggi. Nilai hanya menunjukkan kecepatan inferensi (NMS menambahkan sekitar 1 ms per gambar).
Reproduksi dengan python segment/val.py --data coco.yaml --weights yolov5s-seg.pt --batch 1
Ekspor ke ONNX di FP32 dan TensorRT di FP16 dilakukan dengan export.py
.
Reproduksi dengan python export.py --weights yolov5s-seg.pt --include engine --device 0 --half
Pelatihan segmentasi YOLOv5 mendukung pengunduhan otomatis kumpulan data segmentasi COCO128-seg dengan argumen --data coco128-seg.yaml
dan pengunduhan manual kumpulan data segmen COCO dengan bash data/scripts/get_coco.sh --train --val --segments
lalu python train.py --data coco.yaml
.
# Segmen GPUpython tunggal/train.py --data coco128-seg.yaml --weights yolov5s-seg.pt --img 640# Multi-GPU DDPpython -m torch.distributed.run --nproc_per_node 4 --master_port 1 segmen /train.py --data coco128-seg.yaml --weights yolov5s-seg.pt --img 640 --device 0,1,2,3
Validasi peta masker YOLOv5s-seg pada kumpulan data COCO:
bash data/scripts/get_coco.sh --val --segments # unduh COCO val segment split (780MB, 5000 gambar)python segment/val.py --weights yolov5s-seg.pt --data coco.yaml --img 640 # validasi
Gunakan YOLOv5m-seg.pt yang telah dilatih sebelumnya untuk memprediksi bus.jpg:
python segment/predict.py --weights yolov5m-seg.pt --source data/images/bus.jpg
model = torch.hub.load( "ultralytics/yolov5", "custom", "yolov5m-seg.pt") # memuat dari PyTorch Hub (PERINGATAN: inferensi belum didukung)
Ekspor model YOLOv5s-seg ke ONNX dan TensorRT:
python ekspor.py --weights yolov5s-seg.pt --termasuk mesin onnx --img 640 --device 0
Klasifikasi
Rilis YOLOv5 v6.2 menghadirkan dukungan untuk pelatihan, validasi, dan penerapan model klasifikasi! Lihat detail selengkapnya di Catatan Rilis kami dan kunjungi Notebook Colab Klasifikasi YOLOv5 untuk tutorial memulai cepat.
Kami melatih model klasifikasi YOLOv5-cls di ImageNet selama 90 periode menggunakan instans 4xA100, dan kami melatih model ResNet dan EfficientNet bersama dengan pengaturan pelatihan default yang sama untuk dibandingkan. Kami mengekspor semua model ke ONNX FP32 untuk pengujian kecepatan CPU dan ke TensorRT FP16 untuk pengujian kecepatan GPU. Kami menjalankan semua tes kecepatan di Google Colab Pro agar mudah direproduksi.
Model | ukuran (piksel) | menurut teratas1 | menurut 5 teratas | Pelatihan 90 zaman 4xA100 (jam) | Kecepatan CPU ONNX (MS) | Kecepatan TensorRT V100 (MS) | param (M) | FLOP @224 (B) |
---|---|---|---|---|---|---|---|---|
YOLOv5n-cls | 224 | 64.6 | 85.4 | 7:59 | 3.3 | 0,5 | 2.5 | 0,5 |
YOLOv5s-cls | 224 | 71.5 | 90.2 | 08:09 | 6.6 | 0,6 | 5.4 | 1.4 |
YOLOv5m-cls | 224 | 75.9 | 92.9 | 10:06 | 15.5 | 0,9 | 12.9 | 3.9 |
YOLOv5l-cls | 224 | 78.0 | 94.0 | 11:56 | 26.9 | 1.4 | 26.5 | 8.5 |
YOLOv5x-cls | 224 | 79.0 | 94.4 | 15:04 | 54.3 | 1.8 | 48.1 | 15.9 |
ResNet18 | 224 | 70.3 | 89,5 | 6:47 | 11.2 | 0,5 | 11.7 | 3.7 |
ResNet34 | 224 | 73.9 | 91.8 | 8:33 | 20.6 | 0,9 | 21.8 | 7.4 |
ResNet50 | 224 | 76.8 | 93.4 | 11:10 | 23.4 | 1.0 | 25.6 | 8.5 |
ResNet101 | 224 | 78.5 | 94.3 | 17:10 | 42.1 | 1.9 | 44.5 | 15.9 |
EfisienNet_b0 | 224 | 75.1 | 92.4 | 13:03 | 12.5 | 1.3 | 5.3 | 1.0 |
EfisienNet_b1 | 224 | 76.4 | 93.2 | 17:04 | 14.9 | 1.6 | 7.8 | 1.5 |
EfisienNet_b2 | 224 | 76.6 | 93.4 | 17:10 | 15.9 | 1.6 | 9.1 | 1.7 |
EfisienNet_b3 | 224 | 77.7 | 94.0 | 19:19 | 18.9 | 1.9 | 12.2 | 2.4 |
Semua pos pemeriksaan dilatih hingga 90 epoch dengan pengoptimal SGD dengan lr0=0.001
dan weight_decay=5e-5
pada ukuran gambar 224 dan semua pengaturan default.
Berjalan masuk ke https://wandb.ai/glenn-jocher/YOLOv5-Classifier-v6-2
Nilai akurasi adalah untuk model tunggal skala tunggal pada kumpulan data ImageNet-1k.
Reproduksi dengan python classify/val.py --data ../datasets/imagenet --img 224
Kecepatan rata-rata lebih dari 100 gambar inferensi menggunakan instance RAM Tinggi Google Colab Pro V100.
Reproduksi dengan python classify/val.py --data ../datasets/imagenet --img 224 --batch 1
Ekspor ke ONNX di FP32 dan TensorRT di FP16 dilakukan dengan export.py
.
Reproduksi dengan python export.py --weights yolov5s-cls.pt --include engine onnx --imgsz 224
Pelatihan klasifikasi YOLOv5 mendukung pengunduhan otomatis kumpulan data MNIST, Fashion-MNIST, CIFAR10, CIFAR100, Imagenette, Imagewoof, dan ImageNet dengan argumen --data
. Untuk memulai pelatihan tentang MNIST misalnya gunakan --data mnist
.
# Klasifikasi GPUpython tunggal/train.py --model yolov5s-cls.pt --data cifar100 --epochs 5 --img 224 --batch 128# DDPpython multi-GPU -m torch.distributed.run --nproc_per_node 4 - -master_port 1 classify/train.py --model yolov5s-cls.pt --data imagenet --epochs 5 --img 224 --device 0,1,2,3
Validasi akurasi YOLOv5m-cls pada kumpulan data ImageNet-1k:
bash data/scripts/get_imagenet.sh --val # unduh ImageNet val split (6.3G, 50.000 gambar)python classify/val.py --weights yolov5m-cls.pt --data ../datasets/imagenet --img 224 # validasi
Gunakan YOLOv5s-cls.pt yang telah dilatih sebelumnya untuk memprediksi bus.jpg:
python classify/predict.py --weights yolov5s-cls.pt --source data/images/bus.jpg
model = torch.hub.load("ultralytics/yolov5", "custom", "yolov5s-cls.pt") # memuat dari PyTorch Hub
Ekspor sekelompok model YOLOv5s-cls, ResNet, dan EfficientNet terlatih ke ONNX dan TensorRT:
python ekspor.py --weights yolov5s-cls.pt resnet50.pt efisiennet_b0.pt --termasuk mesin onnx --img 224
Lingkungan
Mulailah dalam hitungan detik dengan lingkungan terverifikasi kami. Klik setiap ikon di bawah untuk detailnya.
Menyumbang
Kami menyukai masukan Anda! Kami ingin membuat kontribusi ke YOLOv5 semudah dan setransparan mungkin. Silakan lihat Panduan Berkontribusi kami untuk memulai, dan isi Survei YOLOv5 untuk mengirimkan masukan kepada kami tentang pengalaman Anda. Terima kasih kepada semua kontributor kami!
Lisensi
Ultralytics menawarkan dua opsi lisensi untuk mengakomodasi beragam kasus penggunaan:
Lisensi AGPL-3.0 : Lisensi sumber terbuka yang disetujui OSI ini ideal untuk pelajar dan penggemar, mempromosikan kolaborasi terbuka dan berbagi pengetahuan. Lihat file LISENSI untuk lebih jelasnya.
Lisensi Perusahaan : Dirancang untuk penggunaan komersial, lisensi ini memungkinkan integrasi perangkat lunak Ultralytics dan model AI secara lancar ke dalam barang dan layanan komersial, melewati persyaratan sumber terbuka AGPL-3.0. Jika skenario Anda melibatkan penyematan solusi kami ke dalam penawaran komersial, hubungi Lisensi Ultralytics.
Kontak
Untuk laporan bug YOLOv5 dan permintaan fitur, silakan kunjungi Masalah GitHub, dan bergabunglah dengan komunitas Discord kami untuk pertanyaan dan diskusi!