1. A method for constructing a 3D model for 3D object recognition comprising the following steps: (a) providing the interior parameters of the camera; (b) providing a geometric representation of a 3D object; (c) providing a range of poses in which the 3D object may appear with respect to the camera; (d) creating virtual views of the 3D object by sampling the range of poses for different image resolutions; (e) representing all views by a tree structure where views that correspond to the same image resolution reside at the same hierarchy level in the tree; and (f) for each view creating a 2D model that can be used to find the 2D view in an image by using an appropriate 2D matching approach.