주요 콘텐츠

시각 SLAM

단안 카메라, RGB-D 카메라 또는 스테레오 카메라를 사용한 실시간 시각 기반의 위치추정 및 지도작성(vSLAM), 배포 지원을 포함한 관성 센서 융합

시각 기반의 동시적 위치추정 및 지도작성(vSLAM)은 시각적 입력을 사용하여 환경 맵을 작성하면서 동시에 카메라의 위치와 방향을 추정하는 과정입니다. Computer Vision Toolbox™는 단안 카메라, RGB-D 카메라, 스테레오 카메라를 위한 vSLAM 워크플로를 지원하며, 정확도 향상을 위해 선택적으로 관성 센서 융합을 사용할 수 있습니다. 이러한 기능은 로보틱스, 증강현실, 자율 내비게이션의 응용 분야에 필수적입니다. vSLAM 워크플로 선택에 대한 지침은 Choose SLAM Workflow Based on Sensor Data 항목을 참조하십시오.

각 시각 SLAM 객체(monovslam, rgbdvslam, stereovslam)는 프레임 추가, 키프레임 추적, 3차원 맵 점 계산, 카메라 자세 추정, 루프 폐쇄, 카메라 궤적 전체에 대한 데이터 시각화를 위해 바로 사용 가능한 툴을 제공합니다. compareTrajectories 함수를 사용하면 추정된 카메라 궤적을 ground truth와 비교하여 vSLAM 알고리즘의 성능을 평가할 수도 있습니다. 이 툴박스는 자신만의 시각 SLAM 파이프라인을 구축할 수 있는 기능도 제공합니다.

이 툴박스를 사용하여 vSLAM 알고리즘의 코드 생성과 배포를 수행할 수 있습니다. 자세한 내용은 Build and Deploy Visual SLAM Algorithm with ROS in MATLAB 항목과 Performant and Deployable Monocular Visual SLAM 항목을 참조하십시오.

함수

모두 확장

monovslamVisual simultaneous localization and mapping (vSLAM) and visual-inertial sensor fusion with monocular camera (R2023b 이후)
addFrameAdd image frame to visual SLAM object (R2023b 이후)
hasNewKeyFrameCheck if new key frame added in visual SLAM object (R2023b 이후)
checkStatusCheck status of visual SLAM object (R2023b 이후)
isDoneEnd-of-file status (logical)
mapPointsBuild 3-D map of world points (R2023b 이후)
posesAbsolute camera poses of key frames (R2023b 이후)
plotPlot 3-D map points and estimated camera trajectory in visual SLAM (R2023b 이후)
resetReset visual SLAM object (R2023b 이후)
rgbdvslamFeature-based visual simultaneous localization and mapping (vSLAM) and visual-inertial sensor fusion with RGB-D camera (R2024a 이후)
addFrameAdd pair of color and depth images to RGB-D visual SLAM object (R2024a 이후)
hasNewKeyFrameCheck if new key frame added in RGB-D visual SLAM object (R2024a 이후)
checkStatusCheck status of visual RGB-D SLAM object (R2024a 이후)
isDoneEnd-of-processing status for RGB-D visual SLAM object (R2024a 이후)
mapPointsBuild 3-D map of world points from RGB-D vSLAM object (R2024a 이후)
posesAbsolute camera poses of RGB-D vSLAM key frames (R2024a 이후)
plotPlot 3-D map points and estimated camera trajectory in RGB-D visual SLAM (R2024a 이후)
resetReset RGB-D visual SLAM object (R2024a 이후)
stereovslamFeature-based visual simultaneous localization and mapping (vSLAM) and visual-inertial sensor fusion with stereo camera (R2024a 이후)
addFrameAdd pair of color and depth images to stereo visual SLAM object (R2024a 이후)
hasNewKeyFrameCheck if new key frame added in stereo visual SLAM object (R2024a 이후)
checkStatusCheck status of stereo visual SLAM object (R2024a 이후)
isDoneEnd-of-processing status for stereo visual SLAM object (R2024a 이후)
mapPointsBuild 3-D map of world points from stereo vSLAM object (R2024a 이후)
posesAbsolute camera poses of stereo key frames (R2024a 이후)
plotPlot 3-D map points and estimated camera trajectory in stereo visual SLAM (R2024a 이후)
resetReset stereo visual SLAM object (R2024a 이후)
compareTrajectoriesCompare estimated trajectory against ground truth (R2024b 이후)
trajectoryErrorMetricsStore accuracy metrics for trajectories (R2024b 이후)
imshow이미지 표시
showMatchedFeaturesDisplay corresponding feature points
plotPlot image view set views and connections
plotCameraPlot camera in 3-D coordinates
pcshowPlot 3-D point cloud
pcplayerVisualize streaming 3-D point cloud data

특징 검출, 추출 및 매칭

detectSURFFeaturesSURF 특징 검출
detectORBFeaturesDetect ORB keypoints
extractFeaturesExtract interest point descriptors
matchFeatures매칭되는 특징 찾기
matchFeaturesInRadiusFind matching features within specified radius

3차원 구조 복원

triangulate3-D locations of undistorted matching points in stereo images
img2world2dDetermine world coordinates of image points (R2022b 이후)
world2imgProject world points into image (R2022b 이후)

움직임 추정

estgeotform2dEstimate 2-D geometric transformation from matching point pairs (R2022b 이후)
estgeotform3dEstimate 3-D geometric transformation from matching point pairs (R2022b 이후)
estimateFundamentalMatrixEstimate fundamental matrix from corresponding points in stereo images
estworldposeEstimate camera pose from 3-D to 2-D point correspondences (R2022b 이후)
findWorldPointsInViewFind world points observed in view
findWorldPointsInTracksFind world points that correspond to point tracks
estrelposeCalculate relative rotation and translation between camera poses (R2022b 이후)

움직임 및 3차원 구조 최적화

optimizePosesOptimize absolute poses using relative pose constraints
createPoseGraphCreate pose graph
bundleAdjustmentAdjust collection of 3-D points and camera poses
bundleAdjustmentMotionAdjust collection of 3-D points and camera poses using motion-only bundle adjustment
bundleAdjustmentStructureRefine 3-D points using structure-only bundle adjustment

루프 폐쇄

bagOfFeaturesBag-of-visual-words 객체
bagOfFeaturesDBoWBag of visual words using DBoW2 library (R2024b 이후)
dbowLoopDetectorDetect loop closure using visual features (R2024b 이후)
indexImagesCreate image search index
invertedImageIndexSearch index that maps visual words to images

데이터 관리

imageviewsetManage data for structure-from-motion, visual odometry, and visual SLAM
worldpointsetManage 3-D to 2-D point correspondences

변환

se3SE(3) homogeneous transformation (R2026a 이후)
so3SO(3) rotation (R2026a 이후)

도움말 항목

바로 사용 가능한 시각 SLAM 함수

자신만의 시각 SLAM 파이프라인 구축하기

추천 예제