Geometrical transformations
In many image processing applications, geometrical transformations facilitate processing. Examples are image restoration, where one frequently wants to model the degradation process as space-invariant, or the calibration of a measurement device, or a correction in order to remove a relative movement between object and sensor. In all cases the first operation is to eliminate a known geometrical distortion, as in the following figure:
In many cases, a two-dimensional polynomial transformation from the distorted (x,y) system to the undistorted (u,v) system is sufficient:
The aij, bij, are usually found by some fitting method. If one takes the example of N = 3, i.e. n = 10 unknowns, with File:Hepa img404.gif corresponding point pairs (xi,yi) and (ui,vi), and defines the (m,n) matrix
then the problem can be written
with a, b the vectors of coefficients.
Choosing the orthogonal triangularization A = QR ( QR Decomposition), the solutions are:
where S is the (n,n) upper triangular matrix part of R, and P a (m,n) part of Q (see figure).
A different example is the calibration of a scanner based on a cathode ray tube; this type of two-dimensional digitizer shows a pincushion distortion, which is corrected by a fifth order polyomial (i.e. N = 5):
When dealing with digital images characterized by greyvalues (or colours), interpolation between the greyvalues at the locations in the distorted image becomes necessary. This resampling can be done using different methods. The simplest one is the nearest-neighbour interpolation. Bilinear interpolation uses a weighted average of the four nearest pixels. If (x0,y0) is the point for which the greyvalue g0(x0,y0) should be interpolated, and (xi,yi) with gi(xi,yi) are the four known neighbours, then g0 can be computed by establishing a local relation
The four unknowns a, b, c, d are determined from the four known nearest neighbours, and then used to obtain g0.
For higher order interpolations, e.g. Pratt78.