As implemented in PixInsight, pixel interpolation is a linear operation, irrespective of the applied interpolation function or filter.
For example, consider bicubic interpolation:
![](http://i30.tinypic.com/w1xnk5.png)
In this figure, large dots represent existing image pixels. A new pixel value is desired at the location represented by the small dot, defined by its offsets
dx and
dy measured from the nearest pixel by coordinate truncation.
Bicubic interpolation algorithms interpolate from the nearest sixteen mapped source pixels, as shown above. Without entering more technical descriptions (which I can do if you want), the
bicubic spline interpolation algorithm in PixInsight implements a
convolution interpolation.
Simplifying, the 16 source pixels are weighted (multiplied) by an interpolation function, which is centered on the interpolation point and discretized at integer image coordinates. This forms an
interpolation filter. In the figure above, there would be a filter element for each large dot. The sum of the 16 weighted source pixels is divided by the sum of the 16 filter elements (so that the interpolation preserves flux), and the result of this division is the interpolated pixel value. Note that this is just a convolution with a 4x4 kernel filter.
In general, with the obvious exception of bilinear interpolation, interpolation functions are nonlinear. However, the interpolation process is linear, irrespective of the interpolation function. This is because interpolation is carried out through convolution (in PixInsight), and convolution is a linear operation. In the bicubic case described above, for example, the interpolated value is a linear combination of 16 original pixel values, so the linearity (or nonlinearity) of the interpolated data with respect to incident light does not change. This has nothing to do with the interpolation function; what defines the linearity of convolution is that it consists of linear operations exclusively (multiplications and additions, and division by a constant value).
So don't worry about image registration: if you register raw linear images, the registered images are also linear. This also applies to all geometric transformations: translation, rotation and scaling are linear because pixel interpolations are linear.