基于改进Retinex算法的航拍图像质量增强仿真
2023-09-20秦琛,孙晨
秦 琛,孙 晨
(1. 江西科技学院,江西 南昌 330098;2. 长春师范大学,吉林 长春 130031)
1 引言
航拍图像是通过无人机搭载相机获取的空中拍摄图像,该类图像广泛应用于地质勘察、输电线路巡检、环境监测及农作物巡护等领域。由于航拍图像应用领域较为广泛,且均为图像质量要求较高的行业,因此航拍图像的质量提升已经成为学术研究的关键问题。无人机在拍摄过程中会产生震动导致获取的图像出现模糊情况,受到光照和拍摄距离的影响,可能导致航拍图像的清晰度以及图像明暗度出现明显问题[1]。以目前的技术水平来看,无人机无法实现理想的稳定拍摄,强风干扰、遥控操控失误、信号干扰等因素均会导致无人机拍摄的航拍图像质量不佳。针对这些模糊不清的航拍图像,过去经常使用人工挑选的方式,滤除这些质量不佳的航拍图像,这种操作方式既消耗人力也浪费成本,而且由于过于依赖人力的主观判断,很容易出现漏筛选或者错筛选的情况,这种操作方式没有从根本上解决航拍图像质量的问题[2-4]。
针对航拍图像质量提升问题,当前也出现了一些研究成果。袁功霖等研究者[5]提出利用迁移学习方法作为基础,实现航拍图像质量提升,该种方法在一定程度上实现航拍图像质量的改进,但是所得的图像清晰度仍不够理想;王伟鹏等学者[6]使用双阈值等位的方式提升航拍图像质量,尽管该方法能够有效提升图像质量,但是方法计算过程过于复杂,应用难度较大。
Retinex算法能改善图像压缩动态范围,结合改进方法,能够明显提升图像质量[7]。本文优化改进该算法,应以提升航拍图像质量,为相关研究提供有效依据。
2 航拍图像质量增强方法
2.1 Retinex算法基本内容
该算法是当前应用最广泛的图像增强方法之一,能通过对人类视觉系统的模拟,达到调整图像亮度与色彩的目的[8]。假设某张航拍图像用I(x,y)描述,由照度及反射图像两部分构成,分别用L(x,y)、R(x,y)描述,可使用式(1)描述图像生成过程
I(x,y)=R(x,y)×L(x,y)
(1)
式中,图像的高频信息用R(x,y)表示,它是决定物体原本面貌的主要因素;背景环境的低频信息用L(x,y)表示。使用对数域处理上式以简化运算,是因为该方法模型和人眼视觉模型较为匹配,所得结果用式(2)描述
lgI(x,y)=lgR(x,y)+lgL(x,y)
(2)
利用I(x,y)得出L(x,y)之后,通过上式得到R(x,y),过程用式(3)描述,原因是物体的反射图像很难直接获取。
lgR(x,y)=lgI(x,y)-lgL(x,y)
(3)
中心环绕Retinex算法在目前运用最普遍,它由单尺度与多尺度Retinex算法组成。单尺度Retinex算法能在确保色彩恒定的基础上,对图像边缘信息进行增强处理,使用高斯函数估计L(x,y),其消除可采用对数运算实现,过程用式(4)描述
R(x,y)=lgIi(x,y)-lg[Ii(x,y)*f(x,y)]
(4)
式中,处于i位置,原图像的色彩带用Ii(x,y)描述;环绕函数用f(x,y)描述;卷积运算为*。通常选择式(5)表示的高斯环绕函数当作f(x,y)
f(x,y)=λe-(x2+y2)/2σ2
(5)
尺度参数用σ描述,式(6)为λ需符合的要求
∬F(x,y)dxdy=1
(6)
若要达到更理想的图像增强效果,需使用多尺度Retinex算法平衡细节信息增强与颜色恒定的关系,通过若干单尺度Retinex算法完成图像处理后,以加权叠加方式操作所得结果,具体过程用式(7)描述
(7)
权重为wk;尺度数量用N描述。式(8)为高斯环绕函数的表达式
(8)
该函数的标准差用σk描述。
2.2 改进Retinex算法的图像质量增强
为避免航拍图像出现光晕伪影情况,提高算法处理效率,使用改进Retinex算法增强航拍图像质量。通过组合滤波实现航拍图像的照度估计,以在平滑图像的基础上,使边缘信息被保留;为将噪声消除,并保留图像细节信息,需要采用自适应噪声抑制方法完成反射图像恢复。
2.2.1 基于组合滤波的照度估计
通过图像方差和绝对梯度均值相结合的方法获取权重系数,使用多次分解形式,对边缘周围像素进行平滑处理。
输入图像及其均值滤波的加权值,即滤波输出,具体如式(9)所示
(9)
(10)
式中,大于0的常量用v描述,用于保证除数不等于0,常取10-6;非负单调递增函数用f(·)描述,将其定义成式(11)所示形式
(11)
2.2.2 自适应噪声抑制的反射图像恢复
设置I表示携带加性噪声的航拍图像,可得到如下表达式
Ip=Rp·Lp+np
(12)
式内,照度和反射图像分别用L、R描述;二维空间坐标用p描述。假设L和实际相匹配,应反求上式得到式(13)所示恢复的反射图像
p=Rp+np/LP
(13)
照度值能影响噪声增大强度,两者为反比关系,可通过下述过程恢复反射图像。设定I、L分别表示输入航拍图像,以及得到的照度图像。设置式(14)所示形式,以便于后续描述
(14)
需将式(15)描述的能量函数作为考虑因素
J=∑p(Tp(R)+λCp(R))
(15)
式中,正则项用C描述,能起到消除噪声并保留图像边缘信息的作用;保真项用T描述,能确保最终图像和式(1)相同;两项的相对权重关系用λ描述。
使用最小均方误差,并结合式(1)获得如下所示保真项的表达式
(16)
采用式(17)描述的正则项,它具有噪声增大强度随照度变化的特点:
(17)
式中,关于照度的权重系数用w描述,平滑权重系数用a描述。设置下述表示的两个变量,以便于后续处理
(18)
此时可将能量函数描述成式(19)所示形式
(19)
使用如下矩阵形式描述上式的右项
(20)
式中,bx,p的对角矩阵为Bx;xy,p的对角矩阵为By;x与y方向的离散差分运算分别为Dx、Dy描述。可最小化能量函数的向量符合式(21)所示条件
(21)
反射图像可使用下式描述的矩阵运算获得
R=(I+λLR′)-1R′
(22)
本文采用下式描述的权重系数
wp=(l2+ε)-1
(23)
式内,常数用ε描述,用于确保除数不等于0;完成归一化处理的照度值用l描述。使用式(24)获得平滑权重系数,以保留边缘信息:
(24)
式中,携带噪声的反射图像用R′描述,其对数值用r′描述;指数用β描述,其介于1.2~2之间,与边缘保持程度相关。
2.2.3 基于改进Retinex算法的图像去雾
通过直方图均衡方法优化Retinex算法实现航拍图像去雾,提高图像对比度。
各子区域的长用X描述,宽用Y描述;设定NumP表示某区域的灰度级个数,使用式(25)描述各灰度级拥有的像素均值
(25)
设定Pmax表示剪切阈值,其相当于像素均值的函数,若想使用下式描述各灰度级可达成的阈值,则是在各区域直方图的各灰度级个数均低于Avg的Nc倍情况下
Pmax=Avg×Nc
(26)
裁剪区域为像素个数超过该阈值的部分,并以均匀形式,将裁剪部分划分至直方图内。设定Ptotal表示图像内裁剪的像素总数,灰度级接收的多余像素个数用Avgp描述,其计算过程用式(27)表示
(27)
各灰度级在原图像的子区域直方图中的个数用H(i)描述,灰度级用i描述,且i=i0,i1,…,in,此子块的对比度受限直方图用CH(i)描述,其计算过程如下所示
(28)
经过裁剪后,残留的像素点个数用LeftP描述,使用式(29)描述继续划分的步长
(29)
使用直方图均衡方法处理以上结果,并利用双线性插值法优化图像,提高图像平滑自然效果。以下是该算法对航拍图像进行去雾处理的具体实现过程:
1)划分航拍图像为三个颜色通道,分别用R、G、B描述,通过改进Retinex算法对每个通道的亮度图像进行估计。
2)利用以上结果获得反射图像,并使其完成线性拉伸后介于0~255区间。
3)通过直方图均衡方法增强每个通道处理图像的对比度,使雾霾被进一步清除。
4)将三个通道统一,获得最终处理图像。
3 仿真结果
利用MATLAB仿真平台开展实验,使用大疆无人机搭载禅思X5R相机拍摄某建筑区域的航拍图像用于开展实验,该次航拍共获取1000幅质量不同的航拍图像,这些图像格式均为JPEG,每幅图像的像素大小均为1600*1200像素。为使实验结果具有对比性,在针对本文仿真对象,同时使用未经改进的Retinex算法(对比方法A)、本文中仅实现去雾未实现去噪与亮度增强的改进Retinex算法图像质量增强方法(对比方法B)以及仅实现去噪未实现亮度增强的改进Retinex算法图像质量增强方法(对比方法C),同时开展航拍图像质量提升实验。
原始图像如图1。不同方法图像去噪处理的效果如图2。
图2 不同方法的图像去噪效果对比
从图2中能够看出各方法在对原始航拍图像去噪后的效果,对比方法A使用传统Retinex算法,只能对图像实现简单质量提升,在图像去噪方面没有明显效果,图像中仍然保留大量噪点;对比方法B将航拍图像质量提升的重点放在去雾方面,忽视图像去噪效果改进,处理后的航拍图像存在众多毛刺和噪点信息,图像不够平滑;对比方法C将航拍图像质量提升的重点放在图像去噪上,因此该方法处理后的航拍图像噪点减少,图像效果较为平滑,但是该方法没有考虑图像亮度优化,所以航拍图像中仍然存在较多阴影,影响图像的质量。本文方法具有良好去噪效果,将图像中的噪点完全消除,边缘信息较清楚,图像较为平滑。
各方法在图像亮度处理方面的对比结果见图3。
图3 亮度提升效果对比
从图3中能够看出,对比方法A处理后的图像质量并没有得到显著提升,航拍图像中存在较多干扰信息;对比方法B与对比方法C都将图像质量提升重点放在去雾与去噪方面,忽视图像亮度的改进,导致航拍图像中出现大量光晕等干扰因素不能被去除,严重影响航拍图像质量提升效果。本文方法使用改进的Retinex算法优化图像质量,既考虑图像亮度的改善同时考虑去除航拍图像中光晕等干扰信息,使得图像更加清晰平滑。
各方法对图像去雾后的效果见图4。
图4 图像去雾效果对比
从图4中能够明显看出,对比方法A由于未使用改进方法,图像去雾效果不佳,航拍图像中大部分拍摄效果都无法显示出来,失去图像质量提升效果。对比方法B着重优化航拍图像去雾效果,因此经过处理后图像中云雾干扰信息消散,但是由于去噪及亮度提升效果不好,所以图像清晰度较差;对比方法C的去雾效果适中,但是由于亮度处理效果不好,因此去雾优化后图像清晰度仍然较差。本文方法通过改进Retinex算法,不但能够提升航拍图像清晰度,适当调整图像亮度,同时有效去除航拍图像中云雾等干扰信息,综合实现航拍图像的质量提升。
除了通过主观评价的角度验证本文方法提升航拍图像质量效果,还需要从图像质量因子、模糊系数以及图像峰值信噪比等多个条件评价图像质量提升方法的客观效果,结果见表1。
表1 图像质量提升客观评价效果
模糊系数与峰值信噪比越高证明图像质量越好,从表1中能够看出,本文方法各项评价结果最高,由此可以说明,使用本文方法提升航拍图像质量能够在提升图像色彩的基础上丰富细节信息,提升图像清晰度,具有良好的航拍图像质量提升效果。
4 结论
针对航拍图像质量不高的问题提出基于改进Retinex算法的航拍图像质量增强仿真方法,利用多种方法优化Retinex算法,由此从去噪、去雾、提升图像亮度等三个方面提升航拍图像质量,获得较为清晰的高质量航拍图像。