Recitfy Images before triangulate points

Hello, I have a question regarding the new triangulate function. I have 2 almost parallel cameras and would like to run a triangulation of certain points in the image. Do i have to rectify these images before extracting the matching points or do I extract the points of the original image?
Thank you

 采纳的回答

Joep
Joep 2015-7-3
编辑:Joep 2015-7-3
The matlab function uses the cameramatrix and undistorted images. So you should not use both of the image. You should create first a undistorted image.
uImage1 = undistortImage(Image1,stereoParams.CameraParameters1);
uImage2 = undistortImage(Image2,stereoParams.CameraParameters2);
point3d = triangulate(pointImage1, pointImage2, stereoParams);

6 个评论

So before using the triangulate.m function i need to use rectifystereoimages.m from the computer vision toolbox?
Sorry i was wrong about that i changed my comment. A example is explained here: http://nl.mathworks.com/help/vision/ref/triangulate.html
Thank you! the triangulate function rectifies the images internally.
I guess so because you expect that you should rectify, to make the epipolar lines parrellel. So you can use triangulate but in example they don't rectify so I assume it is in the function it self indeed.
You should undistort the images before using triangulate, but you should not rectify them. The triangulate function uses the linear triangulation algorithm from Hartley and Zisserman, which does not require the images to be rectified.
Hi Dima Lisin,
I' m very interested in your comment. Could you explain me how the triangulation is possible without a rectification procedure? Does it follow that every stereo configuration would be possible to reconstruct 3D points?

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by