Reconstruction of points position in 3D from 2D image
조회 수: 9 (최근 30일)
이전 댓글 표시
The image i'm analyzing contains a car. The car chassy is symmetric about a symmetry plane. The symmetry plane is vertical; several pairs of symmetric point features can be identified, such as vertexes of the rear lights or vertexes of the license plate.
I was able to calibrate the camera using vanishing points and geometric construction however i am stuck because i am trying to fix a reference frame on one of the symmetry plane of the car and to localize some of these symmetric point with regard to this newely fixed reference. I do not have any other picture relative to the car hence i cannot look for corresponding features points in multiple images to evaluate an homography.
Is it possible to find the 3D position of such points?
댓글 수: 5
채택된 답변
Matt J
2019년 1월 3일
편집: Matt J
2019년 1월 3일
i was wondering about the fact that points are symmetric. Does this not add any info?... Can this help to reconstruct at least the camera pose?
You don't need symmetry to get the camera pose. You already have the vanishing points vx,vy,vz to the directions dx,dy, and dz of the world axes. That and the intrinsic matrix K give you the following equation for the pose matrix R,
inv(K)*[vx,vy,vz] = R*[dx,dy,dz]
A=[dx(:),dy(:),dz(:)]; A=A./sqrt(sum(A.^2));
B=inv(K)*[vx(:),vy(:),vz(:)]; B=B./sqrt(sum(B.^2));
R = getfield( absor(A,B,'doTrans',0), 'R');
And if yes, can this be used to reconstruct some 3-D points?
No, because the symmetry is there regardless of whether the car is life size or a 1 inch model. Since you can get the same image no matter how you 3D-scale the scene, how can the image alone contain enough info to determine distances between points in 3D?
댓글 수: 2
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!