视频和GIS协同的人群状态感知模型
2018-08-09邓仕虎张兴国王小勇朱俊丰
邓仕虎,张兴国,王小勇,朱俊丰,王 秀
(1.重庆市地理信息中心,重庆 401121;2.信阳师范学院 地理科学学院,河南 信阳 464000;3.重庆知行地理信息咨询服务有限公司,重庆 401121)
0 引言
随着社会经济的发展,人群聚集活动日趋增多,致使群体性事件时有发生. 如何及时发现人群状态的异常并采取有效措施进行疏导已成为国内外学者和政府管理部门关注的热点. 目前,在大型安保活动中,除了加强警力部署外,视频监控系统已成为必不可少的构成要素,发挥着越来越重要的作用.
当前,基于视频获取人群运动状态的研究已取得了较好的研究成果.在视频图像空间 ,通过图像处理、光流计算等获取运动特征,通过机器学习的方法实现人群异常行为的检测[1]. 为了扩大人群视频监控的视域范围,胡学敏等基于鱼眼相机对人群进行估计,并采用透视加权的方法来消除透视畸变[2]. 在视频流的实时计算方面,姬丽娜等基于GPU多流处理器进行加速,有效地提高了人群实时计数效率[3]. 近年来,许多新技术也在视频人群信息提取中得到应用,效果较好,如基于序的空间金字塔池化网络、压缩感知、社会计算和深度学习等[4-6]. 图像采用像素坐标,缺乏真实的度量坐标,人群可量测的运动状态参数获取困难,一些GIS学者尝试将视频与GIS结合起来,也取得了一定的效果[7-9].
针对监控视频在图像空间难以统一、宏观及真实量化人群状态的问题,本文将视频与GIS相结合,将图像空间的光流场映射至地理空间,在地图中进行人群状态的展示、分析与预警. 融合地理信息及实时视频分析数据的人群感知方法,相对于传统的方法更为便捷,将会有效降低安保人员的疲劳度,提高突发事件实时监控与预警能力.
1 人群状态感知模型
1.1 技术路线
人群状态感知流程主要包括四大过程,即视频采集及处理、光流计算、矢量光流场映射至地理空间、人群状态检测与分析,如图1所示.
图1 人群状态感知技术路线
第一,通过手机或相机在商场、医院、车站、银行等室内外人群密集、易发生突发公共事件的场所采集实验数据,包括正常的人群行为视频和异常行为视频,如打架、追跑、聚集、骤散、逆行等,为人群异常行为检测提供测试数据. 基于高清遥感影像或GPS,采集摄像机中心点的位置. 基于相机标定或直接设定得到摄像机的高度、倾角、方位角、主距等内外参信息. 第二,计算各个监控视频的光流场. 以视频中前后两帧图像为基础,采用相关的光流计算方法,得到当前视频的实时光流场. 第三,将区域内各个视频的光流场映射至地理空间. 视频图像空间所计算的光流场,其坐标为像素坐标,难以在地理空间中进行定位、量测或分析,需要通过图像空间与地理空间的映射方法将其投射至地图中. 第四,在地理空间中,任何一条矢量光流都具有明确的空间参考,很容易了解人群的位置、方向、速度、加速度等运动参数,是人群状态检测及预警的重要基础.
1.2 关键技术
基于视频提取动态目标的运动矢量场,主要依赖于图像空间,光流场以像素为单位,其方向以图像空间为基础,无法获取动态目标在地理场景中真实的度量值(包括位置、方向和速度等). 为了使人群状态可定位、可量测、可分析,并具有一览性的优势,需要重点解决光流场的提取及光流场至地理空间的映射问题.
1.2.1 Lucas-Kanade光流计算方法
光流场计算是人群状态感知最为重要的关键技术之一. 光流场的计算最初是由美国学者HOM和SCHUNCK提出,并在研究中不断推进光流场相关算法的改进和优化. 光流场应用很广范,可以用于行人检测、行人的步态分析、运动分割等,也有学者对光流法执行效率进行评价[10].
本文采用Lucas-Kanade光流法来获取人群的运动状态. 该方法首先将视频转换为序列图像,并转换为序列灰度图,约束在较短时间内,运动目标相同点的灰度值不会发生变化,依此构建方程,计算光流矢量. 人群状态的变化可以通过场模型来表达. 序列灰度图像的变化是人群运动的表现,灰度图变化越快,人群的运动越快. 在临近时间内,相同特征点灰度值不变的约束,可以形成一个矢量场. 矢量场中各个矢量的大小和方向即人群运动的快慢和方向. 需要注意的是,该矢量场并不是人群真实的运动速度,仅仅是人群运动的透视视图.
Lucas-Kanade方法根据临近帧灰度梯度的变化,寻找各个像素的运动矢量. 以HORN 与SCHUNCK 的研究为基础,产生了Lucas-Kanade光流算法,效果较好. 该方法是一种基于梯度的局部参数化光流估计方法. 该方法假设在图像空间中一个小的窗口内,光流矢量保持不变,则可以采用最小二乘法计算其光流矢量.
假设图像平面一个像素点(x,y),在t时刻的亮度为E(x,y,t),u(x0,y0)为像素点的水平变化分量,v(x,y)为像素点的垂直变化分量.
u=dx/dt,
(1)
v=dy/dt.
(2)
在经过时间间隔△t后该点对应点亮度为E(x+△x,y+△y,t+△t),当△t很小趋近于0时,假设该点亮度不变,如式(3).
E(x,y,t)=E(x+△x,y+△y,t+△t).
(3)
当该点的亮度有变化时,将移动后点的亮度由泰勒公式展开,如式(4).
E(x+△x,y+△y,t+△t)=
(4)
若二阶导数为无穷小,△t为0,如式(5).
(5)
式中:w=(u,v),该式为基本的光流约束方程.
令Ex=∂E/∂x,Ey=∂E/∂y,Et=∂E/∂t表示图像中像素点灰度沿x,y,t方向的梯度,可将上式改写成:Exu+Eyv+Et=0,即灰度一致约束条件. 输入的视频尺寸为X×Y;检测当前图像的所有Harris角点作为特征点;然后运用金字塔LK光流方法,取w×w的特征窗口,根据光流约束条件求解特征点的光流(u,v),如式(6).
(6)
即Av=-b.
然后,采用最小二乘法,如式(7)和(8).
ATAv=AT(-b)或v=(ATA)-1AT(-b),
(7)
(8)
实验视频共nFrame帧图片,时间为tSum秒,则每帧图像所需时间可通过式(9)来计算.
tEach=tSum/nFrame.
(9)
解算中,求和从1到n,通过图像导数计算,并各自累加得出. 同时还需权重函数W(i,j,k),i、j、k∈[1,m]来突出窗口中心点的坐标,采用高斯函数进行计算效果明显,可较好地得到当前视频的实时光流场. 该算法对特定应用场景(如车站人群)监测效果较好,具有广阔的应用前景.
1.2.2 光流场映射至2D地理空间
由视频得到的光流场,其坐标为像素坐标,难以在地理空间中进行定位、量测或分析等,需要通过图像空间与地理空间的映射方法将其投射至地图中. 地图明确的空间参考、宏观观测视角,有助于整体把握大区域人群的运动态势. 光流场映射至2D地理空间是本文另一关键技术.
传统的方法需要计算2D单应矩阵. 首先,在图像中选择3个及以上控制点,得到控制点的图像坐标;然后,在高清遥感影像或地图中选择相应点,得到控制点的空间直角坐标;最后,计算2D单应矩阵H. 该方法不仅需要交互选择,而且要求具备高清遥感影像或地形图,适合于小型的视频监控场景,难以在大型的视频监控系统中使用. 特别是,当获取目标的三维几何信息时,2D单应方法无能为力. 在此背景下,张兴国等[11]提出了监控视频与2D地理空间的互映射模型,可以较好地实现图像空间与二维地理空间的一一对应.
为了得到人群真实的三维信息,顾及PTZ摄像机,本文引入了监控视频映射至2D地理空间的互映射模型. 该模型要求摄像机内外参已知,便于计算. 相机模型以齐次方程来表示,如式(10).
(10)
式(10)中,摄像机的内外参数隐藏在矩阵当中. 为了便于使用,通过对比分析摄影测量学和计算机视觉的相机模型,得到了便于使用的相机模型,如式(11).
(11)
式中:u0=x0ph,v0=Hpic-y0ph为像主点的坐标,Hpic为图像高度,与摄影测量学中的内外参数含义保持一致.
对于平面直角坐标系下某点,若高程为Zh,可实现图像坐标到平面直角坐标的转换,如式(12).
(12)
式中:s1=(fa1-u0a3)(-X)+(fb1-u0b3)·(-Y)+(fc1-u0c3)(-Z),s2=(fa2-v0a3)(-X)+(-fb2-v0b3)·(-Y)+(-fc2-v0c3)(-Z),s3=(-a3)(-Xs)+(-b3)(-Ys)+(-c3)(-Zs).
2 实验与分析
2.1 实验平台与数据
本文基于MATLAB、OpenCV、VS C# 2012、ArcEngine作为实验平台,并将各环境下实现的算法进行集成,开发了一个人群状态感知的原型系统. MATLAB和OpenCV下的计算机视觉基础库较多,已经实现了众多基础功能,如视频实时接入、视频文件播放、视频帧的获取、图像尺寸调整等,本文以此为基础,实现了所述算法,并封装为DLL. 在VS C# 2012下调用相关DLL,并结合GIS二次开发组件ArcEngine,开发完成了原型系统.
本文以某高校的餐厅及教学楼前作为实验区域,采集了多个包含人群的视频数据,并搜集了该区域的QuickBird遥感影像及高精度矢量地图. 为了获取摄像机的内外参,采用灭点、灭线的方法来计算主距,结合高清遥感影像,获取摄像机的外参(约束旋转角为0). 从而,较好地实现了视频数据到地理空间的映射.
2.2 实验结果及分析
实验主要包括三方面内容,即光流提取、光流至地理空间映射、光流的空间分析. 基于Lucas-Kanade算法,实现了餐厅、教学楼前视频数据光流信息提取,光流真实反映了人群运动的趋势. 如图2,箭头的指向为光流的方向,其长度代表光流的值. 当人群中某人运动正常时,箭头呈现方向趋同,长度相似,否则箭头会出现杂乱,长度会长一些.
图2 人群异常行为检测Fig. 2 Abnormal behavior detection
基于视频图像空间与地理空间的互映射模型,可以将视频中提取的光流实时映射到GIS中. GIS中,以箭头的形式来表达,具有明确的空间参考和度量信息,可以从全局把握区域人群的运动状态. 如图3,原型系统中展现了某时刻的运动光流场.
图3 地图中的光流场Fig. 3 The optical flow field in the map
基于GIS可以对光流场进行空间分析,本文进行了散点内插和等值线生成实验. 散点内插选择了IDW方法. 如图4(a),可以看出颜色越深速度越快,可根据颜色的深浅了解人群运动的速度场. 基于内插的DSM,可以自动生成等值线,等值线的分布也反映了人群的运动状态,如图4(b). 值的变化量越小,线的间距就越大. 值上升或下降得越快,线的间距就越小.
图4 光流场空间分析Fig. 4 Spatial analysis of the optical field
3 结论
基于GIS的人群感知方法,不仅解决了人群的空间定位、空间量算及一览性问题,而且也提供了面向人群的空间分析方法,将会有效增强传统的视频监控系统. 同时,实时的人群运动信息对于地理信息科学也是至关重要的,该方法可促进视频在GIS中的深入应用. 本文所提出的模型通过实验验证已取得了较好的实验效果,但尚需在光流的尺度效应、精度评价、运行效率、多摄像机下光流的融合等方面深入研究. 视频图像的尺寸对光流场有重要影响,针对人群状态感知而言,视频图像的最佳尺寸是一个值得研究的问题. 摄像机距离人群的远近也影响光流信息的提取,距离或者深度的有效区间是光流计算的前提. 另外,多个摄像机距离人群远近不同、摄像机的内外参各异,光流的融合模型是大场景下人群光流场可视化的关键. 如何进一步提高运算速度、实时性、抗噪性及系统的鲁棒性是后续研究的重点.