3D Object Classification Using Unsupervised Feature Learning


This was the term project for my EECS 545 - Machine Learning class in the spring semester of 2012. We built upon and compared our results to a set of work by a robotics group at Cornell (their site). We used both k-nearest neighbors and SVM in our unsupervised feature learning methods.

The general problem we aimed to solve is that of automatically classifying objects in a three-dimensional setting. This problem is at the core of autonomous robotics research, as being able to function in an environment, including manipulation of objects, requires the ability to understand what objects exist within the environment. Successfully solving this problem leads directly to autonomous robots that can be visually taught labels for objects, and when coupled with a semantic understanding of those labels, results in a robot that understands and productively interacts with its environment.

Office Scene
Home Scene


We present an exploration of methods for applying unsupervised feature learning to the problem of classifying objects in a three-dimensional scene, a problem at the core of autonomous robotics research. We utilize color point cloud data collected with a Microsoft Kinect sensor in two different settings: a work setting and a home setting. This work builds upon previous research which utilized a contextual graph of each scene and hand-crafted features, with good results. While we utilize a few of the features of the previous work, our work differs significantly in our use of color data and our use of appearance features, each learned in an unsupervised manner. In particular, we explore unsupervised appearance feature learning methods which rely upon standard two-dimensional scale-invariant feature transform (SIFT) descriptors, which are better studied, and recently-proposed three-dimensional SIFT descriptors, which are more appropriate for our setting. Our results show that the utilization of appearance features learned by unsupervised methods generally improve classification performance.

A wall

A wall


The problem of automatically classifying objects visually is critical to the development of fully autonomous robots. Previous work utilized hand-crafted features as the method for automatic three-dimensional object classification. Hand-crafting features is a laborious task that does not generalize well for all types of objects and contexts. We have proposed to instead utilize unsupervised feature learning for this task, and have generally shown that features learned in such a manner can be beneficial to the classification task. Because features are learned automatically, our method generalizes well across classes of objects and domains with little additional effort relative to the previous method.

Our results showed that the novel use of both 2D and 3D SIFT descriptors in a classification task were able to modestly improve the overall classifier performance. We presented a novel method for utilizing 2D SIFT descriptors for classification in a three-dimensional environment, and also presented a novel application of 3D SIFT descriptors to a classification task.