![]() |
IDS peak ICV v1.1.0
|
Image undistortion is the process of correcting geometric distortions introduced by camera lenses, particularly radial and tangential distortions. These distortions cause straight lines to appear curved and alter spatial relationships within the image, especially near the edges. Such distortions can significantly impact the accuracy of measurements, 3D reconstruction, and other vision tasks that rely on precise spatial information.
Correcting these distortions is necessary for applications requiring precise spatial accuracy, including 3D reconstruction and image-based measurements.
Important Note: Undistortion is not a visual enhancement filter — it's a geometric correction for accurate spatial interpretation of image content.
Use image undistortion when:
To undistort an image, you need the following:
For instructions on performing camera calibration, refer to the Camera Calibration Guide.
| Distorted Image | Undistorted Image |
|---|---|
| |
This example shows how a distorted input image is corrected using the undistortion process. Straight lines that appear curved due to lens distortion are restored to their true geometry.
To apply undistortion, follow the steps below using one of the provided interfaces:
Load Calibration Data
Obtain one of the following, depending on your setup.
Initialize the Undistortion Object
Use one of the constructors to initialize Undistortion, optionally providing metadata if your image capture settings (e.g., binning) differ from the calibration images.
Process the Image
Call the process function on the initialized Undistortion instance, passing in the distorted image as an argument. The function will return an undistorted image with updated intrinsic parameters matching the undistorted image geometry.
The Undistortion instance internally precomputes and stores data structures that optimize the undistortion process and reduce runtime. For this reason, it is recommended to reuse the same instance for processing multiple images with the same calibration data, rather than creating a new instance each time.