1. A method of selecting facial features used to recognize faces with a face recognition module, the method comprising: (a) collecting three-dimensional face models; (b) creating a plurality of virtual images from the three-dimensional face models for each of the faces to create a dataset; and (c) identifying discriminative features by selecting features from the plurality of virtual images such that the identified discriminative features are independent of the dataset.