跳转至

Reconstruction · SAM3D-Body Hyperparameters

注意:本文保留了最终 ranking,但原始 sweep summary 和旧 regression note 当前不在工作树中。因此数值可作历史结果,复现实验前需要重新生成原始 summary。

Sequence used for the sweep:

  • cache dir: output/bench_d3dhoi_oven_ours_b009_0001_track3d/recon/preprocess_sam3d_body_moge.stale
  • VitPose reference: output/bench_d3dhoi_oven_ours_b009_0001_track3d/recon/preprocess_gvhmr_videoda.stale/motion/preprocess/vitpose.pt
  • sweep output: historical summary artifact, currently missing from the worktree

Notes:

  • The regression note still shows output/.../preprocess, but the actual local run used output/.../recon/preprocess_*.
  • scripts/tuning/diagnose_sam3d_body_hparams.py needed one compatibility fix during this sweep: it now reads pred_keypoints_3d_cam from sam3d_body._materialize_dense() instead of the stale j3d_cam key.
  • pipeline/reconstruction/preprocess/human/sam3d_body.py also needed a lazy import for render_human_motion so the diagnose path does not hard-require visualization-only deps.

Scoring rule

Per the historical regression note (currently missing from the worktree), candidates are ranked by:

vitpose_body17_abs_mean + 0.5 * (head5_abs_mean + tail5_abs_mean) + 0.25 * wrist2d_d3_p95

Lower is better.

Chosen recipe

Winner: wcam04

  • change: w_cam = 0.4 (baseline was 0.2)
  • all other _OPTIMIZE_HPARAMS entries unchanged

Before / After

Baseline (_OPTIMIZE_HPARAMS before this tuning):

  • score: 54.644800
  • vitpose_body17_abs_mean: 21.775572
  • head5_abs_mean: 39.008911
  • tail5_abs_mean: 25.521370
  • wrist2d_d3_p95: 2.416350

Chosen (wcam04):

  • score: 54.063004
  • vitpose_body17_abs_mean: 21.615864
  • head5_abs_mean: 38.431900
  • tail5_abs_mean: 25.126125
  • wrist2d_d3_p95: 2.672511

Delta (wcam04 - baseline):

  • score: -0.581795
  • vitpose_body17_abs_mean: -0.159708
  • head5_abs_mean: -0.577011
  • tail5_abs_mean: -0.395245
  • wrist2d_d3_p95: +0.256162

Interpretation:

  • w_cam = 0.4 wins decisively on the actual ranking objective.
  • It improves the main reprojection term and both head/tail endpoint terms enough to outweigh a modest regression in wrist 3rd-difference jitter.
  • cam_dev005, wh05, and wh20 reduced wrist jitter more directly, but none beat wcam04 on the combined objective.

Full ranking

From the historical sweep summary:

  1. wcam0454.063004
  2. lat854.585122
  3. baseline54.644800
  4. wh0554.660885
  5. wh2054.666801
  6. cam_dev01254.681388
  7. cam_dev00554.744972
  8. lat254.911853
  9. lat2_wh2054.926743
  10. wcam0154.976963