1. A method comprising: estimating, for each vertex of at least a portion of a 3D mesh containing mesh points representing a model, projection parameters associated with a virtual camera that is unique for each vertex; mapping pixels from a 2D image to the vertices, such that each mapping of a pixel is based on the estimated respective virtual camera parameters; texturing the portion of the mesh with corresponding mapped pixels, wherein vertices on the textured portion are selected such that they are visible from a specified viewpoint associated with the 3D mesh; specifying a plurality of pairs, each pair containing a mesh point of the 3D mesh and its geometrically corresponding image pixel of the 2D image, wherein during the estimating, the projection parameters of any given vertex are calculated at least partially based on distances between the given vertex and at least some of the mesh points included in the specified pairs; rasterizing the 3D mesh onto the 2D image while calculating sums of distances between each vertex and at least some of the mesh points included in the specified pairs, to yield a distance image aligned with the 2D image, such that each pixel of the distance image represents a respective minimal calculated sum; and comparing, during the texturing, a depth associated with each mapped mesh points with a respective pixel of the distance image, to determine the visible vertices being the vertices associated with the respective minimal sums.