一种具有拉普拉斯噪声的非参数贝叶斯字典学习方法与流程

文档序号:17492683发布日期:2019-04-23 20:48阅读:322来源:国知局
一种具有拉普拉斯噪声的非参数贝叶斯字典学习方法与流程

本发明涉及概率字典学习领域,是一种具有拉普拉斯噪声的非参数贝叶斯字典学习方法。



背景技术:

在现实中,由于科技技术不够完善或者经济原因不能获得更高端设备等原因,所获得的信号常常伴随着一些噪声,如航天航空采集数据、生物特征数据,监控录像拍摄到的犯罪嫌疑人的影像等,这些都促使了信号降噪领域的研究和发展。近年来专家学者们先后提出了众多基于机器学习的信号降噪的方法,其中字典学习在图像降噪方面的应用问题更是发展得如火如荼。

然而传统的字典学习方法存在着一些问题。一方面,经典字典学习方法如ksvd,需要预先得知噪声的方差以及字典的原子数目,这些都是在实际问题中难以得到的。为了解决这一问题,mingyuanz等人提出了一种基于beta先验过程的字典学习方法(bpdl),这一方法不需要预先得知噪声的离散程度也不需要预先得知字典的原子数目,有效的解决了这一问题。但是这一方法是针对高斯噪声处理的模型,而实际情况中噪声产生的原因是多样复杂而不可预测的,对于其他常见的噪声诸如椒盐噪声,bpdl就不再适用了。

另一方面,由于科技发展的原因,采集到的数据往往是高维数据,比如证券市场交易数据、多媒体图形图像视频数据。然而在高维数据的处理和应用方面仍然存在很多问题。传统机器学习方法基本是针对向量的一维数据处理的,在分析高维数据的时候,人们常常是将高维数据向量化,再采用向量数据的处理方法处理这些高维数据。但是这样就存在了一个很严重的问题,就是在数据向量化的过程中会破坏高维数据的内部结构,即高维结构。这样的结果是,一方面给数据的原有信息造成损失,转换后的数据所蕴含的信息与转换之前的高维度数据所包含的信息并不一致,信息的损失会给后续的处理工作增加困难和降低可靠性。因此,如何直接对高维数据做处理成为了解决高维结构破坏的关键问题。



技术实现要素:

本发明提出一种具有拉普拉斯噪声的非参数贝叶斯字典学习方法,对灰度图像数据中的椒盐噪声进行去噪。本方法对图像数据进行字典学习建模,并假设噪声部分服从拉普拉斯分布,采样非参数贝叶斯方法对模型进行概率分布假设;通过最大似然估计法获得模型的目标函数;采用吉布斯采样法对目标函数中所有随机变量采样;通过em算法反复迭代更新得到各变量的最优解。使用最优解构造输出数据,即输出图片,从而获得干净数据,去除噪声。对灰度图像数据的噪声部分进行了拉普拉斯假设,有效去除了椒盐噪声,对高斯噪声也有一定的去噪能力,此外还能够很好的去除高斯和椒盐的混合噪声。

本发明采用的技术方案为一种针对拉普拉斯噪声的非参数贝叶斯字典学习方法,该方法的具体实施过程如下:

s1针对拉普拉斯噪声的非参数贝叶斯字典学习

贝叶斯过程的非参数字典已经被应用到针对高斯噪声的处理中,但是没有应用到椒盐噪声的处理中。本方法是把模型推广到椒盐噪声的处理中,如下给出针对拉普拉斯分布的噪声的非参数贝叶斯字典学习模型bpldl的分层模型:

xi=d(si⊙zi)+εi

πk~beta(a0/k,b0(k-1)/k)

γs~γ(c0,d0)

γε~γ(e0,f0)

其中xi是第i个样本向量,是一张图片的一个尺寸为8*8的patch块;d是字典,不同的样本拥有同一个字典;si⊙zi是稀疏表示系数,符号⊙表示哈达玛乘积,si服从高斯分布;zi用来控制表示的稀疏性,只拥有0,1两种取值,因此服从伯努利分布;εi是椒盐噪声,假设服从拉普拉斯分布,这一点是尤其与贝叶斯的非参数字典学习不同的地方;πk表示在向量zi的第k个数为1的概率,即在表示第i个样本时用到完备字典d的第k个原子dk的概率,πk服从贝塔分布;γs表示si的离散程度,服从伽马分布;γε-1/2是拉普拉斯分布中的尺度参数,γε服

从伽马分布。a0,b0,c0,d0,e0,f0都是常量。

s1.1模型的目标函数

由于图片的噪声εi服从拉普拉斯分布,为便于后续推导,引入因变量控制因子β。通过模型中各变量的先验假设,可以得到变量的联合概率:

γ(γs;c0,d0)γ(γε;e0,f0)

而该模型的目标函数就是让联合概率达到最大:maxp(x,d,z,s,π,γs,γε,β)

其中x是所有样本的集合,是一个8*8的滑动窗口在一张图片上得到的所有patch块的集合,是一个p*n矩阵,每一列为一个样本,共有n列,字母i为第i个样本的序号,图片的第i个patch块是xi,字母p表示第p行;εi是图片的patch块xi的噪声项;d是从样本集分解出的字典,是一个p*k矩阵,一共有k列,k为其中第k列的序号,表示dk;s是从图片x字典学习分解出的非稀疏表示,是一个k*n矩阵,行序号用k,列序号用i表示,即第i列为si;稀疏因子z是一个二进制的k*n矩阵,每一个元素非0即1,行序号用k,列序号用i表示,即k行第i列为zik;π是大小与稀疏因子z相同的矩阵,第k行为πk;β是控制因子矩阵,矩阵大小与图片的patch块集合x的大小一样,βi是β的第i列变成对角阵,det(βi)是求βi的行列式值,βip是第i行p列的数值;γs表示si的离散程度,σ=γε-1/2是拉普拉斯分布中的尺度参数,γε服从伽马分布。a0,b0,c0,d0,e0,f0都是常量。

s1.2目标函数的求解过程

采用最大似然估计法求解目标函数,可以得到各变量的后验概率即采样公式:

a.对dk采样:

均值:

方差:

dk是字典d的第k列,sik是从x字典学习分解出的非稀疏表示s的第k行第i列;zik是一个二进制矩阵稀疏因子z的第k行第i列数值,非0即1;εi是样本xi的噪声项;βi是控制因子矩阵β的第i列变成对角阵,det(βi)是求βi的行列式值;σ=γε-1/2是拉普拉斯分布中的尺度参数,γε是噪声的离散程度。p是字典d的行数。μdk是dk的均值,σdk是dk的方差。

b.对sik采样:

均值:

方差:

dk是字典d的第k列,sik是从图片的patch块集合x字典学习分解出的非稀疏表示s的第k行第i列,si是非稀疏系数s的第i列;zik是一个二进制矩阵稀疏因子z的第k行第i列数值,非0即1;βi是控制因子矩阵β的第i列变成对角阵,det(βi)是求βi的行列式值;γs表示si的离散程度,σ=γε-1/2是拉普拉斯分布中的尺度参数,γε是噪声的离散程度。k是非稀疏系数s的行数。μsik是sik的均值,σsik是sik的方差。

c.对zik采样:

zik是二进制矩阵稀疏因子z的第k行第i列数值,非0即1;βi是控制因子矩阵β的第i列变成对角阵,det(βi)是求βi的行列式值;γs表示si的离散程度,σ=γε-1/2是拉普拉斯分布中的尺度参数,γε是噪声的离散程度;πk是zik为1的先验概率;p1是zik为1的后验概率,p0是zik为0的后验概率。

d.对πk采样:

πk是zik为1的先验概率;zik是一个二进制矩阵z的第k行第i列数值,非0即1;k是z的行数;n是z的列数;a0,b0都是常量。

e.对γs采样:

si是非稀疏系数s的第i列;γs表示si的离散程度;k是非稀疏系数s的行数;n是非稀疏系数s的列数;c0,d0都是常量。

f.对γε采样:

γε是噪声的离散程度;βi是控制因子矩阵β的第i列变成对角阵,det(βi)是求βi的行列式值;γs表示si的离散程度,σ=γε-1/2是拉普拉斯分布中的尺度参数;εi是图片的样本xi的噪声项;n是样本集x的列数,p是行数;e0,f0都是常量。

g.对β采样:

均值:

其中:mip=(xip-dp(si⊙zi))2,dp是d的第p行。xip是图片patch块集合x的第p行i列;β是控制因子矩阵,矩阵大小与x一样,βi是β的第i列变成对角阵,det(βi)是求βi的行列式值,βip是第i行p列的数值;γs表示si的离散程度,σ=γε-1/2是拉普拉斯分布中的尺度参数;是βip的数值期望。

在采样过程中,用吉布斯采样法,利用上述各变量的后验概率采样。通过em算法迭代,得到各变量的最终值。

降噪后图片重建:xi=d(si⊙zi)。

附图说明

图1是本方法的模型整体流程示意图。

图2是本方法的模型实施示意图。

图3是本方法的采样流程示意图。

图4是本方法的实例图。

图5是本方法的实例对比图。

具体实施方式

对woman,peppers,lena,house,cameraman,boat,barbara这七张图片加10%,20%,30%,40%,50%,60%,70%,80%的椒盐噪声作为噪声图像,用本文提出的bpldl模型去噪计算psnr,并和用bpdl去噪的psnr结果做对比,共有56个对比实验,这七张图片中boat图片尺寸是128*128像素,其余图都是256*256像素。

psnr是峰值信噪比(peaksignaltonoiseratio),是一种图像质量评价指标,常用于评价图片的降噪效果,其值越大,降噪效果越号,公式如下:

其中out是模型的输出图,in是模型输入图,它们都是m*n像素大小,对于256*256大小图片,m=n=256,对于128*128大小图片,m=n=128;b是用于表达像素点的二进制位数,对于灰度图b=8。

表1.7张图添加不同程度椒盐噪声用bpdl和bpldl(本方法)去噪后psnr对比表

从上表中可以看出,bpldl方法对椒盐噪声有较好的去噪效果,56个实验中有49个实验的结果是bpldl效果比bpdl效果好,psnr差距大概在4db-16db之间,在加70%及以下的椒盐实验中,bpldl方法有很大优势。

图4.分别加有10%椒盐噪声的七张图在bpdl和bpldl模型处理后图片的psnr对比情况。坐一列为原图,左二列是在原图基础上加10%椒盐噪声后的噪声图片及psnr,左三列是用bpdl方法处理以后的图片及psnr,左四列是用bpldl(本文提出的模型)处理后的图片及psnr。

图4是从表1的56个实验中取出的七个实验展示图。从图4中可以看出,和bpdl方法相比,bpldl对椒盐噪声有明显处理效果,处理后的图片已经完全没有椒盐噪声的身影,并且图片干净轮廓细节比较清晰。因此可以得出结论,与bpdl模型相比,bpldl模型对椒盐噪声有很好的处理效果。

从噪声的原理上来讲,椒盐噪声可以被视为高斯噪声的极端情况,即被选中的像素点加了方差极大达到255的高斯噪声,而没有被选中的像素点加了方差为0的高斯噪声。本发明的模型既然可以很好的处理极端高斯即椒盐噪声的情况,它也有可能处理高斯噪声,通过设计以下实验进行验证。

由于在bpldl模型中,当参数β=1时,bpldl会退化成bpdl模型,这是拉普拉斯分布和高斯分布的差异导致的。在字典学习的学习过程中,bpldl模型中的参数β是自主学习得到的,是一个随机变量,在这一层面上,bpdl模型可以理解为是bpldl模型的随机变量β变成常量的简易模型,因此猜测bpldl模型对高斯噪声也有去噪效果,并做了表2实验验证。

表2

对house图片添加方差σ=5,10,15,…,40,50的高斯噪声,分别用bpdl模型和bpldl模型(本方法提出模型)进行处理,噪声图的psnr值及两种模型处理后的图片的psnr值。

从表2中可以看出,在处理高斯噪声方面,bpldl模型并不如bpdl模型效果好,与bpdl模型相差1db-3db,但与bpdl处理椒盐噪声和bpldl处理椒盐噪声psnr相差4db-16db相比,显而易见,bpldl处理高斯噪声的能力并不比bpdl处理高斯噪声的能力差很多;也就是说,可以认为bpldl模型具有处理高斯噪声的能力,只是没有那么强。

从理论上讲,这样的结论也是情理之中。正如刚才所言,参数β=1时bpldl退化成bpdl模型,由于参数β是个随机变量,是学习的来,并非常数,这使它存在学习不完善不理想的情况,比如学习到0.83、3,而没有学习到最优解1,也就是说模型学习到的参数只是处理最优解附近,并非最优解,因此也不能使模型处理高斯噪声时达到最好的效果,自然是要比bpdl这一已知β最优解的模型处理高斯噪声效果更差。

虽然bpldl模型处理高斯噪声效果不是十分理想,但是不能否定的是,它是具有处理高斯噪声的能力的。由此,bpldl模型可能也能够处理高斯和椒盐的混合噪声,通过如下实验进行验证:

表3.

在5张图片上加高斯噪声σ=5,10,15和椒盐噪声10%,20%,…,80%的混合噪声一共24种情况,表中列出的是噪声图、bpdl处理后图、bpldl(本文方法)处理后图的psnr.

表3中一共有5*24=120个对比实验,其中有103个对比实验的对比结果是bpldl对混合噪声的处理效果优于bpdl,psnr的差值在1db-13.3db之间,得出结论,在处理椒盐和高斯混合噪声方面,大多数的情况下,bpldl模型的处理效果比bpdl模型处理效果更好。为了从图像上更直观看出图片处理效果与差距,选σ=5高斯和10%椒盐混合的处理情况列在图5中。

图5的左一列是原始干净图,左二列是加10%椒盐噪声和σ=5的高斯噪声的噪声图,左三列是用bpdl降噪以后效果图,左四列是用bpldl(本论文的方法)降噪以后效果图

此实验说明本方法bpldl对椒盐噪声有较好去噪功效,而bpdl方法不能有效去除椒盐噪声。从psnr来讲,与bpdl方法相比,bpldl方法提高了5-6db;从效果图上直观来看,bpldl方法处理出的图片更干净清晰。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1