李宇阳,王霞,赵家碧,李磊磊,陈家斌
(1.北京理工大学 光电学院,北京 100081;2.北京理工大学 光电成像技术与系统教育部重点实验室,北京 100081;>3.北京理工大学 自动化学院,北京 100081)
随着科技的发展,导航技术在国防安全领域上占有非常重要的地位,对国家国防实力的提升也起着极其重要的作用。现阶段的主流导航方式主要依靠惯性导航系统(INS)以及全球定位系统(GPS)进行导航,但是INS每次使用前都需要初始化设置,且累计误差大,GPS信号容易受到信号干扰的影响[1-2],因此无论对于军用还是民用,都迫切需要一种更好的导航方式。
生物学家发现,沙漠蚂蚁能够利用背部边缘区域的小眼感知天空偏振光,获取全天空大气偏振分布模式,从中提取可靠的航向信息,引导自身觅食、返巢等行为[3]。在此启发下,国内外许多研究学者模仿其导航原理提出各种仿生偏振光导航算法,包括基于对称分析法、最小二乘估计法、混合遗传算法和天顶角标定法来拟合太阳子午线[4-10]以及基于偏振增强光流法[11]的导航方法。但是这些研究大多针对理想条件即晴朗天气条件或夜间低照度等复杂条件,关于遮挡环境的影响研究较少,对于陆上运动的车载实验,图像采集过程中视野里总是会出现飞鸟、树枝、电线杆和建筑物等随机遮挡,这些遮挡会严重影响对偏振度和偏振角的解算,进而影响导航精度。
为克服这一困难,本文提出一种基于局部大气修复的偏振导航方法。首先对采集的天空图像进行修复预处理,建立基于相似块偏移量的图像修复模型,通过计算天空图像中每一个图像块对应的偏移量直方图,对直方图进行高斯滤波和非极大值抑制,得到图像中的主要偏移量,再计算每个像素点对应的偏移量来进行图像的填充,还原被遮挡的图像信息。在此基础上,解算修复后图像的天空偏振分布模式,再通过天文历解算出太阳方位角及其实际空间位置,得到航向角以实现导航的目的。计算机仿真和外场有无遮挡条件对比实验结果表明,该算法能适应视野内部分遮挡环境,具有一定的可行性。
自然图像具有潜在的规律性,在空域和变换域内对图像进行统计与分析表明,图像具有自相似性和尺度不变性[12-13]。许多研究者尝试获取自然图像的统计性先验知识并将其用于图像修复,修复过程中匹配图像块时需要给每个未知图像块分配一个偏移量,即拷贝块与待修复块的相对位置。研究发现这些偏移量的统计量是稀疏分布的,即大部分的图像块都有相似的偏移量,在统计量中形成了几个突出的峰值[14]。这种主要偏移量描述了图像的重复规律,从而为修复缺失区域提供了可靠的线索。根据这一现象,建立一种基于图像相似块偏移量统计特性的修复模型,修复由于遮挡导致缺失的天空图像信息。
在进行修复前,需要先将天空中被遮挡的部分分离出来。Canny算法一直被认为是最经典的边缘检测算法之一,能在一定程度上抗噪声又能保持弱边缘[15],因此采用Canny算子进行边缘检测,提取遮挡部分区域。而后对图像进行形态学处理,通过腐蚀膨胀连接相近的图像区域,并去除孤立细小的色块以生成遮挡区域Ω。如图1所示,利用(1)式对遮挡区域进行二值化处理以制作掩模,并通过(2)式将天空图像中被遮挡区域归零化。
(1)
F(x,y)=H(x,y)·K(x,y)
(2)
式中:K(x,y)表示掩模像素矩阵K在(x,y)处的元素值;F(x,y)表示去遮挡后天空图像像素矩阵F在(x,y)处的元素值;H(x,y)表示原始天空图像的像素矩阵H在(x,y)处的元素值。
图1 图像修复算法示意图Fig.1 Schematic diagram of the image inpainting algorithm
遮挡区域分离以后,剩下的即为已知区域。对于已知区域内每一个图像块,都寻找与之最相似的另一个已知图像块,并计算两个图像块的相对位置,这个相对位置便是需要的偏移量,用(3)式表示,匹配过程采用PatchMatch算法实现[16]。
(3)
式中:s为偏移量的坐标,其对应坐标值为(u,v),即s=(u,v);ε为图像块的位置,ε=(x,y);P(ε)为以ε为中心的ω×ω(本文ω取8)的图像块;h、w分别表示图像的长和宽。约束条件|s|>τ可排除邻近图像块的影响,避免琐碎统计。
得到所有已知区域像素ε的偏移量s(ε)后,用(4)式计算其统计特性并绘制偏移量直方图g(u,v):
(4)
式中:δ(·)为二值函数,当s(ε)=(u,v)成立时δ(·)=1,否则δ(·)=0。
对直方图进行高斯滤波和非极大值抑制,从中选出最大的k个偏移量,一般情况下前60个偏移量能够涵盖多数的偏移量可能性,因此,经验值设定为k=60。
给定k个主要的偏移量以后,将不同偏移量的图像堆叠起来,作为待填充区域的候选值。每个需要填充的点都有其对应的偏移量,这个偏移量便是需要获得的标签,图像修复问题也就转化为一个多标签的问题,找到每个像素点对应的最优偏移量也就完成了图像的修复。
构建如(5)式的MRF能量函数进行优化从而选取最佳的偏移量,本文采用GCO-v3.0开源软件来实现[17]。
(5)
数据项Ed保证被选取用作填充的像素是已知的,即当计算的偏移量对应的ε+si位置的像素在已知区域内,Ed=0,否则Ed=+∞。平滑项Es用(6)式表示,代表对于相邻的像素点尽量获得相同的偏移量,因为当相邻像素ε、ε′被赋予不同的偏移量时,二者之间很可能出现裂缝,而Es可以减少裂缝的出现。
Es(a,b)=‖I(ε+sa)-I(ε+sb)‖2+ ‖I(ε′+sa)-I(ε′+sb)‖2
(6)
式中:sa表示预设的第a个偏移量;sb表示预设的第b个偏移量;I(ε)表示待修复图像I在位置处的像素值。
得到所有被遮挡区域像素的最优偏移量以后,便可根据偏移量对图像进行修复。
在对采集的天空图像进行修复处理后,需要解算其偏振模式,进而算出航向角。本文采用基于局部大气偏振特性的仿生导航算法[18],可以在小视场条件下获取航向信息,避免视野中需要太阳子午线存在的限制。实验相机为加拿大LUCID公司生产的PHX050S-P偏振相机,相机采用日本索尼公司生产的IMX250MZR CMOS偏振传感器,每4个像素上具有4个不同的定向偏振滤波器,如图2所示,方向分别为0°、45°、90°和135°,因此采集一次图像能得到4个方向的强度通道,即I0、I45、I90和I135(见图3),避免了旋转偏振片所造成的误差。用Stokes矢量(S0,S1,S2,S3)表示部分偏振光,如(7)式所示(多数情况下圆偏振分量S3可以忽略[19]):
(7)
图2 偏振相机及其结构Fig.2 Polarization camera and its structure
图3 4个方向的强度通道Fig.3 Intensity channels in four directions
入射光的偏振度DOP和偏振角AOP可按如下公式计算:
(8)
(9)
由于大气偏振模式分布与太阳高度角和方位角密切相关,解算出入射光的偏振信息后便可求得太阳的位置信息。如图4所示,以观测者位置O为坐标原点,观测者所在地平面为Oxy平面建立地平坐标系。图4中,S为太阳所在位置,P为天空中某一观测点的位置,N为天顶。散射角θ定义为观测点O到太阳位置S的向量OS与观测方向OP的夹角。太阳高度角hs定义为OS与xy平面的夹角。太阳方位角As定义为OS在Oxy平面上的投影与x轴正方向的夹角。对于观测点P,也有类似定义的高度角hp和方位角Ap。偏振方位角φ定义为P点光矢量振动方向与天球上过天顶N与观测点P的弧在P点处的切线的夹角。为求解偏振角φ,以P点为坐标原点Oi,P点处地平经圈切线为xi轴,地平纬圈切线为yi轴建立新的直角坐标系。
图4 天球坐标系示意图Fig.4 Schematic diagram of the celestial coordinate system
计算得到P点处偏振方位角φ为
(10)
计算出偏振方位角后,根据Oixiyizi坐标系和偏振方位角的定义,可以计算Oxyz坐标系下的振动矢量:
(11)
由于天空任一点P的电矢量振动方向垂直于OSP平面,因此只要得到两个不相关的e矢量,即可将两者进行叉乘得到太阳方向向量s,即
s=ei×ej
(12)
确定太阳方向向量后,再利用天文历计算太阳子午线相对于正北方向的夹角,即可得到航向角As:
(13)
式中:L表示观测点的地理纬度;δs和Ts分别表示太阳赤纬角和太阳时角。
为验证前述算法的可行性,分别设计了计算机仿真和外场部分遮挡环境对比实验。
在已有的天空图像上用画笔工具涂抹点状、条状和块状图形,以模拟实际观测过程中视野内可能出现的飞鸟、树枝、电线杆以及建筑物等随机遮挡,每类遮挡分别测试了5幅天空图像。图5(a)~图5(c)展示了3种遮挡类型下的其中1幅图像,其对应的修复结果如图5(d)~图5(f)所示。解算修复前后图像的航向角,其误差对比曲线如图6所示,统计误差数据,结果如表1所示。
图5 修复前后对比图Fig.5 Comparison of image inpainting results
图6 去除遮挡前后航向角误差比较Fig.6 Comparison of heading angle errors before and after removing occlusion
直观上,图5中不论是点状遮挡、条状遮挡还是块状遮挡都被有效去除,恢复了图像细节信息。客观上来说,图6可以看出随着遮挡类型从点状到条状再到块状,误差曲线变化越来越剧烈,表明遮挡区域面积变大,对航向角精度的影响也随之变大,去除遮挡以后,误差曲线平缓许多。表1的数据进一步证实,航向角误差与遮挡区域面积呈正相关,而修复图像以后误差都有显著下降,精度提高了80%左右。
表1 3种遮挡条件下去除遮挡前后 航向角误差比较Table 1 Comparison of heading angle errors before and after occlusion removal under three conditions
为进一步验证该方法的可行性,搭建了偏振光罗盘系统进行外场部分遮挡环境实验,系统由偏振相机、嵌入式偏振并行解算系统和光罗盘集成框架子系统构成(见图7)。偏振相机采用前述PHX050S-P相机,其分辨率为2 448×2 048,帧率为24帧/ps,波长响应范围为400~900 nm,相机以固有帧率输出图像,并通过千兆网口传输到嵌入式偏振并行解算系统;解算系统由美国NVIDIA公司制造的TX2核心板和TX2载板构成,TX2核心板是系统的主体,主要进行信号并行处理,TX2载板进行信号传输,系统使用CUDA加速,处理输入图像并估计航向角;子系统将前述系统集成进行信息输出和电流供给,并隐没脆弱突出部件以进行保护。
图7 仿生偏振光罗盘系统Fig.7 Bionic polarized light compass system
于2021年6月19日上午9:00左右在北京某地(116°20′ E,39°56′ N)进行外场有无遮挡条件对比实验,实验时天气晴朗、微风,理论上可以减少Mie散射对实验的影响,实验场景如图8所示。实验过程中以假花树枝作为遮挡,多齿分度台带动相机顺时针旋转,每转10°采集一次天空数据,一共采集15次数据,每次分别拍摄有遮挡和无遮挡两种场景,由于两次拍摄间隔不超过2 s,故认为此时天空偏振分布模式不变。
图8 实验场景图Fig.8 Test setup
表2展示了两次采集数据中对有遮挡的图像进行修复的实验结果。数据1与数据2对应实验结果分别为表2的第2、3列及第4、5列。其中,第2列和第4列从上至下是采集的原始图像以及原图对应解算的偏振度和偏振角分布图,第3列和第5列是去除遮挡后的图像及它们对应的偏振度和偏振角分布图。对比表2第2、3列及第4、5列,可以观察到本文提出的方法能较好地去除遮挡,还原图像信息。由于遮挡信息不参与偏振度与偏振角的解算中,所还原的天空偏振分布模式信息质量能够得到进一步的提升。但实验结果相比仿真还是略显不足,例如在修复后的图像中,遮挡区域边缘部分存在一些过渡不自然的问题,其原因是实验过程中阳光让遮挡物体周围存在阴影,导致边缘检测的准确程度下降,因此在修复时隐约出现了遮挡物的外轮廓,但是这部分边缘对偏振信息变化趋势的重建影响较小,后续可以通过泊松融合或梯度检测算法进行去除。
表2 修复结果对比
解算修复前后图像的航向角,并将本文方法与传统的偏振光强提取算法(PIEA)[20]及FMM图像修复算法[21]进行对比,其统计分析结果误差和对比曲线分别如表3和图9所示。可以观察到相较于修复前,3种方法的误差都有所降低,而本文方法的整体误差曲线更为平缓,稳定性更好,误差平均值及标准差等也是本文方法最低。原因是PIEA将遮挡区域去除,只采用剩下的区域计算,这样过度依赖天空剩余部分偏振信息的完整性,当剩余部分的规律不再明显时,该方法的精度会降低;而FMM算法虽然修复了缺失区域,但其采用扩散式拟合修复,只适用于狭窄细长的遮挡,对于块状遮挡来说无法准确修复其内部信息。本文方法既利用了天空剩余部分,又对遮挡区域采用块匹配式修复,不论是细长遮挡还是块状遮挡,都有较好的修复效果。综合来看,本文方法将误差平均值缩小到1°左右,精度提高了约61%,可见该方法能降低遮挡环境对导航精度的影响,验证了其可行性。
表3 3种方法的航向角误差比较Table 3 Comparison of heading angle errors using three methods (°)
图9 3种方法的航向角误差计算曲线Fig.9 Calculation curves of heading angle errors using three methods
本文针对目前仿生偏振导航算法缺乏对遮挡环境因素的考虑,本文提出一种基于图像相似块偏移量统计特性的修复模型,并将此模型用于偏振导航系统,从而弱化遮挡环境对航向角解算的干扰。得出主要结论如下:
1) 遮挡面积增大,航向精度随之下降且变化程度更加剧烈,因此去除遮挡还原图像信息十分必要。
2) 算法采用块匹配式修复,通过计算图像相似块的偏移量将图像修复问题转化为多标签问题,简化修复过程的同时提高了修复准确性。
3) 算法采用局部大气偏振特性进行解算,可以在小视场条件下获取航向信息,避免视野中需要太阳子午线存在的限制。
4) 本文方法可以有效抑制遮挡环境的干扰,还原图像偏振信息,实现小视场条件下遮挡环境中的高精度导航,具有较好的鲁棒性。
后续工作考虑将复眼成像技术应用于航向角解算,通过采集的多视角图像增加角度分辨率,使航向角精度进一步提高。本文的研究主要集中在晴朗天气条件和可见光上,然而复杂天气条件如雨天、雾霾天气下粒子散射特性不同,同时不同波长的光散射特性也有显著差异,因此复杂天气条件以及不同波长的光对偏振导航精度的影响也是下一步的研究重点。