Советы : 深度学习指导 目标检测、目标跟踪、语义分割等 , 小型数据集详询 QQ3419923783
| имя | Набор данных поезда | тестовый набор данных | размер теста | карта | Время вывода (MS) | Params (m) | модель ссылка |
|---|---|---|---|---|---|---|---|
| Mobilenetv2-yolov4 | Voc Trainval (07+12) | VOC -тест (07) | 416 | 0,851 | 11.29 | 46.34 | Аргс |
Mobilenetv3-yolov4 прибывает! (Вам нужно только изменить модель_тип в config/yolov4_config.py)
Это репо добавляет некоторые полезные методы внимания в основе. Следующие картинки иллюстрируют такую вещь:


Этот репо является простым в использовании, легко читать и несложный для улучшения по сравнению с другими !!!
Запустите сценарий установки, чтобы установить все зависимости. Вы должны предоставить путь установки Conda (например,/anaconda3) и название для созданной среды Conda (здесь YOLOv4-pytorch ).
pip3 install -r requirements.txt --userПримечание. Сценарий установки был протестирован на системе Ubuntu 18.04 и Window 10. В случае проблем проверьте подробные инструкции по установке.
git clone github.com/argusswift/YOLOv4-pytorch.git Обновите "PROJECT_PATH" в 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" в конфигурации/yolov4_config.py.weight/ в Yolov4 и поместите весовой файл. Запустите следующую команду, чтобы начать обучение, и просмотрите детали в config/yolov4_config.py и вы должны установить data_type IS voc или coco при запуске программы обучения.
CUDA_VISIBLE_DEVICES=0 nohup python -u train.py --weight_path weight/yolov4.weights --gpu_id 0 > nohup.log 2>&1 & Кроме того, * он поддерживает возобновление обучения добавлению --resume , он будет last.pt
CUDA_VISIBLE_DEVICES=0 nohup python -u train.py --weight_path weight/last.pt --gpu_id 0 > nohup.log 2>&1 & Измените свой путь обнаружения IMG: data_test =/path/to/your/test_data # ваши собственные изображения
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 Изображения можно увидеть на output/ . Вы можете увидеть такие картинки, как следующие:

Изменить:
CUDA_VISIBLE_DEVICES=0 python3 video_test.py --weight_path best.pt --gpu_id 0 --video_path video.mp4 --output_dir --output_dirИзмените свой путь набора данных оценки: data_path =/path/to/your/test_data # ваши собственные изображения
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
Если вы хотите увидеть изображение выше, вы должны использовать следующие команды:
# 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 Измените свой путь набора данных оценки: data_path =/path/to/your/test_data # ваши собственные изображения
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.pyУстановите Showatt = ture в val_voc.py, и вы увидите тепловые карты, появившиеся из выхода сети '
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 Тепловые карты можно увидеть на output/ как это:
