Is there a Matlab version of the OpenCV function initUndist​ortRectify​Map()?

18 views (last 30 days)
I need the undistortion and rectification transformation maps for a project.

Accepted Answer

Yuval Levental
Yuval Levental on 15 Nov 2020
Answering my own question. There isn't such a function, but finding the (x, y) bounds and Homography matrices from ComputeRectificationParams.m, then using the Homography and undistortion equations, then using interp2 to move forward gives accurate rectification. See https://www.mathworks.com/help///visionhdl/ug/stereoscopic-rectification.html for details.
  1 Comment
ft28
ft28 on 15 Jun 2022
Hi Yuval, I am also looking for the mapx and mapy calculation like in OpenCV cvInitUndistortRectifyMap().
How did you solve that with using homography matrix and x,y bounds?
I received these information by using paramStruct = toStruct(stereoParams) and get H1, H2, XBounds, YBounds, but dont have any idea how to proceed now. Do you have any code to share?
Thx
Fatih

Sign in to comment.

More Answers (1)

Debasish Samal
Debasish Samal on 13 Nov 2020
Hi,
The rectifyStereoImages function returns undistorted and rectified versions of the input images using the stereo parameters. I think, this is what you are looking for. Please refer to the documentation of the same to know more about the function.
Thanks.
-Debasish
  1 Comment
Yuval Levental
Yuval Levental on 13 Nov 2020
Hello, I know about this function, but I need something that specifically returns the x and y transformation maps.
For instance, the Undistortion block outputs coordinates (u,v) at https://www.mathworks.com/help///visionhdl/ug/stereoscopic-rectification.html
Is there a similar command in Matlab?

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!