从单幅图像中消除相机抖动
Rob Fergus Barun Singh Aaron Hertzmann Sam T. Roweis William T. Freeman
摘要:
曝光期间的相机抖动会导致令人反感的图像模糊从而毁掉很多照片。常规的盲去卷积方法通常假设图像的频域约束,或过度简化相机抖动运动路径的参数形式。真实的相机运动可能有复杂的路径,而空域的先验知识可以更好地保持视觉上显著的图像特点。 我们介绍一种从严重模糊的图像中消除相机抖动影响的方法。该方法假定均匀的相机模糊图像以及可忽略不计的平面内相机回转。为了估计相机抖动造成的模糊,用户必须指定没有饱和效果的图像区域。我们展示了许多遴选自个人照片集的数字图像的处理结果。
关键词:
相机抖动,图像盲去卷积,变分学习,自然图像统计知识
1、简介:
致使图像模糊的相机抖动,对拍照者来说是个长期存在的问题。数字图像爱好者的日益增长使相机抖动问题越来越突出,尤其是小型高分辨率相机的普及,因其轻量级的特点使得拍照时相机的固定变得困难。许多照片都是捕获短暂的瞬间,不可能在受控条件下或是不同相机设置情况下反复拍摄,不管什么原因只要在图像中出现相机抖动,那昙花一现的瞬间将会失去。
可以通过使用更快的曝光来缓解抖动,但这可能导致其他问题,如传感器噪声或小于预期的景深。三脚架或其他专用硬件可以消除相机抖动,但这些都很笨重,而且大多数拍摄者使用的是传统的便携式手持相机。由于产生不自然的色调,用户可以避免使用闪光灯。根据我们的经验,许多本来业余拍摄者喜欢的照片被相机抖动给破坏了。一个从捕获的照片中消除该运动模糊的方法将是数字图像的重要资产。
可以将相机抖动建模为,描述相机在曝光期间运动的模糊核与原始图像的卷积。消除未知的相机抖动是一种盲去卷积问题,在图像和信号处理中存在已久。在最基本的模型中,问题是没有约束的:我们有比已知量(观测图像)更多的未知量(原始图像和模糊核)。因此,实用的解决方案必须要有关于模糊核或者复原图像准确的先验假设,两者都有更好。该类问题传统的信号处理算法仅对频域幂律做非常笼统的假设,算法结果只对非常小的模糊核有用,不适用于复杂的相机抖动模糊核。此外,算法利用频域中指定的图像先验信息可能不会保留重要的空间结构,如边缘信息等。
本文介绍一种从图像中消除未知相机抖动效果的新技术,这一进展得益于以往工作中的两项关键改进。首先,我们研究自然图像的统计知识,发现自然场景通常遵循特定的图像梯度分布。其次,我们以Miskin和MacKay的工作为基础,采用贝叶斯方法,考虑未知中不确定性,通过隐含图像概率分布找到模糊核。有了模糊核,图像就可以通过标准的反卷积运算重建出来,尽管我们相信在重建阶段这方面还有很大的改进空间。
我们假设所有的图像模糊都可以描述为单个卷积;即没有明显的视差,任何图像平面旋转很小,并且在曝光期间场景的任何部分都没有相对移动彼此相互接触。我们的方法目前需要少量用户输入。
我们的重建工作确实包含了手动部分,尤其是在以上假设违背的情况下有效;它们在某种情况下是可以接受的,专业设计人员可以适时修改得到接近的结果。对比而言,原始图像是用不了的,很难完全恢复。实际上我们的方法可以修复那些本来完全丢失信息的图片。
2、相关工作:
图像去模糊的任务其实就是图像去卷积;如果模糊核不清楚,那么这个问题成为盲去卷积。关于该领域广泛文献的调查见[Kundur and Hatzinakos 1996]。现存的盲去卷积的方法通常假设模糊核具有简单的参数形式,例如高斯或者低频傅里叶分量。但是如图所示,通过我们的例子,相机抖动中的模糊核并没有简单的形式,往往包含非常锋利的边缘。通常对输入图像进行类似的低频假设,例如,应用正则化方法。这样的假设可以防止高频(如边缘)出现在重建图像中。Caron等人假设在图像上施加幂律分布,幂律是一种简单的自然形式,不保留本地结构的图像统计信息。一些方法结合幂律与小波域约束,但不适用于我们的例子中复杂模糊核。
反卷积方法在天文图像中得到了发展[Gull 1998,Richardson 1972,Tsumuraya 1994,Zarowin 1994],其统计数据与我们在本文中提到的自然场景截然不同。在此领域中盲去卷积是直截了当的,因为孤立星球的模糊图像揭示了点扩散函数。
另一种方法是假设有同一场景多个图像可用 [Bascle et al。1996; Rav-Acha和Peleg2005]。硬件方法包括:光学稳定的透镜[佳能公司2006],专门设计的CMOS传感器[刘和Gamal 2001]和混合成像系统[Ben-Ezra和Nayar 2004年]。因为我们希望我们的方法与现有的相机和图像一起使用,并为尽可能多的情况工作,我们不要假设任何此类硬件或额外图像可用。
最近在计算机视觉方面的工作表明了重尾的有用性,自然图像先验知识广泛应用于各个方面,去噪[Roth and Black 2005],超分辨率[Tappen et al. 2003],内在图像[Weiss 2001],视频消光[Apostoloff和Fitzgibbon 2005],修复[Levin et al。 2003],以及分离反射[Levin andWeiss 2004]。每种方法都是有效的盲去卷积,在图像形成过程中(例如,超分辨率中模糊核)是假设预先知道的。
Miski和MacKay [2000] 使用原始像素强度先验对线条艺术图像进行盲去卷积。结果显示为少量合成图像模糊。我们应用类似的变分,用图像梯度代替自然图像强度并增强算法,以实现对带有明显模糊的图像复原。
3、图像模型:
我们的算法将模糊图像B作为输入,假定它是由模糊核K与原始潜在图像L卷积叠加噪声形成的:

其中,
代表卷积(非周期边界条件), N表示每个像素上的传感器噪声。我们假设图像的像素值与传感器的辐照度线性相关。原始潜在图像L代表我们的目标图像;我们的目标是在不清楚K的情况下从B中恢复L
为了从这种有限的测量中估计潜在图像,有一些关于图像越准确的先验信息是至关重的。幸运的是,最近研究的自然图像统计数据显示,虽然现实世界的场景图像的绝对颜色分布变化很大,但他们的梯度服从了重尾分布:大部分像素梯度分布都在很小的值上,像素梯度值大的概率比高斯分布的概率大。这很符合我们的直观感受,即像素值在大部分区域有固定强度或者轻微浮动的强度,而在边缘或中断边界处往往有巨大的变化。例如,图二显示了一个自然图像和它的梯度幅度分布图。分布表明图像主要包含小梯度或零梯度,但有几个梯度有很大的幅度。最近的图像处理方法基于重尾分布,将最先进的结果应用于图像去噪[Roth and Black 2005; Simoncelli 2005]和超分辨率[Tappen et al. 2003]。相比之下,基于高斯分布的先验方法(包括使用正则化约束)会产生过于平滑的图像。
我们用零均值高斯混合模型拟合梯度的分布,如图二所示。之所以选择这种表示方式,是因为它可以很好地逼近经验分布,同时允许对我们的算法进行易于处理的估计。
4、算法:
算法主要分为两步:1、根据输入图像估计模糊核,以由粗到精的方式避免局部极小值。2、利用估计的模糊核,采用标准的去卷积算法估计清晰图像。
首先用户需要提供四个输入:1、模糊图像B;2、模糊图像的一个矩形块;3、模糊核的大小上限值(像素);4、关于模糊核方向的初步猜测(水平或垂直方向),如何指定这些参数将在4.1.2节详细介绍。除此之外,我们需要在处理之前将图像B转换到一个线性的色彩空间,利用反伽玛校正,γ的值为2.2。为了估计预期的模糊核,我们根据用户指定的块,将原始图像的所有颜色通道联合一起产生灰度模糊块P
4.1、估计模糊核
对于给定的灰度模糊块P,我们估计K和清晰图像块Lp 。通过找到具有最高概率值的像素值,由对L的统计先验得到。既然数据统计是基于图像梯度而不是强度,我们对梯度域进行最优化,利用 Lp和P 的梯度值。因为卷积是一个线性操作,P 的梯度值应该等于 Lp和的卷积,再加上噪声,我们假设噪声是方差为σ ^2 的高斯函数。
正如先前讨论的,Lp的先验梯度概率分布是一个C型零均值的混合高斯模型分布的(对第K个高斯分布来说,方差为vc,权值为 πc)。我们使用稀疏先验概率 表示模糊核,支持0值,并且要求所有值为正。特别地,模糊核的值的先验是D型指数分布的混合(尺度因子λd和权值πd)。
在▽P已知的情况下(可以统计测量得到),通过贝叶斯公式,可以得到后验概率:

其中,i代表图像中的像素点,而j代表模糊核的;N和E分别代表高斯和指数分布。便于处理,假设▽P彼此之间相互独立,▽Lp像 与K一样。
该问题的直接解决方法是将其视为一个最大后验概率问题,即求模糊核K与潜在图像的梯度▽L使得最大。这相当于解决一个正则化的最小二乘问题,试图拟合数据,同时使得梯度最小化。我们尝试这样做(拥共轭梯度研究),但该方法还是失败了。一种解释是MAP目标函数试图最小化所有梯度(甚至大的),而我们期望自然图像有一些大的渐变。 所以,该算法产生双色调图像,因为几乎所有的梯度是零。 如果我们减少噪声方差(从而增加在数据拟合项上的权重),然后算法对于K来说会产生delta函数,它完全拟合模糊的图像,但没有任何去模糊。 此外,我们找到的MAP目标函数非常容易受到图像局部极小值的影响。
取而代之,使用近似后验分布,用最大边际概率计算核K。该方法选择最可能与潜在图像的分布有关的核,从而避免了在选择图像的单个“最佳”估计时可能发生的过拟合。
为了更好的计算这个近似,这里使用了变分贝叶斯的方法,使用去代替,该方法得益于Miskin and MacKay对动画图像进行盲去卷积。满足因式分解。对于潜在的图像梯度,这种近似是高斯密度,而对于非负模糊核元素,这种近似是一种经矫正的高斯分布。每个潜在图像的梯度和模糊核元素的分布由它们的均值和方差表示,并存储在一个数组中。
根据Miskin and MacKay,在评估过程中,将噪声变量视为一个未知量,可以将用户从调优过程中解放出来。这允许噪声方差在估计过程中发生变化:数据拟合约束在过程的早期是松散的,随着找到更好的、低噪声的解决方案,数据拟合约束变得更紧。设σ ^2在逆方差上有伽马分布,有超参数a,b, 。σ ^2的变分后是,另外一个伽马分布。
变分算法的最小化的是模拟分布与真实分布之间的距离。用式子表现出来即: 。变分后验中的独立性假设允许对代价函数C _KL进行因式分解:

其中代表。为简便起见,依赖项▽P省略了。
代价函数最小化过程如下。分布的均值设置为 K与▽Lp分布的方差较高,反映了初始估计的不确定性。然后通过坐标下降交替更新分布参数;其中一个是通过在合并模型先验的同时将另一个边缘化来更新的。更新是通过计算封闭形式的最优参数更新,并在这些更新值的方向上执行行搜索(详见附录A)。一直更新直到C _KL可以被忽略。边缘分布的均值作为 K的最终值。我们算法的执行采用的是Miskin 和 MacKay提供的的网上源程序代码。
在上面概述的公式中,我们忽略了图像中饱和像素的可能性,这是一种尴尬的非线性,违背了我们的模型。由于显式地处理它们比较复杂,所以在推理过程中我们更喜欢简单地掩盖图像的饱和区域,这样就不会用到它们。
在变分框架中,在 K与▽Lp的先验使用了C=D=4个元件。潜在图像中方差vc权重πc使用EM通过街景图像估计得到。由于图像统计量随尺度而异,每个尺度级别都有自己的一组先验参数。这个先验被用于所有的实验。模糊核元素的先验参数是由一组从真实图像中推断出来的低噪声核估计出来的。
4.1.1、多尺度方法
上一节描述的算法受局部极小值的影响,特别是对于大的模糊核来说。因此,我们通过从粗到精的方式改变图像分辨率来进行估计。在粗级别, K是3x3的核。为了确保正确的算法,我们手动指定初始3×3模糊内核两种简单的模式(见4.1.2节)。然后,在保持 K固定的情况下,运行推理方案,得到潜在梯度图像的初始估计。
然后我们回到金字塔,在每一层运行推理; K与▽Lp的聚合值被上采样作为金字塔下一层初始化参考值。在最好的尺度上,推理收敛到全分辨率的核 K
4.1.2、用户监督
虽然使用全梯度图像▽L运行多尺度推理方案似乎更自然,但在实践中,我们发现,如果手工选择具有丰富边缘结构的小块,该算法的性能更好。手动选择允许用户避免大面积的饱和或均匀性,这可能干扰算法或得不到信息。此外,该算法在一个小块上比在整个图像上运行要快得多。
另外一个参数是模糊内核的最大大小。在图像中遇到的模糊的大小差别很大,从几个像素到几百个像素不等。如果算法是用一个非常大的内核初始化的,那么很难解决小的模糊问题。相反,如果使用的内核太小,就会出现大的模糊。因此,对于所有条件下的操作,内核的大约大小是用户所需的输入。通过检查图像中的任何模糊伪影,可以很容易地推断出内核的大小。
最后,我们还要求用户在模糊内核的两种初始估计中选择一种:水平线或垂直。尽管算法通常可以在任何一种状态下初始化,并且仍然生成正确的高分辨率内核,但这确保了算法开始在正确的方向上搜索。通过查看图像中任何模糊的内核工件,可以很容易地确定适当的初始化。
4.2、图像重建
多尺度推断过程输出模糊的估计内核K,在所有可能的图像重建中被边缘化。为了从该模糊核中复原模糊图像,我们尝试了各种盲去卷积方法,包括Geman [1992],Neelamani [2004]和van Cittert [Zarowin 1994]这些人的方法。虽然这些方法中的许多方法在合成测试示例中表现良好,但我们的真实图像表现出一系列非线性,这些问题在合成的情况下不存在,例如非高斯噪声,饱和像素,色阶中的残余非线性和估计内核中的错误等等。用他们的算法处理我们的图像,结果令人失望,大多数方法产生不同程度的伪影。
我们还对整个图像B的梯度▽B使用变分推理算法,保持K固定不变。图像的像素强度由泊松图像重建。除了运行缓慢,无法模拟上面提到的重建过程中的非线性,该方法与其他方法没什么区别。
L通常很大,考虑到速度,简单的方法很有吸引力。因此,我们用RL重建了潜在的彩色图像 L,虽然RL方法的性能与其他评价方法相当,但它的优点是只需几分钟,即使是在大图像上(其他更复杂的方法,需要数小时或数天)。RL是一种非盲反卷积算法,它迭代最大化泊松统计图像噪声模型的似然函数。与更直接的方法相比,这种方法的一个好处是,它只提供非负的输出值。我们利用Matlab的实现算法来估计 L,给定 K,对每个颜色通道进行独立处理。我们使用了10次RL迭代,尽管对于大的模糊内核,可能需要更多。在运行RL之前,我们根据内核中的最大强度值,通过应用动态阈值来清除 ,该阈值将某个值以下的所有元素设置为零,从而降低内核噪声。然后使用γ=2.2对RL的输出进行γ校正,并将其灰度直方图与 B的灰度直方图(使用Matlab的histeq函数)进行匹配,从而生成 L。详细伪代码请看附录A。
.

外文翻译之 Removing Camera Shake from a Single Photograph相关推荐

  1. Fergus的Removing Camera Shake from a Single Photograph的附录部分的一些推导

  2. 2006-TOG - Removing camera shake from a single photograph

    项目地址:https://cs.nyu.edu/~fergus/research/deblur.html 多尺度 变分贝叶斯 高斯混合模型 用户选取区域及模糊核方向 泊松重构中间图像 Richards ...

  3. 计算机视觉外语论文翻译,图像处理-毕设论文外文翻译(翻译+原文)

    <图像处理-毕设论文外文翻译(翻译+原文)>由会员分享,可在线阅读,更多相关<图像处理-毕设论文外文翻译(翻译+原文)(9页珍藏版)>请在人人文库网上搜索. 1.英文资料翻译 ...

  4. PHP与MySQL外文文献译文和原文_PHP外文翻译文献-php网上书城系统外文翻译

    1 PHP 外文翻译文献 ( 文档含中英文对照即英文原文和中文翻译 ) 原文: Getting PHP to Talk to MySQl Now that you ' re comfortable u ...

  5. 机械设计制造及自动化 外文翻译资料

      (外文翻译--原文) Fundamentals of Mechanical Design Mechanical design means the design of things and syst ...

  6. matlab图像识别英文文献,matlab图像处理-外文翻译-外文文献-英文文献-基于视觉的矿井救援...

    <matlab图像处理-外文翻译-外文文献-英文文献-基于视觉的矿井救援>由会员分享,可在线阅读,更多相关<matlab图像处理-外文翻译-外文文献-英文文献-基于视觉的矿井救援(1 ...

  7. 大学计算机专业全英文论文,5计算机专业 外文文献 英文文献 外文翻译 jsp应用框架 中英对照 大学学位论文.doc...

    5计算机专业 外文文献 英文文献 外文翻译 jsp应用框架 中英对照 大学学位论文 外文JSP application frameworks brian wright.michael freedman ...

  8. 微型计算机系统外文,微型计算机控系统(单片机控制系统) 毕业论文外文翻译.doc...

    微型计算机控系统(单片机控制系统) 毕业论文外文翻译 英语翻译 Microcontroller reset is to make the CPU and other system features a ...

  9. 计算机php外文翻译,php外文翻译.doc

    文档介绍: 附录A外文翻译-原文部分PHPLanguageBasicsActiveServerPages(PHP)isaproven,well-establishedtechnologyforbuil ...

最新文章

  1. POJ 2411 Mondriaan‘s Dream(最清楚好懂的状压DP讲解)(连通性状态压缩DP)
  2. 《智能网联汽车技术路线图 2.0》重磅发布
  3. 为什么说数据中心是5G最大的受益者?
  4. Maven : 将 Jar 安装到本地仓库和 Jar 上传到私服
  5. 基于JAVA+SpringMVC+Mybatis+MYSQL的流浪宠物猫狗救助系统
  6. Sapera帮助文档
  7. ExtJS4.2学习(七)EditorGrid可编辑表格(转)
  8. 一步一步实现KNN分类算法
  9. 阿里云盘 Mac客户端(附福利码)
  10. 【字体分享】来一波免费的漂亮英文手写体(上)
  11. 深入剖析RGB、CMYK、HSB、LAB
  12. 影视处理计算机配置,影视后期制作电脑配置需要什么
  13. web将pdf转成图片以及图片转回pdf的方法
  14. 选择与随缘----老舍和西蒙的关联
  15. tensor.view().permute()
  16. scrapy 下载及处理文件和图片
  17. sed命令删除行操作
  18. 在Windows Mobile手机上运行Android
  19. Verilog专题(十九)新世界的大门——状态机
  20. 2020 论文研究数据之 - 百度指数采集工具

热门文章

  1. 互联网公司招聘,你需要注意这四点
  2. html跳动的心,css3跳动的心制作
  3. npoi获取合并单元格_NPOI合并单元格
  4. 1251:丛林中的路
  5. Python练习(四)
  6. linux心跳出血漏洞,heartbleeder 自动检测 OpenSSL 心脏出血漏洞 (附修复指南)
  7. 菊花台-中国朝代歌[摘]
  8. 举头望明月打计算机术语,呐,你们要的灯谜来了!
  9. 奥尔良烤翅(自调腌料做法)
  10. 03-Java核心类库_常用类库