基于多云恶劣环境下的偏振图像修复定向方法*

2023-11-20 07:13边宇峰任彩鸣李怡纲
传感器与微系统 2023年11期
关键词:掩模云层偏振

边宇峰,李 沅,任彩鸣,李怡纲

(中北大学信息与通信工程学院,山西 太原 030051)

0 引 言

昆虫可以利用复眼的偏振结构感知天空偏振矢量场信息[1~6],获得出色的导航定位能力。研究人员通过模拟动物的这种复眼结构,设计了不同的偏振光罗盘。Lambrinos D等人[7]搭建了一个用于移动机器人的偏振光罗盘。褚金奎等人[8]通过模仿沙蚁设计了一种偏振导航传感器。Stürzl W和Carey N[9]设计了一种三通道偏振罗盘。Dupeyroux J和Viollet S等人[10,11]设计了一种紫外线波段的偏振光罗盘,并成功地将其应用于仿生机器人。然而,复杂天气对大气偏振模式的破坏严重影响了偏振罗盘的应用范围[12~14]。它不仅阻碍了人类通过模仿生物来实现精确的定向,还影响了蜜蜂的觅食时间[15]和甲虫的轨迹[16]。为了克服部分遮挡天空的定向问题,刘鑫等人[17]提出了适用于部分多云条件下的航向参考系统。厉祥等人[18]在紫外波段下对大气偏振特性进行了研究,表明在云层天气下近紫外波段具有较好的偏振特性。此外,一些深度学习方法已被应用于复杂天空条件的定向。万振华等人[19]提出了一种脉冲耦合神经网络,可以在天空被云、树和建筑物遮挡的情况下实现定向。上述方法基于受干扰的偏振角度图像进行拟合定向,而未考虑偏振角度图像本身的误差。

本文提出利用一种改进的U-Net深度卷积神经网络对采集图像进行分割云层生成预测掩模,然后将完整的预测掩模与输入图像结合在一起,利用样本块的方法进行修复。该方法能够结合深度学习的优势产生更精确的分割信息,这可以指导后续步骤完成更真实的修复任务,特别是针对于不同复杂云层之间的边界修复问题。

1 云层图像的偏振信息分析

1.1 云层对偏振模式的影响

观察天空偏振度和偏振角的Jet颜色图可以看出,云层的存在会很大程度上影响天空偏振度,而且在厚云、积云等云层密集区域相较于薄云区域偏振度更低,干扰了正常的偏振度分布情况;在偏振角图像中,由于散射光的偏振状态变得复杂,导致偏振角图像的分布范围变得更广,出现较多的异常值,如图1所示。太阳子午线附近出现扭曲、弯折和噪点等情况,从而对太阳方向信息的识别、提取产生影响,干扰太阳方位角的解算结果,使得太阳子午线方位角信息无法为导航提供较为可靠的方向依据。

图1 云层对大气偏振模式的影响

在多云天气条件下,太阳光进入云层区域并发生Mie散射,在前向散射的过程中散射光强逐渐减弱[20]。在可见光波段,光学厚度的增加导致偏振度降低,进而使得偏振方位角信息也受到影响,导致该区域的偏振信息无法被准确提取和使用,从而无法进行天空偏振定向。为了在云层等复杂天气条件下获取到准确的太阳子午线分布情况,需要将云层区域剔除并修复,选用蓝天区域进行偏振定向,从而降低甚至去除云层对天空偏振模式的干扰。

1.2 航向角计算

在晴朗无云天气条件下,大气分子的有效尺度远小于波长,天空中偏振分布模式是由部分偏振光组成的,符合瑞利散射理论。而基于瑞利散射理论得到的偏振方位角分布模式始终关于太阳子午线对称分布,受天气变化的影响较小。因此,可以利用太阳子午线方位角信息来获取航向角。载体航向角和太阳子午线的关系如图2所示。

图2 航向角计算示意

载体坐标系下的太阳方位角αc可以由该坐标系下的太阳子午线的斜率k计算获得,载体坐标系下的太阳子午线可以通过附近的偏振角度值拟合得到。而导航坐标系下的太阳方位角αb可由定位授时设备提供的位置时间信息配合天文日历知识进行解算,由式(1)和式(2)即可求得载体航向角φ

2 基于改进U-Net的图像分割修复方法

将修复过程分解为2 个步骤:预测掩模和掩模指导修复。首先,采用改进的U-Net 神经网络模型对采集图像进行分割处理,将云层进行分割生成预测掩模,将其作为从不完整图像到修复为完整图像的中间桥梁;然后,将完整的预测掩模与输入图像结合在一起,利用掩模进行修复。

2.1 改进的U-Net网络结构

为了提高分割精度以及整体预测速度,本文以U-Net网络结构为基础,利用Seg-Net网络模型中的最大池化索引结构来改进U-Net的上采样结构,提出了用于遮挡物分割的Seg-U-Net神经网络模型。完整的网络结构如图3所示。

图3 改进的U-Net网络结构

如图3所示,将512 ×512的天空灰度图从网络左端输入编码器部分,编码器部分由3个下采样卷积块组成,每个下采样卷积块包括2次ReLU函数及归一化处理、2次3 ×3卷积以及1次最大池化操作,同时保留每个池化窗口内最大值的位置信息,即最大池化索引。经过4 次下采样后得到大小为32 ×32 的特征图,然后进入解码器部分使用转置卷积操作对特征图进行上采样,将其大小扩充为原来的2倍。本文在改进的网络结构中将上采样后的特征图和下采样路径中对应层的最大池化索引进行拼接,之后经过2个3 ×3 的卷积层进行特征提取,并在每次卷积之后进行归一化处理和ReLU函数激活。在进行4 次上采样后得到与输入图片大小一致的特征图,最后通过1 ×1 单层卷积以及Sigmod激活函数得到输出的分割图像。

本文采用的最大池化索引拼接结构相比于U-Net中上采样中直接进行复制拼接的操作,可以帮助模型更精确地保留图像中的细节信息,减少计算量和参数数量,提高图像分割效率。设输入数据的大小为(N,C,Hin,Win),最大池化窗口大小为(kh,kw),步长为(sh,sw),则最大池化索引的大小为(N,C,Hout,Wout),其中

2.2 数据集与参数设置

构建了一个由相机采集的1 000张存在多种遮挡的天空强度图以及手动标注的标签组成复杂遮挡环境样本数据集,训练集与验证集的比例为7∶3,样例如图4所示。

图4 数据集样例

本文所采用的损失函数由两部分组成

式中LBCE为二值交叉熵损失函数,LDice为Dice 损失函数,参数β为调节2种损失函数的权重参数,控制二值交叉熵函数与Dice损失函数的权重比例。本文中混合损失函数的权重β设置为0.6,学习率为0.000 1,输入神经网络每组的图片数Batchsize设为8,优化算法用“自适应矩阵算法”。

对改进的网络模型进行训练,通过评价指标Dice 系数、准确率(Accuracy)对网络模型进行分析,以上评价指标的定义如下

式中 TP为模型中输出正确的遮挡区域,TN 为模型中输出正确的蓝天区域,FP 为模型中输出错误的遮挡区域,FN为模型中输出错误的蓝天区域。

2.3 实验效果

实验使用深度学习框架Pytorch 来运行所提出的改进的Seg-U-Net 神经网络模型,服务器的配置为:64 位Windows 10操作系统,内存为32 GB,CPU型号为AMD Ryzen 7 4600H,GPU型号为NVIDIA GeForce GTX 2080Ti。

训练集和测试集的评价指标变化情况如图5 所示,可以看出,在迭代次数接近300时结束训练,训练集的Dice评价指标为0.887 5,验证集的Dice评价指标为0.876 1;训练集的准确率为0.891 2,验证集的准确率为0.884 8。当评价指标和1很近似时,说明训练的效果越好,也说明神经网络的预测结果更准确。

图5 评价指标变化

按照同样的权重参数,如学习率、迭代次数、Batchsize,将数据集用未改进的网络模型进行训练,用同样的评价指标进行检验,从表1中可以看出,在Dice系数以及准确率方面,本文提出的神经网络模型均优于Seg-Net 和U-Net 模型,也验证了该模型在遮挡物分割任务中有更好的性能。

表1 云层分割评价指标对比分析%

由图6可以看出,U-Net 和Seg-Net 的分割结果虽然对云层和蓝天进行了分割,但在云层密集的部分仍有较多错误的覆盖,噪点比较多,与真实情况有较大的差异。而本文提出的方法无论是在白云蓝天整体的分割效果上还是在云层边界的细腻处理上都是最好的,分割效果最为优异,具有较好的分割性能。

图6 云层分割效果对比

2.4 掩模图像修复算法

将本文方法预测的二值图作为掩模,覆盖在原图上进行图像重建,达到去除云层目的同时保证像素点的完整性。使用二值图来作为掩模是利用二值图像中的像素点来指定需要修复的区域,即二值图中的非零像素点表示需要修复的云层区域,而零像素值则表示不需要进行修复的蓝天区域,如式(6)所示,通过式(6)将预测的二值图与原图相乘来实现指定区域的修复

式中K(x,y)为掩模像素矩阵K在(x,y)处的元素值;F(x,y)为去除云层后天空图像像素矩阵F在(x,y)处的元素值;H(x,y)为原始天空图像的像素矩阵H在(x,y)处的元素值。

本文选用基于求解图像的偏微分方程来修复区域中的像素值,该方法对于复杂的图像缺陷修复有较好的处理效果,可以用如下公式来表示

式中f为待修复图像;g为修复后的图像;TV(g)为g的总变分,表示g的梯度。

通过计算像素周围的梯度和垂直于修复边界的梯度来推断缺失区域中的像素值,在缺失区域中使用局部像素块来构造偏微分方程来进行填充,从而实现对天空图像中云层区域的修复。通过掩模修复后的天空图像如图7(b)所示,可以看出云层的异常像素点有效的去除了,在偏振方位角图像中噪点、扭曲和弯折现象也有很大改善,太阳子午线的位置信息更容易获取。

图7 掩模修复效果

3 实验结果与分析

3.1 实验采集设备

使用自行研制的仿生偏振信息采集样机进行室外实验,以获得真实的AOP 图像和航向角数据,偏振信息采集部分由SUA133GM单色CMOS图像传感器构成的光学相机以及自动旋转装置组成,具体参数如表2,整个航向测量实验装置图8所示。

表2 仿生偏振信息采集样机参数

图8 航向测量实验装置

3.2 多云天气下实验分析

本文首先利用搭建的相机采集系统获取不同方向的天空原始图,然后通过Seg-U-Net 卷积神经网络进行云层分割,获取到云层和蓝天的二值分割图,并用二值图作为掩模对原图进行修复,获取到去除云层异常像素点的灰度图,解算出相对准确的偏振方位角图像,从而获取到太阳的方向信息,得到准确的航向角结果。具体流程如图9所示。

图9 云层天气下航向角获取流程

利用搭建的图像式偏振光探测系统分别在2023年4月7日和2023年4月10日的多云天气进行室外实验,地点为中北大学科学楼B 座楼顶,本文选择随机时间进行采样。实验结果如图10所示。

图10 云层修复效果对比

图 10中,第1列为拍摄时间;第2 列为天空原始图;第3列为采用Seg-U-Net 卷积神经网络预测的云层蓝天二值图,其中白色代表云层,黑色代表蓝天;第4 列是用二值图为掩模与第一列融合,进行局部图像修复后的天空原始图,可以看出云层的异常像素点被有效去除了;第5 列为未去云情况下获取的偏振方位角图像;第6 列是云层修复后解算的偏振方位角图像。

上述对比实验可以看出,本文提出的方法能有效地去除云层,降低云层对偏振模式的干扰,获取到相对准确的偏振信息。未去云的偏振方位角图像出现噪点、弯折和失真的情况,太阳子午线的位置也出现明显的偏移和扭曲;而云层修复后的图像中偏振方位角分布更加均匀,噪点和失真明显减少,太阳子午线的位置和方向更加明显和清晰,易于识别准确的方位角信息。

将本文方法与未修复直接拟合的方法以及多云天气下大气偏振定向方法[20]进行对比,并将对应时刻仿真得到的航向角数据作为误差参考。在不同云层天气条件下采集80组图片数据进行验证,误差解算结果如图11所示。

如表3所示的实验结果表明,在云层遮挡环境下平均误差可达0.720 9°,对比直接拟合与多云天气下偏振定向方法提升效果明显。

4 结 论

本文提出了一种融合Seg-U-Net卷积神经网络的云层分割方法,并以云层蓝天二值图为掩模进行局部图像修复,得到去除云层异常像素区域的天空图像,解算获取到更为准确的航向角信息,从而提升了偏振光导航在多云复杂天气应用的可靠性。室外实验证明,在多云环境中本文方法解算的航向角平均误差可以从3.240 8°降低至0.720 9°,相比于未去除云层前精度提升了约78.12%。结果表明:即使在云层较多的情况下,本文方法依然能够得到相对准确的太阳方向信息,从而验证了本文方法在复杂采集环境下获取偏振信息具有较高的鲁棒性和较好的可行性。

猜你喜欢
掩模云层偏振
偏振纠缠双光子态的纠缠特性分析
基于直写技术的微纳掩模制作技术研究进展*
乌云为什么是黑色的
基于LabVIEW的偏振调制激光测距测量控制系统
穿透云层的月亮
掩模图像生成时阈值取值的合理性探讨
偏振旋转效应在全光缓存器中的应用与实现
掩模位置误差对光刻投影物镜畸变的影响
春日冰雹
Cr光栅掩模对金属平板超透镜成像质量的影响