

YOLOX adalah versi YOLO yang bebas jangkar, dengan desain yang lebih sederhana tetapi kinerja yang lebih baik! Ini bertujuan untuk menjembatani kesenjangan antara penelitian dan komunitas industri. Untuk detail lebih lanjut, silakan merujuk ke laporan kami tentang ARXIV.
Repo ini adalah implementasi YOLOX versi Pytorch, ada juga implementasi megengine.

| Model | ukuran | peta val 0,5: 0,95 | tes peta 0,5: 0,95 | Kecepatan V100 (MS) | Params (M) | Jepit (G) | bobot |
|---|---|---|---|---|---|---|---|
| YOLOX-S | 640 | 40.5 | 40.5 | 9.8 | 9.0 | 26.8 | GitHub |
| Yolox-m | 640 | 46.9 | 47.2 | 12.3 | 25.3 | 73.8 | GitHub |
| Yolox-l | 640 | 49.7 | 50.1 | 14.5 | 54.2 | 155.6 | GitHub |
| YOLOX-X | 640 | 51.1 | 51.5 | 17.3 | 99.1 | 281.9 | GitHub |
| YOLOX-DARKNET53 | 640 | 47.7 | 48.0 | 11.1 | 63.7 | 185.3 | GitHub |
| Model | ukuran | tes peta 0,5: 0,95 | Kecepatan V100 (MS) | Params (M) | Jepit (G) | bobot |
|---|---|---|---|---|---|---|
| YOLOX-S | 640 | 39.6 | 9.8 | 9.0 | 26.8 | OneDrive/GitHub |
| Yolox-m | 640 | 46.4 | 12.3 | 25.3 | 73.8 | OneDrive/GitHub |
| Yolox-l | 640 | 50.0 | 14.5 | 54.2 | 155.6 | OneDrive/GitHub |
| YOLOX-X | 640 | 51.2 | 17.3 | 99.1 | 281.9 | OneDrive/GitHub |
| YOLOX-DARKNET53 | 640 | 47.4 | 11.1 | 63.7 | 185.3 | OneDrive/GitHub |
| Model | ukuran | peta val 0,5: 0,95 | Params (M) | Jepit (G) | bobot |
|---|---|---|---|---|---|
| Yolox-Nano | 416 | 25.8 | 0.91 | 1.08 | GitHub |
| YOLOX kecil | 416 | 32.8 | 5.06 | 6.45 | GitHub |
| Model | ukuran | peta val 0,5: 0,95 | Params (M) | Jepit (G) | bobot |
|---|---|---|---|---|---|
| Yolox-Nano | 416 | 25.3 | 0.91 | 1.08 | GitHub |
| YOLOX kecil | 416 | 32.8 | 5.06 | 6.45 | GitHub |
Langkah1. Instal Yolox dari Sumber.
git clone [email protected]:Megvii-BaseDetection/YOLOX.git
cd YOLOX
pip3 install -v -e . # or python3 setup.py developLangkah1. Unduh model pretrained dari tabel benchmark.
Langkah2. Gunakan -n atau -f untuk menentukan konfigurasi detektor Anda. Misalnya:
python tools/demo.py image -n yolox-s -c /path/to/your/yolox_s.pth --path assets/dog.jpg --conf 0.25 --nms 0.45 --tsize 640 --save_result --device [cpu/gpu]atau
python tools/demo.py image -f exps/default/yolox_s.py -c /path/to/your/yolox_s.pth --path assets/dog.jpg --conf 0.25 --nms 0.45 --tsize 640 --save_result --device [cpu/gpu]Demo untuk video:
python tools/demo.py video -n yolox-s -c /path/to/your/yolox_s.pth --path /path/to/your/video --conf 0.25 --nms 0.45 --tsize 640 --save_result --device [cpu/gpu]Langkah1. Siapkan dataset Coco
cd < YOLOX_HOME >
ln -s /path/to/your/COCO ./datasets/COCOLangkah2. Mereproduksi hasil kami di Coco dengan menentukan -n:
python -m yolox.tools.train -n yolox-s -d 8 -b 64 --fp16 -o [--cache]
yolox-m
yolox-l
yolox-xSaat menggunakan -f, perintah di atas setara dengan:
python -m yolox.tools.train -f exps/default/yolox_s.py -d 8 -b 64 --fp16 -o [--cache]
exps/default/yolox_m.py
exps/default/yolox_l.py
exps/default/yolox_x.pyPelatihan multi mesin
Kami juga mendukung pelatihan multi-node. Tambahkan saja args berikut:
Misalkan Anda ingin melatih YOLOX pada 2 mesin, dan IP master mesin Anda adalah 123.123.123.123, gunakan port 12312 dan TCP.
Di mesin master, jalankan
python tools/train.py -n yolox-s -b 128 --dist-url tcp://123.123.123.123:12312 --num_machines 2 --machine_rank 0Di mesin kedua, jalankan
python tools/train.py -n yolox-s -b 128 --dist-url tcp://123.123.123.123:12312 --num_machines 2 --machine_rank 1Masuk ke Bobot & Bias
Untuk mencatat metrik, prediksi, dan pos pemeriksaan model untuk W&B menggunakan argumen baris perintah --logger wandb dan menggunakan awalan "wandb-" untuk menentukan argumen untuk menginisialisasi run wandb.
python tools/train.py -n yolox-s -d 8 -b 64 --fp16 -o [--cache] --logger wandb wandb-project < project name >
yolox-m
yolox-l
yolox-xContoh dasbor wandb tersedia di sini
Yang lain
Lihat informasi lebih lanjut dengan perintah berikut:
python -m yolox.tools.train --helpKami mendukung pengujian batch untuk evaluasi cepat:
python -m yolox.tools.eval -n yolox-s -c yolox_s.pth -b 64 -d 8 --conf 0.001 [--fp16] [--fuse]
yolox-m
yolox-l
yolox-xUntuk mereproduksi tes kecepatan, kami menggunakan perintah berikut:
python -m yolox.tools.eval -n yolox-s -c yolox_s.pth -b 1 -d 1 --conf 0.001 --fp16 --fuse
yolox-m
yolox-l
yolox-xJika Anda menggunakan YOLOX dalam penelitian Anda, silakan kutip pekerjaan kami dengan menggunakan entri Bibtex berikut:
@article{yolox2021,
title={YOLOX: Exceeding YOLO Series in 2021},
author={Ge, Zheng and Liu, Songtao and Wang, Feng and Li, Zeming and Sun, Jian},
journal={arXiv preprint arXiv:2107.08430},
year={2021}
}Tanpa bimbingan Dr. Jian Sun, Yolox tidak akan dirilis dan bersumber terbuka untuk masyarakat. Pengesahan Dr. Sun adalah kerugian besar bagi bidang penglihatan komputer. Kami menambahkan bagian ini di sini untuk mengekspresikan kenangan dan belasungkawa kami kepada Kapten kami Dr. Sun. Diharapkan bahwa setiap praktisi AI di dunia akan berpegang pada keyakinan "inovasi berkelanjutan untuk memperluas batas kognitif, dan teknologi luar biasa untuk mencapai nilai produk" dan bergerak maju sepanjang jalan.
