1. 引言
列车障碍物检测任务主要由可见光摄像机和激光雷达承担,可见光摄像机捕捉前方轨道图像,通过图像处理和机器学习算法进行障碍物识别、分类,激光雷达提供三维点云数据进一步验证和精确障碍物位置。文献[1]提出自适应反射强度阈值过滤无效点云数据,再结合体素滤波器、聚类半径差异化等方法进行聚类,提升全自动列车的障碍物检测速度与精度。文献[2]通过检测与轨道平行的参照物间接提取轨道区域,利用曲线拟合推断出中心线并生成二维轨道区域,再结合地面检测获取三维轨道区域,获取更长的探测区域。然而,可见光摄像机受限于光线,在低光环境下得到的图像容易模糊,检测效果往往不佳。相比之下,热成像[3]对红外辐射具有敏感性,不受天气和光照限制,能够在低光环境下清晰成像,可以作为可见光摄像机的辅助手段实时获取目标物的红外辐射信息,监测包括人、动物在内可能对列车行驶安全造成威胁的障碍物,保障列车运行安全。
障碍物主动检测系统根据检测设备的安装位置分为轨旁障碍物检测和车载障碍物检测[4]。轨旁主动障碍物检测将设备安装在重点防护区段进行障碍物检测。检测对象相对简单,算法复杂度相对较低。文献[5]基于红外热成像设计了一套全天候轨道行人闯入检测系统来辅助驾驶员发现轨道上的行人并及时发出警报。文献[6] [7]基于目标增强融合红外和可见光图像配准算法解决异源图像配准问题,提高障碍物检测的准确率。车载主动障碍物检测通常将传感器安装在列车两端头车上,以便随列车行进实时监测。YOLO [8]-[10]系列、SSD [11]、超声波[12]等目标检测技术都在铁路障碍物检测上有广泛应用。其中,YOLO系列凭借其高速、高效、良好的可移植性和高灵活性,广泛应用于小目标和密集目标等相关检测任务[13] [14],而YOLOV8在平衡速度和精度的基础上,进一步增强了实时性。对于检测速度和准确性有较高要求的列车障碍物检测任务,可有效提升检测系统的响应速度和精确度,为列车运行安全提供关键支持。
然而,红外图像的分辨率低、细节少,与背景温差小的目标难以检测,且存在噪音干扰。此外,车载主动障碍物检测过程中,视频随列车行进产生的抖动容易造成图像模糊,影响检测效果。针对上述两个问题,采集不同天气状态下列车前方数据,基于ORB算法设计一种电子防抖(Electronic Image Stabilization, EIS)算法,并结合对比限制自适应直方图均衡化(Contrast Limited Adaptive Histogram Equalization, CLAHE)对数据进行预处理,为后续障碍物检测提供更清晰、稳定的数据集。之后,使用MobileNetV3网络替换YOLOV8n原有的主干网络CSPDarkNet53,提高算法计算效率和特征提取能力;使用FasterBlock网络重构颈部网络中的C2f模块,提高算法检测精度和稳定性;优化CIOU损失函数,提高算法泛化能力。实现提高障碍物检测精度的要求。
2. 数据采集及处理
使用某典型热像仪采集不同天气下列车前方数据,对数据进行EIS、帧提取和CLAHE预处理,EIS通过检测和补偿视频帧之间的相对运动来减少抖动引起的图像不稳定,提升图像质量。CLAHE将图像划分为多个小块,并对每个块进行均衡化处理,增强局部对比度,同时避免过度增强噪声,提升图像的可辨识性。进行障碍物检测之前先对数据预处理有助于之后YOLOV8n算法更准确地检测障碍物,提升列车的运行安全。流程如图1所示。
Figure 1. Data collection and preprocessing process
图1. 数据采集及预处理流程
2.1. 数据采集
模拟列车运动轨迹,使用推车搭载热像仪录制其在轨道上前进时轨道前方视频,如图2所示。采集的视频数据包含:人(person)、车(car)、狗(dog)、火车(train)、骑行者(Cyclists)、自行车(bicycle)、小推车(cart)、电动车(Electric bicycle)共8个类别。
Figure 2. Data collection flowchart
图2. 数据采集流程图
2.2. 红外视频电子防抖处理
为了减少列车运行中颠簸和震动对红外视频图像造成的影响,提高视频稳定性和清晰度,基于ORB算法设计了一段EIS算法,流程如图3所示。
Figure 3. Electronic image stabilization algorithm flow
图3. 电子防抖算法流程
使用ORB检测器从每一帧中提取特征点和描述符,通过暴力匹配(Brute-force matcher, BFMatcher)进行前后帧特征点匹配,再加权平均融合Farneback经典光流法和金字塔Lucas-Kanade稀疏光流法计算匹配特征点的光流来估计帧间仿射变换矩阵以提高运动估计的准确性。使用卡尔曼滤波对计算出的运动轨迹进行平滑处理,生成一个平滑且稳定的轨迹。再根据轨迹对每一帧进行仿射变换补偿,去除由抖动、噪声等因素导致的小幅度波动、不规则运动,使视频画面更加稳定、平滑。
2.2.1. ORB特征提取算法
ORB [15]是一种结合了FAST特征点检测与BRIEF特征描述符,实时性更强,具有旋转不变性且对噪声有一定鲁棒性,与红外图像有较好的匹配性能。
对于像素p及其周围16个邻域像素
,通过FAST特征点检测来判断p是否是特征点。FAST特征点检测的计算公式为
(1)
其中,
是像素p的灰度值,
是邻域像素
的灰度值,N是连续像素的数量,t是阈值。
得到的特征点p的质心坐标
及二者间角度θ的计算公式为
(2)
(3)
其中,
是像素pi的坐标,
是特征点p的坐标。
根据θ旋转像素
,对旋转后的像素点
和
进行重复比较,生成一个长度为n的二进制描述符,即BRIEF特征描述符,计算公式为
(4)
2.2.2. 融合光流法
Farneback光流法[16]基于多项式展开估计每个像素的光流,计算图像中所有像素的运动矢量,提供全图密集光流信息。计算公式为
(5)
其中,
是光流矢量,
、
是图像的空间梯度,
是时间梯度,
是图像亮度,满足约束方程
(6)
金字塔Lucas-Kanade光流法[17]先在低分辨率图像中估计光流,再逐层细化到高分辨率图像,对特征点的跟踪更为精准。在局部窗口W内,计算公式为
(7)
其中,
是窗口W内像素坐标。
对于具有噪声和低对比度区域特性的红外图像,结合Farneback全局运动信息和金字塔Lucas-Kanade局部精细运动估计,平衡计算效率与精度的同时可以提高鲁棒性。最终运动矢量计算公式为
(8)
其中,a是权重因子,用于平衡两种光流法融合后的结果。
根据加权平均后的最终运动矢量可以计算得出更精确的仿射变换矩阵,进一步得到更准确的运动补偿。
3. 红外热像列车障碍物检测算法
3.1. YOLOV8n-TOD算法结构
考虑实时性需求,选择最小、最轻量的YOLOv8n算法[18],将其改进为列车障碍物检测算法YOLOV8n-TOD,如图4所示。该算法的改进主要包括:使用MobileNetV3网络替换算法原有主干网络,增强特征提取能力,提升推理速度。颈部网络C2f模块结合FasterBlock模块重构,提升算法检测精度。优化CIOU损失函数,提升算法泛化能力。
Figure 4. YOLOV8n-TOD model architecture diagram
图4. YOLOV8n-TOD算法结构图
3.2. 具有MobileNetV3的改进型Backbone网络
红外图像具有较低对比度和有限颜色信息,温度和光照变化都有可能造成误检,降低检测精度,因此对特征提取的有效性要求更高;此外,车载障碍物检测受车载环境影响,通常无法使用算力较高的计算设备[4]。障碍物检测的延迟可能会影响列车即时响应,威胁乘客安全。因此,为了提升检测的速度和精度,需要更高的计算效率和更强的特征提取能力。
MobileNetV3是一种由MobileNetV2改进而来的轻量化网络[19],如图5所示,其核心原理是整合深度可分离卷积、倒残差结构、SE (Squeeze-and-Excitation)模块、Hard-swish激活函数,以及NAS (Neural Architecture Search)技术,保证准确率的同时,增强特征提取能力、降低计算复杂度、减少计算参数数量。替换YOLOV8n原有主干网络可以降低算法推理时间,提升算法检测精度。
Figure 5. MobileNetV3 network architecture diagram
图5. MobileNetV3网络结构图
SE模块通过自适应重新调整每个通道的权重,增强关键特征的表达并抑制无关特征,提高算法对障碍物的识别能力。Hard-swish激活函数更加敏锐地捕捉微小特征变化,有效保留重要特征信息,减少对小幅度信号的忽略,进一步提高检测的准确性。同时,Hard-swish具有较高的计算效率,在列车障碍物检测中,能够更快做出反应,保障行车安全。此外,NAS技术优化后的MobileNetV3网络结构能够有效识别找出最适合的层结构和超参数设置,进而提升算法的识别精度和鲁棒性。
MobileNetV3有large和small两种结构,large结构有更多参数和更复杂的网络结构,特征提取能力更强、精度更高、更适应复杂场景,在兼顾速度与精度方面更有优势。
3.3. 利用FasterBlock重构C2f模块改进Neck网络
多尺度特征融合与提取,有助于提升算法的检测精度与稳定性。同时,由于列车制动距离较远,障碍物检测的感知范围也需要相应提升[4]。
FasterBlock是FasterNet网络中的核心构建模块[20],如图6所示,是一种用于优化深度学习网络结构的轻量化模块,其核心原理是在网络结构设计过程中通过部分卷积(Partial Conv3)和多层感知机(MLP)等轻量化结构,减少网络的计算复杂度和参数量,提升推理速度。
Partial Conv3在部分通道上执行卷积操作,保留其余通道原始信息,在保存和强化重要特征信息的同时,避免冗余计算对效率的影响。MLP通过扩展和恢复特征维度,深度处理输入特征,提高算法表达能力,保持高效计算性能。此外,DropPath在训练时随机丢弃部分计算路径,防止过拟合,以此增强算法的泛化能力,Layer Scale则进一步对不同通道的特征进行自适应缩放调整,提升特征表达的准确性。通过FasterBlock重构的C2f_FasterBlock模块采用CSP(Cross Stage Partial)结构思想,将特征分为经卷积操作与未经卷积操作两部分进行处理,并在不同尺度上特征融合,在保持原始信息的同时,提取更丰富的多尺度特征,进一步提高小型和远距离上的障碍物检测精度。
Figure 6. FasterNet network architecture diagram
图6. FasterNet网络结构图
3.4. 损失函数优化
YOLOV8n算法配置的损失函数为CIOU (Complete-IoU),在红外图像中,目标边界较为模糊,且障碍物类型不同,宽高比大概率也不相同,CIOU在DIOU基础上考虑宽高比[21],有更准确的相似性度量和更强的鲁棒性,提供更稳健的边界框回归效果,减小障碍物误检、漏检的概率,提高算法的检测精度。
Figure 7. CIOU calculation diagram
图7. CIOU计算示意图
参照图7,CIOU计算公式为
(9)
其中,v是预测框和真实框之间的长宽比相似度,计算公式为
(10)
w和h是预测框的宽和高,wg和hg是真实框的宽和高。
a是权重系数,用来平衡长宽比相似度对CIOU的影响,计算公式为
(11)
是预测框和真实框之间的中心点距离,计算公式为
(12)
和
分别表示预测框中心点b和真实框中心点bg的坐标。
c是预测框和真实框的最小包围框对角线距离,计算公式为
(13)
wc和hc是包围矩形的宽和高。
4. 测试验证
4.1. 测试环境
测试在恒源云算力平台进行,环境配置如表1所示。
Table 1. System configuration and versions
表1. 系统配置及版本
系统配置 |
版本 |
操作系统 |
Linux Ubuntu 20.04.6 LTS |
内核 |
GNU/Linux 5.4.0-155-generic |
GPU |
NVIDIA GeForce RTX 4060 Ti 16GB |
CPU |
Intel(R) Xeon(R) CPU E5-2683 v4 |
CUDA版本 |
12.1.1 |
Python版本 |
3.11 |
模型参数设置为:批大小(batch size)为64,训练轮次(epoch)为250轮,输入图片尺寸(imgsz)为640 × 640 pixel,优化器(optimizer)为自动选择,初始学习率为根据优化器自动选择。
4.2. 评价指标
测试采用平均精度(mean Average Precision, mAP)、检出率(Recall, R)和漏检率(False Negative Ratio, FNR)作为评价指标。
漏检率FNR指模型检测漏掉的目标占所有实际目标的比例,与检出率互补。
(14)
结合精度(Precision, P)与R计算各个类别的平均精度(Average Precision, AP),对所有类别AP加和再平均得到mAP,能够全面评估算法在不同检测阈值下的表现。mAP50即IOU阈值选取0.5。
(15)
(16)
式中,N是类别数,n是不同的阈值数量,Rj是每个阈值下的召回率,Pj是对应的精度。
在EIS中常采用结构相似性指数(Structural Similarity Index, SSIM)和峰值信噪比(Peak Signal-to-Noise Ratio, PSNR)作为评价指标。
SSIM能够衡量EIS处理前后视频结构、亮度和对比度等信息的保持情况。结果在[0,1]间,越接近1图像越相似,结构信息保留得越好。对两幅图像块x、y
(17)
其中,μ是均值,σ2是方差。通常,
,
,K1 = 0.01,K2 = 0.03,L = 255。
PSNR能够评估视频防抖后帧的质量相对原始视频帧的偏差,超过30 dB一般被认为是高质量图像。
(18)
(19)
其中,MAX是图像像素的最大可能值,通常为255,
、
分别是原图像和处理后图像在位置
的像素值,w和h是图像的宽和高。
4.3. 对比测试
经EIS和CLAHE预处理后,得到2857张图像,按照7.8:1:1.2比例随机划分为训练集、验证集和测试集。
4.3.1. EIS算法处理前后结果比较分析
使用YOLOV8n算法对EIS处理前后的同一段视频进行对比测试,测试结果如图8所示。结果表明,经过EIS算法处理的视频能够很好的实现去抖。
(a) Farneback光流法
(b) Lucas-Kanade光流法
(c) Farneback、Lucas-Kanade融合
Figure 8. Comparison of SSIM and PSNR curves before and after model improvement
图8. 算法改进前后SSIM和PSNR曲线对比
4.3.2. EIS和CLAHE算法处理前后性能对比
基于YOLOV8n算法对预处理前后数据进行对比测试,实验结果如表2所示。结果表明,经过预处理后算法的mAP50提升了2.4%,R提升了0.5%,验证了预处理的有效性。
Table 2. Performance comparison before and after data preprocessing
表2. 数据预处理前后性能对比
算法 |
mAP50/% |
R/% |
FNR/% |
YOLOV8n |
51.8 |
47.2 |
52.8 |
+EIS |
53.4 |
48.1 |
51.9 |
YOLOV8n-EA (+EIS + CLAHE) |
54.2 |
47.7 |
52.3 |
4.3.3. 主干网络、颈部网络改进前后性能对比
将替换MobileNetV3网络、C2f_FasterBlock模块的YOLOV8n算法与原始的YOLOV8n算法进行对比测试,测试结果如表3所示。MobileNetV3网络改进后算法的mAP提升了3.7%,R提升了2.3%,C2f_FasterBlock模块改进后算法的mAP提升了1%,R提升了3.1%,算法效果得到显著优化。
Table 3. Performance comparison before and after backbone and neck network improvement
表3. 主干、颈部网络改进前后性能对比
算法 |
mAP50/% |
R/% |
FNR/% |
YOLOV8n-EA |
54.2 |
47.7 |
52.3 |
+MobileNetV3 |
57.9 |
50.0 |
50.0 |
+C2f_FasterBlock |
55.2 |
50.8 |
49.2 |
4.3.4. 优化损失函数前后性能对比
修改CIOU的权重系数a,将调整a后的YOLOV8n算法与原YOLOV8n算法进行对比测试,测试结果如表4所示。结果表明,当a = 0.3时,算法的mAP提升了2%。
Table 4. Performance comparison before and after loss function optimization
表4. 损失函数优化前后性能对比
a |
mAP50/% |
R/% |
FNR/% |
0.1 |
56.1 |
47.7 |
52.3 |
0.2 |
56.2 |
47.7 |
52.3 |
0.3 |
56.2 |
47.7 |
52.3 |
0.4 |
55.8 |
47.7 |
52.3 |
0.5 |
55.6 |
47.7 |
52.3 |
4.4. 消融实验
将所有改进方式集成到同一算法上,得到列车障碍物检测算法YOLOV8n-TOD。为了验证YOLOV8n-TOD算法效果,进行5组消融实验,结果如表5所示。OSDaR23 [22]包含20个不同的与铁路环境相关的各种对象类,其测试结果同样见表5。
Table 5. Ablation study results
表5. 消融实验结果
MobileNetV3 |
C2f_FasterBlock |
CIOU |
mAP50/% |
R/% |
FNR/% |
自制 |
OSDaR23 |
自制 |
OSDaR23 |
自制 |
OSDaR23 |
|
|
|
54.2 |
34.3 |
47.7 |
27.3 |
52.3 |
72.2 |
√ |
|
|
57.9 |
31.9 |
50.0 |
27.6 |
50.0 |
72.4 |
|
√ |
|
55.2 |
35.1 |
50.8 |
31.4 |
49.2 |
68.6 |
|
|
√ |
56.2 |
34.6 |
47.7 |
27.3 |
52.3 |
72.7 |
√ |
√ |
|
59.7 |
35.7 |
49.8 |
27.2 |
50.2 |
72.8 |
√ |
√ |
√ |
61.4 |
38.8 |
52.2 |
33.1 |
47.8 |
66.9 |
从表5中可以看出,相比原YOLOV8n算法,改进后的YOLOV8n-TOD算法在处理数据时mAP提升了7.2%、R提升了4.5%,在OSDaR23上mAP提升了4.5%、R提升了5.8%。
图9为在预处理后数据上YOLOV8n和YOLOV8n-TOD算法训练过程mAP曲线对比,可以看出将MobileNetV3、C2f_FasterBlock集成到同一算法并优化损失函数后,算法的mAP有明显提升。
Figure 9. Comparison of mAP curves before and after model improvement
图9. 算法改进前后mAP曲线对比
图10为YOLOV8n、YOLOV8n-EA和YOLOV8n-TOD算法性能对比结果。
(a) YOLOV8n算法检测结果
(b) YOLOV8n-EA算法检测结果
(c) YOLOV8n-TOD算法检测结果
Figure 10. Performance comparison of YOLOV8n, YOLOV8n-EA, and YOLOV8n-TOD models
图10. YOLOV8n、YOLOV8n-EA和YOLOV8n-TOD算法性能对比
为评估算法性能,将改进后的算法与一些主流算法进行对比测试,表6为不同算法对比结果。
Table 6. Performance comparison of different algorithms
表6. 不同算法的性能对比
算法 |
mAP50/% |
R/% |
FNR/% |
GFLOPs |
FPS |
Faster R CNN |
51.1 |
- |
- |
- |
0.08 |
YOLOV3 |
53.2 |
47.5 |
52.5 |
282.2 |
35.46 |
YOLOV5n |
49.7 |
47.1 |
52.9 |
7.2 |
83.33 |
YOLOV5m |
53.0 |
48.1 |
51.9 |
64.0 |
72.99 |
YOLOV8n |
51.8 |
47.7 |
52.3 |
8.2 |
83.33 |
YOLOV8n-TOD |
61.4 |
52.2 |
47.8 |
10.0 |
88.50 |
从结果看出,改进后的YOLOV8n-TOD算法的mAP、R和FPS高于其他方法,在GFLOPs上高于YOLOV5n和YOLOV8n,但足够满足实时性要求。
5. 结论
针对列车障碍物检测场景,列车行进过程中通常会产生颠簸造成红外视频画面抖动进而影响障碍物检测的检出率及准确性。因此,提出了一种基于ORB特征提取算法与Farneback、Lucas-Kanade光流法加权平均的EIS算法,ORB特征提取算法与红外图像有较好的匹配性能;Farneback光流法与金字塔Lucas-Kanade光流法加权平均可以在平衡计算效率与精度的同时提高鲁棒性。
同时,针对红外图像分辨率低、易受噪声影响、特征提取能力较弱的问题,提出了列车障碍物检测算法YOLOV8n-TOD:将YOLOV8n算法的Backbone替换成MobileNetV3主干网络,增强算法特征提取能力,提升算法检测精度和推理速度;将Neck中的C2f模块结合FasterBlock模块重构为C2f_FasterBlock模块,保留原始信息的同时进一步增强算法的多尺度特征提取能力,促使小目标特征更易捕捉,进一步扩展算法的检测范围;优化CIOU损失函数,提升算法泛化能力。将改进后的算法YOLOV8n-TOD在自制数据集和OSDaR23数据集上与原YOLOV8n算法进行对比测试,YOLOV8n-TOD的mAP分别提升了7.2%和4.5%、R分别提升了4.5%和5.8%、FNR降低了4.5%和5.8%,测试结果表明,该算法在保证实时性的基础上,能够明显提高障碍物检测的平均精度和检出率,降低漏检率,具有较好的检测性能,对保障列车行驶安全具有重要意义。未来将进一步优化算法结构以提升检测性能。
基金项目
上海市科委项目(23DZ2204900)。
NOTES
*第一作者。