http://www.cvg.reading.ac.uk/PETS2001/pets2001-cameracalib.html#dataset2 에있는 카메라 보정 데이터를 해석하는 데 문제가있어 누구든지 도움을 줄 수 있는지 궁금합니다. 기본적으로이 예제를 이해했으며 3D 오브젝트의 2D 이미지 좌표를 계산할 때 올바르게 작동합니다. 내가 얻은 2D 좌표는 이미지 경계 내에 있으며, 이는 훌륭합니다.카메라 보정 매트릭스 해석
다른 행렬에 작업을 적용하려고하면 문제가 발생합니다. 1, 데이터 세트의 맨 위에있는 지시 사항에 따라
FocalLength f=792
ImageCentre (u,v) = (384, 288)
Homogeneous Transform T =
-0.94194 0.33537 -0.01657 0.00000;
-0.33152 -0.93668 -0.11278 0.00000;
-0.05334 -0.10073 0.99348 0.00000;
11791.10000 22920.20000 6642.89000 1.00000;
: 관점으로 당신을 얻으려면, 이러한 보정 행렬은 데이터 집합의 변환 행렬이 카메라 2를 고려 예를 들어
에서 발견 된 비디오에 적용 첫 번째 단계는 행렬을 거꾸로하여 다음 행렬을 얻는 것입니다. 그러면 좌표를 x = (0,0,0) 점으로 취합니다.
xT = (3529.67074,26127.15587,-3661.65672) and the point in 2D coordinates is given by
(792 x 3529.67074/-3661.65672 + 384, 792 x 26127.15587/-3661.65672 + 288)
= (-763.45 + 384 , -5651.187 + 288)
= (-379.45, -5363.187)
답변은 이미지 경계 내에 있어야하기 때문에이 대답은 분명히 잘못되었습니다. 실제로 프로그램에서이 정보를 사용하려고 시도했을 때 3D 세계의 지상 평면에있는 점이 2D 이미지 좌표로 잘못 변형되었습니다.
누군가가 올바르게 작동하는 방법을 알면 감사하게 생각합니다.
덕분에,