Originally Posted by Shadow11377 Warning: Spoiler! (Click to show)
Originally Posted by mikeaj
I fundamentally disagree with the reasoning in this post. Integer multiples don't make that big of a difference in practice.
Generally on almost all video and image content you're not going to want to do point (nearest neighbor) upscaling where 1080 -> 2160 blows up each pixel into 4 of them. Most video players definitely aren't doing that, anyhow. Even a linear interpolation is not that good.
Using blocky text is not particularly the most indicative of actual image and video content, though it does demonstrate some stuff. And even then, nearest neighbor often isn't good.
Anyway, it depends on the type of image and how the interpolation (meant in a loose way) is done. Anyway, I end this post with links to pretty images:
I agree that for some content interpolation can result in a nicer looking picture.
However.. I cannot agree with the bold.
Scaling by anything but an integer does lead to degraded quality. Interpolation can help make it appear decent, but scaling by an integer without interpolation leads to the most accurate display of the original content.
If the content has small details, scaling without interpolation is usually best.
Movies generally don't have fine detail, especially those streamed online with low bitrates, so softening edges of things doesn't really do harm and can remove the blocky appearance of scaling without interpolation. But that's pretty much equal to just blurring the image slightly. If your content doesn't do well blurred, stay away from anything but nearest neighbor. Cubic/Linear are all bad for detail preservation.
Okay, if you insist on nearest neighbor, then integer multiples are much more important.
I think discussing "most accurate" really needs a context for how the original sampled image was generated or captured in the first place. So it depends on the material and what you consider the details to be. Interpolation isn't the same as blurring. I mean, mathematically you could argue an infinite-tail sinc interpolation is most accurate, but that rarely looks good in practice.
If you interpret each pixel to be a block or area of information (I can't generally imagine most things shot with a camera to be this way), then you want to preserve its structure I guess, and nearest neighbor could make sense. But if the resolution is high enough for the details and it's a sample value along something continuous, it's clearly intended to be interpolated.
There's much sharper out there than linear and cubic, anyhow (and different coefficients for cubic).
I guess the "in practice" part depends a lot on the image / video, but what kind of content would you really watch with nearest neighbor upscaling? Which video players actually do this by default?