Method for generating a 3D model of an object of interest, which method comprises the following steps: Structure from Motion processing of a plurality of sparse images acquired by one or more acquisition devices for generating a sparse 3D point cloud and a plurality of internal and external parameters of the acquisition devices obtained by processing said images, obtaining, from the sparse 3D point cloud and from the internal and external parameters of the acquisition devices, by multiview stereo processing, a dense 3D point cloud for said generation of the 3D model, characterized in that it provides the reconstruction of the surface of said object of interest by the following steps: a) illuminating the object of interest from different directions; b) acquiring a plurality of images of the object of interest from a single point of view, each image corresponding to a different lighting direction; c) automatically recognizing the lighting direction for each acquired image; d) calculating the vector field of the surface normals; e) calculating the albedo of the observed surface; f) reconstructing the orientation of the surface to improve the 3D model obtained by said Structure from Motion and multiview stereo processing, wherein the calculation of the vector field of the surface normals comprises the following steps: d1) grouping the images in subsets of three images; d2) estimating the normal for each pixel by resolution of a linear system whose coefficients are given by the lighting directions calculated at step c) and whose known term is given by luminous intensities of acquired images, by considering the integer part of residuals of the system as the image subsets change, and determining the solution minimizing the median of residuals; d3) outlier diagnostics by calculating for each pixel the residuals of all the images as the integer part of the difference between luminous intensities and the scalar product between the estimated normal and the light directions; d4) calculating the normal as at step d2) by using only light and images not identified as outliers at step d3). Structure from Motion processing of a plurality of sparse images acquired by one or more acquisition devices for generating a sparse 3D point cloud and a plurality of internal and external parameters of the acquisition devices obtained by processing said images, obtaining, from the sparse 3D point cloud and from the internal and external parameters of the acquisition devices, by multiview stereo processing, a dense 3D point cloud for said generation of the 3D model, characterized in that it provides the reconstruction of the surface of said object of interest by the following steps: a) illuminating the object of interest from different directions; b) acquiring a plurality of images of the object of interest from a single point of view, each image corresponding to a different lighting direction; c) automatically recognizing the lighting direction for each acquired image; d) calculating the vector field of the surface normals; e) calculating the albedo of the observed surface; f) reconstructing the orientation of the surface to improve the 3D model obtained by said Structure from Motion and multiview stereo processing, a) illuminating the object of interest from different directions; b) acquiring a plurality of images of the object of interest from a single point of view, each image corresponding to a different lighting direction; c) automatically recognizing the lighting direction for each acquired image; d) calculating the vector field of the surface normals; e) calculating the albedo of the observed surface; f) reconstructing the orientation of the surface to improve the 3D model obtained by said Structure from Motion and multiview stereo processing, wherein the calculation of the vector field of the surface normals comprises the following steps: d1) grouping the images in subsets of three images; d2) estimating the normal for each pixel by resolution of a linear system whose coefficients are given by the lighting directions calculated at step c) and whose known term is given by luminous intensities of acquired images, by considering the integer part of residuals of the system as the image subsets change, and determining the solution minimizing the median of residuals; d3) outlier diagnostics by calculating for each pixel the residuals of all the images as the integer part of the difference between luminous intensities and the scalar product between the estimated normal and the light directions; d4) calculating the normal as at step d2) by using only light and images not identified as outliers at step d3). d1) grouping the images in subsets of three images; d2) estimating the normal for each pixel by resolution of a linear system whose coefficients are given by the lighting directions calculated at step c) and whose known term is given by luminous intensities of acquired images, by considering the integer part of residuals of the system as the image subsets change, and determining the solution minimizing the median of residuals; d3) outlier diagnostics by calculating for each pixel the residuals of all the images as the integer part of the difference between luminous intensities and the scalar product between the estimated normal and the light directions; d4) calculating the normal as at step d2) by using only light and images not identified as outliers at step d3).