A computer-implemented method comprising: obtaining a sequence of images including a plurality of image frames of a scene; detecting a first set of feature points in a first image frame; tracking the first set of feature points in a plurality of subsequent image frames and while continuing to track the first set of feature points: detecting a second set of feature points in a second image frame, wherein new features are represented by the second set of feature points; tracking the second set of feature points in the plurality of subsequent image frames; selecting a first initial camera pose associated with the first image frame and a second initial camera pose associated with the second image frame; determining a plurality of projection locations corresponding to each feature point in the first set of feature points and the second set of feature points, the projection locations based at least in part on the first initial camera pose and the second initial camera pose; comparing the projection locations corresponding to each feature point in the first set of feature points and each feature point in the second set of feature points to the corresponding tracked first set of feature points and the tracked second set of feature points; and in response to determining that the projection locations meet a predefined threshold corresponding to distortion associated with the tracked first and second set of feature points, generating an updated camera pose for the first image frame and the second image frame. obtaining a sequence of images including a plurality of image frames of a scene; detecting a first set of feature points in a first image frame; tracking the first set of feature points in a plurality of subsequent image frames and while continuing to track the first set of feature points: detecting a second set of feature points in a second image frame, wherein new features are represented by the second set of feature points; tracking the second set of feature points in the plurality of subsequent image frames; selecting a first initial camera pose associated with the first image frame and a second initial camera pose associated with the second image frame; determining a plurality of projection locations corresponding to each feature point in the first set of feature points and the second set of feature points, the projection locations based at least in part on the first initial camera pose and the second initial camera pose; comparing the projection locations corresponding to each feature point in the first set of feature points and each feature point in the second set of feature points to the corresponding tracked first set of feature points and the tracked second set of feature points; and in response to determining that the projection locations meet a predefined threshold corresponding to distortion associated with the tracked first and second set of feature points, generating an updated camera pose for the first image frame and the second image frame. detecting a second set of feature points in a second image frame, wherein new features are represented by the second set of feature points; tracking the second set of feature points in the plurality of subsequent image frames; selecting a first initial camera pose associated with the first image frame and a second initial camera pose associated with the second image frame; determining a plurality of projection locations corresponding to each feature point in the first set of feature points and the second set of feature points, the projection locations based at least in part on the first initial camera pose and the second initial camera pose; comparing the projection locations corresponding to each feature point in the first set of feature points and each feature point in the second set of feature points to the corresponding tracked first set of feature points and the tracked second set of feature points; and in response to determining that the projection locations meet a predefined threshold corresponding to distortion associated with the tracked first and second set of feature points, generating an updated camera pose for the first image frame and the second image frame.