Why is the scale output so low in quality?

The blender scaler appears to be very low in quality in comparison to the following scaling implementations:

Windows Photo Viewer
Adobe Photoshop scaling

  1. What is the implementation used for scaling in Blender and what are the implementations used in the above software?

I have used trilinear interpolation as provided by Starling (Adobe Flash Stage3d scenegraph library) and it appears to be of low quality.

  1. Considering this, what is the state of the art to achieve high quality, efficient (real time and otherwise) scaling of raster images?

Yes the scaling algo used in Blender is not optimum. Here is an old patch page outlining the issues: https://wiki.blender.org/index.php/User:Sobotka/Cubic_B-Spline_Scaling_Algorithm

And here is why we won’t be getting it :frowning: https://developer.blender.org/D2984

Okay, I just found that you can specify bicubic in the Transform node of the compositor. The scale node doesn’t offer that selection. Bicubic looks much better.