CPC G06T 7/579 (2017.01) [G06T 7/20 (2013.01); G06T 7/246 (2017.01); G06T 7/70 (2017.01); G06T 7/73 (2017.01); G06T 2207/10016 (2013.01); G06T 2207/30241 (2013.01); G06T 2207/30244 (2013.01)] | 20 Claims |
1. A method comprising:
identifying, by one or more hardware processors, a first key image frame from a set of captured image frames captured by an image sensor; and
after detecting a movement of the image sensor from a first position in a physical environment to a second position in the physical environment:
identifying, by the one or more hardware processors, a second key image frame from the set of captured image frames;
performing, by the one or more hardware processors, feature matching on at least the first and second key image frames to identify a set of matching three-dimensional (3D) features in the physical environment;
generating, by the one or more hardware processors, a filtered set of matching 3D features by filtering out at least one erroneous feature, from the set of matching 3D features, based on a set of error criteria; and
determining, by the one or more hardware processors, a first set of six degrees of freedom (6DOF) parameters of the image sensor for the second key image frame and a set of 3D positions for the set of matching 3D features, the determining comprising performing a simultaneous localization and mapping (SLAM) process based on first inertial measurement unit (IMU) data captured by an inertial measurement unit (IMU), second IMU data captured by the IMU, and the filtered set of matching 3D features, the first IMU data being associated with the first key image frame, and the second IMU data being associated with the second key image frame.
|