ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

BM3D改进算法

2022-02-01 16:33:33  阅读:216  来源: 互联网

标签:系数 BM3D 方差 变换 噪声 改进 算法 计算


论文名称:Collaborative Filtering of Correlated Noise:Exact Transform-Domain Variance for Improved Shrinkage and Patch Matching

Exact Transform-Domain Noise Variance for Collaborative Filtering of Stationary Correlated Noise

两篇论文类似。

论文链接:

https://webpages.tuni.fi/foi/papers/Ymir-Collaborative_Filtering_of_Correlated_Noise-TIP.pdfhttps://webpages.tuni.fi/foi/papers/Ymir-Collaborative_Filtering_of_Correlated_Noise-TIP.pdfhttps://webpages.tuni.fi/foi/papers/ICIP2019_Ymir.pdfhttps://webpages.tuni.fi/foi/papers/ICIP2019_Ymir.pdf 

        文章重点讲的是对相关噪声去噪,卷积神经网络可以很好的对高斯噪声进行降噪,但是分噪声类型的,对不同类型的噪声,需要重新训练才行,深度学习在相关噪声方面的研究还比较少。而论文提的方法可以降相关噪声,实际上白噪声也能降,结合BM3D,可以做到降各种噪声,而不用像深度学习那样重新学习才行。对BM3D效果的改善,主要就是计算谱系数的方差,可以根据这个来调整一些参数。

目录

文章主要贡献点:

相关噪声

 相关公式和符号

谱系数方差近似计算

谱系数方差精确计算

 近似计算和精确计算对比

 块间匹配

在BM3D中的使用——patch matching

在BM3D中的使用-Shrinkage

在BM3D中的使用-Aggregation

快速计算的方法

 Global Fourier thresholding and refiltering

参数选择

试验结果


​​​​​​​

文章主要贡献点

        一、介绍了精确计算转换域谱系数方差的方法,不管多少维度都支持,且介绍了近似结果的快速计算方法。

        二、把方差计算的方法在BM3D算法中使用,主要包括块匹配,patch matching,shrinkage和 aggregation 。

        三、讨论了相关噪声协同滤波的固有限制,使用global Fourier thresholding和refltering的方法改善了滤波效果

        四、该方法在BM3D算法中,效果得到显著的提升, refiltering在BM3D和其他算法中都能改善降噪效果

相关噪声

如果g是δ函数,则为白噪声,否则为相关噪声。在整个计算中,功率谱密度PSD是已知的。

几种典型的相关噪声,这些噪声之间还可以进行组合,得到新的相关噪声。

 相关公式和符号

M个d维数据,xt为坐标

对其做d维变换

 对其做d+1维变换,可以认为先做d维变换,再做1维,NL长度的变换

大致过程如下

谱系数方差近似计算

计算d维变换的谱系数

计算d维变换的谱系数的方差

方差和块的位置不相关,且

 则

 计算d+1维变换的谱系数,在d维的基础上,再做1维

 计算d+1维变换的谱系数的方差,其中cov维块间的协方差

 如果相似块间的噪声是不相关的,则协方差为0,假设最后1维变换是正交归一化的,则有d维变换的谱系数的方差和d+1维的相等,且和块的位置不相关,则有式(8)。但这是不现实的,比如块间有相互重叠,则噪声间有相关,或者不重叠,但噪声是相关的。

谱系数方差精确计算

计算d维变换的谱系数

计算d+1维变换的谱系数

写成卷积的方式,δxt,只在xt处有值,其他地方都是0,式(12)和(6)在数值上是等价,但式(12)嵌入了坐标位置信息。(其实这里是有疑问的,g如果是δ函数,那不就是白噪声吗,是其他函数也是一样的结果吗)

 计算d+1维变换的谱系数的方差,和式(5)比,多了BjNL项,会随着块的位置而变化,这个是通用的,没有假设正交归一等。

 近似计算和精确计算对比

图中做了连个1d变换,DCT+Haar。

表示式(8)和式(14)的比值,j=1,2,3,4的图表示这个比值,比值为1则相等,不为1则不等。从图可以看出,白噪声,不重叠的情况下比值恒为1,二者相等;白噪声,重叠情况下,比值不为1,二者不相等;相关噪声,不重叠情况下,比值不为1,二者不相等,(列了两种不重叠,有的差异小点,有的差异大);相关噪声,重叠情况下,比值不为1,二者不相等,差异较大。

 

 块间匹配

 块间相似性匹配,值域距离(差异)

变换域上的距离

为了减少噪声的影响,用标准差做尺度变换,可以减少哪些特噪声系数的权重

在相关噪声情况下,临近块之间的相关性会影响到匹配结果,所以需要考虑块间方差。 两个块的谱系数差异

随机变量

 的均值和方差

则,式(17)的期望

加上偏置的距离

因为噪声的存在,匹配的结果受到影响,块间距离会增大,为0并不是最优的匹配,平均多了2*σ2,这个和NLM是类似,只是转换了域,不在值域。

在BM3D中的使用——patch matching

试验表明,根据式(23)进行块间匹配的结果进行排序,可以改善噪声。实验中γ=3,BM3D中的第一步使用,第二步中不使用,即​​​​​​​第二步中γ=0。和原来的对比,多了后面那一项,这一项可以根据式(14)计算得到。

γ取不同值时的降噪效果

 γ取不同值时的匹配情况。原来的匹配结果,和参考块重叠度很高,修正后,和参考块的重叠度就很小了。

在BM3D中的使用-Shrinkage

在BM3D中的使用-Aggregation

快速计算的方法

原来的方法不需要每次计算谱系数方差,现在需要对每个块都做计算式(14),计算量大了很多,通过一下方法减少计算量,近似求解。

1、使用插值的方法对PSD进行下采样,减少计算量

2、利用稀疏性---不知道如何减少计算量

3、利用对称性,计算量减半

4、只计算某些块的方差,比如计算K个块,根据算出的K个块方差,近似计算出其他块的方差,如果K为0,则式(29)和式(8)相等 

 Global Fourier thresholding and refiltering

当噪声和细节很相似时,就很难区分,没法做到降噪的同时不影响细节,要么就细节受损,要么就噪声没去掉,用精确计算公式(14)也是一样的。为了改善这个问题,先GLobal Fourier Thresholding灰度出噪声图像,然后再重新滤波。

 整个BM3D的流程大概如下(感觉计算量增大了很多,又重新算了遍,应该翻倍了)

参数选择

 hard-thresholding中λ参数的确定,和相关核有关,白噪声的小一些

Wiener filtering中的µ2和λ。在BM3D中取µ2=1,可以在一定数据集上,二维参数中遍历,得到最优的参数 另外,

实验中K=4,Nf=32 

试验结果

与最大值差异较小的都标记为粗体了 refilter不仅仅用在BM3D中,在其他算法中也有效。

主观效果对比,感觉有时refltering增加了很多细节,如果有没这一步,噪声虽然滤除了,但细节也丢了不少。

文章公式较多,有的地方可能理解不对,欢迎指出,一起探讨学习!

标签:系数,BM3D,方差,变换,噪声,改进,算法,计算
来源: https://blog.csdn.net/zhognsc08/article/details/122764308

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有