论文引用格式:Han L G, Chen C Y, Shen Z Y, Hu X J and Yu H Y. 2024. Visual saliency-driven non-local denoising of rendered panoramic images. Journal of Image and Graphics, 29(04):0939-0952(引用格式:韩鲁光, 陈纯毅, 申忠业, 胡小娟, 于海洋. 2024. 视觉显著性驱动的全景渲染图非局部降噪. 中国图象图形学报, 29(04):0939-0952)[0 引 言随着时代的进步,全景电影作为一种新兴的电影形式,受到越来越多的关注。相比传统电影,全景电影能够通过头戴式显示设备为观众带来具有沉浸感的观影体验,其中画面的真实感绘制是影片制作中的关键之一。为达到高真实感的画面效果,电影行业一般采用蒙特卡洛路径追踪算法生成电影画面。蒙特卡洛路径追踪算法是一种基于随机采样和概率统计的渲染算法。该算法通过追踪光线在场景中的路径来模拟光线与物体的相互作用,从而计算出最终的图像。该算法从相机位置发出光线,然后根据材质属性和场景几何信息,对光线进行反射、折射和吸收等操作。光线可能与光源直接相交,形成直接光照,或者与场景中的其他物体相交,形成间接光照。该算法通常需要追踪大量的随机光线路径,才能够生成高度逼真的画面,然而这个过程需要耗费大量时间和资源。为了减少计算成本,现有的解决方案通常采用去噪算法对低质量的噪声图像进行处理,以达到近似于高真实感的画面效果。目前,蒙特卡洛渲染画面降噪主要有两种途径。一种是基于传统滤波的方法,即利用人工设计的滤波器去除图像噪声。另外一种是基于深度学习的去噪方法(Huo和Yoon,2021),该技术利用神经网络对噪声图像进行处理。在基于传统滤波降噪算法中,Thanh等人(2020)提出一种自适应加权均值滤波算法,该算法在噪声图像上有着良好的去噪能力,但是在去噪过程中模糊了图像的细节,使得图像整体的清晰度降低。Buades等人(2005)提出的非局部均值(non-local means,NLM)滤波算法充分利用了图像的空间相似性,在图像降噪时可以保留图像的细节特征,但该算法的时间复杂度太高,图像降噪时间太长。陈玲玲等人(2021)提出了一种快速仿射非局部均值去噪算法,该算法简化了仿射非局部均值算法的变换过程,加速了邻域间相似性度量的计算,运行效率得到了很大的提升,但是存在图像边缘模糊的问题。Zhang(2022)提出一种两步非局部均值滤波算法,该算法虽然能够有效去除图像噪声,但是生成的结果图像中存在细节缺失的问题。杨凯等人(2022)利用图像的结构相似性改进NLM滤波器的权值,从而对噪声图像进行滤波重构。其算法能够保留一定程度的图像细节,但面对复杂场景时该算法降噪效果并不理想。曹飞道等人(2021)提出一种利用排序聚类的局部滤波框架,该框架能够解决滤波降噪过程中边缘模糊的问题。但是计算量太大,运算时间太长。Xing等人(2021)通过估算噪声像素的均方误差来进行自适应采样,之后使用梯度特征设计双边滤波算法来获得无噪声的图像,但由于误差度量方法不够先进导致去噪效果没有达到最优。李潇瑶等人(2022)提出一种自适应非局部三维全变分去噪算法,该算法计算得到图像块之间的相似性信息,并引入自适应权重矩阵,能够根据噪声强度自动调整去噪算法的去噪强度。该算法能够提升去噪的视觉效果,但是去噪时间相对较长。深度学习在图像降噪中也发挥着重要的作用(Izadi等,2023)。Zhang等人(2023)提出了一种具有鲁棒性的卷积神经网络架构,旨在有效处理图像噪声。该网络通过引入可变形卷积模块,以提取具有代表性的噪声特征。此外,该网络架构采用了综合的设计策略,包括扩展卷积层、标准卷积层、批处理归一化层和激活函数,以显著提升网络的学习能力。该架构还整合了残差模块,以增强图像去噪性能,从而得到高度逼真的图像。Thakur和Maji(2023)提出了一种创新性的高斯去噪网络,其旨在通过输入图像及其特征生成高质量的去噪图像。该网络采用了双通路架构,其中一条通路使用多尺度像素关注块,另一通路使用多尺度特征提取块。多尺度像素关注块专注于提取噪声图像中低对比度区域的关键特征,而多尺度特征提取块则致力于提取整体噪声图像的特征信息。之后,融合两通路的特征信息以获得最终的残差噪声图像,最后从噪声图像中减去该残差噪声图像,从而获得高质量的去噪结果。由于该网络涉及的卷积层数较少,因此图像处理速度相对较快。Chen等人(2023)提出了一种轻量级的图像降噪网络,其采用两阶段处理噪声图像。第1阶段采用像素预测网络生成初步去噪图像,随后在第2阶段中将此图像输入核预测网络,获取多分辨率核。此外,他们引入双边方法以充分利用图像的辅助特征,在去噪网络中取得更好的图像去噪效果。Han等人(2023)提出一种创新的去噪方法,采用辅助特征训练两个去噪器,随后构建集成网络逐像素生成集成权重图像,最后将两个去噪器的输出进行权重融合,从而显著提升图像质量。Işık等人(2021)提出一种基于深度学习的去噪方法,该方法使用轻量级的神经网络处理路径跟踪样本,并提取每个像素的特征向量用来学习深层特征。此外,该方法采用迭代计算的方式对含噪图像的内核进行处理,这些内核可以在不增加计算量的情况下有效去除噪声,并且保留图像的细节和纹理信息。Zhang等人(2023)提出一种辅助特征引导的自注意力和卷积集成网络,能够更好地提取辅助特征和噪声图像中的局部细节信息,从而提高图像重建的精度,获得高质量的图像降噪结果。Firmino等人(2022)使用Stein无偏估计得到图像中的误差,并将其与神经网络结合来推断每个像素的混合参数。同时利用经典统计量中的置信度区间来进一步加强该网络,从而获得更好的效果。Balint等人(2023)在低通滤波器的基础上提出一种新的内核架构,这一架构成功地克服了以往滤波器中存在的低频响应问题,有效地解决了振铃、斑点和伪影等问题,同时改善了图像细节。Tian等人(2023)提出了一种基于小波变换的多阶段图像去噪卷积神经网络。该网络使用动态卷积模块来动态调整参数,在去噪性能和计算成本之间进行权衡。然后结合小波变换和判别学习模块来抑制噪声,以保留更多细节特征信息,从而提高图像去噪效果。最后,采用残差模块进一步细化特征,以去除冗余特征,从而提升去噪效果。Fan等人(2021)提出一种新型的神经网络去噪方法,该方法的核心思想是通过简化特征图来进一步降低计算资源的消耗,从而实时、高效地去除噪声。综上所述,现有的图像降噪算法主要面向普通平面图像,针对全景图像的降噪算法研究较少。与普通平面图像不同,全景图像呈现了水平方向360°和竖直方向180°的视域信息并且画面存在畸变区域。此外,对于观看者而言,全景图像的赤道区域像素通常比两极区域像素更加显著。所以普通平面图像去噪方法并不适用于全景图像,因此需要设计一种更加专业的全景图像去噪方法,才能有效地去除全景图像的噪声。为解决上述问题,本文提出一种视觉显著性驱动的全景渲染图非局部降噪算法。本文利用图像块之间的梯度幅值相似性偏差值(Xue等,2014)改进NLM滤波,去除全景画面显著区域噪声,同时设计NLM滤波的并行算法去除全景画面非显著区域噪声。此外,本文改进Canny算法(Canny,1986)以计算图像的梯度值,并将各向异性扩散滤波与引导滤波结合,从而优化结果。1 算法原理1.1 非局部均值滤波NLM滤波器的计算式(Buades等,2005)为f(i)=∑j∈Ωw(i, j)v(j) (1)式中, f(i)表示以像素点i为中心的滤波后的图像块,Ω表示以i为中心的搜索窗口。v(j)表示以像素点j为中心的含噪图像块,权值w(i,j)表示像素点i和j的相似度,它的值通过高斯加权的欧氏距离进行度量,计算式(Buades等,2005)为w(i, j)=1Z(i)exp-d(i, j)h2 (2)式中,Z(i)为归一化常数,h表示平滑系数,d(i,j)表示以像素点i,j为中心的两个图像块之间的加权欧氏距离,其数学表达式为d(i, j)=N(i)-N(j)2,α2 (3)式中,N(i)和N(j)分别表示以像素点i和j为中心的图像块,α表示高斯核函数的标准差,其目的是突出中心像素对邻域窗口相似性计算的影响,提高欧氏距离计算的可靠性。1.2 梯度幅值相似性偏差梯度幅值相似性偏差(gradient magnitude similarity deviation,GMSD)是一种图像全参考的评价方法,具有准确度高、计算量少的特点。GMSD的计算式(Xue等,2014)为GMSD(x, y)=1mn∑i=1m∑j=1n(GMS(yi, j)-GMSM)2 (4)式中,GMSD(x,y)表示分别以像素点x、y为中心的两个图像块之间的梯度幅值相似性偏差值。m和n分别表示图像块的水平方向和垂直方向上的像素点个数,GMS表示图像块之间的梯度相似值,GMSM表示梯度相似均值,i、j表示像素点的横纵坐标。1.3 经典Canny算法Canny算法(Canny,1986)边缘检测的运算过程主要包括以下4个步骤:1)利用高斯滤波处理图像。为了减少图像噪声影响,提高边缘检测的准确度,利用高斯滤波平滑图像,高斯滤波的数学表达式为G(x, y)=12πσ2exp-x2+y22σ2 (5)式中,G(x,y)表示经过高斯滤波处理后的像素点,x,y分别表示图像中像素点的横纵坐标,σ表示高斯滤波系数,σ数值越大代表高斯滤波的平滑效果越好,抑制噪声的能力越好。2)计算图像梯度幅值和梯度方向。梯度幅值和梯度方向的计算式分别为G(i, j)=Gx(i, j)2+Gy(i, j)2 (6)θ(i, j)=arctanGy(i, j)Gx(i, j) (7)式中,G(i,j)表示最终的梯度值,θ(i,j)表示最终的梯度方向,i,j代表像素点的横纵坐标。Gx(i,j)和Gy(i,j)分别代表横向和纵向的梯度幅值。3)对梯度幅值进行非极大值抑制。当一个像素的梯度幅度值为极大值时,可以确定该像素处于边缘区域;而当梯度幅度值不是极大值时,则表明该像素点不在边缘区域,可以将其灰度值设为0。4)利用高低阈值进一步对边缘点进行筛选及连接。高阈值用于区分具有强边缘特征的像素点,而低阈值则用于区分具有弱边缘特征的像素点。当像素点梯度幅度值大于高阈值时,则标记为边缘点;当像素点梯度幅度值小于低阈值时,则标记为非边缘点;当像素点梯度幅度值介于高低阈值之间时,则需要进一步判断考虑其邻域内是否有大于高阈值的像素点。若存在这样的点,则该像素点定义为边缘点,否则定义为非边缘点。1.4 各向异性扩散滤波各向异性扩散滤波(Perona和Malik,1990)是一种基于偏微分方程的图像处理方法,数学表达式为It+1=It+λ(Nx,y∇N(It)+Sx,y∇S(It)+Ex,y∇E(It)+Wx,y∇W(It)) (8)式中,I表示输入图像,λ表示平滑度,其数值越大图像越平滑,t表示迭代次数,∇N,∇S,∇W,∇E表示4个方向的梯度算子,Nx,y,Sx,y,Wx,y,Ex,y表示4个方向的扩散系数,x,y表示像素点的横纵坐标。1.5 前缀和前缀和(Harris等,2007)是一种数学计算技术,用于计算序列中每个位置之前的元素的累积和。通过前缀和,能够快速获得任意连续子序列的和,前缀和的计算式(Harris等,2007)可以概括为Si=x1 i=1Si-1+xi i1 (9)式中,x1表示第1个位置的元素值,Si-1表示前i - 1个元素的数值和,Si表示前i个元素的数值之和。2 算法实现本文算法的主要思想是对全景画面的显著区域与非显著区域分别进行降噪处理,并通过各向异性扩散引导滤波来优化滤波结果,从而获得无噪的全景画面。本文降噪算法的流程如图1所示,具体步骤如下:10.11834/jig.230254送排稿.F001图1本文算法示意图Fig.1Flow diagram of the proposed algorithm算法1:视觉显著性驱动的全景渲染图非局部降噪算法(visual saliency driven non-local means,VSD-NLM)。输入:噪声全景图像。输出:无噪全景图像。1)通过蒙卡路径追踪算法生成低采样率的全景图像,并将此图像作为本文算法输入;2)使用布尔映射显著区域检测(Boolean map saliency 360,BMS360)算法(Lebreton和Raake,2018)计算全景图像的显著性图;3)根据显著性图生成相应的二值化图,利用二值化图提取全景图像的显著区域,对显著区域执行步骤4),非显著区域执行步骤5);4)计算显著区域内像素点所在图像块与其他图像块之间的梯度幅值相似性偏差值,利用该值改进NLM滤波器的权值函数;5)根据全景图像的差值积分图,利用并行加速计算像素点所在图像块与其他图像块之间的NLM滤波重构参数;6)使用改进的NLM滤波器分别对显著区域与非显著区域进行滤波重构,得到滤波重构结果;7)利用改进的Canny算法计算滤波结果的梯度;8)以梯度图像为引导图,结合各向异性扩散引导滤波算法优化滤波结果,从而得到最终的结果图像。本文算法的重要内容在以下各节中详细阐述,2.1节详细阐述算法步骤2);2.2节详细介绍算法步骤4);2.3节详细讲解算法步骤5);2.4节阐述算法步骤7);2.5节阐述算法步骤8)。2.1 全景图显著区域检测全景图像显著区域检测算法主要分为两类:1)针对全景图像改进的传统显著区域检测算法:2)针对深度学习的全景图显著区域检测算法,该方法使用神经网络提取图像特征,进行显著区域检测。本文使用BMS360算法检测全景图像的显著区域。该算法首先需要从图像中提取相关特征,并对其激活,以对特征中的新颖性进行处理。然后,对激活特征进行标准化处理,并根据赤道先验加以调整。最后,聚合所有归一化的激活特征,生成最终的显著区域图像。本文利用BMS360算法得到显著性图,如图2所示。其中,图2(a)为蒙卡渲染生成的全景图像,图2(b)为利用BMS360算法得到的显著性图像。10.11834/jig.230254送排稿.F002图2全景画面显著区域检测Fig.2Panoramic image saliency detection ((a) panoramic images; (b) saliency images)在显著性图像上采用最大类间方差法(Otsu,1979)进行二值化处理,并利用二值化图像分割全景图像。经过分割处理后,全景图像分为显著区域和非显著区域,如图3所示。其中,图3(a)为全景图像的显著区域,图3(b)为全景图像的非显著区域。10.11834/jig.230254送排稿.F003图3全景画面分割Fig.3Panoramic image segmentation((a) saliency areas; (b) non-saliency areas)2.2 非局部均值滤波器权值改进为了有效去除显著区域的画面噪声,同时保证显著区域的画面质量,本文利用图像块之间的GMSD值改进滤波器的权值函数。由于NLM算法的加权核函数采用的是指数型减函数,所以欧氏距离较小的图像块获得的权值较大。通过对GMSD公式分析能够得知,当两个图像块的相似性越高时,GMSD值越小,反之,则越大。因此,本文将式(3)与式(4)进行相乘,得到改进的欧氏距离表达式为d(i, j)=GMSD(i, j)N(i)-N(j)2,α2 (10)根据式(10)改进NLM滤波器的权值计算式为w(i, j)=1Z(i)exp-GMSD(i, j)N(i)-N(j)2,α2h2 (11)式中,当图像块之间的GMSD值较大时,获得的权值比较小,从而有利于保留场景细节;相反地,在GMSD值较小的区域,获得的权值较大,此时能够有效消除由噪声造成的影响。2.3 非局部均值滤波器并行化改进传统非局部均值滤波算法存在滤波重构时间长、算法效率低等问题。为此,本文设计了一种基于并行计算的NLM滤波算法,旨在提高处理全景画面中非显著区域的效率。本文算法的具体步骤如下:算法2:并行非局部均值滤波算法(parallel non-local means,P-NLM)。输入:噪声图像N。输出:无噪图像D。1)根据输入图像N构造差值平方图像;2)根据差值平方图像构造差值积分图;(1)假设差值平方图像为m行n列,将每一行像素分成每4个像素的小块,创建m×(n/4)个线程,每个线程计算每个小块中4个像素的前缀和,所有线程并行计算;(2)创建m个线程,每个线程对应一行像素,负责计算所有小块中最后一个像素的前缀和;(3)创建m×(n/4)个线程,每个线程对应一个小块。每一行从第2个小块开始,把每个小块中的像素(除最后一个像素外)都加上前一个小块的最后一个像素,即可得到所有行的前缀和;(4)将每一列像素分成每4个像素的小块,创建(m/4) × n个线程,每个线程计算一个小块中4个像素的前缀和,所有线程并行计算;(5)创建n个线程,每个线程对应一列像素,负责计算该列中所有小块最后一个像素的前缀和;(6)创建(m/4) × n个线程,每个线程对应一个小块。每一列从第2个小块开始,将每个小块中的像素(除最后一个像素外)加上它的前一个小块的最后一个像素,即可得到所有列的前缀和,即差值平方图的积分图像;3)对图像的权重、权重和以及像素值加权和进行并行计算;4)归一化处理像素值加权和,最后输出无噪声图像D。2.4 Canny梯度算子改进算法为了更精准地去除全景画面边缘区域的噪声,本文提出了一种改进的Canny算法。该算法通过优化Canny算法的边缘检测流程,能够更准确地获取全景画面的边缘区域。2.4.1 梯度算子的改进传统的Canny算子在计算图像梯度时,只考虑了水平和垂直方向的梯度信息,未考虑倾斜方向上的梯度信息,从而存在梯度精度不足的问题。本文引入45°和135°方向上的梯度分量来计算梯度,并采用距离加权的方式确定最终的梯度幅度值和梯度方向。对于像素点(i,j)在4个方向上的梯度幅度值的数学表达式为g0∘=[f(i+1, j-1)+2f(i+1, j)+f(i+1, j+1)- f(i-1, j-1)-2f(i-1, j)-f(i-1, j+1)] (12)g90∘=[f(i-1, j-1)+2f(i, j-1)+f(i+1, j-1)- f(i-1, j+1)-2f(i, j+1)-f(i+1, j+1)] (13)g45∘=[f(i-1, j)+2f(i-1, j-1)+f(i, j-1)- f(i, j+1)-2f(i+1, j+1)-f(i+1, j)] (14)g135∘=[f(i-1, j)+2f(i-1, j+1)+f(i, j+1)- f(i, j-1)-2f(i+1, j-1)-f(i+1, j)] (15)式中,g0∘,g90∘,g45∘,g135∘分别表示水平方向梯度幅度值、垂直方向梯度幅度值、45°方向梯度幅度值和135°方向梯度幅度值, f (i,j)表示像素点(i,j)的灰度值。将45°与135°方向上的梯度幅值按水平与垂直方向进行分解,分解计算式为gx(i, j)=g0∘(i, j)+22g45∘(i, j)-22g135∘(i, j) (16)gy(i, j)=g90∘(i, j)+22g45∘(i, j)+22g135∘(i, j) (17)式中,gx(i,j)表示水平方向上的梯度幅度值,gy(i,j)表示垂直方向上的梯度幅度值。根据水平方向和垂直方向上的梯度幅度值,确定最终的梯度以及梯度方向,数学表达式为G(i, j)=gx(i, j)2+gy(i, j)2 (18)θ(i, j)=arctangy(i, j)gx(i, j) (19)式中,G(i,j)表示最终的梯度幅值,θ(i,j)表示最终的梯度方向。2.4.2 Otsu算法确定阈值Otsu算法(Otsu,1979)是一种根据图像自身灰度直方图自适应确定阈值的一种算法,当该算法取得最大值时,即为图像的最佳阈值。该算法求取类间方差σ2的计算式为σ2=p1(MC1-M)2+p2(MC2-M)2 (20)式中,C1为非边缘点梯度幅度值集合,C2为边缘点梯度幅度值集合。C1类像素点占全部像素点比值为p1,C2类像素点占全部像素点比值为p2,C1类和C2类像素的均值分别为MC1和MC2,全部像素的均值为M。当σ2取得最大值时,即为图像的最佳阈值T,记为最高阈值TH,本文设置的最低阈值为TL = 0.5×TH。2.5 各向异性扩散滤波与引导滤波为了有效去除全景画面边缘区域的噪声,本文在传统引导滤波(He等,2013)中增加各向异性扩散滤波过程,弥补引导滤波算法中盒式滤波窗口的不足。改进后的引导滤波表达式为qit=akIit+bk, ∀i∈ωk (21)式中,qit与Iit分别代表输出图像q和引导图像I经过t次迭代处理后在像素位置i处的值,k为图像窗口ωk的中心像素点。ak,bk为固定的线性系数,ak、bk的值通过最小化代价函数确定,ak,bk的数学表达式为ak=1ζ∑i∈ωkIitpi-μktp¯ktσk,t2+ε (22)bk=p¯kt-akμkt (23)式中,ζ为窗口内的权重和,μkt,σk,t2分别为引导图像I在窗口ωk中经过t次迭代后的均值和方差,p¯kt表示输入图像p在窗口ωk中经过t次迭代后的均值。μkt,σk,t2,p¯kt的数学表达式分别为μkt=1ζ∑i∈ωkIit (24)σk,t2=1ζ∑i∈ωk(Iit-μkt)2 (25)p¯kt=1ζ∑i∈ωkpit (26)式中,pit表示输入图像p在窗口ωk中经过t次迭代处理后在像素位置i处的值。本文将各向异性扩散滤波与传统引导滤波相结合,以增强引导滤波对图像边缘的感知能力。同时利用各向异性扩散滤波的迭代方程计算出线性参数ak和bk,将其应用于引导滤波中,以达到更好的边缘保持效果。3 实验结果与分析3.1 数据集本文利用Optix平台进行渲染,生成全景图像数据集。该数据集包含了10个复杂的虚拟场景,每个场景画面的分辨率为3 840 × 2 160像素。所有场景均生成8 192个像素采样点(samples per pixel,spp)的参考图像和128 spp的噪声图像。在实验中,本文以128 spp的噪声图像作为算法输入图像,将算法得到的输出图像与参考图像进行对比。3.2 实验环境及参数设置本文实验在Optix7.2平台上进行渲染,开发工具使用NVIDIA CUDA11.1版本,硬件配置包括Intel(R) Core(TM) i7-7700HQ@2.80 GHz、NVIDIA GTX1050 GPU以及8 GB内存。本文与蒙特卡洛路径追踪算法(Monte Carlo path tracing,MC)、Buades等人(2005)的NLM算法、杨凯等人(2022)的多特征非局部均值滤波降噪算法(multi-feature non-local mean filtering,MF-NLM)、Firmino等人(2022)的渐进式去噪算法(progressive denoising,PD)、Fan等人(2021)改进的核预测网络(weight sharing kernel prediction network,WSKPN)以及Işık等人(2021)的蒙特卡洛去噪算法(interactive Monte Carlo denoising using affinity of neural features,ANF)进行对比。本文算法(VSD-NLM)在显著区域设置的搜索窗口与邻域窗口的尺寸分别为5 × 5与3 × 3,在非显著区域设置的搜索窗口与邻域窗口的尺寸分别为7 × 7和5 × 5,对比算法的参数均遵照原文中提到的参数进行设置。评价指标采用结构相似性(structural similarity,SSIM)和FLIP。FLIP(Andersson等,2020)表示两幅图像之间的感知差异,FLIP值越小,表示降噪后的图像与参考图像之间的误差越小;SSIM(Wang等,2004)表示两幅图像的相似性,SSIM值越大代表降噪后的图像与参考图像之间越相似。3.3 消融对比实验3.3.1 梯度幅值相似性偏差的有效性为了验证梯度幅值相似性偏差辅助的非局部均值滤波算法(gradient magnitude similarity deviation assisted non-local means,GMSDA-NLM)的有效性,本文与传统NLM算法进行对比,结果如图4所示。其中,图4(a)为噪声图像,图4(b)为NLM滤波处理得到的细节图,图4(c)为本文算法滤波重构得到的细节图,图4(d)为参考图像。通过对比图4(b)和图4(c),可以发现GMSDA-NLM能有效减少图像噪声,同时保留图像的细节纹理,从视觉效果上验证了本文算法的有效性。10.11834/jig.230254送排稿.F004图4显著区域重构前后细节对比Fig.4Comparison of details before and after reconstruction of the saliency area ((a) MC; (b) NLM; (c) GMSDA-NLM; (d) references)GMSDA-NLM与传统算法NLM(Buades等,2005)在不同尺寸的搜索窗口和邻域窗口下进行了实验,结果如表1所示。在不同尺寸的搜索窗口和邻域窗口下,本文算法在FLIP指标下的数值均小于传统算法,表明本文算法生成的图像与参考图像之间的感知差异更小。在SSIM指标下的数值均大于传统算法,说明本文算法生成的图像与参考图像更相似。由此可见,本文算法的去噪效果更好,去噪性能优于传统算法。10.11834/jig.230254送排稿.T001表1本文算法和NLM算法的FLIP与SSIM对比Table 1Comparison of FLIP and SSIM between ours and NLM algorithm搜索窗口邻域窗口NLM (Buades等,2005)GMSDA-NLM (本文)FLIPSSIMFLIPSSIM5 × 53×30.063 40.596 50.056 80.686 37 × 75×50.090 60.599 90.080 10.699 811 × 115×50.097 10.596 70.083 40.692 5注:加粗字体表示各行最优结果。3.3.2 并行化算法的有效性本文设计NLM并行算法处理非显著区域噪声,细节结果如图5所示。其中,图5(a)为噪声图像,图5(b)是Froment(2014)提出的快速非局部均值算法(fast non-local means,F-NLM)处理后的细节图,图5(c)是P-NLM进行滤波重构后的细节图,图5(d)为参考图像。图5(b)(c)的细节结果能够表明,P-NLM算法能够有效降低图像噪声,并且在视觉效果上与F-NLM算法生成的图像高度一致。10.11834/jig.230254送排稿.F005图5非显著区域重构前后细节对比Fig.5Comparison of details before and after reconstruction of non-significant areas ((a) MC; (b) F-NLM;(c) P-NLM; (d) reference)本文设计了面向不同尺寸的搜索窗口与邻域窗口的对比实验,以串行算法F-NLM为参考,分析P-NLM算法在场景画面降噪前后结果画面的稳定性以及加速效果,如表2所示。表2 本文算法与相应串行算法结果的稳定性以及加速效果Table 2 Comparsion of the stability and accelerationeffect between ours and the correspondingserial algorithm10.11834/jig.230254送排稿.T002搜索窗口邻域窗口误差像素占比/%SSIM加速比5 × 53 × 30.1670.9964.47 × 75 × 50.0830.9976.511 × 115 × 50.0630.9987.4注:加粗字体表示各列最优结果。在表2中,误差像素占比由FLIP计算得到,该值越低,表示两幅画面像素间的感知差异越小。即使选取生成画面结果相对粗糙的5 × 5搜索窗口和3 × 3邻域窗口,P-NLM算法在FLIP指标下的误差像素占比仍保持0.167%以下水平,在SSIM指标下画面相似度高达0.996。实验结果说明P-NLM算法生成的图像与相应串行算法生成的图像高度一致,可能的误差来源应为浮点数运算。由此可见,P-NLM算法具备高度的稳定性和准确性。本文利用不同尺寸的搜索窗口和邻域窗口进行了加速测试实验,分析P-NLM算法在场景画面降噪过程中的加速效果。实验结果说明即使选取相对较大的11 × 11搜索窗口和5 × 5邻域窗口,P-NLM算法与串行算法之间的加速比仍能保持7倍左右。这表明相较于串行算法,P-NLM算法具有明显的加速效果。3.3.3 改进Canny算法的有效性本文改进的Canny算法与传统Canny算法的对比结果如图6所示,其中图6(a)为传统Canny算法生成的边缘图,图6(b)为经过改进的Canny算法生成的边缘图。从视觉效果上能够明显看出,改进的Canny算法生成的边缘更加完整。10.11834/jig.230254送排稿.F006图6传统Canny算法与改进的Canny算法对比Fig.6Comparison of the traditional Canny algorithm and the improved Canny algorithm ((a) the traditional Canny algorithm;(b) the improved Canny algorithm)3.4 整体视觉效果比较为了验证本文算法的去噪效果,分别在不同的场景画面中进行实验,并将实验结果与其他去噪算法进行对比分析。图7为Parlour场景降噪结果的对比图,由于采样不足,图7(b)的MC算法结果图像含有大量的噪点。NLM滤波算法的结果图像在场景边缘细节处残留噪声,这是因为NLM算法仅利用欧氏距离衡量图像块的相似性,该算法在图像的平滑区域处理效果比较好,但处理场景边缘的效果较差。MF-NLM算法虽然利用结构相似性改进NLM滤波的权值函数,以重构图像,但是在面对全景图像不均匀的噪声时,该算法使用统一的滤波核进行滤波重构,导致该算法去噪效果一般。PD算法在该场景中的去噪结果并不理想,从图7(e)中可以看出,该算法过度平滑了时钟和绿植细节。这是因为当图像含有大量的噪点时,会影响该算法推断像素的权重参数,导致去噪效果较差。WSKPN算法和ANF算法为基于深度学习的图像去噪算法,WSKPN算法在场景中残留了少量的噪声,与参考图像相比仍存在一定差距。ANF算法能够有效去除图像中的噪声,但是在画面中引入不必要的模糊。图7(h)为本文VSD-NLM算法的细节结果图,本文通过分区域去噪,可以在一定程度上降低不均匀噪声产生的影响。同时利用引导滤波对全景图像的边缘区域进行滤波重构,进一步减少边缘残留的噪声,因此可以得到相对较好的去噪效果。10.11834/jig.230254送排稿.F007图7Parlour场景降噪效果对比Fig.7Comparison of denoising effects in Parlour scene((a) scene image; (b) MC; (c) NLM; (d) MF-NLM;(e) PD; (f) WSKPN; (g) ANF; (h) VSD-NLM; (i) references)图8为Room场景降噪结果对比图,从图8(b)中能够看出,MC算法的结果图像含有大量的噪声。图8(c)中NLM算法的结果图像存在噪声残留现象,这是因为图像噪声强度较大时,图像中每个像素的灰度值都会受到噪声的影响,可能会偏离原先灰度值,使用该算法计算像素的权重信息时,会把噪声也带入计算,导致去噪效果较差。MF-NLM算法在面对不均匀的图像噪声时,不同的图像块设置同样的参数进行去噪,导致图8(d)结果图像的去噪效果一般。从图8(e)的细节图可以看出,PD算法的去噪效果优于NLM算法和MF-NLM算法,但是会丢失一部分场景细节。图8(f)为WSKPN算法得到的细节结果图像,从图像中可以看出,该算法能够提升画面质量,但在边缘细节处仍残留部分噪声。图8(g)为ANF算法的细节结果图,可以看出,该算法能够有效去除图像噪声,但在画面中出现细节丢失现象。图8(h)为本文VSD-NLM算法得到的细节结果图像,本文算法将各项异性扩散滤波与引导滤波相结合,在去除噪声影响的同时保留了场景边缘,因此在视觉效果上与参考图像最为接近。10.11834/jig.230254送排稿.F008图8Room场景降噪效果对比Fig.8Comparison of denoising effects in Room scene((a) scene image; (b) MC; (c) NLM; (d) MF-NLM;(e) PD; (f) WSKPN; (g) ANF; (h) VSD-NLM; (i) references)图9为Metal场景降噪结果的对比图,从图9(c)的细节图中可以看出,NLM算法在该场景下不能表现出金属材质的光泽,同时在场景边缘残留噪声。MF-NLM算法的结果图像存在过度模糊现象。WSKPN算法和ANF算法降噪后的画面均出现不同程度的模糊现象。PD算法在该场景中得到了相对较好的画面效果,与该算法相比,本文算法得到的画面效果与参考图像之间差距更小,能够更有效地去除场景中的噪声并且保留材质的金属光泽。10.11834/jig.230254送排稿.F009图9Metal场景降噪效果对比Fig.9Comparison of denoising effects in Metal scene((a) scene image; (b) MC; (c) NLM; (d) MF-NLM;(e) PD; (f) WSKPN; (g) ANF; (h) VSD-NLM; (i) references)3.5 FLIP和SSIM对比与分析为了对实验结果进行客观明确的评价,本文利用FLIP和SSIM对实验结果进行对比和分析。表3和表4分别表示SSIM和FLIP的对比结果。在SSIM评价指标下,本文算法(VSD-NLM)的SSIM均值能达到0.92,相较于对比算法平均提升了14.7%,说明本文算法生成的图像与参考图像之间的相似性更高。在FLIP指标下,本文算法的FLIP均值能达到0.073 7,相较于对比算法平均降低了15.2%,说明本文算法生成的图像与参考图像之间的感知差异更小。由此可见,本文算法能够有效地去除图像噪声,且具备高度的稳定性和准确性。10.11834/jig.230254送排稿.T003表3客观评价指标SSIMTable 3Objective evaluation indicators SSIM算法场景平均值ParlourRoomMetalNLM(Buades等,2005)0.8370.5960.7680.734MF-NLM(杨凯 等,2022)0.8650.7430.8670.825PD(Firmino等,2022)0.7320.8050.9470.828WSKPN(Fan等,2021)0.7850.8250.8850.832ANF(Işık等,2021)0.7260.8020.8720.800本文0.9060.8910.9630.920注:加粗字体表示各列最优结果。10.11834/jig.230254送排稿.T004表4客观评价指标FLIPTable 4Objective evaluation indicators FLIP算法场景平均值ParlourRoomMetalNLM(Buades等,2005)0.120 50.117 20.044 90.094 2MF-NLM(杨凯 等,2022)0.110 00.108 50.032 80.083 8PD(Firmino等,2022)0.130 80.103 00.026 30.086 7WSKPN(Fan等,2021)0.109 10.121 30.023 50.084 6ANF(Işık等,2021)0.115 50.121 10.021 20.085 9本文0.102 30.099 80.018 90.073 7注:加粗字体表示各列最优结果。3.6 时间性能分析本文算法与其他算法在3 840 × 2 160像素图像上比较平均运行时间,结果如表5所示。可以看出,PD算法运算时间最短,本文算法运算时间相对较长。主要原因是本文算法在显著区域内需要对每一个图像块搜索相应的相似图像块,并计算两者之间的梯度幅值相似性偏差值,所以导致计算时间相对较长。10.11834/jig.230254送排稿.T005表5不同算法的运行时间Table 5The run time of different methods算法时间/sNLM(Buades等,2005)1 558.11MF-NLM(杨凯 等,2022)37.15PD(Firmino等,2022)2.38WSKPN(Fan等,2021)5.29ANF(Işık等,2021)3.71本文51.53注:加粗字体表示最优结果。4 结论许多传统滤波降噪算法在处理全景图像的噪声时存在局限性,导致降噪后的全景图像在两极区域容易出现模糊问题,因此本文提出一种视觉显著性驱动的全景渲染图非局部降噪算法。该算法使用梯度幅值相似性偏差改进非局部均值滤波,从而对全景画面显著区域进行高质量滤波重构,同时对于全景画面非显著区域,设计非局部均值并行算法进行快速滤波。此外,本文改进Canny算法以提取图像梯度信息,并且将各向异性扩散滤波与引导滤波融合,从而优化滤波结果。实验通过视觉效果和客观评价两方面对比分析了本文算法与其他算法在不同场景下的去噪性能。实验结果表明,相比于其他算法,本文算法在SSIM指标上平均提高了14.7%,在FLIP指标上平均降低了15.2%,同时本文算法能够有效减少全景图像噪声,并且保留图像细节。在本文算法中,计算图像块之间的梯度幅值相似性偏差值时,耗费时间相对较长。在接下来的研究中,将结合一些较先进的图像处理技术,对算法进行优化,进一步提升算法的综合性能。
使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,
确定继续浏览么?
复制成功,请在其他浏览器进行阅读