Recent work suggests that the human ear varies significantly between different subjects and can be used for identification. In principle, therefore, using ears in addition to the face within a recognition system could improve accuracy and robustness, particularly for non-frontal views. The paper describes work that investigates this hypothesis using an approach based on the construction of a 3D morphable model of the head and ear. One issue with creating a model that includes the ear is that existing training datasets contain noise and partial occlusion. Rather than exclude these regions manually, a classifier has been developed which automates this process. When combined with a robust registration algorithm the resulting system enables full head morphable models to be constructed efficiently using less constrained datasets. The algorithm has been evaluated using registration consistency, model coverage and minimalism metrics, which together demonstrate the accuracy of the approach.
Source Code & Data
The code described in the paper has been written in Java and developed using Eclipse. As well as the fitting algorithm and surface classifier code it also includes a software renderer and functions for saving and loading metadata (such as the keypoints). It is released under the GPL license.
If you find the code useful or if you find any bugs or issues with the code please send me a mail.
The source code contains a number of improvements since the publication of the paper.
This includes the integration of the sparse solver MinRes for improved performance. As well as the application of median absolute deviation to detect outliers. The code has also been adapted to enable the optional registration of range scans without the use of an intermediate mesh.