yohanshin / WHAM

MIT License
683 stars 74 forks source link

Questions about rebuilding data into motion data #74

Open EndeavoringYoon opened 7 months ago

EndeavoringYoon commented 7 months ago

Hi, I'm trying to extract features of each position and orientation of joint from SMPL output, and I have few questions to ask.

What I'm doing is getting appropriate joint position and orientation for 24 SMPL joints, and I realized that the output of get_output code in smpl.py gives us (number of frame number of joints 3) array. When I tried these codes, I earned same shape of array: verts_positions=output.vertices joint_position = torch.matmul(self.J_regressor_wham.unsqueeze(0), verts_positions)

Since I understand SMPL has 24 joints, but I am curious about what the remaining 7 data points represent. Thank you.

happysujin commented 7 months ago

It says, unlike standard J_regressor of SMPL returns 24 joints from vertices, the customized matrix J_regressor_wham returns 31 joints to help more joints, and I'm not sure but you can maybe check this code """ import plotly.graph_objects as go from joblib import load

file = load('/yout path to downloaded wham-emdb-eval-parsed data/emdb_2_vit.pth')

file['init_kp3d'][0][0].shape

coordinates = file['init_kp3d'][0][0]

x, y, z = zip(*coordinates)

fig = go.Figure(data=[go.Scatter3d(x=x, y=y, z=z, mode='markers')])

fig.update_layout(title="3D Scatter Plot", scene=dict( xaxis_title='X AXIS', yaxis_title='Y AXIS', zaxis_title='Z AXIS'))

fig.show() """

for check init_kp3d (related to joints?). Maybe, J_regressor_eval could be used, but I think two would be similar. I can see more joints on face.