Intelligent vision based personnel intrusion prevention system for railway bridge
-
摘要: 铁路桥梁监测是保障铁路运输安全的重要手段。为提升现有监测系统对铁路大桥人员入侵的检测能力,设计了基于智能视觉的铁路大桥人员入侵防护系统,该系统由视频平台、智能视觉平台及业务管理平台组成。采用YOLOv5目标检测模型进行人员入侵检测;同时,采用多种图像数据增强技术,扩增训练数据集,进一步提升目标检测模型的泛化能力和场景适应能力。在包神铁路集团有限公司万南站区黄河大桥对该系统进行了部署和测试。测试结果表明,该系统对人员入侵检测的准确率为95.3%,检测实时性为2 ms;人员入侵检测的准确率与实时性均满足实际应用要求。Abstract: Railway bridge monitoring is an important means to ensure transportation safety. To enhance the detection capability of existing monitoring systems for railway bridge personnel intrusion, this paper designed a personnel intrusion prevention system for railway bridge that included a video platform, an intelligent visual platform, and a business management platform. The paper adopted the YOLOv5 object detection model for personnel intrusion detection, and adopted multiple image data enhancement technologies to expand the training dataset, further improve the generalization ability and scene adaptation ability of the object detection model. The system was deployed and tested at the Yellow River Bridge in the Wannan Station area of Baoshen Railway Group Limited Liability Company. The experimental results show that the detection accuracy of the system for personnel intrusion is 95.3%, and the real-time detection performance is 2 ms. The accuracy and real-time performance of personnel intrusion detection meet the practical application requirements.
-
人脸识别是基于图像处理、模式识别等技术,利用人的脸部信息特征,来进行身份验证与鉴别的生物识别技术。人脸识别技术已在交通出行、手机解锁、资质认证等领域得到广泛应用。人脸识别过程一般分为人脸检测与对齐、特征提取、特征匹配检索3个阶段,具体流程如图1所示。
人脸检测与对齐方面,MTCNN[1]在人脸检测的基准数据集FDDB和WIDERFACE,以及人脸对齐的基准数据集AFLW上都取得了较好的测试结果。特征提取方面,2015年,ResNet[2]残差学习被提出后,网络深度不再限制网络性能,大部分特征提取网络都以ResNet为基础做更新优化;DeepID[3]采用LeNet结构对人脸多个关键区域分别做特征提取,将隐藏层特征拼接起来,降维得到最终特征,用于人脸描述和分类;Facenet[4]基于ResNet网络,结合Tripletloss函数,利用欧式嵌入,解决人脸比对验证的问题;SphereFace[5]首次关注特征的角度可分性,使得训练出的卷积神经网络(CNN,Convolutional Neural Networks)能学习具有角度判别力的特征;Insightface算法[6]提出了附加角边距损失函数,直接在角度空间中最大化分类界限。特征匹配检索方面,kd-tree[7]是常用做特征点匹配的Sift[8]算法,Surf[9]算法和ORB[10]算法与SIFT算法相比,特征点检测匹配速度有较大提升,但这些算法的效率均不及GPU环境下为稠密向量提供高效相似度搜索和聚类的Faiss算法。
目前,实名制进站核验系统[11]的人脸识别率已达97%,旅客可以在5 s内完成进站核验,但这只针对票、证、人一致性核验的1v1场景。
综上,本文沿用MTCNN,基于Insightface对原有的ResNet残差单元进行优化,将Faiss框架引入人脸的高维特征匹配过程,从算法的角度,对1vN场景下的搜索匹配过程进行优化,提高模型的效率与适用性。
1 铁路车站人脸识别算法
铁路车站人流密度较大,环境场景复杂,有时需对场景下出现的所有人员进行识别监控。本文采用MTCNN进行人脸检测与对齐,定位出人脸区域,找到脸部基准点之后,用改进的特征提取网络Insightface结合损失函数优化进行人脸特征提取,并将Faiss索引检索引入特征匹配过程,完成人脸识别。
1.1 人脸检测与对齐
1.1.1 MTCNN流程
MTCNN是一个深度级联的多任务CNN框架,具有3阶段深度卷积网络。以从粗略到精细的方式来预测人脸以及人脸关键点位置,可以同时完成人脸分类、边框回归和面部关键点的定位任务。在训练过程中采用困难样本挖掘策略,可以在无需手动选择样本的情况下提高性能。该框架流程如图2所示。
给定一张输入图片,将其缩放至不同比例,构建一个图像金字塔,作为以下3个阶段的网络输入:
(1)通过全卷积网络P-Net(Proposal Network)来获得候选边框和边框回归参数,用回归参数调整边框位置,再用非极大值抑制(NMS,Non-Maximum Suppression)合并重叠率较高的候选框;
(2)将P-Net输出的候选框从输入图片对应位置剪裁出来,输入到R-Net(Refine Network)。该网络进一步过滤掉非人脸的候选框,同样,采用回归参数调整边框位置,再用NMS合并重叠率较高的候选框;
(3)将R-Net输出的候选框从输入图片对应位置剪裁出来,输入到O-Net(Output Network),找出面部的5个关键点,并输出检测到的人脸以及面部关键点的位置。
1.1.2 MTCNN损失函数
训练时,框架的每个阶段都有3个输出:人脸分类,边框回归,面部关键点定位。
(1)人脸分类:是一个二分类问题,损失函数采用交叉熵来表示。
$$L_i^{\det } = y_i^{\det }\log ({p_i}) + (1 - y_i^{\det })(1 - \log ({p_i}))$$ (1) 其中,
${p_i}$ 表示第i个样本预测为人脸的概率;$y_i^{\det } \in {\rm{\{ 0,1\} }}$ ,表示第i个样本的真实值。(2)边框回归:对于每个候选框,预测其与最近标注框的偏移量,损失函数采用欧式距离损失进行计算。
$$L_{{i}}^{box} = \left\| {\hat y_i^{box} - y_i^{box}} \right\|_2^2$$ (2) 其中,
$\hat y_i^{box}$ 表示网络输出的回归目标值,$y_i^{box}$ 表示真实的回归目标值。(3)面部关键点定位:损失函数同样采用欧式距离损失进行计算。
$$L_i^{landmark} = \left\| {\hat y_i^{landmark} - y_i^{landmark}} \right\|_2^2$$ (3) 其中,
$\hat y_i^{landmark}$ 表示网络输出的面部关键点坐标值,$y_i^{landmark}$ 表示真实坐标值。(4)总体损失函数如下:
$$\min \sum\nolimits_{i = 1}^N {\sum\nolimits_{j \in (\det ,box,landmark)} {{\alpha _j}\beta _i^jL_i^j} } $$ (4) 其中,N表示样本的数量,
${\alpha _j}$ 表示各层网络的权重,某个网络越重要则所对应的值越大,$\,\beta _i^j$ 表示样本的类型。(5)困难样本挖掘:本文在人脸分类的训练过程中,采用在线困难样本挖掘策略。将训练集中一部分数据集的所有样本,按前向传播中产生的损失大小进行降序排列,取前70%作为困难样本,在反向传播中仅用这些样本来更新参数。
1.2 人脸特征提取
1.2.1 特征值提取网络
将人脸对齐关键点坐标结合改进后的ResNet网络进行深度特征提取。本文对网络原有的残差单元结构做了修改,将原ResNet残差单元(图3a)中的第2个卷积层步长调整为2,并在每次卷积前后都增加批归一化处理(BatchNorm),激活函数在ReLu的基础上增加部分参数,修改小于0的饱和区为非饱和区,称之为PReLu(图3b)。批归一化利于网络收敛,能更好地学习特征表达,非线性激活函数PReLu相比ReLu,有更大范围的非饱和区,有效避免了随着网络深度增加、梯度衰减,引起参数不更新的问题。
1.2.2 特征值提取损失函数
利用Insightface算法根据全连接层的情况确定不同类别的分类边界。在二分类场景下,
${\theta _i}$ (i=1,2)表示学习的特征向量和类${C_i}$ 的权重向量之间的角度,假设有类别${C_{\rm{1}}}$ 、${C_{\rm{2}}}$ ,特征向量属于${C_{\rm{1}}}$ 分类的需要满足余弦决策裕度cosθ1>cosθ2的要求,从而区分来自不同类的特性。同时,可通过在余弦空间中增加额外的边缘来加强对习得特征的识别,进一步要求cosθ1>cosθ2+m,m表示决策边界的边距,来控制余弦决策裕度的大小,这个约束对于分类来说更加严格,具有更好的几何解释性,适用于类别较多的人脸分类场景。同时,分类的条件对于角度来说也变得更为苛刻,拉大了类间距离,能够带来更好的区分效果。设b为批尺寸;n为类别区分的具体数量;s表示比例缩放的超参数,改进后的损失函数为:$$L = - \dfrac{1}{b}\sum\limits_{i = 1}^b {\log \dfrac{{{e^{s(\cos ({\theta _{{y_i}}} + m))}}}}{{{e^{s(\cos ({\theta _{{y_i}}} + m))}} + \displaystyle\sum\nolimits_{j = 1,j \ne {y_i}}^n {{e^{s\cos ({\theta _j})}}} }}} $$ (5) 其中,对特征向量与权重都做了归一化处理,在原本的余弦边距中,cosθ1>cosθ2+m代表分类正确,现在要求当θ2∈[0,π−m]时,cosθ1>cos(θ2+m) 才是分类正确。相当于决策边界由余弦空间延伸到了角度空间,增强了模型对人脸的表征能力。
1.3 人脸特征匹配
提取出的人脸图片高维特征向量无论是分类还是比对验证,都需要进行向量匹配搜索与相似度判断。Faiss是为稠密向量提供高效相似度搜索和聚类的框架,包含对任意大小向量集的搜索算法,可以扩展到单个服务器上主存储器中的数十亿个向量。Faiss是围绕索引展开的,不管运行搜索还是聚类,都要建立一个索引,其特点为:
(1)速度快,可存在内存和磁盘中;
(2)提供多种检索方法;
(3)由 C++实现,提供了Python封装接口;
(4)支持GPU。
2 实验验证
2.1 实验环境
本地服务器测试工具为Jmeters,远程服务器测试工具为wrk,两者均为开源性能测试工具
特征提取对比实验并发用户数量为1 ~ 10,实例数量为1 ~ 40,以Face++提供的API测试效果为参照,测试Insightface在并发条件下的效率与精度;特征匹配对比实验特征底库大小为1万,随机搜索数量为1000,比较传统的kd-tree搜索和本文使用的Faiss向量搜索的性能。
2.2 Insightface特征提取实验
2.2.1 Insightface特征提取效率
远程服务器区分为需要部署Nginx的跳板机以及部署工程和多实例的主机。为消除网络的影响,需要在跳板机上安装wrk,进行性能测试。使用Gunicorn单用户不并发时,每秒事务处理量(TPS,Transaction Per Second)约为7.84个,如表1所示。平均响应时间约为128 ms,比Face++的extract_with_detect接口效率提高1倍以上,如表2所示。在多用户并发情况下,受限于机器配置,同时启用的实例数不宜过多,每个用户的请求次数对TPS没有明显影响,反而会增加延时。考虑到人脸识别核验系统应用都是基于远程重点人员特征库,远程特征提取的效率尤为重要。试验证明以Gunicorn调用flask的方式构建Insightface特征提取服务器,与单用户请求相比性能没有明显损失。
表 1 Insightface性能测试情况模拟线程
(用户)数模拟
连接数实例个数 TPS/个 平均响应时间/ms CPU
使用率1 1 1 7.84 128 28 1 2 1 9.19 217 28 1 4 1 9.19 431 28 1 1 2 8.24 120 28 1 2 2 11.54 173 51 1 4 2 12.19 326 53 1 10 2 11.99 818 53 1 1 3 7.79 128 28 1 2 3 11.64 170 51 1 4 3 8.29 478 45 表 2 Insightface与Face++的特征提取效率对比算法 耗时/ms Insightface 128 Face++ 300~400 2.2.2 Insightface特征提取精度
精度测试基于LFW(Labled Faces in the Wild)数据集,使用旷视Face++的API接口做精度参照。1v1测试按人物名取每相邻2张图片特征组成一对,每张图只组对一次,共6000对。1vN测试选取数据集中图片数量在2张以上的1680人,共9064张图片,每人随机抽取1张作为后续对比图,其余作为底库特征集。测试结果如表3、表4所示。
(1)1v1比对测试
1v1是指同一个特征底库图数量为1的情况。Insightface采取10折交叉验证得到1个比对精度,Face++根据提供的4个置信度参考阈值[55.013874,62.088215,67.57555,71.71891]得到1组比对精度,如表3所示。由测试结果可知,Insightface 1v1算法精度优于Face++。
表 3 1v1情况下Insightface与Face++测试结果对比算法 精度 Insightface 0.99767±0.00281 Face++ [0.99283333, 0.99733333, 0.997, 0.99416667] (2)1vN比对测试
1vN是指同一个人特征底库图数量为N的情况。Insightface提供了1组10个特征的距离阈值,1vN的比对精度最佳可达95.23%,与Face++检索算法精度基本相同,如表4所示。
表 4 1vN情况下Insightface与Face++测试结果对比算法 阈值 精度 Insightface [0.24,0.44,0.64,0.84,1.04,
1.24,1.44,1.64,1.84,2.04][0.0305,0.3181,0.6927,0.8887,0.9383,
0.9504,0.9523,0.9523,0.9523,0.9523]Face++ [70,72,74,76,78,80,82,84,
86,88][0.9619,0.9619,0.9619,0.9619,0.9619,
0.9619,0.9619,0.9619,0.9619,0.9595]2.2.3 Faiss特征匹配
kd-ree搜索将底库图片特征划分为多个特征空间,构成二叉树,然后将待对比图片的特征向量传入二叉树进行搜索,返回距离小、相似度高的底库标签。Faiss搜索以向量或矩阵的形式准备好底库特征数据,然后构建底库索引并将特征数据映射至索引中,再通过索引搜索得到标签,两者的搜索性能测试结果对比如表5所示。
表 5 Faiss与kd-tree搜索性能对比测试搜索方法 底库大小 搜索数量 耗时/s kd-tree 10000 1000 8.35 Faiss 10000 1000 0.05 kd-tree在底库大小为1万张图片,随机搜索1000张图片的情况下,总耗时为8.35 s。Faiss在相同情况下,总耗时为0.05 s。大部分人脸核验系统都是基于公安机关的远程重点人员特征库,远程特征匹配的效率尤为重要,本文以Gunicorn调用flask的方式构建Faiss特征搜索服务,不仅在效率上提速了100倍以上,且需要的CPU资源更少。
2.3 实验结论
实验结果表明:(1)以Gunicorn调用flask的方式构建Insightface特征提取服务器,虽然在高并发、多实例的场景下,有较高的硬件资源要求,但是精度和效率都有所提高;(2)以Gunicorn调用flask的方式构建Faiss特征搜索服务器,相比传统的kd-tree搜索,效率上提高了100倍以上,而且需要占用的CPU资源更少。
3 结束语
Insightface结合Faiss的高并发人脸识别,通过对实际应用场景的模拟,结合具体的软硬件资源限制,优化了人脸识别特征提取和特征匹配流程的算法设计方案,为铁路客运高并发情况下的人脸识别、核验、搜索比对等安全保障业务提供了技术支撑。该方法在细粒度人脸检测、更高效率的人脸特征提取、比对、搜索以及多种站场复杂条件下的适用性等方面,有进一步优化空间。未来可通过复杂场景下人脸图片数据的积累,算法框架调优等方式,进一步提高适用性。
-
表 1 铁路大桥人员入侵防护系统服务器参数
处理器 Intel Xeon Silver 4214R 2.4G/12Core/16.5M/100W/Tray 内存模块 32GB DDR4-2933 ECC REG 存储模块 Seagate ST2000NM0008 2TB/128M/7200RPM/SATA/3.5" GPU NVIDIA Tesla T4 GPU 75W 16GB LP Passive 900-2G183-0000-00 网络 双万兆以太网端口 操作系统 Ubuntu18.04 表 2 实验环境
环境配置 名称 信息 硬件配置 GPU NVIDIA TITAN V CPU Intel Core i7-11800H 内存 16G 显存 12G 软件环境 操作系统 Ubuntu18.04 Python 3.8.0 Pytorch 1.8.0 CUDA 11.1 cuDNN 8.1.0 表 3 超参数设置
名称 数值 输入图像分辨率 640×640×3 迭代运行次数 300 批处理大小 4 优化器 SGD 初始学习率 0.01 周期学习率 0.01 学习率动量 0.99 权重衰减系数 0.0001 -
[1] 王 俊,王江丽. 高速铁路防灾安全监控系统设计 [J]. 中国安全科学学报,2018,28(S1):39-45. [2] 贾利民,陈熙元,马小平,等. 基于云边交互机制的自主式高速铁路防灾系统架构 [J]. 中国铁道科学,2022,43(5):165-176. [3] Xu H, Qiao J, Zhang J G, et al. A high-resolution leaky coaxial cable sensor using a wideband chaotic signal [J]. Sensors, 2018, 18(12): 4154. DOI: 10.3390/s18124154
[4] Catalano A, Bruno F A, Pisco M, et al. Intrusion detection system for the protection of railway assets by using fiber Bragg grating sensors: a case study[C]//Proceedings of 2014 Third Mediterranean, 7-9 May, 2014, Trani, Italy. New York: IEEE, 2014: 1-3.
[5] McConnell P R H, Scragg R A. Audio railway crossing detector: USA, 5910929[P]. 1999-06-08.
[6] Garcia J J, Hernandez A, Urena J, et al. Low cost obstacle detection for smart railway infrastructures[C]//Proceedings of the IEEE Intelligent Vehicles Symposium, 14-17 June, 2004, Parma, Italy. New York: IEEE, 2004: 670-675.
[7] Oh S, Park S, Lee C. Vision based platform monitoring system for railway station safety[C]//Proceedings of the 7th International Conference on its Telecommunications, 6-8 June, 2007, Sophia Antipolis, France. New York: IEEE, 2007: 1-5.
[8] Delgado B, Tahboub K, Delp E J. Automatic detection of abnormal human events on train platforms[C]//Proceedings of the IEEE National Aerospace and Electronics Conference, 24-27 June, 2014, Dayton, OH, USA. New York: IEEE, 2014: 169-173.
[9] Shinoda N, Takeuchi T, Kudo N, et al. Fundamental experiment for utilizing LiDAR sensor for railway [J]. International Journal of Transport Development and Integration, 2018, 2(4): 319-329. DOI: 10.2495/TDI-V2-N4-319-329
[10] 王泉东,杨 岳,罗意平,等. 铁路侵限异物检测方法综述 [J]. 铁道科学与工程学报,2019,16(12):3152-3159. [11] 张腾云,荆 涛,霍 炎. 神朔铁路智能视频入侵检测系统设计 [J]. 铁路计算机应用,2012,21(12):1-3. DOI: 10.3969/j.issn.1005-8451.2012.12.001 [12] 杨 栋,黄文政,张秋亮,等. 基于Faster-RCNN的站台端部人员入侵检测研究 [J]. 铁路计算机应用,2020,29(2):6-11. [13] 傅荟瑾,史天运,王 瑞,等. 基于深度学习的京张高速铁路周界图像智能识别系统构建研究 [J]. 铁道运输与经济,2022,44(5):64-72. -
期刊类型引用(5)
1. 于孔燕. 大型桥梁支座板铸造工艺及低温性能研究. 现代制造技术与装备. 2024(09): 127-129 . 百度学术
2. 刘敖然. 城市轨道交通桥梁支座更换施工技术探讨. 科技创新与生产力. 2023(04): 131-133 . 百度学术
3. 王保宪,刘聪,李义强,赵维刚. 基于多桥支座振动信号联合分析的列车荷载类型识别方法. 铁道科学与工程学报. 2023(07): 2582-2593 . 百度学术
4. 李森. 高速公路桥梁支座病害检测及维修处治分析. 工程技术研究. 2023(22): 217-219 . 百度学术
5. 朱峰,毕超. 基于传感器数据的高速公路桥梁支座位移检测方法. 装备制造技术. 2023(11): 202-204 . 百度学术
其他类型引用(4)