项目地址:https://dilipkay.wordpress.com/blind-deconvolution/

  • 图像先验:ℓ1/ℓ2\ell_1/\ell_2ℓ1​/ℓ2​(normalized version of ℓ1\ell_1ℓ1​),模糊核先验:ℓ1\ell_1ℓ1​
  • x更新:iterative shrinkage-thresholding algorithm(ISTA)
  • k更新:iterative re-weighted least squares (IRLS)
  • 扩展到非一致性模糊
  • 在Levin(2009)库上做了测试

作者认为 利用ℓ1/ℓ2\ell_1/\ell_2ℓ1​/ℓ2​正则化相比其他常见形式的图像先验更有利于清晰图像而不是模糊图像。
作者以高斯模糊为例(这里我存疑:对于运动模糊不一定适用)

横轴表示高斯模糊核大小,即模糊核越大越模糊。高斯核大小为负数表示图像锐化(即原图减去模糊后的图像,后附代码)。传送门:图像锐化算法-sharpen

先提取低频,原图减去低频得到高频。这种方法称为非锐化掩模(unsharpen mask),我们常使用低通滤波器(高斯、双边)对图像进行滤波,这种方法滤波器很好控制(包括大小和强弱),从而可以控制高频分量的强弱。

从上图中作者得出结论:ℓ1/ℓ2\ell_1/\ell_2ℓ1​/ℓ2​对于清晰图像值很小,对于模糊图像值很大,根据能量最小化,算法更倾向于清晰图像,而其余先验反之。

  • 这里先解释为什么图像越模糊,ℓ1/ℓ2\ell_1/\ell_2ℓ1​/ℓ2​值越小。
    作者说图像模糊会使图像梯度的ℓ1\ell_1ℓ1​和ℓ2\ell_2ℓ2​值都减小,但ℓ2\ell_2ℓ2​值减小的幅度更大。

这里我认为这种情况只适用于高斯模糊,因为高斯模糊确实使边缘变弱,但对于运动模糊而言,模糊虽然使得边缘变弱,但会使边缘出现偏移(重影现象),边缘数量反而增加,整体能量并不一定下降!(个人理解,ℓ1\ell_1ℓ1​大家不都在用嘛=。=)

正如文章所说,ℓ1/ℓ2\ell_1/\ell_2ℓ1​/ℓ2​是ℓ1\ell_1ℓ1​归一化后的版本,具有尺度不变性。
个人理解:对强边缘和弱边缘的响应差距相对较小。比如某个像素的梯度为[-10,10],ℓ1=20\ell_1=20ℓ1​=20,ℓ1/ℓ2=2\ell_1/\ell_2=\sqrt2ℓ1​/ℓ2​=2​,另一个像素的梯度为[-1,-1],ℓ1=2\ell_1=2ℓ1​=2,ℓ1/ℓ2=2\ell_1/\ell_2=\sqrt2ℓ1​/ℓ2​=2​。显然ℓ1\ell_1ℓ1​响应差距更大。

ℓ1\ell_1ℓ1​ is scale variant so the norm can be minimized by simply reducing the signal.

模型优化


xxx 和 yyy 分别为清晰图像 uuu 和模糊图像 ggg 的梯度图。

  • 更新xxx时,将正则项的分母固定(看成常数),用上一次迭代的值,使用iterative shrinkage-thresholding algorithm(ISTA)算法解决。
  • 更新kkk时,使用iterative re-weighted least squares (IRLS)算法解决。
  • 恢复最终清晰图像时使用超拉普拉斯先验(α=0.8\alpha=0.8α=0.8,λ=3000\lambda=3000λ=3000)

matlab 实现非锐化掩模(unsharpen mask)代码:

clear;
imSrc = imread('coloredChips.png');
imSrcYcbcr = rgb2ycbcr(imSrc);
imSrcY = imSrcYcbcr(:,:,1);
[hei, wid] = size(imSrc(:,:,1));
size = 3;
sigma = 1;  %gauss standard deviation sigma, default is 1
amount = 1.5;
threshold = 15;
gaussFilter = fspecial('gaussian', [size, size], sigma);
imSrcY_lf = imfilter(imSrcY, gaussFilter, 'symmetric');
imSrcY_hf = imSrcY - imSrcY_lf;
imLabel = (imSrcY_hf > threshold);
imLabel = uint8(imLabel);
imDstY = uint8(imSrcY + amount * imSrcY_hf .* imLabel);
figure, imshow([imSrcY, imSrcY_lf, imSrcY_hf, imDstY]);
imSrcYcbcr(:,:,1) = imDstY;
imDst = ycbcr2rgb(uint8(imSrcYcbcr));
figure, imshow([imSrc, imDst]);

2011-CVPR - Blind deconvolution using a normalized sparsity measure相关推荐

  1. CVPR 2011 全部论文标题和摘要

    CVPR 2011 Tian, Yuandong; Narasimhan, Srinivasa G.; , ■Rectification and 3D reconstruction of curved ...

  2. 数字图像处理经典论文汇总

    Colorization and Color Transfer(图像上色和颜色迁移) Semantic Colorization with Internet Images, Chia et al. S ...

  3. 图像处理经典文章合集

    Colorization and Color Transfer(图像上色和颜色迁移) Semantic Colorization with Internet Images, Chia et al. S ...

  4. 【数值分析×机器学习】以SVD的分解形式进行深度神经网络的训练(逐渐熟练)

    英文标题:Learning Low-rank Deep Neural Networks via Singular Vector Orthogonality Regularization and Sin ...

  5. Reproducible Research in Computational Science

    Reproducible Research in Computational Science from: http://www.csee.wvu.edu/~xinl/source.html " ...

  6. Source Code Collection for Reproducible Research

    Source Code Collection for Reproducible Research [ http://www.csee.wvu.edu/~xinl/source.html] " ...

  7. 图像、视觉处理的相关代码

    原文:http://blog.csdn.net/huangwen199002/article/details/49850137 Reproducible Research in Computation ...

  8. 来自西弗吉利亚大学li xin整理的CV代码合集(转)

    目录(?)[-] Image denoising Image coding Image demosaicing Image interpolation and Superresolution RGBD ...

  9. 来自西弗吉利亚大学li xin整理的CV代码合集

    来自西弗吉利亚大学li xin整理的CV代码合集 来自http://blog.csdn.net/suda072605/article/details/21000879#t21 Reproducible ...

最新文章

  1. java使用uploadify上传文件
  2. Optional java 用法_Java8 Optional 的正确使用方式
  3. Java Web技术经验总结(二)
  4. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(40)-精准在线人数统计实现-【过滤器+Cache】...
  5. html静态页面到jsp文件css错误
  6. Asp.net中文件上传下载的简单实现
  7. C语言学习之求一个3×3的整型矩阵对角线元素之和
  8. HDU - 3360 National Treasures(最小点覆盖-二分图最大匹配+奇偶拆点)
  9. sql如何实现明细账_SQL 如何实现动态的行列转置
  10. 辽宁交通高等专科学校计算机专业宿舍,辽宁省交通高等专科学校宿舍条件怎么样 有独立卫生间和空调吗...
  11. IOT(11)---浙江移动物联网应用开放平台
  12. 跟我一起创建一个简单的javascript ajax对象 ---献给Web开发初学者
  13. cmd 下关闭不需要的进程
  14. 关于动网论坛、动力起航、自由动力、动易、动感购物、乔客、织梦CMS.
  15. android krc歌词解析,10行代码解析krc歌词文件
  16. nfc卡模式与标准模式_NFC的工作模式有哪些主动模式和被动模式的详细讲解
  17. Android批量打包-如何一秒内打几十个apk渠道包
  18. 献给还在加班的你:摸鱼一时爽,一直摸鱼一直爽~
  19. 日常笔记——Windows删除多余的系统还原点
  20. 手机二维码软件及资源大汇总

热门文章

  1. 串口通讯控制器实现之----发送模块
  2. 他人经受的,我必经受
  3. html制作检测结果表格,HTML_html制作细线表格的简单实例,关于这个细线表格的制作方法 - phpStudy...
  4. 智能制造之路-智能制造框架图(附PDF下载)
  5. python 如何打印星塔
  6. Eslint校验fragments标签报错
  7. 上海互盾信息科技有限公司:志不强者智不达
  8. 新学期如何学好java?
  9. 减肥的第6天 (想吃——咖喱牛腩盖饭,油泼面,虎皮鸡爪,炒河粉,8倍辣火鸡面)
  10. Ubuntu在pytorch训练过程中总是出现死机,重启