一种基于主成分分析的图像光照校正算法

2022-11-20 12:54赵启鹏朱留存刘济尘罗俊琦魏金占
吉林大学学报(理学版) 2022年6期
关键词:信息熵特征向量标准差

张 震, 赵启鹏, 朱留存, 刘济尘, 罗俊琦, 魏金占, 李 雪

(1. 北部湾大学 先端科学技术研究院, 广西 钦州 535001; 2. 吉林大学 软件学院, 长春 130012; 3. 中国农业科学院 长春兽医研究所, 长春 130118)

0 引 言

在图像采集过程中, 常受光照环境或物体表面反光等因素影响导致图像整体光照不均[1-2], 从而改变了图像的原始面貌, 给后续处理带来困难. 目前常用的处理方法包括: 以直方图均衡化为代表的时域变换法[3]、 以同态滤波为代表的频域变换法[4]以及以Retinex算法为代表的分离入射和反射分量方法[5]. 直方图均衡化方法通过拉伸图像灰度级增强对比度[3,6-8], 算法简单易实现, 但其忽略了图像的频域变化及细节信息. 同态滤波方法主要针对图像频域带宽的特点, 在频域内选取合适的传递函数对图像高低频进行处理[4,9-11]. 同态滤波算法广泛适用于处理光照不均的图像, 能在增强暗区图像细节的同时不损失亮区的图像细节, 但其易出现处理后图像轮廓不清晰等问题, 且参数需要通过实验测试获得, 算法相对复杂. Retinex增强方法使用高斯平滑函数估计原图像的亮度分量, 用光照补偿方法逼近反射图像[5,12-14]. Retinex算法在彩色图像增强[5]、 图像去雾[12-14]等方面效果较好, 但在强光阴影过渡区易出现光晕现象, 对高亮度图像处理效果欠佳. 近年来, 基于深度学习和神经网络的算法广泛应用于图像的光照补偿, 并取得了较好的效果[15-20], 但这类算法通用性较差, 需采集大量样本进行有监督学习.

针对上述问题, 本文提出一种基于主成分分析的图像光照校正算法. 首先, 将受相同光线条件影响的多张图像映射为向量组; 然后, 利用主成分分析的方法找到一组标准正交基; 最后, 在该向量空间中确定并剔除产生光线影响的基, 利用主成分重构图像, 从而消除光照影响, 取得了较好的效果. 算法总体流程如图1所示.

图1 算法流程

1 预备知识

定理1[21]若A为n阶实对称矩阵, 则存在实特征值λ1,λ2,…,λn和正交的实特征向量v1,v2,…,vn, 使得Avi=λivi(i=1,2,…,n).

命题1矩阵ATA是实对称的, 且其特征值为正.

证明: (ATA)T=AT(AT)T=ATA⟹矩阵ATA是实对称的.设v为ATA的特征值λ对应的特征向量, 则有

‖Av‖2=(Av)TAv=vT(ATA)v=λvTv=λ‖v‖2⟹λ>0.

注意本文算法实现中构造的协方差矩阵为实对称矩阵, 因此一定可得到一组正的特征值和正交的特征向量.

命题2矩阵AAT和ATA有相同的特征值λi, 若ATA的特征向量为vi, 则AAT的特征向量为ui=Avi(i=1,2,…,M,M取矩阵A行与列的最小值).

证明: 设vi为矩阵ATA的特征值λi(λi>0)对应的特征向量, 则有

(ATA)vi=λivi⟹A(ATA)vi=λiAvi,

即(AAT)(Avi)=λi(Avi), 其中i=1,2,…,M.

注1若A为m×n阶矩阵, 则AAT为m×m阶矩阵,ATA为n×n阶矩阵.

1)AAT最多有m个特征值和特征向量;

2)ATA最多有n个特征值和特征向量;

3) 若m>n, 则ATA的n个特征值恰好对应于AAT的n个最大特征值.

当m较大时, 计算AAT的特征值和特征向量很难实现, 一般计算机的内存很难满足要求.根据命题2, 可将求AAT的n个最大特征值和特征向量转化为求ATA的特征值λ1,λ2,…,λn和特征向量v1,v2,…,vn, 则AAT的n个最大特征值为λ1,λ2,…,λn, 特征向量为Av1,Av2,…,Avn.

2 算法设计

算法实现步骤如下:

1) 将尺寸相同的图像映射为向量组.

将每张给定图像Ii((m,n)矩阵)表示为向量Γi(m×n维向量), 其中i=1,2,…,M, 形成向量组Γ.

2) 计算协方差矩阵.

① 计算向量组Γ的均值向量为

(1)

② 计算差异矩阵为

A=(φ1,φ2,…,φM),

其中φi=Γi-φ, 则A为(m×n,M)矩阵,AT为(M,m×n)矩阵;

③ 构造协方差矩阵为

(2)

其中C为M×M阶矩阵.

3) 计算AAT的M个最大特征值及其对应的特征向量.

① 计算ATA的特征值λ1,λ2,…,λM和对应的特征向量v1,v2,…,vM;

②AAT的M个最大的特征值为λ1,λ2,…,λM, 对应的特征向量为u1=Av1,u2=Av2, …,uM=AvM.

① 计算φi(i=1,2,…,M)在标准正交基底(u1,u2,…,uM-1)下的投影, 即坐标(w1,w2,…,wM-1)为

wi=〈φi,ui〉,i=1,2,…,M-1;

(3)

(4)

3 实验结果及分析

本文实验图像选自高速公路路面破损的实际拍摄图像, 如图2所示, 尺寸为2 048×3 072. 图2(A)为3张原始图像, 由图2(A)可见, 图像严重受条形光线的干扰, 导致光照不均匀. 本文实验的目标是抑制光线干扰, 保留图像的主要特征, 突出路面破损情况. 实验选择24张图像进行主成分分析, 因篇幅所限, 这里仅给出3张图像进行效果对比. 为验证算法的有效性, 选择3种经典算法: 同态滤波(图2(B))、 直方图均衡化(图2(C))和Retinex算法(图2(D))与本文算法(图2(E))进行对比实验. 实验结果表明: 在抑制光线影响效果方面, 本文算法明显优于3种经典算法; 在对比度方面, 本文算法和直方图均衡化算法性能更好.

图2 不同算法对图像的处理结果

在实际应用中, 将数据存储在若干个文件夹下, 每个文件夹内有24张图像, 获取时间非常接近, 相差时间为毫秒级, 完全满足受相同光照条件影响的约定. 每次仅对一个文件夹下的24张图像进行处理, 处理一组图像约耗时20 s. 实验硬件环境为电脑主频3.6 GHz, 内存16 GB. 已累计处理40多万张图像, 本文算法性能稳定.

为更客观地衡量处理效果, 下面采用信息熵、 标准差及平均梯度作为指标进行定量评价[22]. 信息熵H表示为

(5)

其中p(m)表示图像灰度级m的分布密度,L表示图像最高灰度级.一般信息熵越大, 图像所包含的信息越多.标准差σ表示为

(6)

其中M,N分别表示图像的行数和列数,F(i,j)表示点(i,j)的像素值,μ表示像素均值.通常采用标准差衡量图像的对比度, 标准差越大, 图像对比度越高.平均梯度G表示为

(7)

其中M,N分别表示图像的行数和列数,F(i,j)表示点(i,j)的像素值. 平均梯度越大, 图像层次越分明, 图像中对象边缘细节越清晰.

原图像中图像1~3的信息熵分别为6.58,6.48,6.62, 标准差分别为31.13,33.39,33.93, 平均梯度分别为9.04,6.83,9.60. 不同算法处理图像结果性能对比列于表1. 由表1可见: 4种算法均不同程度地对原图像有改善. 本文算法标准差、 平均梯度两项指标最好, 表明处理后的图像对比度更高、 层次更分明、 边缘更清晰. 但本文算法信息熵指标较差, 明显低于其他3种经典算法, 甚至低于原始图像. 这是由于在重构图像过程中保留了图像的主要成分, 丢弃了图像的次要成分所致.

表1 不同算法处理图像结果性能对比

综上所述, 针对受相同光照条件影响的图像光线校正问题, 本文提出了一种基于主成分分析的图像光照校正算法, 取得了较好的实验结果, 能很好地消除光照影响, 处理后的图像对比度高, 主要特征得到增强.

猜你喜欢
信息熵特征向量标准差
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
基于信息熵可信度的测试点选择方法研究
克罗内克积的特征向量
一类特殊矩阵特征向量的求法
EXCEL表格计算判断矩阵近似特征向量在AHP法检验上的应用
一种基于信息熵的雷达动态自适应选择跟踪方法
基于信息熵的IITFN多属性决策方法
对于平均差与标准差的数学关系和应用价值比较研究
医学科技论文中有效数字的确定
泊松分布信息熵的性质和数值计算