Inverse Kinematics Solver for Android Faces with Elastic Skin

Emarc Perri Dizon Magtanong (1051137)


The ability of androids to display facial expressions is a key factor towards a more natural human-robot interaction. However, controlling the facial expressions of such robots with elastic facial skin is difficult due to the complexity of modeling the skin deformation. Therefore, this thesis proposes a method to solve the inverse kinematics of android faces. Using the inverse kinematics solver, the face deformation of the android can be controlled by specifying target feature points. This method is more suitable because it directly controls the appearance of the android's face.

We present several ideas in this research to solve the inverse kinematics. Initially, an artificial neural network is employed to model the forward kinematics. For the inverse kinematics solution, an iterative technique is used to minimize an error function that is defined as the difference between target feature point positions and feature point positions estimated by the forward kinematics artificial neural network. In addition, a weighted error is also used to simplify the specification of target feature points. Finally, we propose a face segmentation method to group feature points and facial actuators. The face segmentation decreases the complexity of modeling the forward kinematics and solving for the inverse kinematics.

We then implement an inverse kinematics solver for an actual android to evaluate our method. Results show that the proposed method can be used to control the android's face using target feature points.