forked from PulseFocusPlatform/PulseFocusPlatform
194 lines
4.3 KiB
YAML
194 lines
4.3 KiB
YAML
architecture: YOLOv3
|
|
use_gpu: true
|
|
max_iters: 300000
|
|
log_smooth_window: 100
|
|
log_iter: 100
|
|
save_dir: output
|
|
snapshot_iter: 10000
|
|
metric: COCO
|
|
pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/MobileNetV3_large_x0_5_pretrained.tar
|
|
weights: output/ppyolo_tiny/model_final
|
|
num_classes: 80
|
|
use_fine_grained_loss: true
|
|
use_ema: true
|
|
ema_decay: 0.9998
|
|
|
|
YOLOv3:
|
|
backbone: MobileNetV3
|
|
yolo_head: PPYOLOTinyHead
|
|
use_fine_grained_loss: true
|
|
|
|
MobileNetV3:
|
|
norm_type: sync_bn
|
|
norm_decay: 0.
|
|
model_name: large
|
|
scale: .5
|
|
extra_block_filters: []
|
|
feature_maps: [1, 2, 3, 4, 6]
|
|
|
|
PPYOLOTinyHead:
|
|
anchor_masks: [[6, 7, 8], [3, 4, 5], [0, 1, 2]]
|
|
anchors: [[10, 15], [24, 36], [72, 42],
|
|
[35, 87], [102, 96], [60, 170],
|
|
[220, 125], [128, 222], [264, 266]]
|
|
detection_block_channels: [160, 128, 96]
|
|
norm_decay: 0.
|
|
scale_x_y: 1.05
|
|
yolo_loss: YOLOv3Loss
|
|
spp: true
|
|
drop_block: true
|
|
nms:
|
|
background_label: -1
|
|
keep_top_k: 100
|
|
nms_threshold: 0.45
|
|
nms_top_k: 1000
|
|
normalized: false
|
|
score_threshold: 0.01
|
|
|
|
YOLOv3Loss:
|
|
ignore_thresh: 0.5
|
|
scale_x_y: 1.05
|
|
label_smooth: false
|
|
use_fine_grained_loss: true
|
|
iou_loss: IouLoss
|
|
|
|
IouLoss:
|
|
loss_weight: 2.5
|
|
max_height: 512
|
|
max_width: 512
|
|
|
|
LearningRate:
|
|
base_lr: 0.005
|
|
schedulers:
|
|
- !PiecewiseDecay
|
|
gamma: 0.1
|
|
milestones:
|
|
- 200000
|
|
- 250000
|
|
- 280000
|
|
- !LinearWarmup
|
|
start_factor: 0.
|
|
steps: 4000
|
|
|
|
OptimizerBuilder:
|
|
optimizer:
|
|
momentum: 0.949
|
|
type: Momentum
|
|
regularizer:
|
|
factor: 0.0005
|
|
type: L2
|
|
|
|
TrainReader:
|
|
inputs_def:
|
|
fields: ['image', 'gt_bbox', 'gt_class', 'gt_score']
|
|
num_max_boxes: 100
|
|
dataset:
|
|
!COCODataSet
|
|
image_dir: train2017
|
|
anno_path: annotations/instances_train2017.json
|
|
dataset_dir: train_data/dataset/coco
|
|
with_background: false
|
|
sample_transforms:
|
|
- !DecodeImage
|
|
to_rgb: True
|
|
with_mixup: True
|
|
- !MixupImage
|
|
alpha: 1.5
|
|
beta: 1.5
|
|
- !ColorDistort {}
|
|
- !RandomExpand
|
|
fill_value: [123.675, 116.28, 103.53]
|
|
ratio: 2
|
|
- !RandomCrop {}
|
|
- !RandomFlipImage
|
|
is_normalized: false
|
|
- !NormalizeBox {}
|
|
- !PadBox
|
|
num_max_boxes: 100
|
|
- !BboxXYXY2XYWH {}
|
|
batch_transforms:
|
|
- !RandomShape
|
|
sizes: [192, 224, 256, 288, 320, 352, 384, 416, 448, 480, 512]
|
|
random_inter: True
|
|
- !NormalizeImage
|
|
mean: [0.485, 0.456, 0.406]
|
|
std: [0.229, 0.224, 0.225]
|
|
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: [[6, 7, 8], [3, 4, 5], [0, 1, 2]]
|
|
anchors: [[10, 15], [24, 36], [72, 42],
|
|
[35, 87], [102, 96], [60, 170],
|
|
[220, 125], [128, 222], [264, 266]]
|
|
downsample_ratios: [32, 16, 8]
|
|
iou_thresh: 0.25
|
|
num_classes: 80
|
|
batch_size: 32
|
|
shuffle: true
|
|
mixup_epoch: 200
|
|
drop_last: true
|
|
worker_num: 16
|
|
bufsize: 4
|
|
use_process: true
|
|
|
|
EvalReader:
|
|
inputs_def:
|
|
fields: ['image', 'im_size', 'im_id']
|
|
num_max_boxes: 100
|
|
dataset:
|
|
!COCODataSet
|
|
image_dir: val2017
|
|
anno_path: annotations/instances_val2017.json
|
|
dataset_dir: train_data/dataset/coco
|
|
with_background: false
|
|
sample_transforms:
|
|
- !DecodeImage
|
|
to_rgb: True
|
|
- !ResizeImage
|
|
target_size: 320
|
|
interp: 2
|
|
- !NormalizeImage
|
|
mean: [0.485, 0.456, 0.406]
|
|
std: [0.229, 0.224, 0.225]
|
|
is_scale: True
|
|
is_channel_first: false
|
|
- !PadBox
|
|
num_max_boxes: 100
|
|
- !Permute
|
|
to_bgr: false
|
|
channel_first: True
|
|
batch_size: 1
|
|
drop_empty: false
|
|
worker_num: 2
|
|
bufsize: 4
|
|
|
|
TestReader:
|
|
inputs_def:
|
|
image_shape: [3, 320, 320]
|
|
fields: ['image', 'im_size', 'im_id']
|
|
dataset:
|
|
!ImageFolder
|
|
anno_path: annotations/instances_val2017.json
|
|
with_background: false
|
|
sample_transforms:
|
|
- !DecodeImage
|
|
to_rgb: True
|
|
- !ResizeImage
|
|
target_size: 320
|
|
interp: 2
|
|
- !NormalizeImage
|
|
mean: [0.485, 0.456, 0.406]
|
|
std: [0.229, 0.224, 0.225]
|
|
is_scale: True
|
|
is_channel_first: false
|
|
- !Permute
|
|
to_bgr: false
|
|
channel_first: True
|
|
batch_size: 1
|