주요 콘텐츠

카메라 자세 추정과 3차원 복원

3차원 복원을 위해 기본적인 에피폴라 지오메트리, 삼각측량, 번들 조정을 사용하여 카메라 자세 추정

Computer Vision Toolbox™는 여러 뷰로부터 카메라 자세를 추정하고 3차원 장면을 복원하기 위한 포괄적인 기본 툴 세트를 제공합니다. 이러한 툴은 움직임 기반 구조(structure-from-motion), 시각 SLAM, 증강현실, 로보틱스와 같은 응용 분야에 필수적입니다. Essential 행렬이나 Fundamental 행렬을 사용하여 카메라 자세를 추정할 수 있으며, 에피폴라 지오메트리를 기반으로 상대적인 카메라 위치를 계산할 수도 있습니다. 보정된 카메라의 경우, P3P(perspective-three-point) 알고리즘이나 카메라 투영 행렬을 사용하여 2차원-3차원 대응점으로부터 절대 자세나 상대 자세를 구할 수 있습니다. 자세한 내용은 estimateEssentialMatrix 항목, estimateFundamentalMatrix 항목, estrelpose 항목을 참조하십시오.

자세 추정을 미세 조정하고 복원 정확도를 높이기 위해, 이 툴박스는 카메라 자세와 3차원 점 위치를 함께 또는 개별적으로 최적화하는 번들 조정 기법을 지원합니다. 자세한 내용은 bundleAdjustment 항목을 참조하십시오.

3차원 복원을 위해, 여러 뷰로부터 점들을 삼각측량하고 대응점 트랙을 관리할 수 있습니다. 또한 영상 좌표와 세계 좌표 간 변환을 수행할 수 있으며, 이를 통해 투영(projection) 및 역투영(back-projection) 작업을 지원합니다. 자세한 내용은 pointTrack 항목, triangulate 항목, img2world2d 항목을 참조하십시오.

이 툴박스는 특수한 객체를 사용하여 영상 데이터와 점 데이터를 관리하고 구성할 수 있는 기능을 제공합니다. 이러한 구조를 통해 대규모 복원 파이프라인을 위한 자세 그래프를 생성하고 최적화할 수 있습니다. 이 툴박스는 3차원 공간에서 카메라 위치와 복원된 포인트 클라우드를 시각화하는 기능도 지원합니다. 자세한 내용은 imageviewset 항목, createPoseGraph 항목, plotCamera 항목을 참조하십시오.

함수

모두 확장

estimateEssentialMatrixEstimate essential matrix from corresponding points in a pair of images
estimateFundamentalMatrixEstimate fundamental matrix from corresponding points in stereo images
estworldposeEstimate camera pose from 3-D to 2-D point correspondences (R2022b 이후)
estrelposeCalculate relative rotation and translation between camera poses (R2022b 이후)
estimateExtrinsics보정된 카메라의 위치 계산 (R2022b 이후)
pose2extrConvert camera pose to extrinsics (R2022b 이후)
extr2poseConvert extrinsics to camera pose (R2022b 이후)
cameraProjectionCamera projection matrix (R2022b 이후)
estimateCameraProjectionEstimate camera projection matrix from world-to-image point correspondences (R2022b 이후)
readAprilTag영상에서 AprilTag 검출 및 자세 추정
readArucoMarkerDetect and estimate pose for ArUco marker in image (R2024a 이후)
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
pointTrackObject for storing matching points from multiple views
findTracksFind matched points across multiple views
triangulate3-D locations of undistorted matching points in stereo images
triangulateMultiview3-D locations of world points matched across multiple images
img2world2dDetermine world coordinates of image points (R2022b 이후)
world2imgProject world points into image (R2022b 이후)
imageviewsetManage data for structure-from-motion, visual odometry, and visual SLAM
createPoseGraphCreate pose graph
optimizePosesOptimize absolute poses using relative pose constraints
worldpointsetManage 3-D to 2-D point correspondences
plotCameraPlot camera in 3-D coordinates
pcshowPlot 3-D point cloud
estgeotform3dEstimate 3-D geometric transformation from matching point pairs (R2022b 이후)
affinetform3d3차원 아핀 기하 변환 (R2022b 이후)
rigidtform3d3차원 강체 기하 변환 (R2022b 이후)
simtform2d2차원 유사 기하 변환 (R2022b 이후)
simtform3d3차원 유사 기하 변환 (R2022b 이후)
se3SE(3) homogeneous transformation (R2026a 이후)
so3SO(3) rotation (R2026a 이후)
rotmat2vec3d3차원 회전 행렬을 회전 벡터로 변환 (R2022b 이후)
rotvec2mat3d3차원 회전 벡터를 회전 행렬로 변환 (R2022b 이후)
quaternionCreate quaternion array (R2023b 이후)
randrotUniformly distributed random rotations (R2023b 이후)

도움말 항목

추천 예제