In order for robots to be able to manipulate the proper objects, robots firstly need visual ability to precisely recognize and identify objects. One of the most basic problems with robot vision is that environments can change under various weather conditions (various illuminations). Furthermore, each object's category consists of many objects with various poses. In order to obtain the best performance in term of accuracy and efficiency, we compared three feature extraction approaches that have been widely used to solve this problem: Principal Components Analysis (PCA), Linear Discriminant Analysis (LDA), and contour matching with Log Polar Histogram (LPH). We also introduced an improved algorithm called Adaptable K-Nearest Neighbor (AK-NN) that allows the object recognition system to use an automatic adaptable K value to improve the accuracy of classification. To evaluate the object recognition system, we generated virtual objects with various conditions for realistic testing.