企业网站备案价格,公司网站建设全,wordpress得到文章的附件,斗门网站建设本文同步发表在我的微信公众号和知乎专栏“计算摄影学”#xff0c;欢迎扫码关注#xff0c;上一篇文章35. 去卷积#xff1a;怎么把模糊的图像变清晰#xff1f;吸引了很多朋友的关注。在这篇文章里面#xff0c;我给大家讲了一种叫做“非盲去卷积”的方法#xff0c;当…本文同步发表在我的微信公众号和知乎专栏“计算摄影学”欢迎扫码关注 上一篇文章35. 去卷积怎么把模糊的图像变清晰吸引了很多朋友的关注。在这篇文章里面我给大家讲了一种叫做“非盲去卷积”的方法当指定了PSF(下图中的c)和观测到的模糊图像下图中的b)我们可以恢复出清晰的图像下图中的x)。很多人都觉得去卷积大法好啊真的可以把渣画质变清晰。可就是需要提前知道PSF这可就难了。确实很多情况下提前测定PSF是根本不可能的有可能你手上只拿到了一张很模糊的照片b不知道c想要恢复出x这时候应该怎么办呢事实上这也是可以办到的这就是所谓的“盲去卷积”(Blind Deconvolution)今天我就给大家介绍这种技术。我们先来看两组盲去卷积的结果给大家一些直观的感受上面的结果来自于盲去卷积领域非常经典而基础的文章Fergus et al., “Removing camera shake from a single image,” SIGGRAPH 2006.今天我主要就为你介绍这篇文章的思想一、盲去卷积的基本思想 1.1 利用先验信息小明是第一次用单反的摄影小白他刚刚很兴奋的端起相机拍了一张照片https://www.zhihu.com/video/1208905929737273344Oops手没拿稳拍出了一张超模糊的照片我们看看小明的相机在拍照瞬间的运动轨迹很显然他这样是拍不出来好片子的我们来简化一下他这张照片的生成过程上图中的模糊核(PSF是由于小明端起相机时的随机抖动导致的我们无法提前测定那么怎么样才能把清晰图像恢复出来呢 这真是一个超难的问题。这就像你知道了11这个数是由2个数的乘积构成的要让你猜出是哪两个数一样困难一张模糊的图像也有可能有多种生成模式只有最下面这种才是我们需要的怎么才能得到它呢很显然我们需要利用一些先验信息。有两个关键的先验信息可以帮助我们 1 - 图像的梯度分布清晰的自然图像的梯度符合一种叫做Heavy-Tail的分布形态。直观上讲一张清晰图像里面有很多平滑的区域且噪声较低所以梯度接近0的像素还是占大多数。但是由于图像清晰所以物体的边界比较明显所以还是有很多像素的梯度较大。因此这种梯度的分布大概长这个样子梯度直方图的纵坐标是Log化的密度但是模糊的图像的边缘被糊掉了所以更多的像素的梯度趋于0因此其梯度直方图就会变化所以我们想要寻找的是符合上面重尾分布的图像而不是其他随随便便的图像 2 - 模糊核的形态我们这里展示的是相机的运动导致的模糊那么可以认为模糊核是稀疏的有连续的轨迹并且模糊核值都是非负数。所以我们重建出来的模糊核也不是随随便便的它必须符合上述这些特点才是一个合格的运动模糊核。 3 - 噪声 相机总是有噪声的为了简化问题我们可以假设噪声是均值为0的高斯噪声于是我们就有了几种信息用于重建清晰的图像1.2 问题的数学建模 已知模糊图像P未知图像为L未知的卷积核为K。一个基本的想法是把问题看做是求最大后验概率的问题其中K和L满足一定的先验条件的约束。我们所需的就是把后验概率公式表达出来。为了让这篇文章能够比较容易看懂我把相关的细节列到文章的后面这样你可以更连贯的阅读这篇文章。1.3 问题的求解 作者尝试了用标准的MAP求解方法来求解出K和L但最终效果却很差作者对此的解释是MAP目标函数会尝试让所有像素的梯度都最小化而实际的自然图像中包含有大量高梯度的区域。而在2009年的下面这篇著名论文中作者Levin教授则提出了更深入的见解。 Levin et al., “Understanding and evaluating blind deconvolution algorithms,” CVPR 2009 and PAMI 2011Levin教授认为用MAP目标函数同时求解K和L肯定不好有如下的原因错误的单位卷积核比起正确的稀疏卷积核的可能性更高(Levin的论文中有证明2. 上述MAP目标函数的变量个数具有高度的非对称性比如对于这幅毕加索照片可见已知量的个数总是小于未知量的个数 #P #L #K以上两个原因就会导致用这种同时估计K和L的目标函数来做MAP总是无法得到好的结果。那有没有更好的方法呢Levin认为更好的办法是只单独估计K即把下面左边的问题转换为右边的问题这样已知量的个数就远远大于未知量的个数 #P #K这里的p(K|P)是相对于L的边际概率即简单来说就是对每一个可能的K我们都要在所有可能的L上求取其后验概率并把这些后验概率值加起来得到p(K|P)。你应该可以感觉到求这样的边际概率也是很不容易的事情计算量非常复杂。于是很多学者采用了近似的方式来进行求解。回到我们开头介绍的Fergus的论文作者是采用了“变分贝叶斯(variational Bayesian)”方法来近似后验概率的表示和求取Fergus证明了这种方法能得到远比原始的同时求取K和L的MAP算法好。二、完整的流程在论文中, Fergus展示了其完整的盲去卷积的流程第一步预处理图像为了降低计算量并得到良好的结果需要用户来选择一个图像块。第二步利用变分贝叶斯估计卷积核K。为了避免陷入局部最优作者采用了coarse-to-fine的策略第三步利用标准的非盲去卷积方法重建清晰图像L。作者采用了我在上一篇文章里面提到的Richardson-Lucy算法进行。三、效果展示四、后验概率的细节正如前面所讲为了求解问题需要把后验概率用公式表达出来。先引入一些符号来说明问题 模糊图像块 可能的模糊核 可能的清晰图像块 : P的梯度 : Lp的梯度 噪声首先我们前面讲过由于卷积运算是线性运算因此可以有这样我们可以把后验概率改写为用MAP的思想来说问题就转换为求使得上述概率最大的K和 我们可以用贝叶斯公式将这个后验概率展开我们分别来看后面三项于是上面的后验概率就可表示为五、算法值得改进的地方在文章中Fergus提到的几个点都是值得改进的假设噪声满足高斯分布用混合高斯模型来拟合重尾模型用混合指数分布来描述模糊核的形态多尺度的变分贝叶斯算法复杂度较高需要用户的手动引导选择小的图像块采用的非盲去卷积是RL算法相信会有更好的方法来改善图像质量等等作者本身也在其文章中提到了一些值得改进的地方能让后人在此基础上对 这项工作有所完。 果不其然在随后几年的CVPR SIGGRAPH ICCV ECCV上 几乎每届都有更好的结果涌现。 比如下面这篇2008年Jiaya Jia团队的文章就作出了非常好的效果Shan et al., “High-quality Motion Deblurring from a Single Image,” SIGGRAPH 2008文章的改善点包括了更复杂的噪声模型噪声的概率分布由其0阶、1阶、2阶梯度的分布来描述更简单的拟合重尾分布的函数加入了局部平滑区域的约束避免出现振铃效应复杂的优化方法交替式的优化估计清晰图像L和模糊核K下面是算法的效果还是非常不错的这个领域后面出了非常多效果更好的文章在github上有一个专门的项目整理记录https://github.com/subeeshvasu/Awesome-Deblurringgithub.com六、总结去卷积分为非盲去卷积和盲去卷积我介绍的用途主要是图像的去模糊。今天介绍的Fergus的文章利用了变分贝叶斯算法来求解模糊核K然后利用经典的非盲去卷积算法Richardson-Lucy算法来进行清晰图像的恢复。从今天介绍的文章你可以看到理解盲去卷积的算法对图像的统计信息、概率知识、最优化求解方法的要求要比非盲去卷积高很多。坦率说我自己在看这些文章时也感觉很吃力。但我希望这篇文章能给你打开一扇大门让你可以透过它看到一片新的研究天地。如果你喜欢这篇文章请给我点赞谢谢 七、参考资料CMU 2017 Fall Computational Photography Course 15-463, Lecture 17Fergus et al., “Removing camera shake from a single image,” SIGGRAPH 2006.Levin et al., “Understanding and evaluating blind deconvolution algorithms,” CVPR 2009 and PAMI 2011.Shah et al., “High-quality Motion Deblurring from a Single Image,” SIGGRAPH 2008https://github.com/subeeshvasu/Awesome-Deblurring图像去模糊之初探–Single Image Motion Deblurring本文同步发表在我的微信公众号和知乎专栏“计算摄影学”欢迎扫码关注