基于分层贝叶斯模型的图像修复方法

2023-11-02 12:36苏挺超沈映珊
计算机应用与软件 2023年10期
关键词:后验贝叶斯像素

苏挺超 沈映珊

1(广州开放大学 广东 广州 510091)

2(华南师范大学计算机学院 广东 广州 510631)

0 引 言

图像在采集和传输过程中,受外界环境、采集设备、人为或网络通信干扰等因素的影响会出现损坏、像素缺失等图像不完整问题。图像不完整在模式识别和计算机视觉领域中广泛存在,如果不对缺失信息进行修复,必然会导致后续信息提取和图像识别系统性能下降,因此图像修复是当前模式识别和计算机视觉领域中的一个重要研究方向[1-3]。

图像修复在数学角度是一个高度不适定问题,利用缺失像素周边的先验像素对缺失信息进行估计和概化,以达到填充和修复的效果[4]。目前国内外学者对图像修复技术的研究主要可以分为基于偏微分方程的图像修复方法、基于纹理合成的图像修复方法和基于深度学习的图像修复方法,其中基于偏微分方程的图像修复方法采用变分原理或者边缘恢复等准则,从缺失区域边缘开始,利用图像完整区域的先验信息不断向未知缺失区域进行扩展,使缺失区域不断缩小,直到完全消失,典型方法有整体变分(Total Variation,TV)类模型[5-7]和曲率扩散(Curvature-Driven Diffusion,CDD)模型[8]等,该类方法在小区域信息缺失时能够取得较好的修复效果,但是当信息缺失区域较大时,修复效果会出现明显下降,不能满足实际使用要求。针对该问题,Criminisi等[9]提出了一种经典的基于纹理合成的图像修复方法:Criminisi算法,该算法以图像块为单位并对边缘信息的优先级进行排序,优先对纹理特征明显的区域进行修复,以保证结构的完整性。Criminisi算法在面对缺失面积较大的图像修复问题时能够获得较好的结果,但是存在图像修复时间长、图像修复性能受优先级影响较大的问题,近年来许多学者在此基础上对Criminisi算法从不同方面进行了改进和优化[10]。深度学习类方法是近年来兴起的一种新的图像修复手段,采用卷积神经网络(Convolutional Neural Networks,CNN)或生成对抗网络(Generative Adversarial Networks,GAN)等结构通过对输入的大量已知图像信息进行学习得到该类图像的纹理和结构特征,并用于对缺失区域进行填充,该类方法在训练样本(已知图像)足够多的条件下能够获得最优的修复性能,但是当训练样本数不足时,会出现学习不充分导致的性能下降问题[11-12]。

在上述研究的基础上,针对目前图像修复方法存在的运算量大、修复后图像质量下降等问题,本文将贝叶斯决策理论引入图像修复领域,提出一种基于分层贝叶斯模型的图像修复算法,在高斯先验假设前提下,将高斯分布的均值和协方差矩阵作为随机变量,并利用Gassian-Wishart分布对其建模,在此基础上根据贝叶斯理论推导出完整图像的后验分布,最后在最小重构误差准则下利用变分贝叶斯期望最大(VBEM)算法得到模型参数的最优估计,从而实现图像修复。

1 模型建立

1.1 图像修复一般模型

对于一般的图像修复问题,可以用式(1)所示线性模型进行分析。[13]

y=Ax+n

(1)

式中:y为存在信息缺失的观测图像;x为希望获得的原始图像;A为观测矩阵,与y中缺失信息对应位置的矩阵元素为0;n为加性噪声,通常服从零均值高斯分布。图像修复问题是根据已知观测图像y和观测矩阵A,在噪声n存在的条件下实现对未知原始图像x的求解,作为典型的高度不适定问题,图像修复往往难以获得唯一解,通常的做法是利用原始图像的先验信息对式(1)模型进行正则化,并将其转化为式(2)所示的优化问题。

(2)

式中:λ为正则化参数,实现图像保真度和消除误差之间的折中;R(x)为正则项,可以为整体变分正则和稀疏正则等不同形式。采用拉格朗日算法或者二次约束对式(2)所示优化问题进行求解可以得到模型参数并最终获得对原始图像的修复结果。需要指出的是,正则化参数λ和正则项R(x)的选取对图像修复性能影响较大,当前多数方法都从不同的角度对其进行分析和优化设置,但是不可避免地会存在运算复杂或修复后图像质量下降等问题。

1.2 贝叶斯分层图像修复模型

不同于传统方法将模型参数认为是固定不变的,贝叶斯决策理论将模型参数看做是具有某种分布的随机变量,在进行参数估计的同时给出置信度信息。对于式(1)所示图像修复模型,由于n为零均值高斯白噪声,即n~N(0,σ2I),根据概率分布的线性性质,可以得到已知x条件下y的条件概率为p(y|x)=N(Ax,σ2I),假设x的先验分布为p(x),由贝叶斯公式可得已知y条件下x的后验概率为:

(3)

(4)

对式(4)进行求解可以得到最小均方误差准则下的最优重构图像为:

(5)

式中:E(·)为对括号内变量求期望运算符;Ex|y(·)为条件期望运算符,表示给定y条件下,求括号内变量关于x的条件期望。从式(5)可以看出,在最小均方误差准则下,最优重构图像为已知y条件下,x的条件均值。

从式(3)和式(5)可以看出,要想得到最优重构图像,关键是要知道未知完整图像x的先验分布p(x)。目前常用的先验模型有贝塔分布、泊松分布和高斯分布[14]。由于本文需要解决的是高斯白噪声背景下的图像修复问题,结合大数定理和中心极限定理,我们认为p(x)服从高斯分布,进一步假设其均值为u、协方差矩阵为D,即p(x)=N(u,D)。正如前文指出,贝叶斯决策理论认为模型参数是具有某种分布的随机变量,因此为了构建完整的贝叶斯结构,利用Gaussian-Wishart分布分别对u和D进行建模,至此我们得到所提分层贝叶斯模型如式(6)所示。

(6)

将式(6)代入式(3)和式(5),可以得到已知y条件下x的后验概率为:

(7)

2 变分贝叶斯期望最大算法

根据1.2节的分析,最初的图像修复问题被转化为求模型中参数的最优估计问题。本文采用变分贝叶斯期望最大(VBEM)算法对上述模型进行求解[15]。VBEM算法是在期望最大(Expectation Maximization,EM)算法基础上发展起来的一种求概率模型中参数最优估计的方法。与EM不同的是,VBEM将模型参数也作为具有某种概率分布的随机变量,通过迭代估计其后验概率分布,并用后验分布的均值作为参数的最优估计值。

VBEM算法通过对式(8)所示对数似然函数进行优化实现参数估计。

Ψ=(yTy-yTAx-xTATy+xTATAx)-

ln|αI|-uH(αI)-1u-lnσ2-

(v0+1)ln|D|-tr(W0D-1)+const

(8)

式中:const表示常数。上述对数似然函数对模型参数{u,D}是凸函数,可以采用交替最小化方法来优化Ψ函数,即每次迭代时,首先选取参数u作为变量,固定参数D,使u对Ψ求最小化,然后进行交替,选择D作为变量,固定u,使D对Ψ求最小化,依此类推。

1) 令u为变量,固定{D},通过对式(8)中与u有关的项进行整理,并忽略其他项可得:

q(u)=p(u|mu,Tu)

(9)

其中:

T=((αI)-1+〈D-1〉)-1

m=T〈D-1〉〈x〉

(10)

进一步可以计算得到u的后验期望为:

〈u〉=m

(11)

2) 令D为变量,固定{u},通过对式(8)中与D有关的项进行整理,并忽略其他项可得:

(12)

其中:

(13)

式中:M×N表示图像大小。根据式(12)和式(13)进一步可以计算得到D的后验期望为:

(14)

3) 终止条件:重复上述迭代步骤,直到连续两次对数似然函数的值的变化小于预设门限(例如:10-4)时,迭代终止,将此时得到的参数代入式(7)计算得到的η即为修复后的图像。

3 算法与实现

3.1 参数设置

从上述VBEM算法的推导过程可以看出,模型求解过程需要设置三个初始参数:Wishart分布的参数v0和W0、噪声方差σ2。其中:v0和W0涉及到u和D的计算并最终影响η和C的值;噪声方差σ2直接影响η和C的值。目前常用的模型初值设置方法为经验试凑法,对算法设计人员的经验要求比较高,主观性强且运算量大,一种更加合理的方式是从数据中获取模型初值,因此本文采用如下方法得到初始参数值:

1)v0和W0的设置。由于v0和W0为Wishart分布的统计特征,要想准确估计通常需要较多的数据,因此将观测图像划分为8×8大小不重叠的图像块{x1,x2,…,xK},然后利用式(17)和式(18)对v0和W0进行估计:

(15)

(16)

2)σ2的设置。σ2为图像中的噪声方差,需要根据不同的噪声水平进行设置,经过多次实验我们发现,当对于信噪比水平低于20 dB时,取σ2=0.15可以取得较好的修复性能,当信噪比水平高于20 dB时,取σ2=0.1往往能够取得较好的修复性能,本文设置σ2=0.1。

3.2 算法流程

图1给出了本文算法流程,可以看出对于给定像素缺失图像,利用方法对其进行修复主要包括以下步骤:

图1 算法流程

1) 根据输入图像像素缺失情况构建观测矩阵A。

2) 根据式(15)和式(16)计算得到模型求解过程中涉及的三个初始参数v0、W0和σ2的值。

3) 根据式(10)对T和m的当前值进行更新。

4) 根据步骤3)得到的结果对u的后验期望值〈u〉进行更新。

6) 根据步骤5)得到的结果对D的后验期望值〈D〉进行更新。

7) 根据上述参数值计算当前对数似然函数值是否满足迭代终止条件,若是,则根据式(7)计算得到η即为重构图像,否则转至步骤3),重复步骤3)-步骤7)直至满足迭代终止条件。

算法软件实现流程如算法1所示。

算法1算法软件实现示例

输入:观测缺失图像y。

1) 初始化:

(1) 根据缺失像素位置确定观测矩阵A。

(2) 根据式(15)和式(16)确定v0、W0和σ2。

(3) 设置式(8)所示对数似然函数初值为Ψ=0。

2) 循环:迭代次数forn=1∶1 000

步骤1 〈u〉=m。

步骤4 根据式(8)计算当前对数似然函数值Ψ=Ψn。

IfΨn-Ψn-1<10-4,

elseifn=n+1,继续循环

end

4 实 验

4.1 实验数据

为了验证本文方法的图像修复性能,采用图2所示MATLAB自带的图像处理领域标准图像开展实验,包括512×512 Lena、512×512 Peppers、512×512 Baboon、787×576 Boats、256×256 House和787×576 Airplane,涵盖了人物、动植物、建筑物和自然环境等不同种类。实验中设置两种像素缺失方式:一种是从图像中随机选取一定数量的像素点,通过将观测矩阵A对应位置的元素置0的方式使其成为缺失像素;另一种是从图像中随机选取a×b大小的矩形块,同样将观测矩阵A对应区域的元素置0,使其成为缺失像素区域。采用式(17)定义的峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)和式(18)定义的结构相似度指数(Structural Similarity Index Measure,SSIM)两种指标对图像修复性能进行定量评估。

(a) Lena (b) Peppers

(17)

(18)

式中:l(·)、c(·)和s(·)分别为亮度、对比度和结构比较函数。对于修复后的图像,PSNR越大表明修复前后相同位置处像素之间的差异最小,修复效果越好,同样SSIM越接近于1,表明修复后图像更好地保持了原图像的结构信息,修复效果越好。

实验中采用MATLAB R2017仿真软件开展实验,软件运行平台为Windows 10操作系统,Intel Core I5双核,主频2.2 GHz,内存为4 GB的PC机。同时在相同条件下将所提分层贝叶斯模型(Hierarchical Bayesian Model,HBM)与文献[16]和文献[17]所提算法进行对比,两种对比方法的参数设定来自作者论文及相关代码中的设置。

4.2 实验结果及分析

在随机缺失实验中,对图2所示6幅标准图像分别设置随机缺失像素数为总像素数的10%、30%、50%和70%四种情况开展实验,利用本文方法、文献[16]方法和文献[17]方法进行修复,表1给出了三种方法的性能对比结果,其中数值为不同缺失率下6幅标准图像修复结果的平均值。图3以“Lena”为例给出了随机缺失70%情况下的三种方法图像修复视觉质量对比情况。

表1 随机缺失情况下不同算法性能对比

(a) 随机缺失70%图像 (b) 文献[16]算法

可以看出,在不同数据缺失率情况下,本文方法在PSNR和SSIM两种指标方面的表现性能均优于两种对比方法,例如当缺失率为50%时,本文方法的PSNR优于31 dB,相对于文献[16]和文献[17]所述方法提升了4~5 dB,同时SSIM指标优于0.92,相对于文献[16]和文献[17]所述方法提升了0.3~0.4,表明本文算法具有更好的修复性能,同时在不同缺失率情况下,本文方法完成图像修复耗时最少,实时性最高。

从图3给出的视觉质量对比可以看出,本文算法的图像修复质量最高,视觉效果最为自然,除了标红的少数边缘区域外,较好地保证了原始图像纹理和结构的连贯性和清晰度;而文献[16]所提算法对鼻子和嘴处纹理特征的修复效果较差;文献[17]所提算法对头发和背景边缘区域的修复结果较为模糊,效果较差。究其原因在于本文算法基于高斯先验对图像像素的统计特性构建模型,本质上是以像素之间的结构信息和纹理信息相似度作为约束法则,同时Gaussian-Wishart分布的加入强化了对不适定问题的正则化,提升了参数估计的稳定性;而文献[16]算法采用将图像转换至小波域的方式获取图像子带信息,根据等光点能量特征寻找子带中优先修复块的填充块,从而实现图像修复,但是该方法采用固定大小的样本块,损失了图像的结构信息,同时小波变换缺乏方向性的特点也会造成信息丢失,降低了该方法的图像修复性能;文献[17]算法首先对待修复区域的优先级进行计算,然后利用贪婪算法搜索得到最优填充块,但是随着修复时间的增加,优先级的置信度会出现下降,对最终的修复效果造成影响,并且与文献[16]算法类似,该方法同样采用了固定大小的样本块,没有充分考虑图像的结果信息。

表2给出了当区域缺失块的大小分别为16×16、32×32、64×64和128×128情况下的修复性能,同样其中数值为不同缺失率下6幅标准图像修复结果的平均值。图3以“Baboon”为例给出了区域缺失大小128×128情况下的三种方法图像修复视觉质量对比情况。可以看出,表2与图4的结果一致,在区域缺失情况下,本文方法同样可以获得最优的图像修复性能,较好地保持了图像中的纹理和结构信息,并且具有最高的实时性。

表2 区域缺失情况下不同算法性能对比

(a) 128×128缺失图像 (b) 文献[16]算法

5 结 语

图像修复是近年来模式识别和计算机视觉领域的研究热点,通常作为一种提升图像质量的预处理手段用于提升后续信息提取和图像识别的性能。本文提出一种基于分层贝叶斯模型的图像修复方法,利用高斯先验描述图像像素的统计特性,同时为了构建完整贝叶斯模型,利用Gassian-Wishart分布对高斯先验的均值和协方差矩阵进行建模,进而根据贝叶斯理论推导出完整图像的后验分布,将图像修复问题转换为模型参数估计问题,最后利用VBEM算法实现参数估计和图像修复。基于标准图像的实验结果表明,本文算法在PSNR、SSIM和实时性方面相对于对比方法表现出了明显优势,并能够获得较好的纹理和结构连续性。

需要指出的是,本文方法在无噪声或存在高斯噪声但信噪比较高时能够获得较好的修复效果。在实际应用过程中,低信噪比和椒盐噪声情况普遍存在,而此时算法的图像修复效果会出现下降,因此需要图像修复算法对不同信噪比水平和噪声形式具有更强的鲁棒性,这也是接下来一项重要研究内容。

猜你喜欢
后验贝叶斯像素
像素前线之“幻影”2000
基于对偶理论的椭圆变分不等式的后验误差分析(英)
“像素”仙人掌
贝叶斯统计中单参数后验分布的精确计算方法
ÉVOLUTIONDIGAE Style de vie tactile
贝叶斯公式及其应用
一种基于最大后验框架的聚类分析多基线干涉SAR高度重建算法
基于贝叶斯估计的轨道占用识别方法
高像素不是全部
一种基于贝叶斯压缩感知的说话人识别方法