| CPC G06V 40/23 (2022.01) [G06T 7/30 (2017.01); G06T 7/50 (2017.01); G06T 7/75 (2017.01)] | 16 Claims |

|
1. A method comprising:
obtaining, with at least one processor, motion data obtained from at least one motion sensor worn by a user;
obtaining, with the at least one processor, at least one frame of skeletal data of the user based on at least one of camera data or depth data;
calibrating, with the at least one processor, the motion data and skeletal data to determine a calibration offset, wherein determining the calibration offset includes:
determining a calibration error based on a difference between an estimated joint position and velocity from the skeletal data and a previously estimated joint position and velocity from the skeletal data;
updating the calibration offset based on the calibration error;
synchronizing the motion data and skeletal data;
generating the estimated joint position and velocity by:
aligning reference frames of the synchronized motion data and the synchronized skeletal data based on the calibration offset;
estimating the joint position and velocity based on the aligned reference frames of the motion data and skeletal data; and
classifying, by a machine learning model, an estimated body pose of the user based on the estimated joint position and velocity.
|