发明内容
针对上述现有技术存在的问题和不足,本发明旨在提供一种可集中管控的智能客流监测装置,采用远程数据传输技术,实现在服务器端对设备进行检测参数及视频算法更新等功能,解决复杂场景及场景变化较大情况下检测效果差的问题。同时,为进一步提高设备智能化程度,在设备中加入设备管理、视频传输与管理等功能,使设备同步实现在监控场景内的视频处理、现场监控及设备管理等功能,解决传统客流监控设备功能不完整的问题。
为达成上述目的,本发明提出一种可集中管控的智能客流监测装置,包括设备管理单元、智能视频采集与分析单元以及视频发送单元;
设备管理单元以及智能视频采集与分析单元均被设置成通过网路通讯协议连接到远端服务器,与服务器数据交互实现数据发送与设备文件更新功能;
智能视频采集与分析单元可根据配置文件设定的视频检测参数以及视频分析算法进行视频采集和智能分析,该智能视频采集与分析单元包括视频采集模块、参数设置模块、视频分析模块、数据汇总模块以及数据发送模块,其中:视频采集模块用于利用深度和彩色视频采集器实时监控区域内的深度图像和彩色图像获取图像数据;参数设置模块用于根据每台设备所架设的不同高度以及设置的不同倾斜角度,将这些高度和角度参数以及图像相关设定参数写入检测参数文件;视频分析模块用于对视频采集模块获取的图像进行实时分析处理,获取当前帧图像的客流信息;数据汇总模块用于将每帧所产生的客流信息进行汇总,并将汇总数据打包成指定格式;数据发送模块用于将打包好的数据通过通信协议发送至远端服务器;
视频发送单元与智能视频采集与分析单元的视频采集模块连接,用于将采集到的图像读入流媒体服务器中,利用RTSP传输协议和ONVIF协议将图像发送至硬盘刻录机,由硬盘刻录机完成视频管理、查看、回放、保存功能。
进一步的实施例中,设备管理单元包括设备信息管理模块、视频算法更新模块以及检测参数更新模块,其中:设备信息管理模块用于读取本地智能客流监测装置的IP地址、MAC地址、软件版本号,在与远端服务器连接成功后将这些信息打包发送至远端服务器,由远端服务器统一管理设备;检测参数更新模块用于在远端服务器发出设备更新命令时响应服务器,设备停止发送数据,准备接收新的检测参数文件,并且接收完毕后,经过验证,若接收文件没有错误则重新启动设备并替换原有文件恢复数据发送,若接收文件错误则重新启动设备等待下次更新;视频算法更新模块用于在远端服务器发出设备更新命令时响应服务器,设备停止发送数据,准备接收新的用于客流检测数据分析的应用程序文件,并且接收完毕后,经过验证,若接收文件没有错误则重新启动设备并替换原有文件恢复数据发送,若接收文件错误则重新启动设备等待下次更新。
进一步的实施例中,深度和彩色视频采集器包括红外投影机、彩色摄像头、红外摄像头三部分,视频采集器利用彩色摄像头采集实时的彩色图像;利用红外投影机的普通激光源射出一道一类普通激光,这道激光经过磨砂玻璃和红外滤光片后,覆盖监控区域,红外摄像头接收反射光线,识别目标物体的深度场,从而得到实时的深度图像。
进一步的实施例中,视频分析模块用于通过读取参数设置模块中的参数以及深度图像和彩色图像特征分类器,结合行人检测和行人跟踪算法对图像进行实时分析处理,获取当前帧图像的客流信息,客流信息包括客流量、客流速度与客流密度。
进一步的实施例中,数据汇总模块用于将得到的设定时间范围内的客流信息进行汇总,数据汇总包括两部分:首先,将一段时间内每帧图像得到的客流量进行累加,一段时间内的客流速度、客流密度求平均值;然后,将数据整理成指定格式。其中,指定格式的内容包括:数据标识符、设备IP地址、数据产生时间、进客流量、出客流量、客流速度、客流密度,每两项数据之间用指定分隔符分开,数据打包发送至远端服务器。
进一步的实施例中,视频发送单元用于在有视频数据流传入后,将视频采集模块采集的RGB彩色图像转换为YUV格式图像进行视频编码后,通过RTSP将数据流再传输至硬盘刻录机,利用Onvif协议实现硬盘刻录机与RTSP数据流对接,从而将视频数据流发送至刻录机。
根据本发明的改进,还提出一种基于可集中管控的智能客流监测装置的客流检测方法,包括:
1)初始化OpenNI运行环境;声明并打开视频采集单元;创建深度与彩色数据流;设置设备视频相关参数分辨率、帧率、像素格式;初始化轨迹分析函数、检测参数文件;
2)获取远端服务器IP,建立本地设备与远端服务器的连接,发送设备基本信息,包括设备编号、IP地址、MAC地址;
3)等待视频流传入,保存传入的数据流:采集某一监控区域内的深度图像和彩色图像,并根据预先设定,将图像转换为指定的大小及格式,并执行驱动程序注册;
4)通过对当前帧深度图像进行前景目标提取、行人识别、行人跟踪,最后根据目标跟踪结果,确定行人的运动轨迹分析并计算得到当前帧的客流信息,包括客流速度、客流密度及客流流量;
5)在得到客流信息后,将得到的客流信息进行汇总,每过设定时间将汇总结果发送至远端服务器一次,清零后继续做数据汇总,一段时间后再次发送数据,如此重复进行汇总和数据发送;
6)在得到深度图像和彩色图像数据后,通过FIFO队列将采集到图像即H.264数据帧发送给流媒体服务器,流媒体服务器其在收到客户端的RTSP播放请求后,开始从FIFO中读取H.264视频数据并通过RTSP直播出去,利用Onvif协议实现与硬盘刻录机的通信,包括设备发现及与RTSP流媒体对接,最终将视频采集模块采集到的实时图像传输到硬盘刻录机。
进一步的实施例中,前述方法更加包含:
在本地设备开启后,将设备基本信息包括设备IP地址、MAC地址、设备安装位置、当前软件版本号信息发送至远端服务器;
并且在远端服务器发出指令停止发送数据后,开始更新设备检测参数或升级设备软件版本,设备接收指令后等待接收文件,接收成功替换当前使用的检测参数或当前运行程序,重启设备后恢复数据通信;
并且在接收到远端服务器端发送的查看设备端检测参数文件的指令后,本地设备接收指令后发送文件,发送成功后将恢复数据通信。
进一步的实施例中,步骤3)中,驱动程序注册包括:将彩色图像和深度图像进行对应,产生像素相互对应的影像,即彩色图像中的每个像素分别与深度图像中的一个像素对应。
进一步的实施例中,步骤5)中,将得到的设定时间范围内的客流信息进行汇总,数据汇总包括两部分:首先,将一段时间内每帧图像得到的客流量进行累加,一段时间内的客流速度、客流密度求平均值;然后,将数据整理成指定格式。其中,指定格式的内容包括:数据标识符、设备IP地址、数据产生时间、进客流量、出客流量、客流速度、客流密度,每两项数据之间用指定分隔符分开,数据打包发送至远端服务器。
进一步的实施例中,在步骤6)中,视频传输时,在有视频数据流传入后,将视频采集模块采集的RGB彩色图像转换为YUV格式图像进行视频编码后,通过RTSP将数据流再传输至硬盘刻录机,利用Onvif协议实现硬盘刻录机与RTSP数据流对接,从而将视频数据流发送至刻录机。
进一步的实施例中,在步骤7)中,发送文件的具体步骤为:首先,由远端服务器选定将要更新的设备以及对应设备将要更新的文件,准备发送文件前先向设备发送指令,待设备回复指令准备好接收后,先发送文件大小,再将文件打包发送,设备接收文件数据包,并写入指定路径,验证收到文件大小是否与写入文件大小相等:若大小相等则替换现有文件完成更新,重启后恢复数据通信,若验证大小不相等则发送指令至服务器,等待下次更新。
由以上本发明的技术方案可见,本发明提出的智能客流监控装置与监控方法,采用远程数据传输技术,实现在服务器端对设备进行检测参数及视频算法更新等功能,解决复杂场景及场景变化较大情况下检测效果差的问题。同时,为进一步提高设备智能化程度,在设备中加入设备管理、视频传输与管理等功能,使设备同步实现在监控场景内的视频处理、现场监控及设备管理等功能,解决了传统客流监控设备功能不完整的问题。
本发明的智能客流监控装置与监控方法,实现行人实时的高精度检测,并加入视频传输管理、远程文件更新及设备管理等功能,使设备管理更加方便,设备端实现了二十四小时无人值守运行。设备应用范围广泛,且设备成本较低,有利于提高客流管理服务及安全保障水平。
应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。另外,所要求保护的主题的所有组合都被视为本公开的发明主题的一部分。
结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。
具体实施方式
为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。
在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定意在包括本发明的所有方面。应当理解,上面介绍的多种构思和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一种来实施,这是因为本发明所公开的构思和实施例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。
结合图1-图5所示,根据本发明的实施例,可集中管控的智能客流监测装置,包括设备管理单元、智能视频采集与分析单元以及视频发送单元。
设备管理单元以及智能视频采集与分析单元均被设置成通过网路通讯协议连接到远端服务器,与服务器数据交互实现数据发送与设备文件更新功能。
智能视频采集与分析单元可根据配置文件设定的视频检测参数以及视频分析算法进行视频采集和智能分析,该智能视频采集与分析单元包括视频采集模块、参数设置模块、视频分析模块、数据汇总模块以及数据发送模块。
视频采集模块用于利用深度和彩色视频采集器实时监控区域内的深度图像和彩色图像获取图像数据。
参数设置模块用于根据每台设备所架设的不同高度以及设置的不同倾斜角度,将这些高度和角度参数以及图像相关设定参数写入检测参数文件。如此为每台设备定制参数可提高行人检测的准确率。
视频分析模块用于对视频采集模块获取的图像进行实时分析处理,获取当前帧图像的客流信息。该模块是设备的核心部分,通过读取参数设置模块中的参数以及深度图像和彩色图像特征分类器,结合行人检测和行人跟踪算法对图像进行实时分析处理,获取当前帧图像的客流量、客流速度、客流密度等客流信息。
数据汇总模块用于将每帧所产生的客流信息进行汇总,汇总包括将设定时间内(例如:5秒钟)的客流量进行累加,客流速度、密度求平均值。并将数据打包成指定格式,待数据发送使用。
数据发送模块用于将打包好的数据通过通信协议发送至远端服务器。
视频发送单元与智能视频采集与分析单元的视频采集模块连接,用于将采集到的图像读入流媒体服务器中,利用RTSP传输协议和ONVIF协议将图像发送至硬盘刻录机,由硬盘刻录机完成视频管理、查看、回放、保存功能。
结合图1以及图2和图3所示的工作流程,设备管理单元包括设备信息管理模块、视频算法更新模块以及检测参数更新模块,其中:设备信息管理模块用于读取本地智能客流监测装置的IP地址、MAC地址、软件版本号,在与远端服务器连接成功后将这些信息打包发送至远端服务器,由远端服务器统一管理设备;检测参数更新模块用于在远端服务器发出设备更新命令时响应服务器,设备停止发送数据,准备接收新的检测参数文件,并且接收完毕后,经过验证,若接收文件没有错误则重新启动设备并替换原有文件恢复数据发送,若接收文件错误则重新启动设备等待下次更新;视频算法更新模块用于在远端服务器发出设备更新命令时响应服务器,设备停止发送数据,准备接收新的用于客流检测数据分析的应用程序文件,并且接收完毕后,经过验证,若接收文件没有错误则重新启动设备并替换原有文件恢复数据发送,若接收文件错误则重新启动设备等待下次更新。
在一些例子中,深度和彩色视频采集器包括红外投影机、彩色摄像头、红外摄像头三部分,视频采集器利用彩色摄像头采集实时的彩色图像;利用红外投影机的普通激光源射出一道一类普通激光,这道激光经过磨砂玻璃和红外滤光片后,覆盖监控区域,红外摄像头接收反射光线,识别目标物体的深度场,从而得到实时的深度图像。
视频分析模块用于通过读取参数设置模块中的参数以及深度图像和彩色图像特征分类器,结合行人检测和行人跟踪算法对图像进行实时分析处理,获取当前帧图像的客流信息,客流信息包括客流量、客流速度与客流密度。
数据汇总模块用于将得到的设定时间范围内(例如5s内)的客流信息进行汇总,数据汇总包括两部分:首先,将一段时间内每帧图像得到的客流量进行累加,一段时间内的客流速度、客流密度求平均值;然后,将数据整理成指定格式。其中,指定格式的内容包括:数据标识符、设备IP地址、数据产生时间、进客流量、出客流量、客流速度、客流密度,每两项数据之间用指定分隔符分开,数据打包发送至远端服务器。
在一些实施例中,视频发送单元用于在有视频数据流传入后,将视频采集模块采集的RGB彩色图像转换为YUV格式图像进行视频编码后,通过RTSP将数据流再传输至硬盘刻录机,利用Onvif协议实现硬盘刻录机与RTSP数据流对接,从而将视频数据流发送至刻录机。
结合图1和图2所示,本发明的智能客流监测装置包括装置主体和为其供电的POE电源板。智能客流监测装置与POE电源板由网线相连,再由带有POE供电功能的交换机由网线为其供电。最终整套一体化设备仅由一根网线与交换机相连,即保证了电力供应又保证了数据传输,为设备大大节约了成本,也降低了设备安装布线的复杂程度。
所述装置中,深度与彩色视频采集器将其连接到USB3.0接口发送彩色图像与深度图像至数据存储单元。
所述装置中,核心处理芯片包括4个ARM Cortex-A15以及4个ARM Cortex-A7处理器,两部分的最高频率分别为2.1GHz和1.5GHz。该芯片支持HMP技术,能够根据任务实际运行情况,将重要的计算分配给4个Cortex-A15核心,将轻松的计算分配给4个Cortex-A7核心。
所述装置中,GPU是一种集成的图像处理芯片。可以根据需要运行1~8个核心。芯片是有6个时钟的GPU单元可达533或600MHz(等于122GFLOPS)。利用GPU可大大提高图像处理的速率,从而提高效率。
所述装置中,由于GPU良好的性能,功耗也比较高,发热量相对较大,需要风扇帮助散热。设备利用微处理器的数字输出脉冲宽度调制(PWM)方波来对风扇进行控制,根据GPU温度来判断是否提高风扇转速。
所述装置中,DRAM是系统内存,采用了第三代低功耗内存技术,相比之前版本,第三代内存具有更高的数据传输率、带宽、能效、存储密度等,如数据率达到1600Mbps,相比上一代内存增加了近一倍。
所述装置中,以太网控制器利用最先进的DSP技术和混合信号技术达到高速信息传输的目的。通过RJ45接口可实现利用网线连接设备与交换机,从而组成局域网完成高速数据传输的目的。
所述装置中,时钟芯片(RTC)由锂电池连接至开发板上的电源管理模块(PMIC),经过PMIC上的I2C接口给其供电。嵌入式开发板其他部分由POE电源板供电。POE电源板是指利用一根以太网线缆,在保证传输数据的同时给设备供应电力。完整的POE供电系统包括供电设备(PSE)和受电设备(PD),其中PSE是为以太网客户端供电的设备,本系统中由交换机充当PSE。PD是接收供电的负载,本系统中由嵌入式开发板来充当PD。两者基于IEEE 802.3af标准建立有关PD的信息联系,并以此为根据PSE向PD供电。设备连接前POE设备端口输出很小的电压以检测是否连接到支持IEEE 802.3af标准的PD。当检测到PD后,根据设备所需功率损耗为设备分类。PSE开始利用网线的空闲脚由低电压开始向PD供电,直到提供48V稳定的直流电压。若PD设备断开,PSE也会快速停止为PD供电恢复到检测状态。
结合图3、图4和图5所示,根据本发明的改进,还提出一种基于可集中管控的智能客流监测装置的客流检测方法,包括:
1)初始化OpenNI运行环境;声明并打开视频采集单元;创建深度与彩色数据流;设置设备视频相关参数分辨率、帧率、像素格式;初始化轨迹分析函数、检测参数文件;
2)获取远端服务器IP,建立本地设备与远端服务器的连接,发送设备基本信息,包括设备编号、IP地址、MAC地址;
3)等待视频流传入,保存传入的数据流:采集某一监控区域内的深度图像和彩色图像,并根据预先设定,将图像转换为指定的大小及格式,并执行驱动程序注册;
4)通过对当前帧深度图像进行前景目标提取、行人识别、行人跟踪,最后根据目标跟踪结果,确定行人的运动轨迹分析并计算得到当前帧的客流信息,包括客流速度、客流密度及客流流量;
5)在得到客流信息后,将得到的客流信息进行汇总,每过设定时间将汇总结果发送至远端服务器一次,清零后继续做数据汇总,一段时间后再次发送数据,如此重复进行汇总和数据发送;
6)在得到深度图像和彩色图像数据后,通过FIFO队列将采集到图像即H.264数据帧发送给流媒体服务器,流媒体服务器其在收到客户端的RTSP播放请求后,开始从FIFO中读取H.264视频数据并通过RTSP直播出去,利用Onvif协议实现与硬盘刻录机的通信,包括设备发现及与RTSP流媒体对接,最终将视频采集模块采集到的实时图像传输到硬盘刻录机。
在一些具体的实现中,前述方法更加包含:
在本地设备开启后,将设备基本信息包括设备IP地址、MAC地址、设备安装位置、当前软件版本号信息发送至远端服务器;
并且在远端服务器发出指令停止发送数据后,开始更新设备检测参数或升级设备软件版本,设备接收指令后等待接收文件,接收成功替换当前使用的检测参数或当前运行程序,重启设备后恢复数据通信;
并且在接收到远端服务器端发送的查看设备端检测参数文件的指令后,本地设备接收指令后发送文件,发送成功后将恢复数据通信。
如图3所示,描述了前端设备软件流程,前端系统主要包含程序初始化模块、连接建立模块、处理当前帧图像与发送数据模块、文件更新模块。
程序初始化模块主要包括:初始化深度摄像机运行环境,并打开摄像机。创建并打开图像数据流。设置深度图像和彩色图像分辨率、像素格式、帧率等相关参数。初始化轨迹分析函数,打开相应的检测参数文件。为后续程序的进行做好必要的铺垫。
驱动程序注册包括:将彩色图像和深度图像进行对应,产生像素相互对应的影像,即彩色图像中的每个像素分别与深度图像中的一个像素对应。
连接建立模块主要包括:获取服务器IP,定义并建立socket连接,待连接成功后将设备MAC地址、IP地址、软件版本号等基本信息打包发送至服务器,服务器解析后将基本信息插入设备管理列表,识别对应设备。
处理当前帧图像与发送数据模块主要包括:保存传入的数据流,并将图像的格式进行更改。对图像进行轨迹分析,获取当前帧图像的速度、密度及流量等客流信息。将得到的检测结果数据打包成指定格式,发送至服务器。
文件更新模块主要包括三大部分,更新检测参数、更新可执行文件、发送本地检测参数至服务器。在停止发送数据后,前端系统通过接收服务器端发送的指令判断下一步将要进行的对应操作。如果收到的指令为“T”,则服务器发送检测参数,前端系统准备接收,接收成功后重启设备;如果收到的指令为“E”,则服务器发送可执行文件,前端设备接收成功后重启设备并替换当前使用的文件。如果收到的指令为“E”,则前端系统准备向服务器发送检测参数,发送成功后设备重新启动。设备重新启动后会再次与服务器建立连接并初始化设备准备下一次发送数据。
如图4所示,描述了前端设备与服务器握手机制流及指令流程,服务器开启后开始监听设备,设备端连接成功后开始发送设备基本信息,然后发送实时检测数据及视频,每次服务器接收数据成功后回复设备端“F”,多次发送数据后设备端没有收到“F”,则判定连接出现错误,设备重新连接。利用这种连接握手机制保证服务器与设备端通信正常。服务器发送“M”时,设备停止发送数据,等待指令执行下一步操作。当收到的指令为“T”(或“E”)时,前端回复“t”(或“e”),说明以准备好接收文件,收到回复后服务器立即发送文件,完成更新。利用这种握手方式以保证前端设备做好准备接收文件,有效预防接收错误现象。当收到指令为“G”时,前端发送检测参数至服务器,当收到指令“R”时,前端设备进行重启。
如图5所示,描述了视频发送流程,实现思路是视频采集模块通过FIFO队列将视频流发送给流媒体服务器,由服务器收到RTSP播放请求后,读取FIFO队列中的H.264数据流并直播出去,利用Onvif协议实现REST数据流与硬盘刻录机对接。其中,FIFO队列是一种先进先出的数据缓存器,他与普通存储器的区别是没有外部读写地址线,这样使用起来非常简单。流媒体服务器是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议。实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持。RTSP是一种实时流传输协议,是TCP/IP协议体系中的一个应用层协议。Onvif协议是开放型网络视频产品标准网络接口,实现Onvif服务端与硬盘刻录机通信,包括设备发现及与RTSP流媒体实现对接。
前述步骤5)中,将得到的设定时间范围内的客流信息进行汇总,数据汇总包括两部分:首先,将一段时间内每帧图像得到的客流量进行累加,一段时间内的客流速度、客流密度求平均值;然后,将数据整理成指定格式。其中,指定格式的内容包括:数据标识符、设备IP地址、数据产生时间、进客流量、出客流量、客流速度、客流密度,每两项数据之间用指定分隔符分开,数据打包发送至远端服务器。
前述步骤6)中,视频传输时,在有视频数据流传入后,将视频采集模块采集的RGB彩色图像转换为YUV格式图像进行视频编码后,通过RTSP将数据流再传输至硬盘刻录机,利用Onvif协议实现硬盘刻录机与RTSP数据流对接,从而将视频数据流发送至刻录机。
在步骤7)中,发送文件的具体步骤为:首先,由远端服务器选定将要更新的设备以及对应设备将要更新的文件,准备发送文件前先向设备发送指令,待设备回复指令准备好接收后,先发送文件大小,再将文件打包发送,设备接收文件数据包,并写入指定路径,验证收到文件大小是否与写入文件大小相等:若大小相等则替换现有文件完成更新,重启后恢复数据通信,若验证大小不相等则发送指令至服务器,等待下次更新。
综上所述,与现有技术相比,本发明可实现行人实时的高精度检测,并加入视频传输管理、远程文件更新及设备管理等功能,使设备管理更加方便,设备端实现了二十四小时无人值守运行。设备应用范围广泛,且设备成本较低,有利于提高客流管理服务及安全保障水平。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。