技术宅
现在相机、手机摄像头分辨率越来越高,拍摄出来的照片也越来越大。以目前主流1300万像素手机为例,如果以最佳质量拍摄,一张照片大小在5MB左右。如果有一两百张这样的照片要上传到网络,显然要花费不少时间。如果降低分辨率,画质又会受到很大影响。解决方法之一,就是先通过低分辨率拍摄出小体积的照片,传输完毕,再通过谷歌新推的RAISR技术进行“升采样”方法提高低分辨率照片的画质,让照片重新变清晰。今天就让我们来了解这一“魔法”背后的秘密。
照片重建的“升采样”技术
RAISR全称是“Rapid and Accurate Image Super-Resolution”,意为“快速、精确的超分辨率技术”。它是一种通过升采样方式,把低分辨率图片重建为尺寸更大、像素更多、更高画质图片的技术。
那么什么是升采样?升采样简单理解就是提升原来照片的分辨率,它通过一定算法对原来照片进行重建。升采样并非谷歌独创技术,很早之前数码相机上常用的插值算法就是一种升采样技术。很多原来购买过数码相机的朋友都知道,早些年由于数码相机像素较低,很多品牌为了突出自己相机的成像效果,都会在产品说明上添加上一句类似“可以插值到XX百万像素”的语句,数码相机用到的插值就是一种升采样技术。比如最简单的一种插值算法,当图片放大时,缺少的像素通过直接使用与之最接近的原有像素的颜色生成,也就是说照搬旁边的像素,使得原来低像素的照片变为高像素。在专业图像处理软件中如,PS也有类似插值处理技术(PS里称之为“重采样”),该技术使用PS内置的插值算法可以实现照片的升采样处理(图1)。
既然市场已经早有升采样技术,那么谷歌为何还要开发RAISR技术?这是因为之前的插值算法照片重建效果不佳,之前的技术要么算法简单,但是重建效果差(容易出现锯齿);要么算法复杂,重建时间长,但是最终效果仍然不能令人满意。谷歌RAISR技术则充分利用机器学习、人工智能这些现代科技来实现对照片的升采样,它的效果能达到甚至超过现在的超分辨率解决方案,同时速度提升大约十至一百倍,且能够在普通的移动设备上运行。
RAISR将模糊变高清的背后
如上所述,RAISR技术的核心就是利用机器学习,对原来低分辨率照片重采样重建。那么RAISR是通过什么方法来学习,重建的标准又是什么?
目前RAIS技术的实现是通过一个应用程序,它是采用机器学习,用一对低分辨率、高分辨率图片训练该程序,以找出能选择性应用于低分辨图片中每个像素的过滤器,这样能生成媲美原始图片的细节。RAIS训练方法主要有两种:
一种是直接学习方法,该法使用过滤器在成对高、低分辨率图片中直接学习。这种方法优势是简单、高效,通过学习大量成对照片后生成适合的过滤器,然后即可快速应用到其他低分辨率照片上实现重采样。缺点是没有考虑到非整数范围的因素,只是简单在分辨率高、低之间进行过滤。
另一种则是“组合”法,它需要先对低分辨率图片应用低功耗的升采样,然后在升采样图片和高分辨率图片的组合中学习过滤器。这种方法耗时更多,但是可以学习到更多重建细节,考虑到了从低到高所有非整数范围的因素,能够重建出更高质量的照片。
不过不管是使用哪种方法,RAISR的过滤器都是根据图像的边缘特征进行学习训练,包括照片的亮度、色彩梯度、平实和纹理区域等等。同时还要考虑方向(direction,边缘角度)、强度(strength,更锐利的边缘强度)和黏性 (coherence,一项表示量化边缘方向性的指标)的影响。比如RAISR其中一组过滤器就是从一万对高、低分辨率图片中学习得到(包括低分辨率图片经过升采样),整个训练过程耗费约一小时(图2)。
当然在具体的机器学习中,RAISR过滤器会学习各种具有典型特征的图片,并且是海量的图片,然后利用谷歌人工智能技术自动生成对应的过滤器。比如在上述图片中,最底一行中间的过滤器最适合强水平边缘(90度梯度角),并具有高粘性。从而确保生成的过滤器都能够和图片典型的特征点相符。这样RAISR在处理具体图片的时候,它会首先分析低分辨率图片的特征,然后相应的过滤器会应用于低分辨率图像中的每个像素邻域,从而重建出与原始高分辨率图像相当的图片,实现模糊瞬变高清的照片重建(图3)。
专业术语解说总是让人晦涩难懂,通俗地说RAISR就是借助谷歌人工智能和机器学习技术,先分别对低分辨率和对应高分辨率的图片进行学习,从而知道低分辨率照片中哪些部位经过修饰、增补后可以和高分辨率的照片一一对应,同时生成对应的高效算法。这样通过海量照片的学习,RAISR就知道该怎怎么对低分辨率照片进行“修补”,从而可以在后续处理中快速重建照片。举例来说,一张小女孩低分辨率照片,她的脸部区域在高分辨率时应该增加红润色彩使其显得更清晰、真实,这样经过RAISR学习后就会在高分辨率照片中进行相应的处理,从而实现照片的高清重建(图4)。
体验痛点 RAISR还可以做得更多
现在一方面大家的手机、平板等设备越来越多地在使用各种高清屏,我们希望能够在这些设备上看到更为清晰的图片,另一方面受制于存储和网速,这些高清图片又无法完整地在这些设备上保存和显示。这次谷歌推出的RAISR可以大幅降低图像增强的时间成本和硬件要求,有望实现超分辨率技术在消费领域的应用。这样充斥互联网的低画质图片就可以瞬间转换为高清图片,完美解决高清屏和低画质图片之间的矛盾,可以为我们带来更加爽心悦目的图片浏览体验。当然,我们更期待将来RAISR在移动设备的应用,这样我们在手机上即可轻松地将手机拍摄的照片转换为媲美单反画质的高清美图。