123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- architecture: YOLOv4
- use_gpu: true
- max_iters: 500200
- log_iter: 20
- save_dir: output
- snapshot_iter: 10000
- metric: COCO
- pretrain_weights: https://paddlemodels.bj.bcebos.com/object_detection/CSPDarkNet53_pretrained.pdparams
- weights: output/yolov4_cspdarknet_coco/model_final
- num_classes: 80
- use_fine_grained_loss: true
- YOLOv4:
- backbone: CSPDarkNet
- yolo_head: YOLOv4Head
- CSPDarkNet:
- norm_type: sync_bn
- norm_decay: 0.
- depth: 53
- YOLOv4Head:
- anchors: [[12, 16], [19, 36], [40, 28], [36, 75], [76, 55],
- [72, 146], [142, 110], [192, 243], [459, 401]]
- anchor_masks: [[0, 1, 2], [3, 4, 5], [6, 7, 8]]
- nms:
- background_label: -1
- keep_top_k: -1
- nms_threshold: 0.45
- nms_top_k: -1
- normalized: true
- score_threshold: 0.001
- downsample: [8,16,32]
- scale_x_y: [1.2, 1.1, 1.05]
- YOLOv3Loss:
- ignore_thresh: 0.7
- label_smooth: true
- downsample: [8,16,32]
- scale_x_y: [1.2, 1.1, 1.05]
- iou_loss: IouLoss
- match_score: true
- IouLoss:
- loss_weight: 0.07
- max_height: 608
- max_width: 608
- ciou_term: true
- loss_square: true
- LearningRate:
- base_lr: 0.0001
- schedulers:
- - !PiecewiseDecay
- gamma: 0.1
- milestones:
- - 400000
- - 450000
- - !LinearWarmup
- start_factor: 0.
- steps: 4000
- OptimizerBuilder:
- clip_grad_by_norm: 10.
- optimizer:
- momentum: 0.949
- type: Momentum
- regularizer:
- factor: 0.0005
- type: L2
- _READER_: '../yolov3_reader.yml'
- TrainReader:
- inputs_def:
- fields: ['image', 'gt_bbox', 'gt_class', 'gt_score', 'im_id']
- num_max_boxes: 50
- dataset:
- !COCODataSet
- image_dir: train2017
- anno_path: annotations/instances_train2017.json
- dataset_dir: dataset/coco
- with_background: false
- sample_transforms:
- - !DecodeImage
- to_rgb: True
- - !ColorDistort {}
- - !RandomExpand
- fill_value: [123.675, 116.28, 103.53]
- - !RandomCrop {}
- - !RandomFlipImage
- is_normalized: false
- - !NormalizeBox {}
- - !PadBox
- num_max_boxes: 50
- - !BboxXYXY2XYWH {}
- batch_transforms:
- - !RandomShape
- sizes: [320, 352, 384, 416, 448, 480, 512, 544, 576, 608]
- random_inter: True
- - !NormalizeImage
- mean: [0.,0.,0.]
- std: [1.,1.,1.]
- is_scale: True
- is_channel_first: false
- - !Permute
- to_bgr: false
- channel_first: True
- # Gt2YoloTarget is only used when use_fine_grained_loss set as true,
- # this operator will be deleted automatically if use_fine_grained_loss
- # is set as false
- - !Gt2YoloTarget
- anchor_masks: [[0, 1, 2], [3, 4, 5], [6, 7, 8]]
- anchors: [[12, 16], [19, 36], [40, 28],
- [36, 75], [76, 55], [72, 146],
- [142, 110], [192, 243], [459, 401]]
- downsample_ratios: [8, 16, 32]
- batch_size: 8
- shuffle: true
- drop_last: true
- worker_num: 8
- bufsize: 16
- use_process: true
- drop_empty: false
- EvalReader:
- inputs_def:
- fields: ['image', 'im_size', 'im_id']
- num_max_boxes: 90
- dataset:
- !COCODataSet
- image_dir: val2017
- anno_path: annotations/instances_val2017.json
- dataset_dir: dataset/coco
- with_background: false
- sample_transforms:
- - !DecodeImage
- to_rgb: True
- - !ResizeImage
- target_size: 608
- interp: 1
- - !NormalizeImage
- mean: [0., 0., 0.]
- std: [1., 1., 1.]
- is_scale: True
- is_channel_first: false
- - !PadBox
- num_max_boxes: 90
- - !Permute
- to_bgr: false
- channel_first: True
- batch_size: 4
- drop_empty: false
- worker_num: 8
- bufsize: 16
- TestReader:
- dataset:
- !ImageFolder
- use_default_label: true
- with_background: false
- sample_transforms:
- - !DecodeImage
- to_rgb: True
- - !ResizeImage
- target_size: 608
- interp: 1
- - !NormalizeImage
- mean: [0., 0., 0.]
- std: [1., 1., 1.]
- is_scale: True
- is_channel_first: false
- - !Permute
- to_bgr: false
- channel_first: True
|