Dicas: 深度学习指导 , 目标检测、目标跟踪、语义分割等 , 小型数据集详询 qq3419923783
| nome | conjunto de dados de trem | DataSet de teste | Tamanho do teste | mapa | Tempo de inferência (MS) | params (m) | Modelo Link |
|---|---|---|---|---|---|---|---|
| mobileNetv2-yolov4 | VOC TrainVal (07+12) | Teste de COV (07) | 416 | 0,851 | 11.29 | 46.34 | args |
MobileNetv3-yolov4 está chegando! (Você só precisa alterar o modelo_type em config/yolov4_config.py)
Este repo adiciona alguns métodos de atenção úteis no backbone. As fotos a seguir ilustram isso:


Este repositório é simples de usar, fácil de ler e descomplicado para melhorar em comparação com os outros !!!
Execute o script de instalação para instalar todas as dependências. Você precisa fornecer o caminho de instalação do CONDA (por exemplo, ~/anaconda3) e o nome para o ambiente do conda criado (aqui YOLOv4-pytorch ).
pip3 install -r requirements.txt --userNota: O script de instalação foi testado em um sistema Ubuntu 18.04 e Window 10. Em caso de problemas, verifique as instruções detalhadas de instalação.
git clone github.com/argusswift/YOLOv4-pytorch.git Atualize o "PROJECT_PATH" no config/yolov4_config.py.
# Download the data.
cd $HOME /data
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
# Extract the data.
tar -xvf VOCtrainval_11-May-2012.tar
tar -xvf VOCtrainval_06-Nov-2007.tar
tar -xvf VOCtest_06-Nov-2007.tar # step1: download the following data and annotation
2017 Train images [118K/18GB]
2017 Val images [5K/1GB]
2017 Test images [41K/6GB]
2017 Train/Val annotations [241MB]
# step2: arrange the data to the following structure
COCO
---train
---test
---val
---annotations"DATA_PATH" no config/yolov4_config.py.weight/ no Yolov4 e coloque o arquivo de peso. Execute o comando a seguir para iniciar o treinamento e ver os detalhes no config/yolov4_config.py e você deve definir data_type é voc ou coco ao executar o programa de treinamento.
CUDA_VISIBLE_DEVICES=0 nohup python -u train.py --weight_path weight/yolov4.weights --gpu_id 0 > nohup.log 2>&1 & Além disso * suporta retomar o treinamento adicionando --resume , ele carregará por last.pt automaticamente usando o Commad
CUDA_VISIBLE_DEVICES=0 nohup python -u train.py --weight_path weight/last.pt --gpu_id 0 > nohup.log 2>&1 & Modifique seu caminho de detecte img: data_test =/path/to/your/test_data # suas próprias imagens
for VOC dataset:
CUDA_VISIBLE_DEVICES=0 python3 eval_voc.py --weight_path weight/best.pt --gpu_id 0 --visiual $DATA_TEST --eval --mode det
for COCO dataset:
CUDA_VISIBLE_DEVICES=0 python3 eval_coco.py --weight_path weight/best.pt --gpu_id 0 --visiual $DATA_TEST --eval --mode det As imagens podem ser vistas na output/ . Você podia ver fotos como a seguir:

Modificar:
CUDA_VISIBLE_DEVICES=0 python3 video_test.py --weight_path best.pt --gpu_id 0 --video_path video.mp4 --output_dir --output_dirModifique o seu caminho de avaliação do conjunto de dados: data_path =/path/to/your/test_data # suas próprias imagens
for VOC dataset:
CUDA_VISIBLE_DEVICES=0 python3 eval_voc.py --weight_path weight/best.pt --gpu_id 0 --visiual $DATA_TEST --eval --mode val
Se você quiser ver a imagem acima, use os comandos seguintes:
# To get ground truths of your dataset
python3 utils/get_gt_txt.py
# To plot P-R curve and calculate mean average precision
python3 utils/get_map.py Modifique o seu caminho de avaliação do conjunto de dados: data_path =/path/to/your/test_data # suas próprias imagens
CUDA_VISIBLE_DEVICES=0 python3 eval_coco.py --weight_path weight/best.pt --gpu_id 0 --visiual $DATA_TEST --eval --mode val
type=bbox
Running per image evaluation... DONE (t=0.34s).
Accumulating evaluation results... DONE (t=0.08s).
Average Precision (AP) @[ IoU = 0.50:0.95 | area = all | maxDets = 100 ] = 0.438
Average Precision (AP) @[ IoU = 0.50 | area = all | maxDets = 100 ] = 0.607
Average Precision (AP) @[ IoU = 0.75 | area = all | maxDets = 100 ] = 0.469
Average Precision (AP) @[ IoU = 0.50:0.95 | area = small | maxDets = 100 ] = 0.253
Average Precision (AP) @[ IoU = 0.50:0.95 | area = medium | maxDets = 100 ] = 0.486
Average Precision (AP) @[ IoU = 0.50:0.95 | area = large | maxDets = 100 ] = 0.567
Average Recall (AR) @[ IoU = 0.50:0.95 | area = all | maxDets = 1 ] = 0.342
Average Recall (AR) @[ IoU = 0.50:0.95 | area = all | maxDets = 10 ] = 0.571
Average Recall (AR) @[ IoU = 0.50:0.95 | area = all | maxDets = 100 ] = 0.632
Average Recall (AR) @[ IoU = 0.50:0.95 | area = small | maxDets = 100 ] = 0.458
Average Recall (AR) @[ IoU = 0.50:0.95 | area = medium | maxDets = 100 ] = 0.691
Average Recall (AR) @[ IoU = 0.50:0.95 | area = large | maxDets = 100 ] = 0.790python3 utils/modelsize.pySet Showatt = Ture em val_voc.py e você verá os mapas de calor emergidos da saída da rede '
for VOC dataset:
CUDA_VISIBLE_DEVICES=0 python3 eval_voc.py --weight_path weight/best.pt --gpu_id 0 --visiual $DATA_TEST --eval
for COCO dataset:
CUDA_VISIBLE_DEVICES=0 python3 eval_coco.py --weight_path weight/best.pt --gpu_id 0 --visiual $DATA_TEST --eval Os mapas de calor podem ser vistos na output/ como esta:
