I'm having some trouble calculating the angle of an human joint in 3D using the Microsoft Kinect.
Here's an example of the angle of the elbow (using the shoulder and wrist joint):
Calculating angles between 0° and 180° is no problem, but when the person hyperextends his elbow my calculation returns 170° instead of 190°.
The calculation I'm using is as follows:
- $d = b - a$
- $e = b - c$
Where a, b and c are 3D-points and d and e are 3D-vectors.
My question is: How can I calculate the angle between $d$ en $e$ where the angle is between 0° and 360°?
Thanks in advance!