data_cfg:
  dataset_name: Gait3D-Parsing
  dataset_root: your_path
  dataset_partition: ./datasets/Gait3D/Gait3D.json # Uses the same Gait3D.json as Gait3D dataset
  num_workers: 1
  remove_no_gallery: false
  test_dataset_name: Gait3D-Parsing

evaluator_cfg:
  enable_float16: false
  restore_ckpt_strict: true
  restore_hint: 180000
  save_name: GaitPart
  eval_func: evaluate_Gait3D
  metric: cos
  sampler:
    batch_size: 16
    sample_type: all_ordered
    type: InferenceSampler
  transform:
    - type: BaseParsingCuttingTransform

loss_cfg:
  loss_term_weight: 1.0
  margin: 0.2
  type: TripletLoss
  log_prefix: triplet

model_cfg:
  model: GaitPart
  backbone_cfg:
    in_channels: 1
    layers_cfg:
      - BC-32
      - BC-32
      - M
      - FC-64-2
      - FC-64-2
      - M
      - FC-128-3
      - FC-128-3
    type: Plain
  SeparateFCs:
    in_channels: 128
    out_channels: 128
    parts_num: 16
  bin_num:
    - 16


optimizer_cfg:
  lr: 0.001
  momentum: 0.9
  solver: Adam
  weight_decay: 0.0005

scheduler_cfg:
  gamma: 0.1
  milestones:
    - 30000
    - 90000
  scheduler: MultiStepLR

trainer_cfg:
  enable_float16: true
  log_iter: 100
  with_test: false
  restore_ckpt_strict: true
  restore_hint: 0
  save_iter: 30000
  save_name: GaitPart
  sync_BN: false
  total_iter: 180000
  sampler:
    batch_shuffle: false
    batch_size:
      - 32
      - 4
    frames_num_fixed: 30
    frames_num_max: 50
    frames_num_min: 25
    frames_skip_num: 10
    sample_type: fixed_ordered
    type: TripletSampler
  transform:
    - type: BaseParsingCuttingTransform
