eth-ait / dip18

Deep Inertial Poser: Learning to Reconstruct Human Pose from Sparse Inertial Measurements in Real Time
GNU General Public License v3.0
146 stars 47 forks source link

Wrist or Elbow? #9

Closed pitwegner closed 4 years ago

pitwegner commented 4 years ago

In your live demo code, you specify the imu ids as elbows, knees, pelvis and head (also mapped in the SMPLPoseUpdater), whereas your video and the paper shows the locations as wrists, knees, pelvis and head. Is the code not up to date or did the neural network learn to cope with the wrong calibration?

// must match name in definition of SMPL model
_imuIdToBoneName.Add(_rArmId, "R_Elbow");
_imuIdToBoneName.Add(_rLegId, "R_Knee");
_imuIdToBoneName.Add(_lArmId, "L_Elbow");
_imuIdToBoneName.Add(_lLegId, "L_Knee");
_imuIdToBoneName.Add(_pelvisId, "Pelvis");
_imuIdToBoneName.Add(_headId, "Head");
YinghaoHuang91 commented 4 years ago

Sorry for the confusion. In this project we don't take into account the hand motion, thus the relevant joint is always left/right lower arm (or elbow joint), not the wrist. In the synthetic data generation step we always place one sensor on each lower arm part. We assume the same setting in the live demo.

However please note that since in the AMASS data we are using the hand motion is always ignored, so actually there is no difference in the global orientation between lower arm joint and wrist joint since wrist joint is the direct descent of lower arm joint.

Hope it helps.