# Zoom lens Calibration

Maybe, this is a silly question, currently I have a len (AF-S DX NIKKOR 18-55mm f/3.5-5.6G) with this features:

• 18-55mm lens with f3.5-5.6 maximum aperture for Nikon DSLR cameras .
• Focal length equivalent to 27 to 82.5mm in 35mm photograph

My question is, to get intrinsic calibration, and then correct len distort, Do I have to do it for each focal length of the len? For example:

# images = images_with_18mm_focalLength
# calibrationMatrix18mm = Do_Calibration(images)

# images = images_with_24mm_focalLength
# calibrationMatrix24mm = Do_Calibration(images)


Our does is enough with a global calibration?:

# images = images_from_18mm_to_55mm_focalLength
# calibrationMatrix = Do_Calibration(images)


I think I should go with first option, but I want to clear out my doubts. Also, how could I get an image that maps with colors the less and more distorted regions of the image?

edit retag close merge delete

Sort by » oldest newest most voted

Well, you'll need to change the camera matrix at least, but you can probably do that with a formula. The distortion depends on the lens. Try calibrating it once at the near and once at the far focal length to see how different they are. That will tell you how wrong it may be.

For the second part you want initUndistortRectifyMap, and then you can subtract off the pixel locations to get the distance of how far the pixels moved.

more

( 2018-01-30 20:43:30 -0500 )edit

Official site

GitHub

Wiki

Documentation