CSI样式的超分辨率图像放大?是的!

计算机芯片:最近邻插值与超分辨率

信不信由你,在电视节目和电影中,令人讨厌的技术人员所使用的软件实际上具有一定的道理,它们看起来可以从可悲的像素化源图像或视频中重建高分辨率的犯罪现场。实际上,使用软件可以提高放大图像的图像质量。



该技术称为 超分辨率 ,有两种基本方法。第一种方法采用一堆相同对象的相似图像,然后使用一种算法创建一个图像,每个图像具有最佳/最清晰的位。第二种方法更具魔力。在任何给定的图像中,相同的像素模式通常会出现多次-地板上的瓷砖,墙上的砖头,脸上的皱纹,蝴蝶上的斑点。但是,在每种情况下,由于我们生活在3D世界中,因此这些图案的大小略有不同,并且每个图案的子像素偏移也略有不同。如果将足够多的这些像素模式组合在一起,并从每个像素模式中获取最佳的子像素,则可以算出该模式 其实 在现实中看起来。



简而言之,可以拍摄模糊或低分辨率的图像, 获得 通过使用超分辨率技术放大图像质量。正如您在上面以及下面的示例中所看到的,超分辨率会产生一些惊人的结果。



雀斑:原始,最近邻居插值和超分辨率

斑马:原始,最近邻插值和超分辨率



计算机芯片:原始,最近邻居插值和超分辨率



视力表:原始,最近邻居插值和超分辨率

这些图像是使用两种超分辨率方法混合而成的,来自魏茨曼科学研究所的研究论文,标题为“ 单张图像的超分辨率 。”魏茨曼技术不是将多个低分辨率图像叠加在一起,而是将一个图像转换成许多微小的图像(例如每个5×5像素),然后比较每个块以查看是否存在匹配项。如果进行了匹配,则可以将它们组合以创建更清晰的版本。这个过程并不完美,可能会产生假象(检查视力表的最后一行),但是几乎在每种情况下,它都可以从放大的图像中挑出更多细节。

超分辨率的两个主要用途是显而易见的-图像的商业放大和打击犯罪-但第三个选择是 压缩 ,可能会被证明是更好的用法。例如,您可以使用JPEG压缩将100KB的图像转换为20KB的图像,而不会损失太多细节。但是想象一下如果您应用了压缩 缩小图像的尺寸,然后使用超分辨率显示图像。我们可能在谈论一种降低我们的智能手机流量费用或弥合正常显示器与Retina显示器之间差距的非常有效的方法。

使用矢量化算法对像素图进行去像素化超分辨率的唯一真正问题是计算量大。在魏兹曼研究所(Weizmann Institute)的研究论文中,只字未提创建每个超分辨率图像需要多长时间,这表明该算法非常慢。不过,一些研究小组报告说,GPU加速可以实现实时超分辨率。还需要指出的是,超分辨率并非总是最佳的放大解决方案:对于艺术线条或 老式计算机游戏仿真 ,向量化算法可能是更好的选择。

如果您想自己玩超分辨率, 最高 是用Python编写的开源实现。商业产品,例如 完美调整大小光敏 还实现了与此处描述的功能非常相似的超分辨率功能。至于为什么图像处理的主角Photoshop却被无聊的双三次放大卡住了……谁知道呢。