gmntu / mobilehand

(ICONIP 2020) MobileHand: Real-time 3D Hand Shape and Pose Estimation from Color Image
https://gmntu.github.io/mobilehand/
121 stars 9 forks source link

why the rotate_finger function rotate about y axis can describe A/A and F/E? #12

Closed yfynb1111 closed 2 years ago

yfynb1111 commented 2 years ago

Im confused about code:

rotate_finger = lambda j1, j2 : rvec2rmat(np.array( [0,np.arctan((j1[2]-j2[2])/(j1[0]-j2[0])),0])) # Rotate about y axis Z[0:2,0:3] = rotate_finger(Jrest[1,:],Jrest[0,:])[1:3,:] # 0:MCP abduct/adduct, 1:MCP flex/ext

why rotate y axis can get A/A & F/E movement

gmntu commented 2 years ago

Please refer to the diagram below: IMG_20220408_070744

yfynb1111 commented 2 years ago

Please refer to the diagram below: IMG_20220408_070744

Thank you very much!! It means in initial rest pose every joint coordinate is same as the world coordinate,and palm is towards to Y axis. so after rotate finger,we can control A/A & F/E by new y axis and new z axis. right?

gmntu commented 2 years ago

Yes you are correct! Below is a diagram of the joint coordinate of MANO right hand model for reference. mano_right_ori

yfynb1111 commented 2 years ago

Yes you are correct! Below is a diagram of the joint coordinate of MANO right hand model for reference. mano_right_ori

Nice digram to understand