基于边缘重建的多尺度壁画修复方法
2021-09-19张豪远罗海妮
张豪远,徐 丹,罗海妮,杨 冰
(云南大学信息学院,云南 昆明 650500)
壁画是在石窑、寺观、殿堂和墓室上绘画的图像,也是最原始的绘画形式之一。目前已发现最早的中国壁画是汉代作品,其起源可以追溯到黄帝时代,记录了古人的日常生活、内心愿望,以及对神话故事的描述。所以,古壁画具有很高的艺术、历史、文化和宗教价值。千百年来这些古壁画不可避免地出现了裂缝、脱落和褪色等多种形式的病害,在对其进行研究和保护上均存在较大困难;同时壁画作为不可再生资源,其文化遗产的重要性已经成为学术界的研究热点。尽管国家做出很多努力,投入了大量的人力物力,但也只能在一定程度上延缓古壁画的破损,尤其直接对其进行手工修复所带来的保护性破坏,更加速了古壁画的退化过程。相比之下,数字虚拟修复能根据修复效果进行多次调整以确定最终结果,不仅降低了修复难度和风险,而且为手工修复方案的制定提供了参考。因此,研究古壁画的数字虚拟修复尤为重要。
1 相关工作
数字虚拟修复是根据图像完好区域的已知信息来感知破损区域的内容,通过填补破损区域的结构和纹理以完成其修复过程。近年来,在图像修复中深度学习的方法展示了巨大的潜力。2017 年,REN 和CHEN[1]使用广义回归神经网络,对敦煌壁画进行了数字化虚拟修复,取得了一定的修复效果;对于人脸图像,文献[2]使用生成对抗网络对破损区域进行了修复,成功填补了缺失的纹理但无法修复结构复杂的图像;文献[3]使用卷积自编码器,对不规则破损的壁画进行修复,并在真实破损壁画上取得较好的修复效果。上述应用于壁画修复方法,难以发挥神经网络在特征提取方面的优势,这是因为壁画破损程度复杂,信息丢失严重,且在数据分布上杂乱无序。
目前针对壁画大面积脱落的研究还比较少,其中Criminisi 算法[4]可有效填补图像缺失的纹理内容,此外文献[5]提出一种改进的块匹配图像修复方法,根据像素点对应的梯度变化确定结构信息,并先修复包含较多结构信息的块;文献[6]采用不同的初始化条件生成5 个图像并组建匹配块搜索集,扩大了匹配块的搜索范围,使得修复结果具有更好的视觉一致性;文献[7]提出置信度空间变化更新策略来估计块的优先级,通过计算源和目标块之间的离差平方和,以获得更好和更快的匹配结果。以上基于块的图像修复算法,一定程度上改善了修复结果结构不连续的问题,但真实破损的壁画同时存在多处纹理脱落和结构破坏的情况,直接采用上述方法会严重影响修复效果。图像去噪的全变分模型(total variation,TV)[8],可用于修复包含噪声的图像,但修复效果容易出现阶梯效应,且运算量大、效率低。在提高算法效率上,文献[9]根据受损像素与其连通区域之间的距离和方向来改进扩散系数,在提高算法效率的同时,使得修复结果质量更好;为避免修复结果中出现的阶梯效应,文献[10]利用高阶HOTV模型修补二次采样的二维图像,使得修复结果更加平滑。为进一步提高TV模型的修复效果,文献[11]利用改进的 CDD (curvature driven diffusions)修复模型,即在TV模型的基础上加上像素点的梯度和等照度线的曲率项来平衡各参考点的权重;同样为了提高CDD 的算法效率,文献[12]加入了各向异性扩散,使得扩散方向可以沿着边缘进行。但是CDD模型会模糊修复结果,尤其在较大破损区域上,于是文献[13]提出了改进的BSCB (Bertalmio,Sapiro,Caselles,Bellester)模型,显著降低了图像噪声,并取得较好的修复效果;文献[14]提出基于非局部BSCB模型的图像修复方法,使用等照度线将图像信息延伸到破损区域,从而保持了清晰的图像信息;但是等照度线的扩散过程仍会使得修复结果模糊,于是文献[15]利用米字型各向异性扩散模型来改进BSCB模型,并对藏式古唐卡进行修复并取得了较好的修复效果。文献[16]对西藏壁画上进行了数字虚拟修复,其实验结果表明CDD模型的修复效果优于经典的TV模型。文献[17]采用改进的CDD模型完成了唐墓室壁画破损区域的修复,使用了交叉扩散代替正交扩散的方式,使得缺失内容的填补策略更加合理。在TV 修复模型基础上,文献[18]在2017 年提出基于形态学成分分析分解的唐墓室壁画修复方法,成功修复了其裂缝破损。上述TV 可以较好延伸图像的边缘信息,但无法填补图像纹理,使得修复结果过于平滑,用于壁画数字虚拟修复难以取得令人满意的效果。
研究表明[19],图像块在图像内部会重复出现,无论是在同一尺度内,还是在不同尺度上,充分利用这些多尺度信息可以提高图像复原性能,并在非均匀盲去模糊的问题上取得了良好的性能。于是,文献[20]尝试对不同放大倍数的模糊图像进行多尺度特征提取,并进行图像超分辨率的恢复,证明了多尺度空间在图像重建上的可用性。文献[21]以山西古墓葬壁画为例,提出多尺度变换的图像修复方法,在视觉连续性上取得较好的修复效果。本文对于破损壁画的修复研究也是在多尺度特征提取的基础上展开的。与传统修复模型相比,该方法在填补缺失纹理内容的同时保持了其边缘结构;与深度学习方法相比,更能在数据分布杂乱的情况下提取有效特征。由于真实壁画破损程度复杂,存在纹理脱落带来的结构破坏,进而本文提出基于边缘重建的多尺度壁画修复方法。该方法通过结构滤波保持图像边缘,结合图像分割算法和聚类算法自动识别分割壁画的破损并生成待修复掩膜;采用Split Bregman 迭代函数求解TV模型来进行边缘重建,与多尺度空间提取的纹理特征相融合,完成整个壁画的修复过程,并取得了很好的修复效果。
2 方 法
本文提出的基于边缘重建的壁画修复方法,主要分为壁画预处理、修复掩膜和修复模型3 个模块。壁画预处理模块根据用户的修复需求来自由裁剪壁画,并对裁剪结果进行平滑图像纹理而保持其边缘结构,为接下来破损区域的分割提供良好的初始化条件;修复掩膜模块首先对壁画的破损区域进行局部分割,通过提取该分割结果的特征,以完成整个壁画的破损分割并生成修复掩膜;修复模型模块结合修复掩膜对破损壁画进行边缘重建,然后在多尺度空间中提取相关纹理来填补破损区域。为了更加清楚地描述整个古壁画的修复过程,方法框架流程如图1 所示。
图1 壁画修复流程图 Fig.1 Mural restoration flowchart
2.1 壁画预处理
现存壁画的数量较少,但种类较多。本文通过网络收集并整理了以寺观为题材的晋宁观音洞壁画、宗教佛像壁画、藏传佛教壁画;以宫廷为题材的丽江白沙大宝积宫壁画、太子游苑图壁画;以墓 室为题材的昭通东晋墓室壁画;以及新疆地域的古龟兹克孜尔石窟壁画和森木塞姆石窟壁画、敦煌莫高窟壁画,总计54 张高清图像,分辨率在640×650到3130×2835 之间不等。所有收集得到的图像尺寸较大,且壁画各个区域的破损程度不同,同时也真实反应出了壁画破损的特点,因此在修复过程中,需根据用户选择的不同修复区域来自由裁剪壁画,以取得更好、更直观的修复效果。
由于壁画图像本身存在丰富的纹理细节,反映在图像分布上则错乱无序,使得不能很好地识别和分割破损区域,继而需要通过平滑图像纹理并保持其边缘结构的壁画预处理。但是壁画存在许多层次的边缘和结构,其重要程度也不同,为此本文引入滚动引导滤波器(rolling guidance filter,RGF)对图像进行滤波[22]以保持壁画重要的边缘结构,平滑不必要的纹理细节。RGF 图像滤波在边缘结构保持和平滑纹理细节上的性能突出,被广泛用于图像细节增强、色调映射、去噪、边缘提取、去半色调、JPEG伪像去除、多尺度结构分解、分割、显著性检测、光流和立体匹配等任务。该滤波处理分为小结构去除和迭代边缘恢复2 个步骤,即
其中,Kp=H(p)为图像归一化;Iq为输入图像;N(p)为p的邻域像素;σs和σr为2 个标准差项分别控制空间和距离上的权重(即去除小于σs和σr的图像成分),是每次迭代的图像输出。以胎藏界五部佛众壁画为例(图2(a)),其中红色标记框为部分滤波前后的对比(图2(b)和(c))。
图2 RGF 图像滤波((a)原始壁画;(b)红色标记;(c) RGF 滤波) Fig.2 RGF image filtering ((a) Original mural; (b) Red mark;(c) RGF filtering)
2.2 修复掩膜
壁画经过预处理后,为接下来破损区域的识别和分割提供了良好的初始条件。由于收集的壁画是彩色图像,不同于二值分割任务,本文引入GrabCut模型[23]来局部分割壁画的破损区域。该模型根据整幅图像当前像素点与前景、背景的相似程度,以及相邻像素间的颜色差异来进行分割。即建立2 个高斯混合模型(gaussian mixture model,GMM)分别描述图像的前景和背景区域,分别计算节点到前景或背景的距离和相邻节点之间的距离以获得能量函数,即
其中,α={0,1}为背景或前景;z为采集的壁画数据,用2 个GMM 分别表示图像的前景和背景,即m=(k1,…,kn)其中kn由K个GMM 的混合特征表示kn∈{1,2,…,K};π,μ和∑分别为前景和背景2K个高斯分量的权重、均值和协方差。
式(2)中V项用来缓和高对比区域的平滑趋势,即
其中,dis(m,n)为相邻像素的欧氏距离;C为邻域像素的集合,对于C中的像素[αn≠αm]的取值为1,[αn=αm]取值为0;γ为一个常量值;β=0 时平滑程度由γ决定,而β>0 时可在高对比度区域调整平滑程度。通过多次迭代不断更新k,θ和α,使得分割能量E收敛于最小值,最终实现图像分割。
经过壁画预处理模块已经获得了良好的图像分割初始化条件,但以图2(a)红色标记处为例以此进行局部分割并不能取得很好的分割效果如图3(c)所示,其原因在于前景和背景差异不够明显。所以,本文选取图3(a)蓝色标记框来进行破损区域的局部分割,其结果如图3(b)所示,为了直观地展示破损的分割效果,以蓝色作为掩膜叠加到原图上显示。说明用户选取局部区域的面积大小并不会影响分割结果,而应尽量选取前后背景差异较明显的破损区域以达到良好的局部分割效果。
图3 局部分割效果图((a)原始壁画;(b)局部分割1;(c)局部分割2) Fig.3 Local segmentation result ((a) Original mural; (b) Local 1;(c) Local 2)
上述分割模型只是在局部作了分割,为了自动计算全幅壁画的破损,本文在整个图像域运行一种标记算法。这样做是要保证破损区域分割的准确性,而不是在全幅壁画上进行大致分割。流程如下:首先,构建一个多维特征向量,其对像素x在不同色彩空间的通道进行非线性变换,即计算HSV 色彩空间的Hue,Saturation 和Value 通道,CIELAB色彩空间的亮度通道L*、从绿色到红色的颜色通道a*和从蓝色到黄色的颜色通道b*,以及RGB 色彩空间的Red,Green 和Blue 通道,即
使用式(6)建立的特征向量,对图3 局部分割的破损,即蓝色掩膜标记处为初始化条件进行特征提取。最后,为了获得完整的修复掩膜,采用k-means进行图像聚类并扩展到整个图像域的分割。经过该步骤后,检查哪些标签被分配给特征区域,然后在已分类的图像中检索并且标识这些具有相同标签的区域,整个图像域的分割结果如图4(b)所示,图4(a)是无RGF 滤波的分割效果。
图4 全幅分割效果图((a)无RGF 滤波;(b) RGF 滤波后) Fig.4 Full-frame split result ((a) Before;(b) After)
2.3 修复方法
经过上述2 个模块的处理,在保持壁画已有边缘结构的同时,得到了破损区域精确分割的修复掩膜。对于壁画破损区域本文不希望因为平滑而带来边缘的丢失,再进行边缘重建。于是,通过基于Split Bregman 的TV 修复[24]步骤搜索图像上已知的可用信息,并对壁画破损区域的边缘进行重建。用Ω表示整个图像域,D表示破损区域,并确定能量函数y为
其中,∇(vx)编码了图像的梯度信息,参数λ用于平衡置信度;z为待修复的给定图像;||…||2为欧几里得范数,对于每个像素x∈Ω
式(8)表示对于破损区域D中的点没有可用信息,而完整区域Ω/D中的可用信息非常重要。式(7)的∇(vx)可通过Split Bregman 迭代算法来求解,即
其中,b为与Bregman 迭代算法相关的变量,在每次迭代中使d最小,极限解应满足约束d=∇v。
通过上述步骤较好地重建了破损壁画的边缘和结构,但未很好填补破损区域缺失的纹理。为解决此问题,采用图像金字塔进行多尺度空间变换,降采样因子是1/2,图5 为采样前后图像。
图5 图像金字塔((a)一次降采样;(b)两次降采样;(c)三次降采样) Fig.5 Image pyramid ((a) Primary downsampling; (b) Secondary downsampling;(c) Three-step downsampling)
统计像素值方差可以很好识别图像的纹理区域,经过上述图像金字塔空间变换后其纹理特征更加明显,并结合基于块[25]的填补缺失内容来完成整个修复过程。由于存在多个在颜色和纹理上与破损区域相似的匹配块,为了确定最佳匹配块,使用距离度量d,即
其中,Nx为受损像素x的匹配块;Px+ϕ(x)={N(x1),N(x2),…,N(xn)}为其邻域块的集合;λ为一个加权标量;T(u)为像素值方差用于计算纹理特征
其中,Ix和Iy为图像在x和y方向上的导数,通过该计算很好地区分了具有相同平均颜色的纹理区域和非纹理区域,且提取了重要的纹理特征,使得修复结果的纹理更加清晰。
3 实验结果分析
以现存真实的破损壁画为实验对象,进行数字虚拟修复,取得了较好的效果。针对一些壁画在结构上的破损,本文方法取得较好的修复效果,尤其在边缘重建上,如图6 所示。为进一步验证本文方法在边缘重建上的有效性,采用文献[26]提出的加权平均曲率(weighted mean curvature,WMC)模型,该模型整合具有8 个方向的卷积核来有效提取图像边缘并保持其结构,在图像平滑和去噪、超分辨率图像和图像重建方面有着广泛地应用。鉴于其强大的边缘提取性能,提取图6(a)和(d)的边缘,并将二者结果作差,如图6(e)所示;为进一步说明本文的边缘重建效果,与目前先进的边缘重建模型[24]进行比较如图6(c)所示,提取图6(c)和(d)的边缘,其作差结果如图6(f)所示,可见该方法在边缘上确实重建了许多重要的结构信息。
图6 结构破损((a)原图;(b)掩膜+原图;(c)对照结果;(d)本文结果;(e)作差结果(1);(f)作差结果(2)) Fig.6 Structural damage ((a) Original image;(b) Mask+original image;(c) Control results;(d) Results of this article; (e) As a result the difference (1);(f) As a result the difference (2))
图7 为不同种类的壁画存在裂缝、较小面积破损时,使用该方法较好地完成了修复任务,尤其在边缘结构和纹理细节上,得到与原图已知信息相匹配的结果。
图7 裂缝破损((a)炽盛金轮佛;(b)晋宁破损壁画;(c)圣友以乳施辟支佛;(d)鹿野苑初转法轮;(e)闻法天人(1)) Fig.7 Crack damage ((a) Flaming Golden Wheel Buddha;(b) Jinning Damaged Mural;(c) Sacred friends; (d) Sarnath first sermon;(e) Hearing the Fa Tianren (1))
为了修复存在大面积破损的壁画,本文在真实破损的不同种类壁画上进行实验,并取得较好的修复效果,如图8 所示。
对于真实壁画中存在破损程度复杂,严重破坏原有面貌的情况,本文对现存以人物和建筑为主题的壁画进行修复实验,成功复原了其应有的内容,修复效果如图9 所示。
本文成功修复了破损程度复杂的真实壁画,但对于破损严重的壁画,尤其是大面积脱落造成的结构缺失,其修复结果影响视觉连续性,在语义修复上仍有不足,如图10(c)红色标记框所示。
图10 严重破损((a)原图;(b)掩膜+原图;(c)本文结果) Fig.10 Serious damage ((a) Original image; (b) Mask+original image;(c) Results of this article)
本文还对东晋墓室破损壁画进行修复实验,发现使用不同层数金字塔对该壁画进行多尺度纹理特征提取时,会影响其修复效果,结果对比如图11(c)和(d)所示,当多尺度空间的金字塔层数为5 时红色标记框处填补的纹理明显错乱。
图11 昭通东晋墓室壁画((a)原图;(b)掩膜+原图;(c)金字塔层数2;(d)金字塔层数5) Fig.11 Tomb mural ((a) Original image;(b) Mask+original image;(c) Pyramid level 2;(d) Pyramid level 5)
通过实验可看出本文修复方法对于不同种类的壁画均取到了较好的修复效果,这些实验充分证实了该方法的通用性和有效性。为了进一步体现本文方法对真实破损壁画较好地修复效果,以猕猴奉蜜破损壁画为例,与目前先进的文献[24]和[25]模型进行比较,结果如图12 所示。
图12 实验对比((a)原图;(b)掩膜+原图;(c)文献[24];(d)文献[25];(e)本文结果) Fig.12 Experimental comparison ((a) Original image;(b) Mask+original image;(c) Control results [24]; (d) Control results [25];(e) Results of this article)
通过实验结果对比,在使用相同破损壁画和修复掩膜的情况下,本文修复方法充分挖掘了壁画已知的可用信息,并产生了更好地修复效果,而对比方法中填充的纹理粗糙,在细节上也较为模糊。
4 结 论
本文提出基于边缘重建的多尺度壁画修复方法,对于不同种类的真实破损壁画进行数字虚拟修复。先对壁画进行平滑图像纹理而保持边缘结构的预处理,以此为破损区域的分割提供良好的初始化条件;提取局部分割区域的特征,通过聚类算法进行全局破损的分割,使得分割结果更加准确;修复时通过边缘重建步骤来重建破损壁画的结构,然后在多尺度空间中提取纹理特征并确定最佳匹配块,并完成整个修复过程。实验结果表明,该方法不受特定种类壁画的限制,整个重建过程更加通用且有效。对于真实破损壁画中存在的纹理脱落和结构破坏,通过边缘重建和多尺度纹理特征提取更好地完成了修复任务。此外,与文献[24]和[25]修复模型相比,该方法能在破损程度复杂的壁画上取得更好的修复效果。但对于大面积脱落带来的严重结构缺失,本文方法难以很好地修复其破损,尤其是语义上的信息。所以在后续工作中要改进修复方法,使古壁画的修复更加有效且呈现效果更加真实。