第一回合,测试走样
我们采用的测试图为星状图,这是一个标准的测试图样,含有大量高频信息(大幅剧烈变换),很容易测出不同算法在走样这个方面的差异。
图13,测试走样用的星状图

首先来看缩小的表现,利用不同软件,不同算法把此图从360x360缩小到128x128。



PhotoShop 两次线性、Photo Shop两次立方和Infanview Lanczos(他支持的最牛的一种)



Infan View B-Spline、Turbo Photo 两次立方和Turbo Photo超强缩放
这一项总结:
可见走样最少的是Turbo Photo的两次立方运算,其次是InfanView的B-Spline和Lanczos。Photo Shop的两次立方运算在缩小尺度不大的时候还看不出区别,可是一旦尺度增大到2:1以上质量就会明显下降。这个结论在我们做实验的时候却是吃了一惊。一般数码像片的尺寸在2000线以上,用于Web输出一般是640线左右(3:1以上缩小),所以,Photo Shop的这个缺陷是很非常要命的。下图演示了在2:1的时候,PhotoShop两次立方表现尚好,但是到2.5:1的时候,就立刻糟糕了很多。
图14,Photo Shop两次立方的奇怪问题

再来看看放大方面,我们使用50x50的一个圆形来作为测试标本,放大到200x200。


PS 两次线性、PS 两次立方


Infanview Landzcos、Infanciew B-Spline


S-Spline、Turbo Photo 两次立方

Turbo Photo超强缩放
结论,B-Spline和以B-Spline为基础发展起来的S-Spline在放大图像的时候显然赢得了走样最小的桂冠。不过其他方法,除了两次线性外,表现都差不多,走样也不算太明显。
首轮综合结论:B-Spline算法是综合走样最小的插值算法。