《武汉工程大学学报》  2019年01期 93-97   出版日期:2019-03-23   ISSN:1674-2869   CN:42-1779/TQ
面向校园安全的视频区域入侵检测算法


近年来,高校校园的安全问题日益严峻,例如2015年着“学生装”大盗流窜12省专偷高校财产,盗窃200多台电脑;2018年1月,复旦大学一男生因醉酒在清华大学校园内溺水身亡。种种事件表明,校园安全问题仍不容忽视。为了保障学生的人身安全,视频监控系统被广泛地应用到校园中。为了保证良好的高校教学、科研氛围,特别是保障良好的治安环境,在高校校园建立综合安全防范系统是十分必要的。而安防监控系统作为校园安全管理的重要技术手段,对预防校园内发生财产的损失,减少、避免安全事故以及违法犯罪案件的发生等各种校园内的不安全因素发挥着重要的作用[1]。视频监控技术的广泛应用为大学生的安全防范方法提供了新的解决思路,快速准确的判断依赖于大学生安全防范的风险预警模式的准确识别,具体包括数据收集系统、信息分析和预测系统、决策报警系统等功能模块的建构和整合[2-3]。高校可以通过建立起涵盖学生作息习惯、网络言论、生理原因、兴趣爱好、校园生活、人际关系等要素的指标体系、权重,运用现代化物联网在线监测技术[4]与数据挖掘技术[5],可以实时反馈学生个体行为,提高分析预测群体安全风险水平等级的精准度,实现对在校学生的精准多元动态监测。我国高校现有的大学生安全管理体系远未对此技术带来的改变有高度的认识,分散的多方面安全风险仍然存在。就此而言,大数据、智能视频检测技术可以视为目前高校实现学生安全管理工作精细化的有效手段。作为保障校园安全重要技术措施的安防监控系统,其监控设备的布局决定了所能采集到的安全状态参量的覆盖范围,但实际场景中往往受限于监控设备分辨率不高、检测目标距摄像头较远[6],从而导致最终建立的视频监控系统反映校园不同区域的风险[7]状态准确程度较低。因此,利用现有的校园安防监控系统,升级为更精确、高效智能化的安防检测系统,成为提升校园安全的有效途径之一。本研究将目标运动的连续性和图像序列的时空连续性运用在入侵检测中,提出一种基于时空约束的改进三帧差分算法,利用图像序列直接的连续性与场景空间结构联合约束提高检测性能。在智能监控系统中,入侵检测[8]在保障人身安全方面取得了巨大的成功,入侵检测是一项重要的智能识别自动报警技术。所谓入侵,是用户根据自身实际需求,在视频图像上添加带有位置方向的虚拟警戒线。在监控视场范围中,在设定的区域内,一旦有运动物体进入该区域,系统会自动触发报警信号,提示安保人员关注并及时处理入侵事件。从入侵检测的定义来看,其功能的实现包含了两个部分:运动目标检测和入侵条件判定[9]。运动目标检测方法是利用背景建模,检测目标的运动情况,在实际情况中,常用的背景建模方法容易受到光照变化和物理环境的影响。而另一方面,由于现实场景中的三维场景投影到二维平面上造成的检测区域偏移也给入侵检测造成了技术上的难题。目前主流的视频检测算法有背景建模[10]和Vibe算法[11]等。背景建模方法中最为常用的是混合高斯法,该算法假设背景像素分布符合高斯分布,而利用多高斯假设对背景和可能出现的前景目标进行建模,因此利用混合高斯特性预测前景目标。和传统的帧差法相比,混合高斯背景建模方法较为精确的描述的背景信息,但是该类方法计算量大,且依赖于模型的准确性,在动态条件下的模型泛化能力不理想。ViBe算法利用像素级特性对背景和前景进行建模,采用随机更新的策略更新背景模型,该算法相对混合高斯模型更为灵巧和实用。但其本身也具备了一定的局限性,如鬼影、静止目标、复杂前景和运动目标检测不完整等问题[12]。1 基于时空联合约束的入侵检测1.1 区域绘制本文主要研究基于OpenCV的视频区域检测算法,提出了利用图像序列之间的时间和空间拓扑结构的约束提高检测性能。绘制检测区域的方法是让用户在视频上直接用鼠标绘制“危险区域”[13]。具体使用的手段是在程序中设置绊线编号,如图1所示:完全进入检测区域和部分进入检测区域的判定条件并不相同。目标入侵区域检测方法可以分为两类绊线问题:一种是运动目标只有部分进入描绘区域;另一种是运动目标完全进入描绘区域。将运动目标表示为若干个矩形,当矩形任意边界与设置危险区域边界相交,系统立即报警。当检测目标进入设置区域时需要证明目标矩阵任意一条线段在危险区域边界的两侧,即证明线段[p1p3]和[p1p4]与线段[p2p3]和[p2p4]叉积异号时,运动目标入侵“危险区域”,其中点(x1,y1)为p1,点(x2,y2)为p2,点(x3,y3)为p3,点(x4,y4)为p4。[p1(x1,y1)][p2(x2,y2)][p3(x3,y3)][p2(x2,y2)][p1(x1,y1)][p4(x4,y4)][Y][Y][X][X][ a ][ b ][O][O]图1 运动目标进入设置区域示意图:(a)完全进入,(b)部分进入Fig. 1 Schematic diagram of moving target invading into the setting region: (a) total entry, (b) partial entry1.2 基于时空约束的三帧差分法由于帧间差分法能够快速检测出相邻图像中的运动目标所引起的运动范围,但是它提取的运动目标往往比实际的目标要大,通常会出现“阴影”现象,检测出来的物体是前后两帧相对变化的部分,无法检测到重叠部分,导致检测到的目标发生“空洞”现象[14]。所以在其基础上人们提出了三帧差分方法,将相邻的三帧图像作为一组数据进行再差分,能够较好的检测出中间帧运动目标的形状轮廓[15]。本文在三帧差分法上增加了时间和地域的约束条件,进一步加强三帧差分法在实际场景中的应用。在时域的多帧约束的基础上,利用绘制预警区域在图像空间中的几何属性,时空域的联合约束能够提高入侵检测算法的精度和实用性。算法流程:选取视频图像序列中连续的三帧图像分别[Pt-Δti-1(x,y),Pti(x,y),Pt+Δti+1(x,y)],[t]为当前检测图像时间点,[Δt]为设定的任意时间间隔,可人为设定大小,当在上学、放学人流量较大的时段时[Δt]可以设置为0.5 s,当人流量较小时可设置为2 s,为实时监控系统分担了计算压力,使系统效率更高且更智能化。利用公式(1)分别计算相邻两帧图像插值:[dt1(i,i-1)(x,y)=Pti(x,y)-Pt-Δti-1(x,y)dt2(i,i+1)(x,y)=Pti(x,y)-Pt+Δti+1(x,y)] (1)对得到的差值图像通过选择合适的阈值[τ]进行二值化:[m(i,i-1)(x,y)=1?dt1(i,i-1)(x,y)τ0?dt1(i,i-1)(x,y)<τm(i,i+1)(x,y)=1?dt2(i,i+1)(x,y)τ0?dt2(i,i+1)(x,y)<τ] (2)在每一个像素点(x,y)将得到的二值图像逻辑相“与”,得到三帧图像中间帧的二值图像:[Mi(x,y)=1??m(i,i-1)x,y?m(i,i+1)x,y=10?m(i,i-1)x,y?m(i,i+1)x,y≠1] (3)与混合高斯背景建模、ViBe法相比该方法迭代速度快、程序设计复杂度低。其缺点是阈值[τ]的选取困难,若值过低,选取的该帧图片背景噪声过大,容易错误检测运动目标;若[τ]值过高,当多个运动目标出现在“危险区域时”容易丢失部分运动目标,产生误检,[τ]值的适当与否直接影响到检测效率。针对算法中的阈值选择问题,研究了两种典型的应用场景:白天和夜晚监控场景。白天人流量大,[Δt]和[τ]值的选取适宜小,增加时域采样的间隔,提高精度;另一方面夜晚人流量少,从节约资源的角度适用较大的参数,因此本文展示了两种参数配置条件下的实验结果。基于时空约束的三帧差分算法应用于实际场景时,将入侵检测分为两大类时域:一种为白天检测,若有目标运动到所设危险区域内,系统不会立刻报警,会发出提示让观测人员警惕,当目标在区域内停滞不前且停留时间过长,系统立刻报警;另外一种是夜晚检测,无论目标怎么运动,只要入侵“危险区域”,系统立刻报警(见图2)。在警报准确率的基础上引入了虚警率、漏警率这两个概念,更好地评判本算法的效率值。假设共有[T]个警报的正例,[F]个未警报的负例,经过警报确认后有[Tt]个系统警报且人为评判为正例,[Ft]个系统警报且人为评判为负例,则[Tt+Ft=T];有[Ff]个系统未警报且人为评判为负例,[Tf]系统未警报且人为评判为正例,则[Ff+Tf=F]。准确率、虚警率、漏警率公式如下:[准确率=Tt+FfT+F×100%][虚警率=TfTt+Tf×100% ][漏警率=??FtTt+Ft×100%?][检测目标入侵][入侵时段][是否绊线][白天][夜晚][报警][入侵时间过长区域:池塘][1.入侵区域:池塘2.违规越线区域:学院入口]图2 基于时空约束的入侵检测流程图Fig. 2 Flowchart of intrusion detection algorithm by spatio-temporal constraints引入时空联合约束后有效的降低了系统的虚警率,对比其他算法三帧差分法检测背景图像不累计、更新速度快、算法计算量小,克服了对运动目标检测区域过大、模糊的缺陷。2 实验部分实验分为两个时段进行检测,白天时段三帧差分法设置的参数如下:[τ]值为10;夜晚时间段参数[τ]值为12。在计算机学院大楼入口选择不同的区域进行检测,拍摄视频使用的器材是:kinect2.0,SOMITA三脚架。可在视频图像上绘制任意几何形状“危险区域”,当校内行人穿越设置区域时,以此来模拟“入侵”事件。当目标经过区域时,如果与区域产生交集则算作一次入侵,如图3所示。此次实验绘制检测区域形状为三角形,视频录制时段为白天下午2点,晚上10点。白天,定义学校池塘为危险区域,当有行人“入侵”池塘时间过长,为了防止意外发生,默认为目标有危险及时报警。在白天实验测试的基础上,基于时空约束增加了晚上不同时段相同区域检测的实验,晚上当有行人“入侵”池塘区域,系统因监控背景帧间变化不大以免超时误报即刻报警。晚上课后还定义学院入口大门为“危险区域”,当学生下课走出学院与系统设定绊线方向规则一致时,系统不会报警,若检测目标运动方向与规则不一致则随即报警,防止闲杂人员进入。本系统应用的校园环境并不复杂,主要检测目标是行人,当目标运动的标识矩阵与设定区域的边线相交时,判定目标是否违反方向规则选择报警与否。白天实验结果如表1所示。图3 白天不同区域检测Fig. 3 Detection in different areas during daytime表1 不同方法实验数据对比 Tab. 1 Experimental results from different methods %[方法\&准确率\&虚警率\&漏警率\&混合高斯背景\&80.5\&20.9\&17\&ViBe\&82.5\&19\&15\& 三帧差分法\&83.5\&18\&14\&本文算法 \&85\&16.3\&13\&]实验数据表明,当[τ]值为10时,系统的准确率最高。基于时空约束的三帧差分法相对于混合高斯背景法、ViBe法、三帧差分法准确率分别提高了4.5%、2.5%、1.5%;虚警率分别降低了4.6%、2.7%、1.7%;漏警率分别降低了4%、2%、1%。数据清晰的表明本算法利用监测图像的两类时域与场景空间变换的联合约束大大提高了入侵检测效率。在实验过程中发现,本方法既不受区域环境亮度的影响,也不会因为区域环境亮度差异过大而产生误判。实验误差类型漏检产生的主要原因为帧间目标的重叠部分无法明确分割,会误判为一个目标,尤其是在摄像头放置较远、运动目标间距小的情况下。为了测试参数[τ]值对识别算法性能的影响,实验增加了不同取值条件下的准确率实验,如图4所示,可以看出在[τ]值为10时,算法的识别性能最优。在后续研究中,将对自适应取值问题开展进一步研究。[0 5 10 15 20[τ]][9080706050][Recognition rate / %][79%][85%][82%][81%]图4 不同[τ]值时的准确率Fig. 4 Accuracy at different [τ] values3 结 语本文主要讨论基于时空约束的区域检测问题,将区域检测问题分为不同时间、不同区域分别讨论。“危险”区域的绘制与入侵的判断是区域检测的首要目标。用户可以自行绘制任意几何形状的检测区域,通过区域检测系统上增加智能分析模块,分时段、分区间多方面对运动目标进行检测判定,极大的提高了检测系统的智能水平。本文采用基于时空约束的三帧差分法,获取连续的三帧图像进行差分,令得到的两个差分图像对应的像素进行与运算,检测出运动目标以应对校园内复杂多变的环境。实验表明,本文所提出的算法能够准确实现基于时空约束的入侵检测,降低危险报警的虚警率;该方法已在实际生活中应用,效果较好。