What is SfM?
structure from Motion
input:
images with feature correspodences
output:
structure: 3D positions of features
motion: camera parameters including rotation and translation
intrinsic parameters optional
What types of SfM are there?
hierarchical SfM
Sequential SfM
What is the input in hierarchical SfM?
disorderes images
estimated 3D structure and camera poses in bottom up way
Whta is the input in sequential SfM?
takes sequential imagesas input -> equivalent to visual odometry
it incrementally estimates camera pose and 3D structure
What is the general approach to hierarchical SfM?
have set of disordered images
-> independently detect features in them
match features between the images (i.e. bruteforce; there exist more efficient methods that will not be introduced)
build clusters from close frames (i.e. where we have feature matches…)
generate topological tree based on number of matches
start from terminal nodes to perform two-view SfM
What do we actually compute in Hierarchical SfM?
generate local model based on 2D-2D geometry and 3D-2D geometry (as introduced in chapter 9 or so…)
merge different models based on 3D-3D geometry (-> point cloud registration)
then jointly optimize camera poses and 3D points -> i.e. bundle adjustment using nonlinear least squares
What is the idea of sequential SfM?
same as introduced in chapter 10
-> Visual odometry (i.e. 2D-2D -> triangulate 3D -> find 3D-2D -> triangulate new 3D -> …)
What is an additinal step we introduce in sequential SfM compared to VO introduced in chapter 10?
after triangulation to incremetn the map
-> we perform bundle adjustment…
What is SLAM?
simultaneous localization and mapping
-> can be treated as combination of visual odometry and loop closure
Why do we need slam in VO?
VO prone to be affcected by noise
-> thus leads to drift error over time
-> SLAM guarantees global consistency based on loop closure
Of what steps does loop closure consist of in SLAM?
loop detection
loop correction
Last changeda year ago