A method of scanning a 3D object, comprising: via a user interface , receiving a user's input to perform a scanning operation and in response thereto: using a light projector , projecting structured light onto the surface of a physical object about target positions on the surface of the physical object; and using a camera arranged at a distance from the light projector and at a viewing angle with respect to the light projector , recording a sequence of first images of at least a portion of the surface of the physical object including a light scatter region illuminated by the structured light being projected at the target positions on the surface of the physical object ; characterized in retrieving a trained image processing network configured during training to output data comprising estimates of the location, in the one or more first images, of the target positions on the surface of the physical object in response to receiving one or more first images, including at least image intensity from the light scatter regions, in the sequence of images; using the trained image processing network , processing first images including the light scatter regions in the sequence of images, to generate an estimate of the locations in the one or more first images of the target positions on the surface of the physical object ; and using triangulation, based on the estimate of the locations, in the one or more first images, of the target positions on the surface of the physical object, generating a partial or complete computer-readable, point cloud or three-dimensional model of the surface of the physical object. via a user interface , receiving a user's input to perform a scanning operation and in response thereto: using a light projector , projecting structured light onto the surface of a physical object about target positions on the surface of the physical object; and using a camera arranged at a distance from the light projector and at a viewing angle with respect to the light projector , recording a sequence of first images of at least a portion of the surface of the physical object including a light scatter region illuminated by the structured light being projected at the target positions on the surface of the physical object ; characterized in retrieving a trained image processing network configured during training to output data comprising estimates of the location, in the one or more first images, of the target positions on the surface of the physical object in response to receiving one or more first images, including at least image intensity from the light scatter regions, in the sequence of images; using the trained image processing network , processing first images including the light scatter regions in the sequence of images, to generate an estimate of the locations in the one or more first images of the target positions on the surface of the physical object ; and using triangulation, based on the estimate of the locations, in the one or more first images, of the target positions on the surface of the physical object, generating a partial or complete computer-readable, point cloud or three-dimensional model of the surface of the physical object. <EOS>