How to get distortion coefficients from fisheye calibration result?

42 views (last 30 days)
I am really confused how to get distortion coefficients and intrinsic matrix from fishey calibration result.
I've no idea how to use the fisheye cameraParams.Intrinsics consisting of MappingCoefficients ,ImageSize ,DistortionCenter and StretchMatrix.
Need help, thx!
  1 Comment
ZHENZHONG XIE
ZHENZHONG XIE on 26 Jan 2022
The intrinsic Matrix and distortion coefficients are needed by cpp program which use OpenCV to undistort the fisheye images.

Sign in to comment.

Answers (1)

cui,xingxing
cui,xingxing on 27 Sep 2022
Edited: cui,xingxing on 27 Sep 2022
The matlab fisheye camera model uses the "Scaramuzza fisheye model", which is different from OpenCV. However, you can still use the aberration parameters from the MATLAB fisheye calibration in opencv, and it is recommended generate C/C++ code for them. Attached are a couple of files(support C code generation) that I have implemented to behave consistently with the functions built into matlab.
load testdata.mat
[J1,K] = undistortFisheyeImageFcn(I,intrinsics);
K
K = 3×3
376.0000 0 376.4016 0 376.0000 373.0798 0 0 1.0000
imshowpair(I,J1,'montage')

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!