Finding Joint Angle from Motion Capture

Hi!
I'm working right now with data from a motion capture device, essentially picking up data for three markers placed on the head neck and shoulder in an x y z plane.
My difficulty trying to develop a code to calculate the joint angles between these three markers. I am able to animate the three coordinates to play as an animation, but I'm more interested in the calculation of the angles between these points changing over time.
Any ideas on how to go about this?
Thanks

 채택된 답변

Roger Stafford
Roger Stafford 2012년 12월 12일

2 개 추천

At any time, let H = [x,y,z], N = [x,y,z], S = [x,y,z] be coordinate vectors of the head, neck, and shoulder markers at that time. Then the three respective inner angles within the triangle HNS then are:
h = atan2(norm(cross(N-H,S-H)),dot(N-H,S-H));
n = atan2(norm(cross(S-N,H-N)),dot(S-N,H-N));
s = atan2(norm(cross(H-S,N-S)),dot(H-S,N-S));
(The sum of these should always be pi to within round-off accuracy.)
Roger Stafford

댓글 수: 6

Mary
Mary 2012년 12월 12일
Thank you so much on your quick response, I'm still working on getting things working, but I will keep you posted
Mary
Mary 2012년 12월 12일
Thank you again for the response! I managed to get that aspect of my motion capture data working. Most of the trouble I had was conceptually figuring out how to break down my data into each [x,y,z] coordinate.
Would you happen to know how I can take these same data sets of three points in separate x, y, and z columns and figure out the velocity and acceleration of these moving joints? I'm hoping to compare different data sets of the moving head neck and shoulder to identify which is cause the most stress internally, so looking at the motion capture data is becoming somewhat more difficult than working with my empirical biomechanical model!
Thank you (I hope I'm not asking too much!!!)
George Vendo
George Vendo 2014년 5월 6일
Hi, Thank you for the answer. Could you please explain why the sum should always be pi?
With 3D coordinates how can we specify the position in space, by the angles? thank you
TAEYUN
TAEYUN 2014년 10월 30일
편집: TAEYUN 2014년 10월 30일
u r a awesome dude!!!! i luv u!!!
Mousumi Nag
Mousumi Nag 2017년 1월 24일
Can I get back the S,N,H from the angle .In other words, How can I get the vector points where angle is given
Suranjita Ganguly
Suranjita Ganguly 2020년 6월 23일
The sum of the angles should be Pi (approx), because the three angles are forming a triangle, and sum of all internal angles in a triangle is 180 degrees i.e. pi

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Biomechanics에 대해 자세히 알아보기

질문:

2012년 12월 12일

댓글:

2020년 6월 23일

Community Treasure Hunt

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

Start Hunting!

Translated by