Having a hierarchical chain and an target point, the angles that each of the links must have are calculated so that the end is as close as possible to the target by means of the Jacobian method of inverse kinematics.
Thanks to a facial tracking library, the system interprets the user's expresions obtained in real time through a webcam or video file. A 3D model reproduces the same movements by blendshapes and skeletal animations. The project has been developed in OpenGL, using the OpenCV computer-vision library and the facial tracker OpenFace.