1. A system, comprising: a scanning module including an intraoral three dimensional (3D) scanner; and a processing module coupled to the scanning module to: receive a plurality of three-dimensional (3D) scans of a dentition; estimate a motion trajectory from a particular one of the plurality of scans of a dentition to a subsequent scan, wherein the estimation includes one or more of: using data from a plurality of two-dimensional (2D) images of the dentition taken during the particular scan of the dentition, determining an optical flow based on a local motion vector between consecutive images of the plurality of 2D images based on a change of position of a point in the consecutive images and a change in time between the consecutive images; estimating a motion trajectory of the point in the particular scan by estimating a global velocity vector for each consecutive image, improving the estimated motion trajectory using the optical flow to estimate a correctness of the estimated motion trajectory; and estimating an amount of motion of a 3D scanner during the particular scan as a rigid body transformation based on input from at least one position tracking device that is connected to the 3D scanner; and calculate a corrected scan by compensating for the estimated motion trajectory.