Ask Your Question


asked 2017-03-20 11:03:28 -0500

Soarez gravatar image

updated 2020-11-01 06:07:06 -0500

Im trying to calibrate a camera using openCV example, and the calibration finish without error but when is showing the undistorted images doesn't look good. im getting images like!

image description

its a 2048 by 1540. and the lens has +/-86º of opening.


Used normal calibration (not fisheye) Take more 20 photos with aggressive angles. Callibrated with all the images and got this result, good for now =) .

image description

edit retag flag offensive close merge delete


if you have a fisheye lens, then use the calibration methods from cv::fisheye

berak gravatar imageberak ( 2017-03-20 11:06:21 -0500 )edit

2 answers

Sort by » oldest newest most voted

answered 2017-03-20 19:33:46 -0500

rueynshard gravatar image

You can try some of the following:

a) Take more chessboard images at the edges of the camera, and at more extreme angles

b) Use the omnidirectional camera methods -, and select RECTIFY_PERSPECTIVE for the rectification type.

c) Use the cv::fisheye camera methods

d) Perhaps the camera has already been slightly undistorted/warped. If that's the case, try and see if you can get a pure/unmanipulated image.

edit flag offensive delete link more


fish eye methods give me this

Soarez gravatar imageSoarez ( 2017-03-21 09:51:49 -0500 )edit

The A) worked

Soarez gravatar imageSoarez ( 2017-03-21 11:25:03 -0500 )edit

answered 2017-03-20 20:05:31 -0500

Tetragramm gravatar image

Try multiplying the focal lengths in your camera matrix by a constant value (I can't remember if it should be larger or smaller than one).

The distortion coefficients are such that the image corners are wrapped around themselves and the ROI gets negative.

Take a look at THIS QUESTION for a more detailed explanation.

edit flag offensive delete link more

Question Tools



Asked: 2017-03-20 11:03:28 -0500

Seen: 242 times

Last updated: Mar 21 '17