Inverse distortion is used to create an undistorted image from a distorted image. For each pixel in the undistorted image it is required to determine which pixel in the distorted image should be used. However the process of characterizing a lens using a model such as that of Brown, yields a non-invertible mapping from the distorted domain to the undistorted domain. There are three current approaches to solving this: an approximation of the inverse distortion is derived from a low-order version of Brown’s model; an initial guess for the distorted position is iteratively refined until it yields the desired undistorted pixel position; or a look-up table is generated to store the mapping. Each approach requires one to sacrifice either accuracy, memory usage or processing time. This paper shows that it is possible to have real-time, low memory, accurate inverse distortion correction. A novel method based on the re-use of left-over distortion characterization data is combined with modern numerical optimization techniques to fit a high-order version of Brown’s model to characterize the inverse distortion. Experimental results show that, for thirty-two 5mm lenses exhibiting extreme barrel distortion, inverse distortion can be improved 25 fold to 0.013 pixels RMS over the image
Reference:
De Villiers, JP, Leuschner, FW and Geldenhuys, R. 2008. Centi-pixel accurate real-time inverse distortion correction. Optomechatronic Technologies, Vol. 7266, pp 726611-8
De Villiers, J. P., Leuschner, F., & Geldenhuys, R. (2008). Centi-pixel accurate real-time inverse distortion correction. SPIE. http://hdl.handle.net/10204/3168
De Villiers, Johan P, FW Leuschner, and R Geldenhuys. "Centi-pixel accurate real-time inverse distortion correction." (2008): http://hdl.handle.net/10204/3168
De Villiers JP, Leuschner F, Geldenhuys R, Centi-pixel accurate real-time inverse distortion correction; SPIE; 2008. http://hdl.handle.net/10204/3168 .