Object Recognition using Template Matching

Object Recognition is inherently a hard problem in computer vision. Current standard object recognition techniques require small training data sets of images and apply sophisticated algorithms. These methods tend to perform poorly because the small data set does not reflect the true distribution (selection bias). Recently, Torralba et al [1] have proposed to develop a large data set of images (80 million images) and apply simple algorithms for object recognition. Their method performs relatively well for some certain classes of objects. Nevertheless, their data sets require very large storage and are noisy. In this project, we develop precise 3D models of objects and use these to apply simple learning algorithms for object recognition. Three dimensional models have the advantage that they are more compressed than individual images. Thus this allows training large scale object recognition algorithms. We hope to prove that by applying a simple learning algorithm, namely template matching, we are able to achieve strong performance in recognizing objects. In order to focus our efforts, we are concerned only with the classification task: given an image does it or does it not contain the target object? This task is the focus of much research in computer vision and in this report we will compare our results to the state of the art from the PASCAL Visual Object Classes (VOC) Challenge, 2007 [3]. Further, we chose cars as objects to detect as detecting cars in images is a general problem, and we could make accurate 3D models of the cars ourselves using scaled diecast models. This report is organized as follows. Section 2 details how we created the 3D car models. Section 3 provides details of basic approach we followed. Section 4 and 5 give experimental results along with some other variations of our approach. Section 6 details an alternate K-means based approach to the problem. Finally, section 7 concludes the report. 2 Building 3D models