我们每个人每一天使用互联网,都会和各种格式的图片打交道,其中大部分图片格式在创造之初的目的并不是为了保存完整的图片信息,而是在占用空间尽可能小的同时保存更多的图片信息。
不仅如此,我们看到的图片往往是被「创造」出来后经过互联网上复杂渠道层层转发分享的结果,其中有太多机会被压缩(聊天软件,浏览器省流量访问,各种应用转发等等)。我们看到的「马赛克」也许原本是一张高清艳丽的图片:
绿化效果的确拔群
模拟转发 27 次后的效果,图片来源:Github/LionNatsu/terribleGreen。
看看就过的图片还好,当我们特别喜欢某张图片,想用作壁纸或者 PPT 素材的时候就会发现原本看起来还行的清晰度瞬间变成了「马赛克」。如果真的是特别喜欢这张图片,我们会花费精力去各处寻找原图,不过假设图片在它们被上传时清晰度就不能满足我们的要求,那么即使找到原图也无济于事。除了寻找原图,我们还可以尝试用一些在线服务与网站,将图片放大到甚至比原图还清晰,今天我就带大家来了解几个有名的图片放大网站和软件,比较下它们的优缺点。
开始介绍之前的说明:真正无损放大图片在理论上是不可能的。图片放大不能将原本就没有的,丢失掉的信息(手抖拍糊,故意加上的马赛克,超高噪点)再「创造」出来,图片放大算法做的只是「猜测」那里原本有什么,好的算法猜得更准而已,所以对于原本就有细节,只是被图片算法压缩的图片放大效果更好。
测试照片作者:沃兹基派德测试插画作者:apapico/

插画,漫画,二次元与非现实图片

Waifu2x:将纸片人「老婆」放大两倍

随着「万能」的人工智能(机器学习)席卷各个领域,图片算法自然也逃不掉。Waifu2x 直译过来就是「将纸片人老婆放大两倍」,那么这个宅味十足的名字是怎么来的呢?
机器学习的一个优点是给予特定输入和输出之后,它能够自己寻找输入和输出之间的联系,之后你再给它相关的输入就能自动生成输出。看到这里你应该想到一个会机器学习的宅能做出什么了吧?没错,他用一大堆低分辨率和高分辨率的 Galgame 图片去训练深度卷积神经网络,让算法学会了把低分辨率 Galgame 变成高分辨率 Galgame。
Waifu2x 就这样出现了。作为一个用 Galgame 训练出来的人工智能算法,它最大特点是能对插画,漫画,二次元和其他非现实图片实现近乎「无损」的完美放大。
我们可以使用 Waifu2x 的演示网站来放大自己的图片,实际效果如图(右键选择「在新标签查看图片」看原图更明显):
插画 100% 放大演示,原图+降噪低中高三档
照片 100% 放大演示,原图+降噪低中高三档
可以看到,在放大两倍的情况下 Waifu2x 很好地保持住插画描边不出现锯齿与发虚,同时颜色甚至比原图还纯净,可以说达到了「超越原图」的清晰度。不过对于现实照片的放大效果就没有那么惊艳了,只能说和其他图片放大算法处于同一水准。
由于只是用于演示,网站只支持最高 1500*1500 分辨率的图片放大,同时对网络环境也有一定要求(用了 Google 验证码)。

Bigjpg:国内版 Waifu2x

Bigjpg则是另一个采用 Waifu2x 算法的在线图片放大网站,支持分辨率提升到 3000*3000(10MB 以下),同时国内访问毫无压力。由于采用同一算法这里就不再重复演示了,Bigjpg 还提供了付费服务,付费之后有更大的放大倍数,同时放大多张图片和独立服务器处理等特权。
Bigjpg 也有 Android 应用与微信小程序,个人觉得比起网站来小程序更加方便好用,推荐大家使用它的微信小程序。

Waifu2x-caffe:带显卡硬件加速的 Waifu2x

虽然在线 Waifu2x 放大很方便,但是对于有经常放大图片和放大多张图片(比如 Gif,视频)需求的人来讲有几个缺点:
图片大小和分辨率有限制,想要 2K 转4K 或者 4K 转8K 是不行的。
速度太慢。这个是主要的原因,大的图片不仅上传慢,小众服务用的服务器性能不足导致处理得也很慢,平均耗时从几十秒到十分钟一张图片对我而言实在等不了。
同时处理图片多的时候会崩,等了几分钟却提示放大失败会令人抓狂。
算法和放大倍数不能自定义,Waifu2x 本身支持无限倍数放大(性能足够前提下),但是在线只能放大两倍(Bigjpg 的16 倍放大需要付费),设置也不够详细。
这个时候我们就需要在电脑上常备 Waifu2x-caffe —— 本地版 Waifu2x 来放大图片了。
使用方法很简单,从Github上下载回来 -> 打开应用 -> 拖入要处理的图片即可。没有分辨率与大小限制,没有放大倍数限制(放大倍数直接就是数字输入框),详细的设置支持(图片转换格式,图片放大参考的模型等)。
最重要的是,它支持英伟达显卡的 CUDA 硬件加速,这意味着一个字 —— 快。在最新的 10 系英伟达显卡上它的处理速度甚至快到不需要时间,很多字幕组和网友都用它来使视频和动画的清晰度翻倍。

表情包,图标与其他简单的图片

能够无限放大的矢量图

除了人工智能和其他图片放大算法,还有一种方法可以无限提升图片清晰度 —— 而且是一劳永逸地,那就是将图片转换成矢量图。
什么是矢量图呢?我们都知道,一般位图图片保存的是像素信息,例如一张 200*200 分辨率的图片保存了 4 万个像素点的信息;而矢量图保存的是关键点的位置信息,还有通过这些点连线组成图形的形状、轮廓、大小等属性。
矢量图有一个优点,那就是没有分辨率这个概念。通过数学计算它保存的点与图形信息,呈现出我们能看到的图片,所以矢量图放大多少倍都不会失真。
既然矢量图那么好,为什么我们不把所有的图片都制作成矢量图呢?以现代智能手机为例,拍出来的照片如果要分解成点和图形,那么要保存的信息是巨量的,而且查看时计算那么多点和形状也需要超高的性能。所以下面的矢量图片放大服务更适合用于表情包,图标之类简单的图片。
强行转换高清像素图的后果

Vector Magic

Vector Magic可以全自动地将任何上传的图片转换为矢量图,我准备了三张不同复杂程度的图,让大家能直观地了解到哪些图片转换成矢量图可以获得最好的效果:
可以看到,颜色渐变越少,边界越明显的图片效果越好。表情包就是这一类图片,在转换完毕之后我们可以保存为 SVG。要用的时候在线转换为 PNG,分辨率想要多高都行。
不过 Vector Magic 最大的缺点是保存需要收费,还是按月收费,推荐大家使用下面的免费网站(为了直观展示效果放到第一个介绍。至于费用,好奇的朋友可以亲自去看看,反正我是被吓到了)。

Image Vectorizer

Image Vectorizer也可以全自动地将任何上传的图片转换为矢量图,而且它:
完全免费,能保存多个格式。
能看到转换的过程,有科技感。
支持 AI 自动调节优化转换效果。
提供专业的颜色深度与调色设置,让专业人员可以获得更好的转换效果。
从效果来看 Image Vectorizer 的自动模式效果比 Vector Magic 还要好上不少(所以说 Vector Magic 收那么贵的勇气是哪里来的啊)。
除了图片放大,有时候巧用照片矢量化还能产生不错的艺术效果:

照片与位图图像

接下来终于到最常见的照片放大啦。不同于上面几种类型的在线服务,照片放大推荐的都是软件哦。再次说明,所有图片放大软件都不能还原不存在的信息(想要软件从几个像素还原出车牌号码的朋友可以放弃了)。

A Sharper Scaling

A Sharper Scaling是一个超级轻巧的图片放大软件,需要微软 .NET3.5 框架。安装完毕后只有简单的几个按钮,按照惯例尝试了照片和插画的放大效果:
注意:软件提供的对比图不是原图和放大图的对比,而是传统图片放大算法和 A Sharper Scaling 算法放大图的对比,大家使用的时候需要注意(有点反人类的设计,我用了大半天才注意到......)。
ASharperScaling对照片的放大效果很不错,至少比旁边传统的放大算法好上不少。不过和Waifu2x相反,插画等非现实图片不能用它来放大,效果十分不明显,有时甚至会产生反效果。

Photozoom Pro

Photozoom Pro是一款已经坚持更新 13 年的老牌图片放大软件,在专业领域被很多公司使用,最新版本是 Photozoom Pro7。
作为专业的软件,它对于照片的放大效果自然是十分地不错,内置了很多图片放大算法,我们可以根据照片类型不同去手动调整最佳算法。调整完毕直接输入或者拖动滑条到想要的分辨率,右边实时显示放大后的效果。
Photozoom Pro 里面的每个算法都有更加详细的设置,用户可以针对不同图片慢慢调整直到实现最佳放大效果。同样的,用它对插画等非现实图片放大不是特别有效,不过比起 A Sharper Scaling 要好很多,还需要经过耐心调整才有一定效果。

Photoshop 自带调整

最后给大家简单说说如何在 PS 里面放大图片吧。
用PhotoShop 打开想要放大的图片。
点击图像 -> 图像大小,快捷键Alt + Ctrl + I打开图片调整窗口。
输入你想要的新分辨率,在下面的「重新采样」可以选择几种简单的算法。
点击确定。
有了今天推荐的网站和软件,以后无论是制作 PPT 还是设置壁纸,遇到所有类型的图片都能「低清变高清,高清变蓝光」啦。如果你喜欢这篇文章,可以点下红心或者关注我,我们下一篇文章见啦。