1. An apparatus for obtaining 3D image of objects in a scene, comprising (a) a light projection means for generating a bundle of light rays with spatially varying wavelengths to illuminate surface of objects in the scene such that spatially varying color patterns are formed on the surface of objects through the light projection, and (b) a sensor means for acquiring images of objects in the scene from multiple viewing locations, based on which the wavelengths can be detected of light rays reflected from objects' surface that is illuminated by said light projection means, and (c) a calibration means for determining the geometric and optical parameters of the said sensor means at multiple viewing locations, and (d) a data comparison means for matching the correspondence pixels in multiple data sets obtained from the said sensor means based on their wavelength values and/or local color patterns, and (e) a data extraction means for computing distances in the 3D space between sensor means and surface points in the scene, and therefore determining 3D coordinates of surface points of objects in the scene, based on information of (i) locations of the matched correspondence points in multiple images obtained by the said sensor means based on color comparison, and (ii) geometric and optical parameters of the said sensor means obtained by the said calibration means, whereby 3D images, in which each pixel value represents a 3D distance between the said sensor means and a surface point on objects in the scene that corresponds to the pixel, can be obtained using triangulation principle.