Main Content

Visual Simultaneous Localization and Mapping (vSLAM)

Visual SLAM map initialization, tracking, local mapping, loop detection, and drift correction

Visual simultaneous localization and mapping (vSLAM), refers to the process of calculating the position and orientation of a camera, with respect to its surroundings, while simultaneously mapping the environment. The process uses only visual inputs from the camera. Applications for visual SLAM include augmented reality, robotics, and autonomous driving. For more details, see Visual SLAM Overview.

Functions

expand all

detectSURFFeaturesDetect SURF features and return SURFPoints object
detectORBFeaturesDetect ORB keypoints and return an ORBPoints object
extractFeaturesExtract interest point descriptors
matchFeaturesFind matching features
matchFeaturesInRadiusFind matching features within specified radius
triangulate3-D locations of undistorted matching points in stereo images
worldToImageProject world points into image
pointsToWorldDetermine world coordinates of image points
estimateGeometricTransform2DEstimate 2-D geometric transformation from matching point pairs
estimateGeometricTransform3DEstimate 3-D geometric transformation from matching point pairs
estimateFundamentalMatrixEstimate fundamental matrix from corresponding points in stereo images
estimateWorldCameraPoseEstimate camera pose from 3-D to 2-D point correspondences
findWorldPointsInViewFind world points observed in view
findWorldPointsInTracksFind world points that correspond to point tracks
relativeCameraPoseCompute relative rotation and translation between camera poses
optimizePosesOptimize absolute poses using relative pose constraints
createPoseGraphCreate pose graph
bundleAdjustmentRefine camera poses and 3-D points
bundleAdjustmentMotionRefine camera pose using motion-only bundle adjustment
bundleAdjustmentStructureRefine 3-D points using structure-only bundle adjustment
imshowDisplay image
showMatchedFeaturesDisplay corresponding feature points
plotPlot view set views and connections
plotCameraPlot a camera in 3-D coordinates
pcshowPlot 3-D point cloud
pcplayerVisualize streaming 3-D point cloud data
imageviewsetManage data for structure-from-motion, visual odometry, and visual SLAM
worldpointsetManage 3-D to 2-D point correspondences
indexImagesCreate image search index
invertedImageIndexSearch index that maps visual words to images
bagOfFeaturesBag of visual words object

Topics

Stereo Visual Simultaneous Localization and Mapping

Visual simultaneous localization and mapping (vSLAM), refers to the process of calculating the position and orientation of a camera with respect to its surroundings, while simultaneously mapping the environment.

Develop Visual SLAM Algorithm Using Unreal Engine Simulation (Automated Driving Toolbox)

Develop a visual simultaneous localization and mapping (SLAM) algorithm using image data from the Unreal Engine® simulation environment.

Visual SLAM Overview

Understand visual simultaneous localization and mapping (SLAM) workflow.

Featured Examples