PP-TinyPose_128x96.yaml 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. use_gpu: true
  2. log_iter: 5
  3. save_dir: output
  4. snapshot_epoch: 10
  5. weights: output/tinypose_128x96/model_final
  6. epoch: 420
  7. num_joints: &num_joints 17
  8. pixel_std: &pixel_std 200
  9. metric: KeyPointTopDownCOCOEval
  10. num_classes: 1
  11. train_height: &train_height 128
  12. train_width: &train_width 96
  13. trainsize: &trainsize [*train_width, *train_height]
  14. hmsize: &hmsize [24, 32]
  15. flip_perm: &flip_perm [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10], [11, 12], [13, 14], [15, 16]]
  16. use_ema: true
  17. # AMP training
  18. init_loss_scaling: 32752
  19. master_grad: true
  20. #####model
  21. architecture: TopDownHRNet
  22. TopDownHRNet:
  23. backbone: LiteHRNet
  24. post_process: HRNetPostProcess
  25. flip_perm: *flip_perm
  26. num_joints: *num_joints
  27. width: &width 40
  28. loss: KeyPointMSELoss
  29. use_dark: true
  30. LiteHRNet:
  31. network_type: wider_naive
  32. freeze_at: -1
  33. freeze_norm: false
  34. return_idx: [0]
  35. KeyPointMSELoss:
  36. use_target_weight: true
  37. loss_scale: 1.0
  38. #####optimizer
  39. LearningRate:
  40. base_lr: 0.008
  41. schedulers:
  42. - !PiecewiseDecay
  43. milestones: [380, 410]
  44. gamma: 0.1
  45. - !LinearWarmup
  46. start_factor: 0.001
  47. steps: 500
  48. OptimizerBuilder:
  49. optimizer:
  50. type: Adam
  51. regularizer:
  52. factor: 0.0
  53. type: L2
  54. #####data
  55. TrainDataset:
  56. !KeypointTopDownCocoDataset
  57. image_dir: ""
  58. anno_path: aic_coco_train_cocoformat.json
  59. dataset_dir: dataset
  60. num_joints: *num_joints
  61. trainsize: *trainsize
  62. pixel_std: *pixel_std
  63. use_gt_bbox: True
  64. EvalDataset:
  65. !KeypointTopDownCocoDataset
  66. image_dir: val2017
  67. anno_path: annotations/person_keypoints_val2017.json
  68. dataset_dir: dataset/coco
  69. num_joints: *num_joints
  70. trainsize: *trainsize
  71. pixel_std: *pixel_std
  72. use_gt_bbox: True
  73. image_thre: 0.5
  74. TestDataset:
  75. !ImageFolder
  76. anno_path: dataset/coco/keypoint_imagelist.txt
  77. worker_num: 2
  78. global_mean: &global_mean [0.485, 0.456, 0.406]
  79. global_std: &global_std [0.229, 0.224, 0.225]
  80. TrainReader:
  81. sample_transforms:
  82. - RandomFlipHalfBodyTransform:
  83. scale: 0.25
  84. rot: 30
  85. num_joints_half_body: 8
  86. prob_half_body: 0.3
  87. pixel_std: *pixel_std
  88. trainsize: *trainsize
  89. upper_body_ids: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  90. flip_pairs: *flip_perm
  91. - AugmentationbyInformantionDropping:
  92. prob_cutout: 0.5
  93. offset_factor: 0.05
  94. num_patch: 1
  95. trainsize: *trainsize
  96. - TopDownAffine:
  97. trainsize: *trainsize
  98. use_udp: true
  99. - ToHeatmapsTopDown_DARK:
  100. hmsize: *hmsize
  101. sigma: 1
  102. batch_transforms:
  103. - NormalizeImage:
  104. mean: *global_mean
  105. std: *global_std
  106. is_scale: true
  107. - Permute: {}
  108. batch_size: 512
  109. shuffle: true
  110. drop_last: false
  111. EvalReader:
  112. sample_transforms:
  113. - TopDownAffine:
  114. trainsize: *trainsize
  115. use_udp: true
  116. batch_transforms:
  117. - NormalizeImage:
  118. mean: *global_mean
  119. std: *global_std
  120. is_scale: true
  121. - Permute: {}
  122. batch_size: 16
  123. TestReader:
  124. inputs_def:
  125. image_shape: [3, *train_height, *train_width]
  126. sample_transforms:
  127. - Decode: {}
  128. - TopDownEvalAffine:
  129. trainsize: *trainsize
  130. - NormalizeImage:
  131. mean: *global_mean
  132. std: *global_std
  133. is_scale: true
  134. - Permute: {}
  135. batch_size: 1
  136. fuse_normalize: false