Google Pixel 超分辨率--Super Resolution Zoom

Google 的Super Res Zoom技术,主要用于在zoom时增强画面细节以及提升在夜景下的效果。

文章的主要贡献有:

·       使用多帧图像超分辨算法代替去马赛克算法

·       引入自适应核插值和融合算法。其自适应于图像的局部结构,对稀疏采样的数据进行拟合。

·       提出了运动鲁棒模型,对局部运动、遮挡、配准失败区域有较好的的鲁棒性

·       分析了手部震颤规律,并说明了其做为亚像素偏移获取来源的有效性

整个算法流程如图1所示,其主要包括:多帧RAW图像的获取、图像配准、图像融合三个步骤。首先,获取多帧RAW图像(CFA Bayer),然后选择其中一阵作为基帧(base frame),剩下的图像都对该帧进行局部对齐。通过核回归估计每一帧对结果的局部贡献(contribution),然后分颜色通道将这些贡献叠加起来。为了是算法更有鲁棒性,借助于图像局部特征对核形状进行调整,并利用鲁棒性模型对采样的贡献值进行加权。最后,对每个颜色通道进行归一化得到最后的RGB图像。

图1: 算法流程

本文对demosaic 进行了增强,相对以前的效果提升如下图,可以看出在高频区域尤其是摩尔纹处得到了很好的改善:

图2: 效果对比

首先说明Google 在文中介绍的超分并没有采用深度学习的方法,而是采用了传统做法。其原理也很简单,一句话概括为:通过多帧来填补Bayer中缺少的图像分量。sensor都是Bayer 格式,每个像素处只有一个色彩通道,其余的色彩是通过插值得来,而插值的过程中就会产生摩尔纹等问题。

图3: bayer 与插值

假设物体是不动的,我们每次分别每次移动1个像素,拍摄4次,岂不是就可以在每个像素位置处凑够RGGB 像素值了呢,这样我们无须插值就可以获得一张从Bayer到RGB的图像。

图4:多帧方法获得RGB采样值这种设计思想在Sony、宾得等单反相机上从2017 年就已经开始应用,技术名为:像素偏移多重拍摄(图5)

图5

因为单反等拥有很强的硬件基础可以精准控制位置的移动,手机上没有这么多硬件设备了,那手机怎么来创造位移呢?Google假设并调研了人拍照时手抖的特点,发现了拍照时手抖就可以创造出足够的亚像素位移来保证多帧图像基本可以使每个像素位置都能拍摄到三个通道(图6)。

图6

运动估计在之前的计算中已经得到了解决(HDR+ 和夜景中都有讲解),剩下的难点就变成了如何来融合多帧每个通道的像素了,其流程如下图,无非就是参考噪声模型、局部细节、运动向量等老生常谈的特征,剩余内容就是对图7公式的补充和解释,建议感兴趣的直接去看论文即可。

图7

因为计算量和图像尺寸以及帧数成线性,文中给出的计算速度是在高通Adreno 630 GPU平台上的数据,15.4ms+7.8ms/MPixel,并不算特别快,这也是为什么在GoogleBlog 里面说“SuperRes Zoom可以在所有缩放系数下工作,不过由于性能原因,只在1.2倍以上激活”吧。

最新文章

  1. ucos实时操作系统学习笔记——操作系统在STM32的移植
  2. MVC基础
  3. 从头到尾彻底理解KMP
  4. lockfree
  5. ExtJs文件上传(Ext.ux.form.FileUploadField)
  6. nrf51822裸机教程-硬件timer
  7. https centos6 and 7
  8. linux时间方面的设置
  9. SharePoint 2013 母版页修改后,无法添加应用程序
  10. 一Flash从入门开发者放弃了成长之路
  11. Error RZ3007: Targeted tag name cannot be null or whitespace
  12. idea 转载
  13. 学习笔记TF064:TensorFlow Kubernetes
  14. h5动画如何实现?如何快速开发h5动画
  15. Android WebView 加载超长 JS 数据
  16. 移动端适配方案-rem(基础篇)
  17. Protocol Buffers学习教程
  18. vim折叠设置(转载)
  19. Session配置之WebApi支持
  20. 使用SpringBoot的关于页面跳转的问题

热门文章

  1. 神经网络与机器学习 笔记—卷积神经网络(CNN)
  2. 动手实现一个适用于.NET Core 的诊断工具
  3. NumPy中文文档搬砖(划掉)学习笔记(1)
  4. 【HTML】HTML5从入门到深入(复习查漏向
  5. 【python】Leetcode每日一题-二叉搜索树节点最小距离
  6. 从刚毕业的5K测试到20K测试大佬,与薪资相匹配的永远是实力!
  7. JVM核心技术(第一篇)
  8. SSM久别遇新坑
  9. ASP.NET Core文件压缩最佳实践
  10. [c++] 文件包含