Recommending glasses based on face and frame features is the main issue of this thesis. In this work we present an automatic shape extraction and classification method for face and eyeglass frame shapes. Our novel frame shape extraction algorithm can extract the polygonal shape of the frame accurately and reliably even for reflective sunglasses and thin metal frames. Additionally, we identify the key geometric features that can diā†µerentiate reliably the shape classes and we integrate them into a supervised learning technique for face and frame shape classification. Finally, we incorporate the shape extraction and classification algorithms into a practical data-driven frame recommendation system that we validate empirically with a user study. Using a supervised learning technique, we identified the geometric discriminatory features that can be used to classify both the face type and the eyeglass type form a single photograph. Our classification method reaches near 90% accuracy. We ran this classification on over 200 photographs and we surveyed 100 people on the compatibility between face and eyeglasses. Using this data we created an eyeglass recommendation system that we have validated experimentally.