To actually geometrically correct the original distorted image, a procedure known as resampling methods is used to determine the digital values to place in the corrected output image’s new pixel locations.
The resampling process derives the new pixel values from the uncorrected image’s original digital pixel values.
The three most common resampling methods are:
A. Nearest neighbor.
B. Bilinear interpolation.
C. Cubic convolution.
A. Nearest Neighbor
The most basic and simplest method, which does not change the original values, but may result in some pixel values being duplicated while others are lost.
Uses the digital value from the original image pixel that is closest to the new pixel location in the corrected image
It also produces a disjointed or blocky image appearance.

B. Bilinear Interpolation
Computes a weighted average of four pixels in the original image that are closest to the new pixel location.
Bilinear interpolation is a two-dimensional interpolation method on a rectangle. If the value of a function is known at each of a rectangle’s four corners, an interpolation scheme allows you to estimate the function at any point within the rectangle’s interior.
In the output image, the process modifies the original pixel values and generates entirely new digital values.
This may be disadvantageous if additional processing and analysis, such as classification based on spectral response, is to be performed.
If this is the case, resampling may be best done after the classification process.

C. Cubic convolution.
A new approach for resampling discrete data It has a number of appealing features that make it suitable for image processing.
A digital computer can efficiently perform the technique. As the sampling increment approaches zero, the cubic convolution interpolation function converges uniformly to the function being interpolated.
This method takes it a step further by calculating a distance weighted average of a block of sixteen pixels from the original image that surrounds the new output pixel location.
This method, like bilinear interpolation, produces entirely new pixel values.
However, both of these methods produce images that are much sharper and avoid the blocky appearance of the nearest neighbor method.
