朱达荣,王端标,汪方斌,龚 雪,杨 岗,严瑞阳
(1.安徽建筑大学机械与电气工程学院,安徽 合肥 230601;2.安徽建筑大学建筑机械故障诊断与预警重点实验室,安徽 合肥 230601;3.安徽建筑大学工程机械智能制造重点实验室,安徽 合肥 230601)
随着深度学习的快速发展,目标检测取得巨大突破,被广泛应用于医疗检测[1]、人脸检测[2]、行人检测[3]、缺陷检测[4]等。目标检测性能好坏与目标尺度密切相关,在目前公开数据集中,小目标检测存在误检和漏检且检测精度较低的情况[5]。而小目标检测在实际场景中具有重要的应用,例如,在自动驾驶中,当行人或者交通信号等目标较小时,自动驾驶车辆需要快速准确地识别此类目标;在遥感图像分析中,需对船舶、汽车等目标进行检测[6],但由于这些目标尺度过小造成检测精度不高;在工业自动检测中,需检测出整个物料表面上小的缺陷[7]。因此,如何有效提高小目标检测性能,是当前目标检测领域非常重要的研究课题。
通常对小目标的定义有两种:1)目标所占像素点数占总像素点数的比例小于0.12%;2)根据具体的数据集进行定义,如在COCO数据集中,将尺寸小于32×32像素的目标称为小目标。近年来,国内外学者针对小目标检测方法进行了深入研究。唐聪等[8]提出多视窗SSD(Single Shot multibox Detector)模型,解决了传统SSD在小目标检测上的不足。TAKEKI等[9]将深度检测器与语义分割结合,并通过支持向量机将结果集成,解决了不同尺度下的目标检测问题。LIM等[10]连接多尺度特征并引入坐标注意力机制,提高了对小目标检测的准确性。
以上研究均是将可见光图像作为输入图像,但可见光波段下的目标检测受外界环境因素影响很大,如光照条件、天气状况、空气质量等,这些外界环境因素直接影响目标检测识别率。而偏振成像受环境影响较小,同时偏振图像能获取目标的偏振矢量信息,目标与背景对比度高,增强图像中目标的清晰度,因此引入偏振成像技术。目前偏振探测技术应用到诸多领域,验证了目标检测中引入偏振探测技术的可行性。宫剑等[11]提出一种红外偏振图像的舰船目标检测方法,解决海上环境恶劣时舰船与背景对比度低导致红外探测准确率不高等问题。薛模根等[12]利用偏振信息抑制丰富的背景分量,能有效检测荒漠背景下弱小目标。
目前目标检测方法分为以R-CNN(Region-based CNN)系列为代表的基于候选框的两阶段目标检测算法和以YOLO(You Only Look Once)系列为代表的单阶段目标检测算法。而YOLOv5具有检测精度高、速度快等特点,因此本文在标准YOLOv5算法的基础上,将改进算法应用在光伏组件表面落叶数据集中,实验和测试的结果验证了本文改进算法的有效性。
YOLO是第一个将卷积神经网络识别思想扩展到目标检测的算法,将输入图像通过Backbone提取特征后,从整个连接层映射到一个维度张量。YOLOv5的网络结构由输入端、Backbone、Neck、Prediction四部分构成,如图1所示。
图1 YOLOv5算法结构
输入端通过Mosaic数据增强、图片自适应缩放等操作对输入图像进行处理,Backbone用CSPDarkNet53网络提取图像中的特征信息。Neck将特征金字塔网络和路径聚集网络结合,对不同尺度的特征信息进行融合。Prediction对Neck输出的特征图进行预测。
本文在YOLOv5网络的基础上进行改进,在输入端输入偏振度图像,提高目标与背景对比度;减少C3模块数量,保留图像中高频信息的同时提取更多的浅层特征信息;主干网络中加入坐标注意力机制,增大目标物体的特征信息的权重,抑制无关信息;优化边界框回归损失函数,解决训练过程中梯度消失等问题。下面分别从输入端偏振度图像、特征提取网络、坐标注意力机制、损失函数四个方面进行详细介绍。
采用斯托克斯(Stokes)矢量描述光的偏振信息,假设进入SALSA相机的光学信号的Stokes矢量为
(1)
其中,S0表示光的总强度,S1表示水平方向线偏振光的强度,S2表示对角方向线偏振光的强度,S3表示圆偏振光的强度,一般情况下圆偏振分量极少,可以忽略。I0、I45、I90、I135表示光通过方向角度分别为0°、45°、90°、135°的偏振片的强度。
偏振度P为
(2)
由图2可知,由于光伏组件是人造目标,表面较为光滑,而落叶是自然目标,二者具有不同的偏振特性,故在偏振度图像中二者亮度差异明显。对比四幅图可知,偏振度图像能提高目标与背景的对比度,增强目标的边缘轮廓。
(a)S0
(b)S1
(c)S2
(d)DOP
偏振度图像中目标与背景对比度高,目标边缘轮廓清晰,边缘轮廓中含有大量的高频信息,而在标准YOLOv5主干网络中,大量的卷积操作(图3)会使这些特征信息丢失,无法准确检测小目标物体。因此本文简化特征提取网络,减少C3模块数量,如表1所示,保留高频信息的同时获得更多的浅层特征信息,同时减少模型的部署成本。
图3 C3模块
如图4所示,坐标注意力机制是分别在水平方向和垂直方向上进行平均池化,再对空间信息编码,最后把空间信息通过在通道上加权的方式融合。坐标注意力机制能改变图像中不同物体的权重,在偏振度图像中目标特性差异明显,可以采用坐标注意力机制加大利于检测的特征信息的权重,减小无关信息的权重,聚焦目标物体。
图4 CA结构
如图5所示,在标准YOLOv5网络输出特征图中落叶与背景光伏组件不易区分,对比(b)(c)两图,在加入坐标注意力机制后,落叶权重被增大而背景光伏组件权重被减小,因此落叶更为清晰,边缘轮廓信息也得到增强,且增强了输入偏振度图像的特性。
(a)输入图像
(b)标准YOLOv5
(c)加入CA
本文针对主干网络改进后的网络参数如表1所示,改进后的整体网络结构如图6所示。
表1 改进后的CSPDarkNet53网络参数
图6 改进后网络
在标准YOLOv5模型中使用GIOU Loss作为边界框回归损失函数,但GIOU Loss无法解决预测框在目标框内部且预测框大小相同的情况,GIOU Loss无法区分各预测框之间的位置关系。本文采用完全交并比损失函数(complete intersection over union loss,CIOU Loss)作为边界框回归损失函数,如式(3)所示。
(3)
(4)
(5)
(6)
其中,α是一个平衡参数,不参与梯度计算;v是衡量长宽比一致性的参数;I表示交并比;A和B分别是预测框和真实框;CIOU Loss中考虑了边界框中心点的距离信息与边界框宽高比的尺度信息,直接度量两个框的距离,使边界回归结果更好。
以光伏组件表面落叶为研究对象进行识别,由于复杂自然环境的影响,光伏组件表面落叶分布稀疏程度不同,易出现漏检、误检,且落叶占整幅图像的比例小于10%,可认为其是小目标。
CPU配置为Intel®CoreTMi5-1035G1 CP @1.00 GHz,16 GB运行内存,操作系统Windows10,64位。Pytorch版本为1.7,Python语言环境为3.9。落叶数据集按照7∶3比例随机划分为训练集和测试集,图片分别为308张和130张。批训练数据量为16,学习率为0.01,模型迭代150次,优化函数采用随机梯度下降(stochastic gradient descent,SGD)对模型进行训练。
选用分时型偏振成像系统采集光伏组件表面落叶偏振度图像,如图7所示,通过在成像探测器前加可旋转偏振片获取不同时刻、不同方向的偏振光强图像。整个系统主要由三部分组成:SALSA液晶偏振相机、镜头(SAMYANG AF35mm F1.4-22C)、带偏振图像采集软件的笔记本电脑。
图7 实验平台
实验图片采集于晴天上午8点至10点、中午11点至13点以及14点至16点三个固定时间段(每时间段为2小时)进行,每天拍摄约100张图片,拍摄总天数为5天。光伏组件与地面倾角为60°,采取多个观测角度、不同成像距离进行拍摄。数据集的部分样本如图8所示。将采集到的图片使用标记软件对其中落叶进行标注,并将标注信息转成txt形式导出。
(a)
(b)
(c)
数据集落叶分布情况如图9所示,其中,图9(a)表示落叶中心点在图片中的位置坐标分布情况,图9(b)表示落叶目标框的长和宽分别占图片长和宽的比例。由图9可知,数据集中落叶大小不一,小目标落叶数量较多,落叶较为均匀地分布在图片各个位置。
(a)落叶位置分布
(b)落叶目标框长宽分布
使用准确率(precision)、召回率(recall)、平均精度均值(mean average precision)等评价指标评估算法的性能。准确率VP表示被预测为正的样本中实际为正样本的概率,见式(7),其中TP代表真正例,FP代表假正例。召回率VR表示正的样本中被预测为正样本的概率,见式(8),其中FN代表假反例。平均精度均值VmAP是数据集中所有类别的平均精度的均值,见式(9)。
(7)
(8)
(9)
训练过程中标准YOLOv5算法和本文改进算法的边框回归损失和置信度损失对比曲线见图10,其横坐标为训练次数,纵坐标为Loss值。从图10(a)可看出,改进YOLOv5算法比标准YOLOv5算法收敛速度更快。从图10(b)可看出,在25次迭代后改进YOLOv5算法的损失值小于标准YOLOv5算法的损失值。可见,改进YOLOv5算法最终的损失值要小于标准YOLOv5算法的损失值。
(a)边框回归损失
(b)置信度损失
消融实验结果如表2所示,以YOLOv5为标准算法增加改进点,其中改进点1是减少主干网络C3模块的数量,改进点2是加入坐标注意力机制,改进点3是优化边框回归损失函数。
表2 消融实验结果
由表2可知,在标准YOLOv5算法的基础上进行改进,得到的优化算法在准确率、召回率和平均精度均值上都有不同程度的提升。将改进点同时作用到标准YOLOv5算法时,准确率提升了0.59%,召回率提升了1.93%,平均精度均值提升了0.36%。实验结果表明,改进点1、改进点2、改进点3的共同优化使得YOLOv5算法能更加准确地定位和识别落叶,整体提高落叶的检测性能。
从测试机中随机选择图片进行测试,检测结果如图11所示。其中图11(a)表示标准YOLOv5算法检测结果,图11(b)至(d)分别表示改进点1、改进点2、改进点3的检测结果,图11(e)表示完全改进后算法检测结果。对比可以看出,标准YOLOv5算法检测存在不少漏检的情况,改进点2、改进点3能较好地解决部分漏检,但当落叶在光伏组件边框附近时仍无法被准确检测出来,而改进点1能较好地检测到位于光伏组件边框附近的落叶,完全改进后算法检测结果的整体置信度和效果均要高于标准YOLOv5算法。
中间特征图比较结果见图12,对比图12(c)(e)和(d)(f)可以看出,减少C3模块数量后特征图中落叶的边缘轮廓更加清晰,保留了输入图像中较多的高频信息提取了更多的浅层信息;加入坐标注意力机制后抑制背景等无关信息,特征图中落叶与背景光伏组件的对比度得到提高,因此完全改进后算法落叶检测的置信度高于标准YOLOv5算法。
(a)输入图像
(b)标注图
(c)原算法P/2特征图
(d)改进后算法P/2特征图
(e)原算法P/4特征图
(f)改进后算法P/4特征图
(g)原算法P/8特征图
(h)改进后算法P/8特征图
(i)原算法P/16特征图
(j)改进后算法P/16特征图
(k)原算法P/32特征图
(l)改进后算法P/32特征图
本文在标准YOLOv5的基础上,分别从输入端偏振度图像、特征提取网络、坐标注意力机制、损失函数四个方面进行改进,有效地增强了YOLOv5网络模型对小目标物体的检测精度。运用改进后算法在自建数据集上进行大量实验,实验结果表明,在准确率、召回率、平均精度均值上分别提升了0.59%、1.93%、0.36%。