基于智能视频图像分析的安全帽识别

2020-05-22 12:33刘喜文杨贤文张永杰吴昳霏郭晨光
计算机工程与设计 2020年5期
关键词:安全帽轮廓摄像机

刘喜文,何 岗,杨贤文,张永杰,吴昳霏,郭晨光

(1.中国石油天然气管道通信电力工程有限公司 卫星通信事业部,河北 廊坊 065000;2.武汉倍特威视系统有限公司 技术部,湖北 武汉 430070;3.北京航天爱威电子技术有限公司 工程部,北京 100039)

0 引 言

在石化、电力、煤矿及建筑生产企业施工过程中,容易引发各种安全事故,事故涉及的原因多种多样,包括管理、人员素质、设备工具、以及其它各种问题。统计某石化企业事故原因,分析其中由于违章违纪作业导致事故的占46.5%,管理不善导致的事故占25.7%,人员素质与安全意识导致的事故占21.8%,其它原因导致的事故占6%。由此可见,由于违规操作或违反规定引起事故占比达68.3%,成为引发事故的主要原因。在石化、电力、煤矿、及建筑生产施工现场等危险场所作业时,均有佩戴安全帽的要求。不按规范佩戴安全帽将有非常重大安全的隐患。安全帽对人体头部受外力伤害起保护作用,主要保护头部,防高空物体坠落,防物体打击、碰撞。

目前在视频监控系统普遍使用的情况下,网络和高清监控已经具备通过摄像机来采集作业现场视频图像的条件,通过视频分析安全帽的颜色、轮廓、佩戴者的身形和各类观察视角的变化因素,发现在户外真实场景下,安全帽识别的准确性、普适性还是个难点[1]。

1 安全帽识别模型设计

石油工地一般具有旧的模拟监控系统,为节约成本,开发一套基于GB28181协议的安全视频监控平台,其将私有协议的视频监控摄像头的实时视频流转成满足国标协议的流,平台兼容市场绝大主流品牌摄像机。整个系统的架构包括3个主要部分:①监控设备上采集的视频源与智能分析引擎;②服务端上的策略管理与智能报警服务器;③客户端上的智能报警浏览系统(包含处理单路视频的单个浏览系统,或是包含大量摄像机的大型网络浏览系统)。这些模块可以在单台计算机上,也可分布在不同计算机上。

智能分析引擎是系统的核心,对视频源进行底层次的处理。策略管理与智能报警服务器主要通过预设的报警管理条件对处理过的视频流进行高层次的分析,判断是否符合报警条件。结合视频行为分析技术和现场实际情况的研究,提出了活动目标提取+安全帽轮廓匹配+颜色提取+多层神经网络分类+统计学模型的多层组合逻辑解决方法。图1所示为系统整体软件架构图。

在安全帽识别系统的设计过程中,发现以下几个因素对安全帽识别在室外环境下的识别率影响较大。

1.1 摄像机角度要求

摄像机安装需满足以下条件[2]:

图1 系统软件架构

针对可变焦的球机,安装位置角度较为宽泛。选用多预置位模块,镜头变焦倍率在x23倍,可以观察到更远的如200 m~300 m远的人,固定好摄像机、稳定成像的情况下通过多预置位切换分析视角和方位,最多可以支持4个~25个预置位。

针对枪机的安装角度建议:摄像机光轴与地平面夹角至少15°,确保投影场景形成一定景深效果,摄像机与地面平行的轴尽量保持平行,不要倾斜安装。

针对枪机安装高度建议:在能看清目标的情况下尽可能高,室内建议2.5 m以上,室外建议至少5 m以上。表1列出了几种常见的场景安装参数(以下参数仅作参考建议)。

表1 摄像机安装高度角度参数

1.2 摄像机光源要求

摄像机在光照过亮或过暗的情况下,对成像质量都有较严重的影响,稳定的光源能显著提高成像质量,提升检测结果的准确率。为保证24小时的监控需求,摄像机需根据现场环境光照情况,布设光源或特定摄像机,以及确定合适安装位置。

对于光照条件较强的环境,尽量选择超低照度摄像机(如日夜型摄像机);摄像机安装位置尽量不要选在容易出现逆光的位置,容易使光照影响分析结果。若摄像机有固定强光源干扰,可安装照明灯进行补偿。如果是室外环境及背光环境,为了防止光线的影响,建议选用宽动态摄像机,具体环境及情况请参见文献[3]。

对于光照条件差的环境,需在摄像机周围安装配备红外灯或照明灯,由于夜晚灯光会吸引昆虫等动物,需要避免光源与摄像机相距过近,否则昆虫飞舞遮挡可能会影响摄像机检测结果及镜头成像质量。正确安装如图2所示,红外灯或照明灯须与摄像机间隔超过1 m。

图2 摄像机安装光源

1.3 摄像机无缝覆盖要求

在设计完整无缝覆盖监控区域时,多个摄像机的位置选择有一定要求:

例如无论哪一款摄像机,身高为H的人在视野边缘处无法覆盖显示全身,只有看到全身完整影像的区域才算是分析有效区域。当在视野边缘处布设下一个摄像时,如果前一个摄像机只能显示人的头部,而下一摄像机只能显示人的脚部,这对分析结果将造成影响。正确的设计方法是使两台摄像机有部分重叠,从而使任意时刻至少有一台摄像机能看到身高H的人物的完整影像,从而能对当前人的特征进行完整分析。

1.4 场景选择要求

适用于智能视频分析的场景与传统监控的场景有一定区别。传统监控场景是为监控人员观看的视角而设计,其主要特点是以方便看清目标细节的方式进行监控,较多使用中短焦镜头,场景也较窄。但如果在智能视频分析的场景下,上述监控环境易造成目标抖动严重且易遮挡整个视频图像区域,造成人和场景特征的分类以及对人的尺度特征影响较大,此类场景应用的分析效果不理想。因此对于智能视频分析,要求在保证能提取到目标特征的情况下,尽量安装广角摄像机增大视野,增加摄像机高度,增大俯角,以自上而下的方式监控分析活动目标,特别是针对室内空间较小的环境[4]。

表2举例展示了不同场景下摄像机安装的实际视频素材。分别包含了几个经典的应用场景(室内,周界,道路,铁路)的合适与不合适的摄像机安装素材。左列为不合适的安装方式。右侧为正确的安装方式。

表2 摄像机安装场景对照

2 安全帽智能识别

安全帽是一种纹理比较少,轮廓较为明显,颜色相对单一的物体,在实际应用的监控视频里,即使使用目前检测效果非常好的SIFT(scale invariant feature transform)特征[5],或SURF(speeded up robust features)特征[6],也很难对安全帽这一纹理材质较少的物体的识别产生较好的效果。因此,提出了一系列识别安全帽的方法,包括使用轮廓,颜色以及边缘特征对这一物体来做描述与识别。

2.1 安全帽轮廓匹配

基于知识的安全帽检测方法,对比传统的HOG/HAAR等方法[7],将轮廓匹配用于安全帽识别,实验结果表明会有较好的鲁棒性。

(1)轮廓提取。针对待检测的视频帧,首先利用Sobel算子提取待检测区域的轮廓,并进行滤波,高斯平滑等处理,使线条平滑。然后对轮廓以固定值offset进行均匀采样获取采样点,对每个轮廓采样点按如下方式计算其轮廓描述子

其中,si表示每个轮廓采样点,Fi表示所有采样点,|·| 表示计算其个数。

分别统计每个采样点的局部尺度S,根据采样点的局部尺度,进行内插法获得所有点的尺度,对所有点按尺度正比进行重采样。重新计算采用点的各轮廓描述子。最终计算的轮廓描述子是一个顺序排列的 |Fi| 维特征向量[8]。

(2)轮廓匹配。采用DTW(动态时间规划算法)[9]来进行轮廓匹配。通过比较与其它算法,DTW时间效率是最优的。已知模版开轮廓s与待检测闭合轮廓t,首先计算两轮廓各个采样点之间的特征矢量距离,得到距离矩阵D。 定义两轮廓上任意两采样点的矢量距离为

从而将轮廓匹配问题转换为求解出一条最佳匹配路径问题。D值在0-1之间,值越接近1 表示匹配越好。

根据一个安全帽轮廓,来对比其它轮廓和当前轮廓的匹配值,值越大相似度越大。在实验中将此值根据经验进行调整。用户对检测的灵敏度提高时,此值往小方向调整0.2,反之向接近1的方向调整0.6,精度变高,但漏检测率会提升。

2.2 安全帽色彩识别

传统技术方案遇到的问题会有以下情形,目标提取偏差,由于近似色块、外形目标、灯光、环境光反射干扰,导致目标提取错误,造成漏检和误检[10]。

图3中,这是个典型的应用于无人值守开闭所的场景。人员在进入房间内时,画面中会伴随一系列环境光的急剧变化,当开、关门,开、关灯时,环境光与室内照明光线、摄像机的红外辅助灯光交替出现、消失。看似单一的一个通道场景,在实践中发现,各类背景的颜色、形状、类似色块,墙面和衣物漫反射的光线,会对安全帽目标部分准确提取、颜色分析、边缘提取动作造成干扰。针对此情形,对比不同颜色空间RGB、HSI、LAB这3种模型。

图3 各种场景环境下光线颜色变化

RGB(红绿蓝)颜色模型应用较为广泛,适合于在数字图像处理显示领域,比如常用的显示器屏幕显示使用的就是RGB三通道模式。RGB模型也称为加色法混色模型。它是以红绿蓝三色为原色光,通过三色互相叠加来实现混色的方法,由于其实现的简单,因而广泛用于各种显示器及手机屏幕等各种发光体的显示。其混色规律是:以等量的红、绿、蓝基色光混合。但是由于采集的目标是反射光,用RGB模型并不能很好反映色调的变化。

HSI(hue-saturation-intensity)颜色模型是美国色彩学家孟塞尔(H.A.Munseu)于1915年提出的,它反映了人的视觉系统感知彩色的方式,以色调(H)、饱和度(S)和强度(I)这3种基本特征量来感知颜色,详细说明可参考文献[11]。在HSI颜色模型的双六棱锥表示,I是强度轴,色调H的角度范围为[0,2π],其中,纯红色的角度为0,纯绿色的角度为2π/3,纯蓝色的角度为4π/3。

Lab模式起源于国际照明委员会(CIE)在1931年所制定的一种测定颜色的国际标准。这项标准于1976年被改进,并且命名为Lab颜色模型。Lab颜色模型弥补了RGB和CMYK两种色彩模式的不足。它是一种设备无关的颜色模型,也是一种基于生理特征的颜色模型,详细说明可参考文献[12]。Lab颜色空间比计算机显示器甚至比人类视觉的色域都要大。a/b色域的表达方式,与要识别的红黄蓝黑等颜色对应,这为算法判断安全帽的颜色提供了较好的依据,对于L值域的范围要求弱,正好与现实中环境光照度多变的特性对应。

常用的颜色检测模型有基于阈值的颜色范围的检测,参数化的高斯密度函数统计检测以及非参数化的直方图统计检测等。

简单的通过Lab颜色范围来检测安全帽颜色区域来判断安全帽颜色区域,相当快速高效,在实时系统中具有一定的实际意义。例如,采用YCaCr颜色空间的CbCr平面,如果输入的像素颜色落入给定的矩形阈值,就认定肤色区域,安全帽颜色区域同样可以依据这种方式进行判断检测。采用的Lab颜色空间同样取得了一定的效果。虽然这种方式比较快捷,但要取得更好的效果则需要考虑如何划定这种颜色矩形区域,以及安全帽颜色的聚集程度。因此,提出了一种贝叶斯分类的方法,来检测安全帽区域,实际应用中达到了很好的效果。这一方法包含了手工标注统计以及检测两个阶段。

首先通过实时采集获取到的图像进行标注,获取安全帽区域。对于不同种类的安全帽需要进行分类标注。然后对安全帽区域进行分块统计。利用统计的结果再对待检测图像进行安全帽区域的提取。

在手工标注统计阶段,对每一张图片安全帽区域块按Lab颜色空间进行统计,但是只用到了a,b两个颜色通道而没有统计L通道,L代表亮度,实际的监控视频中光照变化范围大比较敏感,L通道的值无法反应安全帽的区域。

对于每一个图像点I(x,y),其颜色为c=c(x,y),则分别计算以下几个统计特征:

(1)安全帽颜色在图像中的概率P(s);

(2)每个颜色c在训练集中的概率P(c);

(3)颜色c是安全帽颜色的概率P(c/s)。

基于以上的计算,利用贝叶斯公式,可以得到颜色c为安全帽颜色的概率

P(s/c)=P(c/s)P(s)/P(c)

针对每个安全帽区域块,定义了一个高低阈值Tmax和Tmin,每一个P(s/c)>Tmax的图像块为安全帽区域,每一个P(s/c)>Tmin并且P(s/c)

2.3 安全帽边缘特征识别

由于受光线,图像分辨率以及安全帽被部分遮挡等影响,SIFT一类的描述子在安全帽的识别上并不稳定,能稳定检测安全帽纹理特性的特征描述子非常少。因此,提出了一种能够适应光照,尺度以及遮挡等特性的描述这种纹理细节较少的物体的方法,图4为安全帽模型建立步骤。

图4 安全帽模型建立步骤

首先,针对安全帽原始模型,提取边缘线段。直线提取算法(LSD)最初是由Von Gioi等提出的[14]。由于需要提取一个稳定的安全帽描述子,原始的直线提取算法对直线长度没有限制,容易造成匹配不稳定。因此需在此基础上做一些改进,使生成的线段长度相等。具体是通过设定一个线段长度阈值w,确保所有线段长度都至少能达到w阈值所达到的像素值。对原始LSD算法与改进后的算法结果对比,改进后的算法的线段提取方法更加稳定。

然后对安全帽模型图建立遮罩区域并提取其矩形区域。

实际采集场景,头戴安全帽在相机视角姿态方向尺度等各异,甚至存在手拿安全帽的情况,因此对安全帽的描述需要其适应旋转与尺度的变化。确定起始点后,通过对提取的矩形区域做旋转采样,进行正反nr=8个方向的采样。其中ml点为描述子起始点,为旋转中心。每一个大的矩形包含4×4个块。每个块由一定量的像素组成。对于每个块,统计其采样值和角度信息,其中采样值ns为

ns=σγRminn(lB)

其中,σ为当前的尺度,γ表示当前块的线段像素的数据量复杂度信息,是归一化的值,范围在[0,1]之间。为0时表示当前块没有任何线段信息。Rmin表示最小的线段尺寸信息。n(lB) 表示线段数。

针对块中的每个线段,其角度信息ai

式中:si表示线段的单位向量,gi表示梯度方向,tij表示描述子起始点lj与当前点的向量。下图所示即为其中一个描述子的定义。对4×4的块进行编码,如图5所示为边缘特征描述子编码方式,其中14号块存在3条线段,a0,a1,a2分别为其角度信息。

图5 边缘特征描述子编码方式

在完成场景以及模型的特征描述子构建后,对场景与模型进行特征匹配,匹配方式主要为寻找显示候选起始点,对每个起始点与模型进行比对,即对比4×4个块的编码值,获取欧式距离最小的描述子。然后通过kdtree搜索临近点,对各线段搜索定位,进行精确匹配。

实际应用中,由于安全帽可能被不正确的佩戴,基于边缘特征匹配方法由于能够检测到安全帽的佩戴方向,同时结合人体区域的检测,判断安全帽是否在头部区域,综合来判断是否为不正确佩戴方式。提高准确率,减少误报。

2.4 滤除目标干扰算法

常见监控场景下,经常存在着树枝随风摆动,背景中物体的微小移动以及天空中的雨点或雪花,这些情况都会影响系统对安全帽目标的检测和识别,需要对这些干扰目标进行滤波处理。

对安全帽目标检测识别中可采用的方法有主成分分析、神经网络方法、支持向量机、隐马尔可夫模型、Adaboost算法等,类HAAR分类器作为机器视觉的基本算法,也被工业界广泛的采用。本节主要针对滤除非人体的目标造成的误检进行眼镜,为识别出安全帽,使用多层神经网络,并运用CUDA加速算法,对系统进行分类优化[15]。

滤除目标干扰的分类器采用32层的神经网络结构。由卷积层,池化层,route(路由)层,reorg(重构)层等网络层构成。其网络参数如图6所示。由最后的检测层输出预测的类别概率值与检测框坐标。其中,概率值可表示为

式中:Pr(Object) 表示检测框包含目标的概率,BBgt表示基于训练标签的参考标准框(groud truth box),BBdt表示检测到的边界框。符号area(·) 表示框的面积。

图6 多层神经网络模型

每个检测框包含5个参数,分别是stx,sty,tw,th以及Pr(Object)。 (stx,sty)表示检测框的中心坐标,(tw,th) 表示检测框的宽高。所采用的方法还预测了两个类别的概率,即Pr(Class:人/Object) 和Pr(Class:安全帽/Object) 分别表示人和安全帽落入该检测框的概率值,所以最后的输出层共有13×13×125维的张量。

第25层和28层为route层。route层的作用是进行层的合并。30层输出的大小是13×13,是指把图片通过卷积或池化,最后缩小到一个13×13大小的格。每一个格的output数量是125(5×25),5是指对每一个13×13的小格配有5个边框,25则是指每一个边框输出了25个浮点数。25个是YOLO 2对VOC的结构。

2.5 算法验证

(1)数据集

准备安全帽识别数据。在训练时为减少运算量,提高检出的速度,将原来VOC训练集进行重新采样。采样中分别对常规的红黄蓝白安全帽进行采样,数量约为彩色 15 000 张,再转换灰度为15 000张。图7为部分样例数据及处理结果示例。

图7 安全帽训练样例与结果

(2)训练平台

训练平台是在PC机完成的,其主要配置为i7 6700k处理器主频:4GHz,32G内存,以及一块GTX1080 6GB显卡。系统运行平台是Windows 10。框架为Darknet。检测器的检测速度达到25帧/s,满足实时性要求。

(3)训练结果

将学习率设定在10E-5,在大约训练迭代到4000次时,模型已经有一定效果。通过目标分类识别,可以进一步降低非人员误报的机率,大约降低10%以上的误报率。最后统计其在数据集上的查准率,查全率以及每秒识别帧数。结果见表3。

表3 测试集实验结果

3 结束语

针对不同的使用场景,需要使用不同的优化算法。目前支持两种典型场景:通道模式和场地模式。

通道模式,适用于进门场景。一般场景是结合门禁和人行闸机使用,如果没有佩戴安全帽,则不会打开闸机,同时还能联动音箱,发出友情提示“请佩戴安全帽进入!”或正确佩戴了安全帽,则直接打开闸机,允许用户顺利通过。

场地模式,是指在进入工作区内后,人员由于活动,会被全程跟踪,当目标足够清晰,头部达到40×40个像素时,分析系统就会对是否佩戴安全帽做出持续分析判断。如果被观察者此时没有佩戴安全帽,则会告警,抓拍图片,同时将此信息和图片发送给订阅此服务的管理人员手机和电脑上。

系统在实际运行当中,统计误报率为7%~11%,已经完全可以满足无人值守的要求,同时随着对现场环境的不断自我学习,更新数据库,调整算法参数,误报率将会越来越低。

猜你喜欢
安全帽轮廓摄像机
小小安全帽,生命保护伞
OPENCV轮廓识别研究与实践
基于实时轮廓误差估算的数控系统轮廓控制
爆笑四格
高速公路主动发光轮廓标应用方案设计探讨
危险
摄像机低照成像的前世今生
新安讯士Q6155-E PTZ摄像机
如何消除和缓解“摄像机恐惧症”
班长的“安全帽”