1. A method of localizing an object having a flat surface, comprising: receiving a depth image comprising image pixels representing distances between a depth sensor and parts of objects in the depth image; determining a candidate area in the depth image by processing the depth image, the candidate area representing a portion of the depth image that likely includes the flat surface; receiving a color image captured by a camera, the color image covering the candidate area in the depth image; and detecting the flat surface of the object in the candidate area of the color image by detecting and selecting geometric features from the color image that outlines the flat surface.