1. A method for measuring and surface reconstruction of a 3D image of an object comprising: projecting a pattern onto a surface of an object to be imaged, wherein the step of projecting a pattern comprises projecting a colour-coded array pattern onto a surface of an object to be imaged; and wherein the step of projecting a pattern comprises projecting using a projector; viewing using a camera said pattern projected onto said surface and passing one or more signals from said camera representative of said pattern to said processing stage; arranging said camera and said projector to have 6 degrees of freedom relative to each other; examining in a processor stage distortion or distortions produced in said pattern by said surface; converting in said processor stage said distortion or distortions produced in said pattern by said surface to a distance representation representative of the shape of the surface; and reconstructing electronically said surface shape of said object; slicing in said processor stage said pattern as distorted by said surface into a number of cross section curves; reconstructing one or more of said cross-section curves by a closed B-spline curve technique; selecting a control point number of a plurality of B-spline models from said one or more curves; determining using entropy techniques representation of uncertainty in said selected plurality of B-spline models to predict an information gain for each cross section curve; mapping said information gain of said plurality of B-spline models into a view space; and selecting as a Next Best View a view point in said view space containing a maximum information gain for said object.