Clear Filters
Clear Filters

How can I calculate kinematics of ankle joint after calculating local coordinates of the foot and shank from the 3D position of markers?

7 views (last 30 days)
Hi all,
I have a human 3D motion data (walking straight).
I want to calculate ankle joint kinematics.
I have calculated the local coordinates of the foot and shank segments using the XYZ coordinates (in meters) of 3 markers from each segment. Code for shank coordinate system ( as suggested by ChatGPT):
% The shank coordinate system axes (lateral malleoli, medial malleoli, head of fibula)
l_shank_x = (llmal - lmmal) / norm(llmal - lmmal);
l_shank_y = cross(l_shank_z, l_shank_x);
l_shank_z = cross(lfib - lmmal, llmal - lmmal) / norm(cross(lfib - lmmal, llmal - lmmal));
% Ensure axis vectors are normalized
l_shank_x2 = l_shank_x / norm(l_shank_x);
l_shank_y2 = l_shank_y / norm(l_shank_y);
l_shank_z2 = l_shank_z / norm(l_shank_z);
% Create the shank rotation matrix
lshank_rotation_matrix = [l_shank_x2', l_shank_y2', l_shank_z2'];
These coordinates are attached for both the foot and the shank (both 868x9 double).
I have also calcuted ankle joint center (attached):
l_ankle_cent = lcal + lmet5/2;
I wonder what is the general framework to follow to calculate ankle joint 3D kinematics (in degrees) from here?

Answers (0)


Find more on Biomechanics in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!