필수행렬 E는 실제적인 물리적 공간에서 두 카메라 사이의 이동과 회전정보를 담고있다.
왼쪽 카메라에서 바라본것과 오른쪽 카메라에서 바라본 것 사이의 관계를 규정한다.
기본행렬(F)
기본행렬은 두 카메라의 내부 파라미터 정보를 가지고있다.
영상좌표계(픽셀좌표계) 상에서 왼쪽 마케라에서 촬영된 영상위의 한점과 오른쪽 카메라에서 촬영된 영상위의 한점사이의 관계를 나타냄
int cvFindFundamentalMat(
const CvMat* points1, const CvMat* points2, CvMat* fundamental_matrix, int method=CV_FM_RANSAC, double param1=3., double param2=0.99, CvMat* status=NULL ); |
point1, point2 : N개의 대응점 정보를 담고 있는 N×2또는 N×3크기의 실수형 행렬이다.
fundamental_matrix : 실행결과
method : 대응점들로부터 기본 행렬을 구하기 위해 사용할 방법
method | 점들의 개수 | 알고리즘 |
CV_FM_7POINT | N=7 | 7-점 알고리즘 |
CV_FM_8POINT | N=8 | 8-점 알고리즘 |
CV_FM_RANSAC | N≥8 | RANSAC 알고리즘 |
CV_FM_LMEDS | N≥8 | LMedS 알고리즘 |
param1 : RANSAC알고리즘 혹은 LMedS알고리즘을 사용할때 필요한 값
점에서 에피폴라 직선까지의 최대 거리를 의미 이보다 먼 위치의 점들은 이상치로 간주한다.
param2 : RANSAC알고리즘 혹은 LMedS알고리즘을 사용할때 필요한 값
신뢰도를 나타내며 0부터 1사이의 값을 가질수 있다. 이값을 통해 알고맂므 반복 횟수를 제어한다.
status : 선택적인 사용, N×1크기의 CV_8UC1타입의 행렬을 받는다. (N : point1, point2행렬에서 행의 크기와 동일)
NULL이 아니라면 이상치로 판별된 점들의 정보를 저장(이상치 판별된점 : 0, 그렇지 않으면 : 1 을저장한다)
반환값 : 계산된 행렬의 개수를 나타내는 정수를 반환
'Developer > OpenCV' 카테고리의 다른 글
CvStereoBMState 구조체 (0) | 2013.02.18 |
---|---|
매핑 (0) | 2013.02.04 |
스테레오 영상 (0) | 2013.02.01 |
어파인변환, 투시변환 (0) | 2013.01.31 |
보정함수 (0) | 2013.01.30 |