Our remote sensing professor recently introduced us to bicubic interpolation and cubic convolution, implying that they're basically the same. Now that I'm studying for the exam, I wonder: Is that actually true?

I wonder because on Wikipedia it sounds like cubic convolution is merely an algorithm to achieve bicubic interpolation (i.e. an implementation thereof). Why then are they named differently (cubic vs. bicubic)?


1 Answer 1


Looking under https://gdal.org/programs/gdal_translate.html it gives a few of options for resampling, including

[cubic] applies a cubic convolution kernel.

[cubicspline] applies a B-Spline convolution kernel.

Based on this and the wiki article, my interpretation is that cubic convolution is the 'regular' convolution kernel for bicubic interpolation. Meanwhile B-Spline convolution is an alternate convolution kernel for bicubic interpolation.

Annoying terminology aside, below is an example of some interpolations, including a couple of 'cubic' ones:

Here is an aerial image of a bush (10cm, getting resampled to 5cm):

enter image description here

Here is it receiving bilinear interpolation (14 secs processing of whole image), contrast visually appears to be reduced: enter image description here

Here is it receiving 'cubic' interpolation (13 secs processing), it's hard to see without easily comparing them side by side but visual contrast appears to be maintained compared with the original image (e.g the dark spots in the bush): enter image description here

Finally, this is what 'cubicspline' interpolation gives (13.5 secs processing) pixelation is very much reduced, but contrast is also greatly reduced: enter image description here

Based on this brief test, I would pick cubic for everything, unless I needed to reduce pixelation as much as possible, then maybe cubicspline would be the pick. Why bilinear was consistently longer in processing time is beyond me.

  • Thank you very much!
    – Pixelcode
    Commented Nov 28, 2023 at 19:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.