YOLOX
YOLOX 0.3.0


Yolox是Yolo的无锚版版本,设计更简单,但性能更好!它旨在弥合研究与工业社区之间的差距。有关更多详细信息,请参阅我们关于ARXIV的报告。
此存储库是Pytorch版本Yolox的实现,还有一个Megengine实现。

| 模型 | 尺寸 | 地图阀 0.5:0.95 | 地图测试 0.5:0.95 | 速度V100 (多发性硬化症) | 参数 (M) | 拖鞋 (g) | 权重 |
|---|---|---|---|---|---|---|---|
| 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 |
| 模型 | 尺寸 | 地图测试 0.5:0.95 | 速度V100 (多发性硬化症) | 参数 (M) | 拖鞋 (g) | 权重 |
|---|---|---|---|---|---|---|
| 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 |
| 模型 | 尺寸 | 地图阀 0.5:0.95 | 参数 (M) | 拖鞋 (g) | 权重 |
|---|---|---|---|---|---|
| Yolox-Nano | 416 | 25.8 | 0.91 | 1.08 | github |
| yolox微小 | 416 | 32.8 | 5.06 | 6.45 | github |
| 模型 | 尺寸 | 地图阀 0.5:0.95 | 参数 (M) | 拖鞋 (g) | 权重 |
|---|---|---|---|---|---|
| Yolox-Nano | 416 | 25.3 | 0.91 | 1.08 | github |
| yolox微小 | 416 | 32.8 | 5.06 | 6.45 | github |
步骤1。从源安装Yolox。
git clone [email protected]:Megvii-BaseDetection/YOLOX.git
cd YOLOX
pip3 install -v -e . # or python3 setup.py develop步骤1。从基准表下载验证的型号。
步骤2。使用-n或-f指定检测器的配置。例如:
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]或者
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]视频演示:
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]步骤1。准备可可数据集
cd < YOLOX_HOME >
ln -s /path/to/your/COCO ./datasets/COCO步骤2。通过指定-n:在可可上重现我们的结果:
python -m yolox.tools.train -n yolox-s -d 8 -b 64 --fp16 -o [--cache]
yolox-m
yolox-l
yolox-x使用-f时,以上命令等效于:
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.py多机器训练
我们还支持多节点培训。只需添加以下args:
假设您想在两台机器上训练Yolox,并且主机的IP为123.123.123.123,使用端口12312和TCP。
在主机上,运行
python tools/train.py -n yolox-s -b 128 --dist-url tcp://123.123.123.123:12312 --num_machines 2 --machine_rank 0在第二台机器上,运行
python tools/train.py -n yolox-s -b 128 --dist-url tcp://123.123.123.123:12312 --num_machines 2 --machine_rank 1登录重量和偏见
为了记录指标,预测和模型检查点以使用W&B使用命令行参数--logger wandb ,并使用前缀“ wandb-”来指定参数以初始化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-x一个示例Wandb仪表板在这里可用
其他的
使用以下命令查看更多信息:
python -m yolox.tools.train --help我们支持批次测试以进行快速评估:
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-x要重现速度测试,我们使用以下命令:
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-x如果您在研究中使用Yolox,请使用以下Bibtex条目引用我们的工作:
@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}
}没有简·孙博士的指导,Yolox将不会被释放并开放给社区。太阳博士的逝世是计算机视野领域的巨大损失。我们在此处添加了本节,以向我们的上尉Sun博士表示纪念和慰问。希望世界上的每个AI从业者都会坚持“不断创新,以扩大认知界限,以及非凡的技术以实现产品价值”,并一直向前迈进。
