我想找出哪种算法是最好的,可以用来缩小光栅图片。最好的我指的是那个给出最好看的结果。我知道双立方体,但还有更好的吗?例如,我从一些人那里听说 Adobe Lightroom 有某种专有算法,它比我使用的标准双立方体算法产生更好的结果。不幸的是,我想自己在软件中使用这个算法,所以 Adobe 精心保护的商业秘密不会起作用。
补充说明:
我查看了 Paint.NET,令我惊讶的是 Super Sampling 在缩小图片尺寸时似乎比 two ubic 更好。这让我怀疑插值算法到底是不是正确的方法。
它还让我想起了一个算法,这个算法是我自己“发明”的,但从未实现过。我想它也有一个名字(因为这种琐碎的事情不可能只是我一个人的想法) ,但是我无法在流行的名字中找到它。超级抽样是最接近的一个。
这个想法是这样的——对于目标图片中的每个像素,计算它在源图片中的位置。它可能会覆盖一个或多个其他像素。这样就可以计算出这些像素的面积和颜色。然后,为了得到目标像素的颜色,只需计算这些颜色的平均值,并将它们的面积作为“权重”。因此,如果目标像素覆盖黄色源像素的1/3,绿色源像素的1/4,我得到(1/3 * 黄色 + 1/4 * 绿色)/(1/3 + 1/4)。
这自然是计算密集型的,但它应该尽可能接近理想状态,不是吗?
这个算法有名字吗?