更换文档检测模型
This commit is contained in:
85
paddle_detection/configs/yolov3/README.md
Normal file
85
paddle_detection/configs/yolov3/README.md
Normal file
@@ -0,0 +1,85 @@
|
||||
# YOLOv3
|
||||
|
||||
## Model Zoo
|
||||
|
||||
### YOLOv3 on COCO
|
||||
|
||||
| 骨架网络 | 输入尺寸 | 每张GPU图片个数 | 学习率策略 |推理时间(fps) | mAP<sup>val<br>0.5:0.95 | 下载 | 配置文件 |
|
||||
| :------------------- | :------- | :-----: | :-----: | :------------: | :-----: | :-----------------------------------------------------: | :-----: |
|
||||
| DarkNet53(paper) | 608 | 8 | 270e | - | 33.0 | - | - |
|
||||
| DarkNet53(paper) | 416 | 8 | 270e | - | 31.0 | - | - |
|
||||
| DarkNet53(paper) | 320 | 8 | 270e | - | 28.2 | - | - |
|
||||
| DarkNet53 | 608 | 8 | 270e | - | **39.1** | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_darknet53_270e_coco.pdparams) | [配置文件](./yolov3_darknet53_270e_coco.yml) |
|
||||
| DarkNet53 | 416 | 8 | 270e | - | 37.7 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_darknet53_270e_coco.pdparams) | [配置文件](./yolov3_darknet53_270e_coco.yml) |
|
||||
| DarkNet53 | 320 | 8 | 270e | - | 34.8 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_darknet53_270e_coco.pdparams) | [配置文件](./yolov3_darknet53_270e_coco.yml) |
|
||||
| ResNet50_vd-DCN | 608 | 8 | 270e | - | **40.6** | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_r50vd_dcn_270e_coco.pdparams) | [配置文件](./yolov3_r50vd_dcn_270e_coco.yml) |
|
||||
| ResNet50_vd-DCN | 416 | 8 | 270e | - | 38.2 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_r50vd_dcn_270e_coco.pdparams) | [配置文件](./yolov3_r50vd_dcn_270e_coco.yml) |
|
||||
| ResNet50_vd-DCN | 320 | 8 | 270e | - | 35.1 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_r50vd_dcn_270e_coco.pdparams) | [配置文件](./yolov3_r50vd_dcn_270e_coco.yml) |
|
||||
| ResNet34 | 608 | 8 | 270e | - | 36.2 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_r34_270e_coco.pdparams) | [配置文件](./yolov3_r34_270e_coco.yml) |
|
||||
| ResNet34 | 416 | 8 | 270e | - | 34.3 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_r34_270e_coco.pdparams) | [配置文件](./yolov3_r34_270e_coco.yml) |
|
||||
| ResNet34 | 320 | 8 | 270e | - | 31.2 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_r34_270e_coco.pdparams) | [配置文件](./yolov3_r34_270e_coco.yml) |
|
||||
| MobileNet-V1 | 608 | 8 | 270e | - | 29.4 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v1_270e_coco.yml) |
|
||||
| MobileNet-V1 | 416 | 8 | 270e | - | 29.3 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v1_270e_coco.yml) |
|
||||
| MobileNet-V1 | 320 | 8 | 270e | - | 27.2 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v1_270e_coco.yml) |
|
||||
| MobileNet-V3 | 608 | 8 | 270e | - | 31.4 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_270e_coco.yml) |
|
||||
| MobileNet-V3 | 416 | 8 | 270e | - | 29.6 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_270e_coco.yml) |
|
||||
| MobileNet-V3 | 320 | 8 | 270e | - | 27.1 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_270e_coco.yml) |
|
||||
| MobileNet-V1-SSLD | 608 | 8 | 270e | - | 31.0 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_ssld_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v1_ssld_270e_coco.yml) |
|
||||
| MobileNet-V1-SSLD | 416 | 8 | 270e | - | 30.6 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_ssld_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v1_ssld_270e_coco.yml) |
|
||||
| MobileNet-V1-SSLD | 320 | 8 | 270e | - | 28.4 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_ssld_270e_coco.pdparams) | [配置文件](./yolov3_mobilenet_v1_ssld_270e_coco.yml) |
|
||||
|
||||
### YOLOv3 on Pasacl VOC
|
||||
|
||||
| 骨架网络 | 输入尺寸 | 每张GPU图片个数 | 学习率策略 |推理时间(fps)| mAP(0.50,11point) | 下载 | 配置文件 |
|
||||
| :----------- | :--: | :-----: | :-----: |:------------: |:----: | :-------: | :----: |
|
||||
| DarkNet53 | 608 | 8 | 270e | - | **85.4** (56.1 mAP<br>0.5:0.95) | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_darknet53_270e_voc.pdparams) | [配置文件](./yolov3_darknet53_270e_voc.yml) |
|
||||
| DarkNet53 | 416 | 8 | 270e | - | 85.2 (57.3 mAP<br>0.5:0.95) | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_darknet53_270e_voc.pdparams) | [配置文件](./yolov3_darknet53_270e_voc.yml) |
|
||||
| DarkNet53 | 320 | 8 | 270e | - | 84.3 (55.2 mAP<br>0.5:0.95) | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_darknet53_270e_voc.pdparams) | [配置文件](./yolov3_darknet53_270e_voc.yml) |
|
||||
| MobileNet-V1 | 608 | 8 | 270e | - | 75.2 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v1_270e_voc.yml) |
|
||||
| MobileNet-V1 | 416 | 8 | 270e | - | 76.2 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v1_270e_voc.yml) |
|
||||
| MobileNet-V1 | 320 | 8 | 270e | - | 74.3 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v1_270e_voc.yml) |
|
||||
| MobileNet-V3 | 608 | 8 | 270e | - | 79.6 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_270e_voc.yml) |
|
||||
| MobileNet-V3 | 416 | 8 | 270e | - | 78.6 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_270e_voc.yml) |
|
||||
| MobileNet-V3 | 320 | 8 | 270e | - | 76.4 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_270e_voc.yml) |
|
||||
| MobileNet-V1-SSLD | 608 | 8 | 270e | - | 78.3 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_ssld_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v1_ssld_270e_voc.yml) |
|
||||
| MobileNet-V1-SSLD | 416 | 8 | 270e | - | 79.6 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_ssld_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v1_ssld_270e_voc.yml) |
|
||||
| MobileNet-V1-SSLD | 320 | 8 | 270e | - | 77.3 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_ssld_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v1_ssld_270e_voc.yml) |
|
||||
| MobileNet-V3-SSLD | 608 | 8 | 270e | - | 80.4 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_ssld_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_ssld_270e_voc.yml) |
|
||||
| MobileNet-V3-SSLD | 416 | 8 | 270e | - | 79.2 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_ssld_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_ssld_270e_voc.yml) |
|
||||
| MobileNet-V3-SSLD | 320 | 8 | 270e | - | 77.3 | [下载链接](https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_ssld_270e_voc.pdparams) | [配置文件](./yolov3_mobilenet_v3_large_ssld_270e_voc.yml) |
|
||||
|
||||
|
||||
**注意:**
|
||||
- YOLOv3模型训练过程中默认使用8 GPUs,总batch_size默认为64,评估时网络尺度默认为`608*608`;
|
||||
- `416*416`和`320*320`尺度只需更改`EvalReader`的`Resize`参数为相应值即可,无需重新训练模型,如:
|
||||
```
|
||||
EvalReader:
|
||||
sample_transforms:
|
||||
- Decode: {}
|
||||
- Resize: {target_size: [416, 416], keep_ratio: False, interp: 2} # or [320, 320]
|
||||
- NormalizeImage: {mean: [0.485, 0.456, 0.406], std: [0.229, 0.224, 0.225], is_scale: True}
|
||||
- Permute: {}
|
||||
batch_size: 1
|
||||
```
|
||||
- VOC数据集可以从此[链接](https://bj.bcebos.com/v1/paddledet/data/voc.zip)下载,默认评估指标为mAP(0.50,11point),如果想转为COCO格式指标的mAP<br>0.5:0.95,可以参照[yolov3_darknet53_270e_voc](./yolov3_darknet53_270e_voc.yml) 添加以下几行重新eval:
|
||||
```
|
||||
metric: COCO
|
||||
EvalDataset:
|
||||
!COCODataSet
|
||||
image_dir: VOCdevkit/VOC2007/JPEGImages
|
||||
anno_path: voc_test.json
|
||||
dataset_dir: dataset/voc
|
||||
```
|
||||
|
||||
|
||||
## Citations
|
||||
```
|
||||
@misc{redmon2018yolov3,
|
||||
title={YOLOv3: An Incremental Improvement},
|
||||
author={Joseph Redmon and Ali Farhadi},
|
||||
year={2018},
|
||||
eprint={1804.02767},
|
||||
archivePrefix={arXiv},
|
||||
primaryClass={cs.CV}
|
||||
}
|
||||
```
|
||||
21
paddle_detection/configs/yolov3/_base_/optimizer_270e.yml
Normal file
21
paddle_detection/configs/yolov3/_base_/optimizer_270e.yml
Normal file
@@ -0,0 +1,21 @@
|
||||
epoch: 270
|
||||
|
||||
LearningRate:
|
||||
base_lr: 0.001
|
||||
schedulers:
|
||||
- !PiecewiseDecay
|
||||
gamma: 0.1
|
||||
milestones:
|
||||
- 216
|
||||
- 243
|
||||
- !LinearWarmup
|
||||
start_factor: 0.
|
||||
steps: 4000
|
||||
|
||||
OptimizerBuilder:
|
||||
optimizer:
|
||||
momentum: 0.9
|
||||
type: Momentum
|
||||
regularizer:
|
||||
factor: 0.0005
|
||||
type: L2
|
||||
21
paddle_detection/configs/yolov3/_base_/optimizer_40e.yml
Normal file
21
paddle_detection/configs/yolov3/_base_/optimizer_40e.yml
Normal file
@@ -0,0 +1,21 @@
|
||||
epoch: 40
|
||||
|
||||
LearningRate:
|
||||
base_lr: 0.0001
|
||||
schedulers:
|
||||
- name: PiecewiseDecay
|
||||
gamma: 0.1
|
||||
milestones:
|
||||
- 32
|
||||
- 36
|
||||
- name: LinearWarmup
|
||||
start_factor: 0.3333333333333333
|
||||
steps: 100
|
||||
|
||||
OptimizerBuilder:
|
||||
optimizer:
|
||||
momentum: 0.9
|
||||
type: Momentum
|
||||
regularizer:
|
||||
factor: 0.0005
|
||||
type: L2
|
||||
41
paddle_detection/configs/yolov3/_base_/yolov3_darknet53.yml
Normal file
41
paddle_detection/configs/yolov3/_base_/yolov3_darknet53.yml
Normal file
@@ -0,0 +1,41 @@
|
||||
architecture: YOLOv3
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/DarkNet53_pretrained.pdparams
|
||||
norm_type: sync_bn
|
||||
|
||||
YOLOv3:
|
||||
backbone: DarkNet
|
||||
neck: YOLOv3FPN
|
||||
yolo_head: YOLOv3Head
|
||||
post_process: BBoxPostProcess
|
||||
|
||||
DarkNet:
|
||||
depth: 53
|
||||
return_idx: [2, 3, 4]
|
||||
|
||||
# use default config
|
||||
# YOLOv3FPN:
|
||||
|
||||
YOLOv3Head:
|
||||
anchors: [[10, 13], [16, 30], [33, 23],
|
||||
[30, 61], [62, 45], [59, 119],
|
||||
[116, 90], [156, 198], [373, 326]]
|
||||
anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]]
|
||||
loss: YOLOv3Loss
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.7
|
||||
downsample: [32, 16, 8]
|
||||
label_smooth: false
|
||||
|
||||
BBoxPostProcess:
|
||||
decode:
|
||||
name: YOLOBox
|
||||
conf_thresh: 0.005
|
||||
downsample_ratio: 32
|
||||
clip_bbox: true
|
||||
nms:
|
||||
name: MultiClassNMS
|
||||
keep_top_k: 100
|
||||
score_threshold: 0.01
|
||||
nms_threshold: 0.45
|
||||
nms_top_k: 1000
|
||||
@@ -0,0 +1,43 @@
|
||||
architecture: YOLOv3
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/MobileNetV1_pretrained.pdparams
|
||||
norm_type: sync_bn
|
||||
|
||||
YOLOv3:
|
||||
backbone: MobileNet
|
||||
neck: YOLOv3FPN
|
||||
yolo_head: YOLOv3Head
|
||||
post_process: BBoxPostProcess
|
||||
|
||||
MobileNet:
|
||||
scale: 1
|
||||
feature_maps: [4, 6, 13]
|
||||
with_extra_blocks: false
|
||||
extra_block_filters: []
|
||||
|
||||
# use default config
|
||||
# YOLOv3FPN:
|
||||
|
||||
YOLOv3Head:
|
||||
anchors: [[10, 13], [16, 30], [33, 23],
|
||||
[30, 61], [62, 45], [59, 119],
|
||||
[116, 90], [156, 198], [373, 326]]
|
||||
anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]]
|
||||
loss: YOLOv3Loss
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.7
|
||||
downsample: [32, 16, 8]
|
||||
label_smooth: false
|
||||
|
||||
BBoxPostProcess:
|
||||
decode:
|
||||
name: YOLOBox
|
||||
conf_thresh: 0.005
|
||||
downsample_ratio: 32
|
||||
clip_bbox: true
|
||||
nms:
|
||||
name: MultiClassNMS
|
||||
keep_top_k: 100
|
||||
score_threshold: 0.01
|
||||
nms_threshold: 0.45
|
||||
nms_top_k: 1000
|
||||
@@ -0,0 +1,44 @@
|
||||
architecture: YOLOv3
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/MobileNetV3_large_x1_0_ssld_pretrained.pdparams
|
||||
norm_type: sync_bn
|
||||
|
||||
YOLOv3:
|
||||
backbone: MobileNetV3
|
||||
neck: YOLOv3FPN
|
||||
yolo_head: YOLOv3Head
|
||||
post_process: BBoxPostProcess
|
||||
|
||||
MobileNetV3:
|
||||
model_name: large
|
||||
scale: 1.
|
||||
with_extra_blocks: false
|
||||
extra_block_filters: []
|
||||
feature_maps: [7, 13, 16]
|
||||
|
||||
# use default config
|
||||
# YOLOv3FPN:
|
||||
|
||||
YOLOv3Head:
|
||||
anchors: [[10, 13], [16, 30], [33, 23],
|
||||
[30, 61], [62, 45], [59, 119],
|
||||
[116, 90], [156, 198], [373, 326]]
|
||||
anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]]
|
||||
loss: YOLOv3Loss
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.7
|
||||
downsample: [32, 16, 8]
|
||||
label_smooth: false
|
||||
|
||||
BBoxPostProcess:
|
||||
decode:
|
||||
name: YOLOBox
|
||||
conf_thresh: 0.005
|
||||
downsample_ratio: 32
|
||||
clip_bbox: true
|
||||
nms:
|
||||
name: MultiClassNMS
|
||||
keep_top_k: 100
|
||||
score_threshold: 0.01
|
||||
nms_threshold: 0.45
|
||||
nms_top_k: 1000
|
||||
@@ -0,0 +1,44 @@
|
||||
architecture: YOLOv3
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/MobileNetV3_small_x1_0_ssld_pretrained.pdparams
|
||||
norm_type: sync_bn
|
||||
|
||||
YOLOv3:
|
||||
backbone: MobileNetV3
|
||||
neck: YOLOv3FPN
|
||||
yolo_head: YOLOv3Head
|
||||
post_process: BBoxPostProcess
|
||||
|
||||
MobileNetV3:
|
||||
model_name: small
|
||||
scale: 1.
|
||||
with_extra_blocks: false
|
||||
extra_block_filters: []
|
||||
feature_maps: [4, 9, 12]
|
||||
|
||||
# use default config
|
||||
# YOLOv3FPN:
|
||||
|
||||
YOLOv3Head:
|
||||
anchors: [[10, 13], [16, 30], [33, 23],
|
||||
[30, 61], [62, 45], [59, 119],
|
||||
[116, 90], [156, 198], [373, 326]]
|
||||
anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]]
|
||||
loss: YOLOv3Loss
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.7
|
||||
downsample: [32, 16, 8]
|
||||
label_smooth: false
|
||||
|
||||
BBoxPostProcess:
|
||||
decode:
|
||||
name: YOLOBox
|
||||
conf_thresh: 0.005
|
||||
downsample_ratio: 32
|
||||
clip_bbox: true
|
||||
nms:
|
||||
name: MultiClassNMS
|
||||
keep_top_k: 100
|
||||
score_threshold: 0.01
|
||||
nms_threshold: 0.45
|
||||
nms_top_k: 1000
|
||||
41
paddle_detection/configs/yolov3/_base_/yolov3_r34.yml
Normal file
41
paddle_detection/configs/yolov3/_base_/yolov3_r34.yml
Normal file
@@ -0,0 +1,41 @@
|
||||
architecture: YOLOv3
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet34_pretrained.pdparams
|
||||
norm_type: sync_bn
|
||||
|
||||
YOLOv3:
|
||||
backbone: ResNet
|
||||
neck: YOLOv3FPN
|
||||
yolo_head: YOLOv3Head
|
||||
post_process: BBoxPostProcess
|
||||
|
||||
ResNet:
|
||||
depth: 34
|
||||
return_idx: [1, 2, 3]
|
||||
freeze_at: -1
|
||||
freeze_norm: false
|
||||
norm_decay: 0.
|
||||
|
||||
YOLOv3Head:
|
||||
anchors: [[10, 13], [16, 30], [33, 23],
|
||||
[30, 61], [62, 45], [59, 119],
|
||||
[116, 90], [156, 198], [373, 326]]
|
||||
anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]]
|
||||
loss: YOLOv3Loss
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.7
|
||||
downsample: [32, 16, 8]
|
||||
label_smooth: false
|
||||
|
||||
BBoxPostProcess:
|
||||
decode:
|
||||
name: YOLOBox
|
||||
conf_thresh: 0.005
|
||||
downsample_ratio: 32
|
||||
clip_bbox: true
|
||||
nms:
|
||||
name: MultiClassNMS
|
||||
keep_top_k: 100
|
||||
score_threshold: 0.01
|
||||
nms_threshold: 0.45
|
||||
nms_top_k: 1000
|
||||
45
paddle_detection/configs/yolov3/_base_/yolov3_r50vd_dcn.yml
Normal file
45
paddle_detection/configs/yolov3/_base_/yolov3_r50vd_dcn.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
architecture: YOLOv3
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_ssld_pretrained.pdparams
|
||||
norm_type: sync_bn
|
||||
|
||||
YOLOv3:
|
||||
backbone: ResNet
|
||||
neck: YOLOv3FPN
|
||||
yolo_head: YOLOv3Head
|
||||
post_process: BBoxPostProcess
|
||||
|
||||
ResNet:
|
||||
depth: 50
|
||||
variant: d
|
||||
return_idx: [1, 2, 3]
|
||||
dcn_v2_stages: [3]
|
||||
freeze_at: -1
|
||||
freeze_norm: false
|
||||
norm_decay: 0.
|
||||
|
||||
# YOLOv3FPN:
|
||||
|
||||
YOLOv3Head:
|
||||
anchors: [[10, 13], [16, 30], [33, 23],
|
||||
[30, 61], [62, 45], [59, 119],
|
||||
[116, 90], [156, 198], [373, 326]]
|
||||
anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]]
|
||||
loss: YOLOv3Loss
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.7
|
||||
downsample: [32, 16, 8]
|
||||
label_smooth: false
|
||||
|
||||
BBoxPostProcess:
|
||||
decode:
|
||||
name: YOLOBox
|
||||
conf_thresh: 0.005
|
||||
downsample_ratio: 32
|
||||
clip_bbox: true
|
||||
nms:
|
||||
name: MultiClassNMS
|
||||
keep_top_k: 100
|
||||
score_threshold: 0.01
|
||||
nms_threshold: 0.45
|
||||
nms_top_k: 1000
|
||||
44
paddle_detection/configs/yolov3/_base_/yolov3_reader.yml
Normal file
44
paddle_detection/configs/yolov3/_base_/yolov3_reader.yml
Normal file
@@ -0,0 +1,44 @@
|
||||
worker_num: 2
|
||||
TrainReader:
|
||||
inputs_def:
|
||||
num_max_boxes: 50
|
||||
sample_transforms:
|
||||
- Decode: {}
|
||||
- Mixup: {alpha: 1.5, beta: 1.5}
|
||||
- RandomDistort: {}
|
||||
- RandomExpand: {fill_value: [123.675, 116.28, 103.53]}
|
||||
- RandomCrop: {}
|
||||
- RandomFlip: {}
|
||||
batch_transforms:
|
||||
- BatchRandomResize: {target_size: [320, 352, 384, 416, 448, 480, 512, 544, 576, 608], random_size: True, random_interp: True, keep_ratio: False}
|
||||
- NormalizeBox: {}
|
||||
- PadBox: {num_max_boxes: 50}
|
||||
- BboxXYXY2XYWH: {}
|
||||
- NormalizeImage: {mean: [0.485, 0.456, 0.406], std: [0.229, 0.224, 0.225], is_scale: True}
|
||||
- Permute: {}
|
||||
- Gt2YoloTarget: {anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]], anchors: [[10, 13], [16, 30], [33, 23], [30, 61], [62, 45], [59, 119], [116, 90], [156, 198], [373, 326]], downsample_ratios: [32, 16, 8]}
|
||||
batch_size: 8
|
||||
shuffle: true
|
||||
drop_last: true
|
||||
mixup_epoch: 250
|
||||
use_shared_memory: true
|
||||
|
||||
EvalReader:
|
||||
inputs_def:
|
||||
num_max_boxes: 50
|
||||
sample_transforms:
|
||||
- Decode: {}
|
||||
- Resize: {target_size: [608, 608], keep_ratio: False, interp: 2}
|
||||
- NormalizeImage: {mean: [0.485, 0.456, 0.406], std: [0.229, 0.224, 0.225], is_scale: True}
|
||||
- Permute: {}
|
||||
batch_size: 1
|
||||
|
||||
TestReader:
|
||||
inputs_def:
|
||||
image_shape: [3, 608, 608]
|
||||
sample_transforms:
|
||||
- Decode: {}
|
||||
- Resize: {target_size: [608, 608], keep_ratio: False, interp: 2}
|
||||
- NormalizeImage: {mean: [0.485, 0.456, 0.406], std: [0.229, 0.224, 0.225], is_scale: True}
|
||||
- Permute: {}
|
||||
batch_size: 1
|
||||
@@ -0,0 +1,10 @@
|
||||
_BASE_: [
|
||||
'../datasets/coco_detection.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_darknet53.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_darknet53_270e_coco/model_final
|
||||
@@ -0,0 +1,28 @@
|
||||
_BASE_: [
|
||||
'../datasets/voc.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_darknet53.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_darknet53_270e_voc/model_final
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/yolov3_darknet53_270e_coco.pdparams
|
||||
|
||||
|
||||
# set collate_batch to false because ground-truth info is needed
|
||||
# on voc dataset and should not collate data in batch when batch size
|
||||
# is larger than 1.
|
||||
EvalReader:
|
||||
collate_batch: false
|
||||
|
||||
|
||||
# ### remove comment below and run evaluate again to get 56.1 COCO for mAP(0.5:0.95)
|
||||
# metric: COCO
|
||||
# EvalDataset:
|
||||
# !COCODataSet
|
||||
# image_dir: VOCdevkit/VOC2007/JPEGImages
|
||||
# anno_path: voc_test.json
|
||||
# dataset_dir: dataset/voc
|
||||
# # wget https://bj.bcebos.com/v1/paddledet/data/voc.zip
|
||||
@@ -0,0 +1,40 @@
|
||||
_BASE_: [
|
||||
'../datasets/coco_detection.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_darknet53.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_darknet53_270e_coco/model_final
|
||||
|
||||
norm_type: bn
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.5
|
||||
downsample: [32, 16, 8]
|
||||
label_smooth: false
|
||||
|
||||
TrainReader:
|
||||
inputs_def:
|
||||
num_max_boxes: 50
|
||||
sample_transforms:
|
||||
- Decode: {}
|
||||
- RandomDistort: {}
|
||||
- RandomExpand: {fill_value: [123.675, 116.28, 103.53], ratio: 2.0}
|
||||
- RandomCrop: {}
|
||||
- RandomFlip: {}
|
||||
batch_transforms:
|
||||
- BatchRandomResize: {target_size: [320, 352, 384, 416, 448, 480, 512, 544, 576, 608], random_size: True, random_interp: True, keep_ratio: False}
|
||||
- NormalizeBox: {}
|
||||
- PadBox: {num_max_boxes: 50}
|
||||
- BboxXYXY2XYWH: {}
|
||||
- NormalizeImage: {mean: [0.485, 0.456, 0.406], std: [0.229, 0.224, 0.225], is_scale: True}
|
||||
- Permute: {}
|
||||
- Gt2YoloTarget: {anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]], anchors: [[10, 13], [16, 30], [33, 23], [30, 61], [62, 45], [59, 119], [116, 90], [156, 198], [373, 326]], downsample_ratios: [32, 16, 8], iou_thresh: 0.5}
|
||||
batch_size: 8
|
||||
shuffle: true
|
||||
drop_last: true
|
||||
mixup_epoch: -1
|
||||
use_shared_memory: true
|
||||
@@ -0,0 +1,59 @@
|
||||
_BASE_: [
|
||||
'../datasets/coco_detection.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/yolov3_darknet53.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_darknet53_270e_coco/model_final
|
||||
|
||||
norm_type: bn
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.5
|
||||
downsample: [32, 16, 8]
|
||||
label_smooth: false
|
||||
|
||||
worker_num: 8
|
||||
TrainReader:
|
||||
inputs_def:
|
||||
num_max_boxes: 50
|
||||
sample_transforms:
|
||||
- Decode: {}
|
||||
- RandomDistort: {}
|
||||
- RandomExpand: {fill_value: [123.675, 116.28, 103.53], ratio: 2.0}
|
||||
- RandomCrop: {}
|
||||
- RandomFlip: {}
|
||||
batch_transforms:
|
||||
- BatchRandomResize: {target_size: [416], random_size: True, random_interp: True, keep_ratio: False}
|
||||
- NormalizeBox: {}
|
||||
- PadBox: {num_max_boxes: 50}
|
||||
- BboxXYXY2XYWH: {}
|
||||
- NormalizeImage: {mean: [0.485, 0.456, 0.406], std: [0.229, 0.224, 0.225], is_scale: True}
|
||||
- Permute: {}
|
||||
- Gt2YoloTarget: {anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]], anchors: [[10, 13], [16, 30], [33, 23], [30, 61], [62, 45], [59, 119], [116, 90], [156, 198], [373, 326]], downsample_ratios: [32, 16, 8], iou_thresh: 0.5}
|
||||
batch_size: 32
|
||||
shuffle: true
|
||||
drop_last: true
|
||||
mixup_epoch: -1
|
||||
use_shared_memory: true
|
||||
|
||||
epoch: 320
|
||||
|
||||
LearningRate:
|
||||
base_lr: 0.001
|
||||
schedulers:
|
||||
- !CosineDecay
|
||||
max_epochs: 320
|
||||
- !LinearWarmup
|
||||
start_factor: 0.
|
||||
epochs: 4
|
||||
|
||||
OptimizerBuilder:
|
||||
optimizer:
|
||||
momentum: 0.9
|
||||
type: Momentum
|
||||
regularizer:
|
||||
factor: 0.016
|
||||
type: L2
|
||||
@@ -0,0 +1,10 @@
|
||||
_BASE_: [
|
||||
'../datasets/coco_detection.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_mobilenet_v1.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_mobilenet_v1_270e_coco/model_final
|
||||
@@ -0,0 +1,28 @@
|
||||
_BASE_: [
|
||||
'../datasets/voc.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_mobilenet_v1.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_mobilenet_v1_270e_voc/model_final
|
||||
|
||||
# set collate_batch to false because ground-truth info is needed
|
||||
# on voc dataset and should not collate data in batch when batch size
|
||||
# is larger than 1.
|
||||
EvalReader:
|
||||
collate_batch: false
|
||||
|
||||
LearningRate:
|
||||
base_lr: 0.001
|
||||
schedulers:
|
||||
- !PiecewiseDecay
|
||||
gamma: 0.1
|
||||
milestones:
|
||||
- 216
|
||||
- 243
|
||||
- !LinearWarmup
|
||||
start_factor: 0.
|
||||
steps: 1000
|
||||
@@ -0,0 +1,13 @@
|
||||
_BASE_: [
|
||||
'../datasets/roadsign_voc.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_40e.yml',
|
||||
'_base_/yolov3_mobilenet_v1.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_coco.pdparams
|
||||
weights: output/yolov3_mobilenet_v1_roadsign/model_final
|
||||
|
||||
YOLOv3Loss:
|
||||
ignore_thresh: 0.7
|
||||
label_smooth: true
|
||||
@@ -0,0 +1,11 @@
|
||||
_BASE_: [
|
||||
'../datasets/coco_detection.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_mobilenet_v1.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/MobileNetV1_ssld_pretrained.pdparams
|
||||
weights: output/yolov3_mobilenet_v1_ssld_270e_coco/model_final
|
||||
@@ -0,0 +1,29 @@
|
||||
_BASE_: [
|
||||
'../datasets/voc.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_mobilenet_v1.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/MobileNetV1_ssld_pretrained.pdparams
|
||||
weights: output/yolov3_mobilenet_v1_ssld_270e_voc/model_final
|
||||
|
||||
# set collate_batch to false because ground-truth info is needed
|
||||
# on voc dataset and should not collate data in batch when batch size
|
||||
# is larger than 1.
|
||||
EvalReader:
|
||||
collate_batch: false
|
||||
|
||||
LearningRate:
|
||||
base_lr: 0.001
|
||||
schedulers:
|
||||
- !PiecewiseDecay
|
||||
gamma: 0.1
|
||||
milestones:
|
||||
- 216
|
||||
- 243
|
||||
- !LinearWarmup
|
||||
start_factor: 0.
|
||||
steps: 1000
|
||||
@@ -0,0 +1,10 @@
|
||||
_BASE_: [
|
||||
'../datasets/coco_detection.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_mobilenet_v3_large.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_mobilenet_v3_large_270e_coco/model_final
|
||||
@@ -0,0 +1,28 @@
|
||||
_BASE_: [
|
||||
'../datasets/voc.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_mobilenet_v3_large.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_mobilenet_v3_large_270e_voc/model_final
|
||||
|
||||
# set collate_batch to false because ground-truth info is needed
|
||||
# on voc dataset and should not collate data in batch when batch size
|
||||
# is larger than 1.
|
||||
EvalReader:
|
||||
collate_batch: false
|
||||
|
||||
LearningRate:
|
||||
base_lr: 0.001
|
||||
schedulers:
|
||||
- !PiecewiseDecay
|
||||
gamma: 0.1
|
||||
milestones:
|
||||
- 216
|
||||
- 243
|
||||
- !LinearWarmup
|
||||
start_factor: 0.
|
||||
steps: 1000
|
||||
@@ -0,0 +1,29 @@
|
||||
_BASE_: [
|
||||
'../datasets/voc.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_mobilenet_v3_large.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/MobileNetV3_large_x1_0_ssld_pretrained.pdparams
|
||||
weights: output/yolov3_mobilenet_v3_large_ssld_270e_voc/model_final
|
||||
|
||||
# set collate_batch to false because ground-truth info is needed
|
||||
# on voc dataset and should not collate data in batch when batch size
|
||||
# is larger than 1.
|
||||
EvalReader:
|
||||
collate_batch: false
|
||||
|
||||
LearningRate:
|
||||
base_lr: 0.001
|
||||
schedulers:
|
||||
- !PiecewiseDecay
|
||||
gamma: 0.1
|
||||
milestones:
|
||||
- 216
|
||||
- 243
|
||||
- !LinearWarmup
|
||||
start_factor: 0.
|
||||
steps: 1000
|
||||
10
paddle_detection/configs/yolov3/yolov3_r34_270e_coco.yml
Normal file
10
paddle_detection/configs/yolov3/yolov3_r34_270e_coco.yml
Normal file
@@ -0,0 +1,10 @@
|
||||
_BASE_: [
|
||||
'../datasets/coco_detection.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_r34.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_r34_270e_coco/model_final
|
||||
@@ -0,0 +1,10 @@
|
||||
_BASE_: [
|
||||
'../datasets/coco_detection.yml',
|
||||
'../runtime.yml',
|
||||
'_base_/optimizer_270e.yml',
|
||||
'_base_/yolov3_r50vd_dcn.yml',
|
||||
'_base_/yolov3_reader.yml',
|
||||
]
|
||||
|
||||
snapshot_epoch: 5
|
||||
weights: output/yolov3_r50vd_dcn_270e_coco/model_final
|
||||
Reference in New Issue
Block a user