
Inglês | 简体中文
Implementação de papel:

| Modelo | Tamanho | mapa val 0,5: 0,95 | Velocidade T4 TRT FP16 B1 (FPS) | Velocidade T4 TRT FP16 B32 (FPS) | Params (M) | Flops (G) |
|---|---|---|---|---|---|---|
| Yolov6-N | 640 | 37.5 | 779 | 1187 | 4.7 | 11.4 |
| Yolov6-s | 640 | 45.0 | 339 | 484 | 18.5 | 45.3 |
| Yolov6-m | 640 | 50.0 | 175 | 226 | 34.9 | 85.8 |
| Yolov6-l | 640 | 52.8 | 98 | 116 | 59.6 | 150.7 |
| Yolov6-N6 | 1280 | 44.9 | 228 | 281 | 10.4 | 49.8 |
| YOLOV6-S6 | 1280 | 50.3 | 98 | 108 | 41.4 | 198.0 |
| YOLOV6-M6 | 1280 | 55.2 | 47 | 55 | 79.6 | 379.5 |
| Yolov6-L6 | 1280 | 57.2 | 26 | 29 | 140.4 | 673.4 |
| Modelo | Tamanho | mapa val 0,5: 0,95 | Velocidade T4 TRT FP16 B1 (FPS) | Velocidade T4 TRT FP16 B32 (FPS) | Params (M) | Flops (G) |
|---|---|---|---|---|---|---|
| Yolov6-N | 640 | 35.9 300E 36.3 400E | 802 | 1234 | 4.3 | 11.1 |
| YOLOV6-T | 640 | 40.3 300E 41.1 400E | 449 | 659 | 15.0 | 36.7 |
| Yolov6-s | 640 | 43.5 300E 43.8 400E | 358 | 495 | 17.2 | 44.2 |
| Yolov6-m | 640 | 49.5 | 179 | 233 | 34.3 | 82.2 |
| Yolov6-L-Relu | 640 | 51.7 | 113 | 149 | 58.5 | 144.0 |
| Yolov6-l | 640 | 52.5 | 98 | 121 | 58.5 | 144.0 |
| Modelo | Tamanho | Precisão | mapa val 0,5: 0,95 | Velocidade T4 TRT B1 (FPS) | Velocidade T4 TRT B32 (FPS) |
|---|---|---|---|---|---|
| Yolov6-N Repopt | 640 | Int8 | 34.8 | 1114 | 1828 |
| Yolov6-N | 640 | FP16 | 35.9 | 802 | 1234 |
| Yolov6-t Repopt | 640 | Int8 | 39.8 | 741 | 1167 |
| YOLOV6-T | 640 | FP16 | 40.3 | 449 | 659 |
| YOLOV6-S REPOPT | 640 | Int8 | 43.3 | 619 | 924 |
| Yolov6-s | 640 | FP16 | 43.5 | 377 | 541 |
| Modelo | Tamanho | mapa val 0,5: 0,95 | SM8350 (EM) | MT6853 (EM) | SDM660 (EM) | Params (M) | Flops (G) |
|---|---|---|---|---|---|---|---|
| Yolov6lite-s | 320*320 | 22.4 | 7.99 | 11.99 | 41.86 | 0,55 | 0,56 |
| Yolov6lite-m | 320*320 | 25.1 | 9.08 | 13.27 | 47.95 | 0,79 | 0,67 |
| Yolov6lite-l | 320*320 | 28.0 | 11.37 | 16.20 | 61.40 | 1.09 | 0,87 |
| Yolov6lite-l | 320*192 | 25.0 | 7.02 | 9.66 | 36.13 | 1.09 | 0,52 |
| Yolov6lite-l | 224*128 | 18.9 | 3.63 | 4.99 | 17.76 | 1.09 | 0,24 |
git clone https://github.com/meituan/YOLOv6
cd YOLOv6
pip install -r requirements.txtConsulte o conjunto de dados de treinar Coco.
GPU único
# P5 models
python tools/train.py --batch 32 --conf configs/yolov6s_finetune.py --data data/dataset.yaml --fuse_ab --device 0
# P6 models
python tools/train.py --batch 32 --conf configs/yolov6s6_finetune.py --data data/dataset.yaml --img 1280 --device 0Multi GPUs (modo DDP recomendado)
# P5 models
python -m torch.distributed.launch --nproc_per_node 8 tools/train.py --batch 256 --conf configs/yolov6s_finetune.py --data data/dataset.yaml --fuse_ab --device 0,1,2,3,4,5,6,7
# P6 models
python -m torch.distributed.launch --nproc_per_node 8 tools/train.py --batch 128 --conf configs/yolov6s6_finetune.py --data data/dataset.yaml --img 1280 --device 0,1,2,3,4,5,6,7 ├── coco
│ ├── annotations
│ │ ├── instances_train2017.json
│ │ └── instances_val2017.json
│ ├── images
│ │ ├── train2017
│ │ └── val2017
│ ├── labels
│ │ ├── train2017
│ │ ├── val2017
│ ├── LICENSE
│ ├── README.txt
Yolov6 suporta diferentes modos de resolução de entrada. Para detalhes, consulte como definir o tamanho da entrada.
Se o seu processo de treinamento estiver corrompido, você pode retomar o treinamento por
# single GPU training.
python tools/train.py --resume
# multi GPU training.
python -m torch.distributed.launch --nproc_per_node 8 tools/train.py --resume
O comando acima encontrará automaticamente o ponto de verificação mais recente no diretório YOLOV6 e retomará o processo de treinamento.
Seu também pode especificar um caminho de ponto de verificação para -o parâmetro --resume por
# remember to replace /path/to/your/checkpoint/path to the checkpoint path which you want to resume training.
--resume /path/to/your/checkpoint/path
Isso será retomado do ponto de verificação específico que você fornece.
Reproduzir mapa no conjunto de dados Coco Val2017 com resolução 640 × 640 ou 1280x1280
# P5 models
python tools/eval.py --data data/coco.yaml --batch 32 --weights yolov6s.pt --task val --reproduce_640_eval
# P6 models
python tools/eval.py --data data/coco.yaml --batch 32 --weights yolov6s6.pt --task val --reproduce_640_eval --img 1280Primeiro, faça o download de um modelo pré -terenciado do lançamento do Yolov6 ou use seu modelo treinado para fazer inferência.
Segundo, execute a inferência com tools/infer.py
# P5 models
python tools/infer.py --weights yolov6s.pt --source img.jpg / imgdir / video.mp4
# P6 models
python tools/infer.py --weights yolov6s6.pt --img 1280 1280 --source img.jpg / imgdir / video.mp4Se você deseja ingerir na câmera local ou na câmera da web, pode executar:
# P5 models
python tools/infer.py --weights yolov6s.pt --webcam --webcam-addr 0
# P6 models
python tools/infer.py --weights yolov6s6.pt --img 1280 1280 --webcam --webcam-addr 0 webcam-addr pode ser o ID do número da câmera local ou o endereço RTSP.
Treinamento Yolov6 com Amazon Sagemaker: Yolov6-Sagemaker da Ashwincc
Yolov6 NCNN App App Demo: ncnn-Android-Yolov6 de Feigechuanshu
Yolov6 onnxruntime/mnn/tnn c ++: yolov6-out, yolov6-mnn e yolov6-tnn
Yolov6 Tensorrt Python: Yolov6-Tensorrt-Python de Linaom1214
Yolov6 Tensorrt Windows C ++: Yolort de Wei Zeng
Demonstração da Web Yolov6 em espaços Huggingface com Gradio.
Demo interativa no Dagshub com Streamlit
Tutorial: Como treinar Yolov6 em um conjunto de dados personalizado
Tutorial do YouTube: como treinar Yolov6 em um conjunto de dados personalizado
Demonstração de Yolov6 Inferência no Google Colab
Postagem do blog: Yolov6 Detecção de objetos - explicação e inferência em papel
Se você tiver alguma dúvida, seja bem -vindo para se juntar ao nosso grupo WeChat para discutir e trocar.
