deepsort_ppyolov2_pplcnet.yml 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. _BASE_: [
  2. 'detector/ppyolov2_r50vd_dcn_365e_640x640_mot17half.yml',
  3. '_base_/mot17.yml',
  4. '_base_/deepsort_reader_1088x608.yml',
  5. ]
  6. metric: MOT
  7. num_classes: 1
  8. EvalMOTDataset:
  9. !MOTImageFolder
  10. dataset_dir: dataset/mot
  11. data_root: MOT17/images/half
  12. keep_ori_im: True # set as True in DeepSORT
  13. det_weights: https://paddledet.bj.bcebos.com/models/mot/deepsort/ppyolov2_r50vd_dcn_365e_640x640_mot17half.pdparams
  14. reid_weights: https://paddledet.bj.bcebos.com/models/mot/deepsort/deepsort_pplcnet.pdparams
  15. # reader
  16. EvalMOTReader:
  17. sample_transforms:
  18. - Decode: {}
  19. - Resize: {target_size: [640, 640], keep_ratio: False, interp: 2}
  20. - NormalizeImage: {mean: [0.485, 0.456, 0.406], std: [0.229, 0.224, 0.225], is_scale: True}
  21. - Permute: {}
  22. batch_size: 1
  23. TestMOTReader:
  24. inputs_def:
  25. image_shape: [3, 640, 640]
  26. sample_transforms:
  27. - Decode: {}
  28. - Resize: {target_size: [640, 640], keep_ratio: False, interp: 2}
  29. - NormalizeImage: {mean: [0.485, 0.456, 0.406], std: [0.229, 0.224, 0.225], is_scale: True}
  30. - Permute: {}
  31. batch_size: 1
  32. # DeepSORT configuration
  33. architecture: DeepSORT
  34. pretrain_weights: None
  35. DeepSORT:
  36. detector: YOLOv3 # PPYOLOv2 version
  37. reid: PPLCNetEmbedding
  38. tracker: DeepSORTTracker
  39. # reid and tracker configuration
  40. # see 'configs/mot/deepsort/reid/deepsort_pplcnet.yml'
  41. PPLCNetEmbedding:
  42. input_ch: 1280
  43. output_ch: 512
  44. DeepSORTTracker:
  45. input_size: [64, 192]
  46. min_box_area: 0
  47. vertical_ratio: -1
  48. budget: 100
  49. max_age: 70
  50. n_init: 3
  51. metric_type: cosine
  52. matching_threshold: 0.2
  53. max_iou_distance: 0.9
  54. motion: KalmanFilter
  55. # detector configuration: PPYOLOv2 version
  56. # see 'configs/mot/deepsort/detector/ppyolov2_r50vd_dcn_365e_640x640_mot17half.yml'
  57. YOLOv3:
  58. backbone: ResNet
  59. neck: PPYOLOPAN
  60. yolo_head: YOLOv3Head
  61. post_process: BBoxPostProcess
  62. ResNet:
  63. depth: 50
  64. variant: d
  65. return_idx: [1, 2, 3]
  66. dcn_v2_stages: [3]
  67. freeze_at: -1
  68. freeze_norm: false
  69. norm_decay: 0.
  70. # Tracking requires higher quality boxes, so NMS score_threshold will be higher
  71. BBoxPostProcess:
  72. decode:
  73. name: YOLOBox
  74. conf_thresh: 0.25 # 0.01 in original detector
  75. downsample_ratio: 32
  76. clip_bbox: true
  77. scale_x_y: 1.05
  78. nms:
  79. name: MatrixNMS
  80. keep_top_k: 100
  81. score_threshold: 0.4 # 0.01 in original detector
  82. post_threshold: 0.4 # 0.01 in original detector
  83. nms_top_k: -1
  84. background_label: -1