316 MB
3 files
Updated 6 months ago
Name
Size
README.md3.5 kB
xet
best.ckpt158 MB
xet
last.ckpt158 MB
xet
README.md

Person-in-WiFi 3D — Pretrained Checkpoints

Re-implementation of Person-in-WiFi 3D (CVPR 2024).
Estimates 3D human body keypoints from Wi-Fi Channel State Information (CSI) — no camera required.

Code: github.com/Duongvu05/hpe_task


Files

File Description
best.ckpt Best checkpoint (lowest val MPJPE during training)
last.ckpt Final checkpoint (epoch 500)

Training Setup

Epochs 500
Batch size 180
Optimizer AdamW, lr=2e-5, wd=1e-4
LR decay ×0.1 at epoch 450
Hardware NVIDIA GeForce RTX 4070 (11.6 GB)
Training time ~48 hours
Framework PyTorch Lightning

Results (best.ckpt)

Overall by person count (mm):

Metric 1-person 2-person 3-person Overall
MPJPE 90.4 102.0 118.0 103.0
MPJDLE(h) 40.6 47.6 55.0 47.5
MPJDLE(v) 46.8 55.7 65.2 55.7
MPJDLE(d) 46.3 47.5 53.7 48.9

Per-joint breakdown (mm):

Joint MPJPE MPJDLE(h) MPJDLE(v) MPJDLE(d)
neck 83.6 36.5 46.4 39.9
head 90.4 38.9 51.0 42.6
left shoulder 91.0 43.2 49.6 40.7
right shoulder 92.2 43.9 50.3 41.1
left elbow 117.1 58.2 63.1 51.2
left hip 74.6 35.0 40.8 35.5
right elbow 122.8 60.0 67.0 53.2
right hip 75.0 35.5 40.6 36.0
left hand 165.1 80.0 76.1 87.7
left knee 82.7 36.0 50.6 36.5
right hand 179.2 85.7 84.2 93.8
right knee 84.1 36.8 51.2 37.7
left ankle 92.1 38.2 54.4 43.7
right ankle 91.9 37.8 53.8 44.6
Mean 103.0 47.5 55.7 48.9

Usage

1. Download checkpoints

hf sync hf://buckets/VuNgocDuong/Hpe-task ./work_dirs

2. Clone repo & install

git clone https://github.com/Duongvu05/hpe_task
cd hpe_task
uv sync

3. Evaluate

./evaluate.sh \
  --checkpoint work_dirs/best.ckpt \
  --train-root train_data \
  --test-root  test_data

4. Resume training

./train.sh --resume-from work_dirs/best.ckpt

Model Architecture

Wi-Fi CSI  [B, 3, 3, 20, 60]
     │
     ▼  Linear projection + STE positional encoding
     │
  Encoder  (6 × Transformer, 8 heads, dim=256)
     │
     ▼  Two-stage proposals (top-100 encoder outputs)
     │
  Decoder  (3 × Transformer)  — iterative keypoint refinement
     │
     ▼  Hungarian matching → positive instances only
     │
  Refine Decoder  (3 × Transformer)
     │
     ▼
  Output: [B, 100, 14, 3]  (14 keypoints × xyz, mm)
Parameters ~13.2 M
Input [B, 3, 3, 20, 60] CSI tensor
Output Up to 3 persons × 14 keypoints × 3D coords
Keypoints neck, head, shoulders, elbows, hips, hands, knees, ankles

Reference

@inproceedings{yan2024personinwifi3d,
  title     = {Person-in-WiFi 3D: End-to-End Multi-Person 3D Pose Estimation with Wi-Fi},
  author    = {Yan, Xinyan and Wang, Xu},
  booktitle = {CVPR},
  year      = {2024}
}
Total size
316 MB
Files
3
Last updated
Apr 27
Pre-warmed CDN
US EU US EU

Contributors