近年来,AI算法/机器学习被广泛提及,被应用到各个领域。以Photoshop为例,近年来不断引入AI算法来优化图片处理的过程。包括另一款图像处理软件Pixelmator Pro,也将机器学习算法作为主打卖点,在其最新的更新中引入了ML Super Resolution(基于机器学习的超分辨率)功能,听起来有点玄乎,其实可以认为是图片无损放大吧。

官解ML Super Resolution
在Pixelmator Pro的官方博客中也详细介绍了ML Super Resolution的原理,利用机器学习的方式识别图像内容的边缘、图案以及纹理,再根据已有的数据集和大量的训练模型来重新创建图片细节。

一般低分辨率图像中会存在较明显的图像伪影和噪点,也就让人在视觉上产生很模糊、马赛克的状态。要尽可能做到无损放大的话,这些干扰因素不应该和图像的实际内容一起放大,甚至最好是能将其删除。
博客中对该功能的技术原理以及卷积神经网络的应用做了详细的剖析,有兴趣的可以自行查阅。
ML Super Resolution无损放大效果实测
一般在哪些场合会用到无损放大呢?笔者想了想,就个人是用来看,通常是两种情况:
1.目标图片分辨率较小,直接放大会变得更加模糊
2.目标图片分辨率可能合适,但图片清晰度不够,可通过无损放大功能做降噪处理(可设为100%放大,仅降噪)
在Pixelmator Pro菜单栏中进入“图像-图像大小”,就会看到有四种处理方式,除了新增的ML Super Resolution之外,还有Bilinear、Lanczos、Nearest Neighbor。
先来看看ML Super Resolution究竟有多少魔力?
以柯南这个图为例,原图分辨率为303*428,用ML Super Resolution放大到1000*1413分辨率。

对比下来,放大之后的清晰度明显提升。不过,卡通画线条比较单一,机器算法处理起来会比较容易,一般也能达到比较好的效果。
再用一张实物图来作简单对比,这张早餐图原图分辨率为960*640,用ML Super Resolution放大到3000*2000。


处理之后,整体画面的细腻程度提升明显(尽量查看原图对比),局部放大对比之后会更加明显。

同样是通过算法处理,ML Super Resolution的图像处理结果综合素质上明显优于其它三种方式,这可能就是卷积神经网络的优势吧。
关于机器算法问题,其处理结果是否理想,很大程度上取决于训练模型,若接触的数据量越大,其处理结果则会越精准。ML Super Resolution确实发挥出了大数据学习的优势,但笔者也不敢说这种算法处理任何图片都能达到同样的程度,毕竟总有一些图像元素是在其训练模型中比较少接触甚至没遇到过的。
关于waifu2x和ML Super Resolution
看到这里,肯定有很多人早就憋不住想提waifu2x。同样是使用卷积神经网络实现图片无损放大的工具。一定程度上,ML Super Resolution和waifu2x有非常高的相似度,区别更多在于训练模型以及其他辅助算法。

不过waifu2x默认只有1.6倍和2倍放大,ML Super Resolution则可以自行选择分辨率。

笔者做了个简单的测试,以常用作自己头像的一样400*400的图为例,分别使用ML Super Resolution和waifu2x放大两倍到800*800。在waifu2x勾选中等降噪之后发现,生成的图片画面纯净度明显好于ML Super Resolution处理结果。

Pixelmator Pro本身也自带ML 降噪功能,经过一次降噪处理后,所放大的图片与waifu2x生成画面纯净度几乎一致了。
在笔者看来,这种所谓的降噪功能是在牺牲原有的画面细节的前提下做到的,更适合漫画、插画这一类图像处理。当然其他情况也可以视情况而定。

采用卷积神经网络技术,ML Super Resolution和waifu2x都能做到较好的图片无损放大。waifu2x网页即可用,降噪可选,使用会更加轻便;而Pixelmator Pro则具备ML Super Resolution、ML降噪等机器算法功能,能够实现更大自由度的无损放大,从而能达到更好的观感效果,更适合已购买Pixelmator Pro软件的用户使用。
后记
当然本文的测试挑选的样本不多,并不能保证读者在实际使用中都能达到这样的效果,再加上图片上传之后可能会有不同程度的压缩,因此本文仅提供一种目前可行的无损放大的一种途径,具体效果还是以实际为准。