原始论文在这里 http://www.cse.cuhk.edu.hk/leojia/projects/motion_deblurring/

一、概述

论文根据以下的基本模糊图像模型建立

其中I是我们观测到的图像,L是真实的图像,f是运动模糊的卷积核,n是观测过程中叠加的噪声

然后从统计角度分析L,f,n服从的分布,从而作为先验,构造能量函数进行优化求解。

二、对已有图像统计得到先验

1.L统计

1)对多幅图像统计的结果,L的梯度在全局上满足如下分布(曲线已经对数化)

曲线拟合表示为

最终的全局先验

2)构造L的局部先验来抑制振铃现象

使用一个与模糊核相同大小的窗口覆盖图像,计算偏差sd,输出图像 = sd<5?1:0,

将全局和局部先验组合起来

2.f统计

通过对模糊核的统计,f的直方图符合指数分布,即大部分像素是0附近的

3.n一般的表述为

统计表明噪声一般服从高斯分布,或者乘高斯分布

其中表示标准差,在Simon 2002论文中证明,递推出

三、如何进行优化?

由贝叶斯原理

构造能量函数,得到

上式中表示矩阵元素乘法,几个参数

实验中,初始化,前面有,从而得到

下面对(5)式进行分步优化

1.先优化L,将f去掉,(5)式可简化成

代替,上式再简化成

最后带的余项表示的近似。(8)式是关于的式子(当然还有I,这里先忽略),下面分开进行优化

1) 固定的话,(8)式进一步简化成

上式可以看出关于x和y的组合x和y等价,对每个具体的可写成,从而

这是一个关于的优化函数,最小化它就能得到一个最小的,即最小的x和y。

实验过程中,在迭代开始时分别设置在0.002-0.5 和 10-25之间,每次迭代后分别除以k1和k2,k1取值范围为[1.1, 1.4],k2= 1.5。

2) 更新了之后,我们固定可以将(8)式简化成

这个式子怎么求解呢?麻烦在于有卷积。进而考虑傅里叶变换到频域进行处理,得到

时域和频域对应,从而相当于求

这个优化在Gamelin .2003的文献里有求解原理说明,得到

其中的这里还是对原L的导数吗?有点疑问。

重复交替迭代优化直到收敛。实验过程中最初设为2,迭代一次乘以2。最后得到的最优值。

2.第二步就是优化模糊核了,固定则(5)式可简化为

这是关于的二次函数,类似于Jia 2007和Levin 2007写的样子,抽象如下

其中A和B是分别受L和I影响的矩阵,标准形式在Kim 2007的论文中提出,求解的基本思想是利用对偶原理,使用内点法求解。

至此,的最优化估计就已经得出,算法框架如下

参考文献

[1] GAMELIN, T. W. 2003. Complex Analysis. Springer.

[2] JIA, J. 2007. Single image motion deblurring using transparency.In CVPR.

[3] LEVIN, A., FERGUS, R., DURAND, F., AND FREEMAN, B. 2007.Image and depth from a conventional camera

with a coded aperture.In SIGGRAPH.

[4] KIM, S.-J., KOH, K., LUSTIG, M., AND BOYD, S. 2007. Anefcient method for compressed sensing. In ICIP.

[5] SIMON, M. K. 2002. Probability Distributions Involving GaussianRandom Variables: A Handbook for Engineers,

Scientists and Mathematicians. Springer.

从单幅图像高质量去除运动模糊——读JiaYaJia同名英文论文总结的更多相关文章

  1. 如何写好一篇高质量的IEEE/ACM Transaction级别的计算机科学论文?

    转自<知乎>如何写好一篇高质量的IEEE/ACM Transaction级别的计算机科学论文? 问题: 作为一个博士生,一直为写论文头疼,读过很多高质量论文,觉得写的真好,但是轮到自己写总 ...

  2. 维纳滤波和编码曝光PSF去除运动模糊【matlab】

    编码曝光知识 - ostartech - 博客园 https://www.cnblogs.com/wxl845235800/p/8276362.html %%%%%%%%%%%%%%%%%%%%%%% ...

  3. Win8 Metro(C#)数字图像处理--2.50图像运动模糊

    原文:Win8 Metro(C#)数字图像处理--2.50图像运动模糊  [函数名称] 图像运动模糊算法    MotionblurProcess(WriteableBitmap src,int  ...

  4. OpenCV3入门(十三)图像运动模糊

    1.原理 运动模糊产生: 由于相机传感器或物体相对运动, 按快门瞬间造成图像产生运动模糊. 在用摄像机获取景物图像时,如果在相机曝光期间景物和摄像机之间存在相对运动,例如用照相机拍摄快速运动的物体,或 ...

  5. atitit.thumb生成高质量缩略图 php .net c++ java

    atitit.java thumb生成高质量缩略图 php .net c++ 1. 图像缩放(image scaling)---平滑度(smoothness)和清晰度(sharpness) 1 2.  ...

  6. 移动Web—CSS为Retina屏幕替换更高质量的图片

    来源:互联网 作者:佚名 时间:12-24 10:37:45 [大 中 小] 点评:Retian似乎是屏幕显示的一种趋势,这也是Web设计师面对的一个新挑战;移动应用程序的设计师们已经学会了如何为Re ...

  7. 高质量动漫实时画质增强器Anime4K在mpv上的配置

    Anime4K地址 https://github.com/bloc97/Anime4K mpv地址  https://mpv.io/   这个要错峰下载,网速不太好 在C盘用户\..\AppData\ ...

  8. 高质量图形库:pixellib

    点这里 pixellib 是高质量 2D 图形库: 高质量抗锯齿,矢量图形绘制 多种图像格式: RGB, BGR, ARGB, ABGR, RGBA, BGRA 8 / 15 / 16 / 24 / ...

  9. (转)用AGG实现高质量图形输出(二)

    本文上接<用AGG实现高质量图形输出(一)>,分别介绍了AGG显示流程中的各个环节. 上次讲了AGG的显示原理并举了一个简单的例子,这一篇文章开始讲AGG工作流程里的每个环节.为了方便对照 ...

随机推荐

  1. 使用tomact监控应用服务器的性能

    第一步:在D:\apache-tomcat-7.0.63\conf 配置目录找到tomcat-users.xml 打开添加用户角色及权限 第二步:重启tomact 第三步:浏览器上打开http://1 ...

  2. 【基础知识】UML基础

    http://www.ibm.com/developerworks/cn/rational/r-uml/

  3. 几年前做家教写的C教程(之四专讲了指针与汉诺塔问题)

    C语言学习宝典(4) 指针:可以有效的表示复杂的数据结构,能动态的分配动态空间,方便的使用字符串,有效的使用数组,能直接处理内存单元 不掌握指针就没有掌握C语言的精华 地址:系统为每一个变量分配一个内 ...

  4. windows 10 设置

    精简应用 邮件和日历: Get-AppxPackage *communi* | Remove-AppxPackage 新闻: Get-AppxPackage *bing* | Remove-AppxP ...

  5. SVN-功能介绍之切换

    当初新建项目IMyYa 提交到svn 目录下file:///H:/svn/truck/IMyYa 现在svn 目录版本库中调整为file:///H:/svn/truck/Win8/IMyYa 与之前不 ...

  6. 关于SQLSERVER中用SQL语句查询的一些个人理解

    作为一个编程菜鸟说真的很难有什么见解,也就是写给一些刚学习编程的人,希望能给他们一些帮助吧! SQLSERVER作为刚开始入门学习的数据库,SQL语句也并不算太难!说白了也就是建库,建表,建约束,对数 ...

  7. activity 、window与view的关系 (上)

    我在研究任玉刚老师的<android开发艺术探索>的关于windowmanager那一章时,我发现自己对于acitivity.window和view之间的概念还是比较模糊. 然后查了一下a ...

  8. 如何在Android中实现全屏,去掉标题栏效果

    在进行Android UI设计时,我们经常需要将屏幕设置成无标题栏或者全屏.要实现起来也非常简单,主要有两种方法:配置xml文件和编写代码设置.   1.在xml文件中进行配置   在项目的清单文件A ...

  9. linux服务器使用

    1.在widows系统下,下载putty.exe 配置默认的服务器IP + 端口 添加名称.点击save即可 参考:http://jingyan.baidu.com/article/c74d60004 ...

  10. Oracle Function

    Oracle Sql 中常用函数 小写字母转大写字母:upper(); 大写字母转小写字母:lower(); 字符串截取函数:substr(str,a,b); a,b为整数,str为字符串, 截取字符 ...