Online environment mapping
First Claim
1. A computer implemented method for generating an environment map of an input video sequence, the method comprising:
- identifying a plurality of keyframes of the input video sequence and adding the identified keyframes into an initial environment map, the keyframes being identified based on video features associated with a plurality of video frames of the input video sequence, and the initial environment map being represented by a keyframe pose graph;
enforcing local metric properties of a group of identified keyframes of the initial environment map;
optimizing the initial environment map based on global metric properties of the identified keyframes, wherein optimizing the initial environment map comprises;
clustering the identified keyframes into a plurality of disjoint sets of keyframes based on geodesic distance information of the keyframe pose graph, a disjoint set of keyframes representing a segment of keyframes;
for each segment of keyframes, enforcing local metric properties of the keyframes in the segment;
applying global segment optimization to the segments of keyframes, comprising;
embedding the segments of keyframes and landmarks associated with the keyframes of the segments into a metric space; and
updating projected three-dimensional coordinates of the landmarks to the associated keyframes based on the metric constraints of the landmarks and keyframes; and
generating an output environment map based on the optimization.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method are disclosed for online mapping of large-scale environments using a hybrid representation of a metric Euclidean environment map and a topological map. The system includes a scene module, a location recognition module, a local adjustment module and a global adjustment module. The scene flow module is for detecting and tracking video features of the frames of an input video sequence. The scene flow module is also configured to identify multiple keyframes of the input video sequence and add the identified keyframes into an initial environment map of the input video sequence. The location recognition module is for detecting loop closures in the environment map. The local adjustment module enforces local metric properties of the keyframes in the environment map, and the global adjustment module is for optimizing the entire environment map subject to global metric properties of the keyframes in the keyframe pose graph.
31 Citations
18 Claims
-
1. A computer implemented method for generating an environment map of an input video sequence, the method comprising:
-
identifying a plurality of keyframes of the input video sequence and adding the identified keyframes into an initial environment map, the keyframes being identified based on video features associated with a plurality of video frames of the input video sequence, and the initial environment map being represented by a keyframe pose graph; enforcing local metric properties of a group of identified keyframes of the initial environment map; optimizing the initial environment map based on global metric properties of the identified keyframes, wherein optimizing the initial environment map comprises; clustering the identified keyframes into a plurality of disjoint sets of keyframes based on geodesic distance information of the keyframe pose graph, a disjoint set of keyframes representing a segment of keyframes; for each segment of keyframes, enforcing local metric properties of the keyframes in the segment; applying global segment optimization to the segments of keyframes, comprising; embedding the segments of keyframes and landmarks associated with the keyframes of the segments into a metric space; and updating projected three-dimensional coordinates of the landmarks to the associated keyframes based on the metric constraints of the landmarks and keyframes; and generating an output environment map based on the optimization. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer-readable storage medium storing executable computer program code for generating an environment map of an input video sequence, the computer program code comprising instructions for:
-
identifying a plurality of keyframes of the input video sequence and adding the identified keyframes into an initial environment map, the keyframes being identified based on video features associated with a plurality of video frames of the input video sequence, and the initial environment map being represented by a keyframe pose graph; enforcing local metric properties of a group of identified keyframes of the initial environment map; optimizing the initial environment map based on global metric properties of the identified keyframes, wherein optimizing the initial environment map comprises; clustering the identified keyframes into a plurality of disjoint sets of keyframes based on geodesic distance information of the keyframe pose graph, a disjoint set of keyframes representing a segment of keyframes; for each segment of keyframes, enforcing local metric properties of the keyframes in the segment; applying global segment optimization to the segments of keyframes, comprising; embedding the segments of keyframes and landmarks associated with the keyframes of the segments into a metric space; and updating projected three-dimensional coordinates of the landmarks to the associated keyframes based on the metric constraints of the landmarks and keyframes; and generating an output environment map based on the optimization. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer system for generating an environment map of an input video sequence, the system comprising:
-
a location recognition module for identifying a plurality of keyframes of the input video sequence and adding the identified keyframes into an initial environment map, the keyframes being identified based on the video features associated with a plurality of video frames of the input video sequence, and the initial environment map being represented by a keyframe pose graph; a local adjustment module for enforcing local metric properties of a group of identified keyframes of the initial environment map; and a global adjustment module for; optimizing the initial environment map based on global metric properties of the identified keyframes, wherein optimizing the initial environment map comprises; clustering the identified keyframes into a plurality of disjoint sets of keyframes based on geodesic distance information of the keyframe pose graph, a disjoint set of keyframes representing a segment of keyframes; for each segment of keyframes, enforcing local metric properties of the keyframes in the segment; applying global segment optimization to the segments of keyframes, comprising; embedding the segments of keyframes and landmarks associated with the keyframes of the segments into a metric space; and updating projected three-dimensional coordinates of the landmarks to the associated keyframes based on the metric constraints of the landmarks and keyframes; and generating an output environment map based on the optimization. - View Dependent Claims (18)
-
Specification