Efficient Deblurring for Shaken and Partially Saturated Images
Try the online demo: http://willow-fd.rocq.inria.fr/unshake/
Overview
One common feature of “shaken” images is the presence of saturated pixels. These are caused when the radiance of the scene exceeds the range of the camera’s sensor, leaving bright highlights clipped at the maximum output value (e.g. 255 for an 8-bit image). To anyone who has attempted to take hand-held photographs at night, this effect should be familiar as the conspicuous bright streaks left by electric lights, such as in the images below. These bright pixels, with their clipped values, violate the assumption made by many algorithms that the image formation process is linear, and as a result can cause obtrusive artifacts in the deblurred images. This can be seen in the example images below. In this paper, we propose a non-blind deblurring algorithm that takes account of saturated pixels, and is able to greatly reduce the artifacts they cause in the deblurred results.
We also demonstrate an efficient approximation for spatially-varying blur, extending the work of Hirsch et al. [4] to handle our previously-proposed global model for spatially-varying camera shake blur [5]. This approximation, based on the local uniformity of the blur, allows the forward model for spatially-varying blur to be computed significantly faster than the exact model, while retaining the benefits of the global parameterization. Note that independently of our work, Hirsch et al. [6] have proposed a similar method to combine a global model of spatially-varying blur with their locally-uniform approximation.
Examples
Click to enlarge images. Navigate through with cursor keys.
Blurry image with saturation
Deblurred with Richardson-Lucy [1,2]
Deblurred with algorithm of Krishnan & Fergus [3]
Deblurred with proposed method
Efficient Approximation of the Global Blur Model
The images below show a synthetic blur kernel for our previously proposed model [5]. The PSF is visualized at various points across the image, using the exact forward model and the approximation at increasingly fine levels of discretization. The approximation quickly approaches the exact model, and at the finest discretization shown it is almost identical to the exact model.
Global blur kernel
PSF, exact forward model
PSF, approximate forward model,
3 × 4 patchesPSF, approximate forward model,
6 × 8 patchesPSF, approximate forward model,
12 × 16 patches
Paper
Deblurring Shaken and Partially Saturated Images
IEEE Color and Photometry in Computer Vision Workshop (2011), in conjunction with ICCV 2011
PDF | Abstract | BibTeX | PPT Slides (19MB)
Deblurring Shaken and Partially Saturated Images
International Journal of Computer Vision, 2014
PDF | Abstract | BibTeX | Journal page
Images
The images from the CPCV 2011 paper: Download (25MB)
The results of our algorithm on the images of Cho et al. [7]: Download (16MB)
Code
A package of Matlab code for non-blind deblurring of blurry images with clipped / saturated pixels.
Version 0.1 (20-Nov-2011): Download (7MB) | Readme
Code
This package contains code to perform fast blind deblurring of images degraded by camera shake, using the MAP algorithm described in our IJCV 2012 paper, and the fast approximation of spatially-varying blur described in our CPCV 2011 paper.
Version 1.0 (21-Sep-2014): Download (18MB) | Readme
Comparison to the Method of Cho et al.
The images below show the results of our non-blind deblurring algorithm on images provided by Cho et al. [7]. The (spatially-invariant) blur kernels for the images, along with the results of their algorithm, are provided by the authors online here.
Download the uncompressed images above, or at this link.
Click to enlarge images. Navigate through with cursor keys.
Blurry Image
Result from Cho et al. [7]
Our result
References
[1] W. H. Richardson. Bayesian-Based Iterative Method of Image Restoration. Journal of the Optical Society of America, 62(1), 1972.
[2] L. B. Lucy. An iterative technique for the rectification of observed distributions. Astronomical Journal, 79(6), 1974.
[3] D. Krishnan and R. Fergus. Fast Image Deconvolution using Hyper-Laplacian Priors. In Proc. NIPS, 2009.
[4] M. Hirsch, S. Sra, B. Scholkopf, and S. Harmeling. Efficient Filter Flow for Space-Variant Multiframe Blind Deconvolution. In Proc. CVPR, 2010.
[5] O. Whyte, J. Sivic, A. Zisserman, and J. Ponce. Non-uniform Deblurring for Shaken Images. In Proc. CVPR, 2010.
[6] M. Hirsch, C. J. Schuler, S. Harmeling, and B. Schölkopf. Fast Removal of Non-uniform Camera Shake. In Proc. ICCV, 2011.
[7] S. Cho, J. Wang, and S. Lee. Handling Outliers in Non-blind Image Deconvolution. In Proc. ICCV, 2011.
Last updated: 14th December 2011
Efficient Deblurring for Shaken and Partially Saturated Images的更多相关文章
- 论文笔记---Deblurring Shaken and Partially Saturated Images
抖动和部分饱和图像去模糊 摘要 我们解决了由相机抖动造成的模糊和饱和或过度曝光像素导致的图像去模糊的问题.饱和像素对于现有的非盲去模糊算法是一个问题,因为它们不符合图像形成过程是线性的这一假设,并且经 ...
- 图像运动去模糊(Motion Deblurring)代码
http://blog.csdn.net/qianliheshan/article/details/12853157 http://www.di.ens.fr/~whyte/ Efficient De ...
- paper 15 :整理的CV代码合集
这篇blog,原来是西弗吉利亚大学的Li xin整理的,CV代码相当的全,不知道要经过多长时间的积累才会有这么丰富的资源,在此谢谢LI Xin .我现在分享给大家,希望可以共同进步!还有,我需要说一下 ...
- Needle in a haystack: efficient storage of billions of photos 【转】
转自09年的blog,因为facebook在国内无法访问,故此摘录. The Photos application is one of Facebook’s most popular features ...
- One SQL to Rule Them All – an Efficient and Syntactically Idiomatic Approach to Management of Streams and Tables(中英双语)
文章标题 One SQL to Rule Them All – an Efficient and Syntactically Idiomatic Approach to Management of S ...
- 论文阅读(Lukas Neuman——【ICDAR2015】Efficient Scene Text Localization and Recognition with Local Character Refinement)
Lukas Neuman--[ICDAR2015]Efficient Scene Text Localization and Recognition with Local Character Refi ...
- Notes on 'Efficient Graph-Based Image Segmentation'
Notes on Efficient Graph-Based Image Segmentation 算法的目标 按照一种确定的标准, 将图片分割成细粒度的语义区域, 即Super pixel. 算法步 ...
- Web Pages - Efficient Paging Without The WebGrid
Web Pages - Efficient Paging Without The WebGrid If you want to display your data over a number of p ...
- 论文笔记之:Deep Recurrent Q-Learning for Partially Observable MDPs
Deep Recurrent Q-Learning for Partially Observable MDPs 摘要:DQN 的两个缺陷,分别是:limited memory 和 rely on b ...
随机推荐
- ThinkPHP - 1 - 本地部署
ThinkPHP ThinkPHP是一个快速.简单的基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时 ...
- quartz入门实例
一 Quarta介绍 1 Quartz是什么 Quartz就是一个纯 Java 实现的作业调度工具,相当于数据库中的 Job.Windows 的计划任务.Unix/Linux 下的 Cron,但 Qu ...
- Saruman's Army(贪心)
Saruman the White must lead his army along a straight path from Isengard to Helm’s Deep. To keep tra ...
- 基于spec评论“欢迎来怼”团队Alpha版作品
“欢迎来怼”团队的作品是手机版博客园 1.获取此博客园app的方式——二维码 通过扫描二维码的方式下载app,这是当今比较流行的方式,适合广大手机的使用者——青少年的使用习惯. 2.点击图标,进入该a ...
- Phpcms V9导航循环下拉菜单的调用技巧
这个方法基于PC V9官方模版中的调用方法,然后利用后台的“Phpcms V9菜单是否显示设置”控制菜单是否显示出来. 先看看最后的效果: 调用方法: <div id="navbar& ...
- 【转】自定义(滑动条)input[type="range"]样式
1.如何使用滑动条? 用法很简单,如下所示: <input type="range" value="0"> 各浏览器原始样式如下: Chrome: ...
- Calculator Part Ⅰ (代码规范化修改)
GitHub/object-oriented 本次参照的C++代码规范 有一些规范内容在文件中其实并未提及,比如:空格的使用,修改的时候真的是一头雾水--根据文件中的例子,发现了一些文字部分没有提到的 ...
- 如何修改git push时的密码
如何修改git push时的密码 如下: 打开git bash 输入 cd ~/.ssh ls 确定有 id_rsa 和 id_rsa.pub文件 ssh-keygen -p -f id_rsa 第一 ...
- 详解实现Android中实现View滑动的几种方式
注: 本文提到的所有三种滑动方式的完整demo:ScrollDemo 1. 关于View我们需要知道的 (1)什么是View? Android中的View类是所有UI控件的基类(Base class) ...
- 某一线互联网公司前端面试题js部分总结
js部分 1,使用严格模式的优点 - 消除Javascript语法的一些不合理.不严谨之处,减少一些怪异行为; - 消除代码运行的一些不安全之处,保证代码运行的安全: - 提高编译器效率,增加运行速度 ...