一种基于本地计算的视频监控方法_3

文档序号:9327826阅读:来源:国知局
例超过栅格变化比例阈值threshold时,则判定该栅格发生变化。当栅格发生变化时,栅格的变化次数数组varTimes中该栅格变化次数加I,并统计总的激活区域变化栅格数量varNum以及总的变化栅格数量totalNum,其中,总的激活区域变化栅格数量=总的变化栅格数量-处于失活状态的栅格数量,处于失活状态的栅格数量通过统计此刻活性状态为失活状态的栅格得到。
[0077]S224,如果总的激活区域变化栅格数量varNum小于设定的报警阈值,则其为非常态性干扰,不触发报警。
[0078]如果总的激活区域变化栅格数量varNum小于设定的报警阈值,则其为非常态性干扰,不触发报警。如果对于视频采集单位时间内的任意一帧图像,栅格的状态的变化的总数都小于设定的报警阈值。则该视频采集单位时间内多帧图像组成的视频为静止视频。该静止视频对于监控分析不产生意义,经过读取分析确定后,直接舍弃,并不进行任何存储,节省无效的视频空间占用。
[0079]S23,对两帧的帧差采用边缘算法进行边缘提取,如果不能提取出两帧帧差的边缘,则说明其为光照变化引发的干扰,不触发报警;如果能提取出两帧帧差的边缘,则其为入侵事件,触发报警。
[0080]在现实情况中,误报的主要来源是:光线、树叶摇晃、车辆或其他移动物体带来的影响,总结起来有两种:1)光线引起的部分或全局变化;2)物体在一定空间范围内不规律移动。对于物体在一定空间范围内不规律移动造成的误报,在后边的论述中加以排除。对于光线引起的误报,通过采用简单高效的算法进行过滤。
[0081]通过大量的实验发现,对于光线引起部分或全局变化的问题,通过移动物体的边缘检测(edge detect1n)提取可以加以解决。在发现移动物体时,如果是在光线变化下的移动物体(光线),通过边缘提取算法提取的结果是没有发现任何边缘。而在有人移动时,边缘提取的结果是发现轮廓清晰可见。通过对两帧的帧差采用边缘算法进行边缘提取,可以去除光线等常态性干扰造成的误报。其中,进行边缘提取的算法可以是任何现有的边缘提取算法。在本发明所提供的实施例中,可以采用OpenCV默认的边缘提取算法库对两帧的帧差进行边缘提取,在此便不再赘述了。
[0082]S3,根据监控视频采集单位时间内触发报警的次数判断是否推送报警,如果推送报警,则将引发报警的视频片段保存在本地SD卡等存储介质中,同时传到云端备份,并通过手机app向用户发出报警;如果判定不报警,则将该视频片段保存在本地SD卡等存储介质中。
[0083]视频采集单位时间是一次视频片段采集需要的时间,经过大量的实验,在本发明所提供的实施例中,视频采集单位时间取能获取50帧图像的时间,在保证不会漏掉入侵事件的基础上,最大限度的延长一次视频片段采集需要的时间,提高视频片段的处理效率。从第一次触发报警开始,根据监控视频采集单位时间内发生报警的次数判断是否报警,具体判断过程包括如下步骤:
[0084]S31,采用步骤SI?S2的过程监控视频采集单位时间内触发报警的次数,如果触发报警的次数小于等于噪点干扰阈值,则判定不报警;如果触发报警的次数大于等于噪点干扰阈值,则转向步骤S32。
[0085]从第一次触发报警开始,监控视频采集单位时间内触发报警的次数,如果触发报警的次数小于噪点干扰阈值,则认为是图像噪点干扰,判定不报警;对图像噪声干扰引起的误报进行排除,有效地提高了报警的准确性。其视频片段也不进行存储,有效地节省了存储空间。如果触发报警的次数大于等于噪点干扰阈值,则证明该报警不是光线变化引起的,则进行进一步的处理。其中,噪点干扰阈值是为了防止图像噪点干扰产生误报而设定的界限值,在本发明所提供的实施例中,当视频采集单位时间内触发报警的次数小于等于噪点干扰阈值时,则认为是图像噪声干扰引起的触发报警,不推送报警。
[0086]S32,进一步判断是否是由于摄像机状态切换引起的报警,如果是则判定不报警;否则转向步骤S33。
[0087]当排除了报警是由于图像噪点干扰引起的误报之后,进一步判断是否是由于摄像机状态切换引起的报警,具体包括如下步骤:
[0088]获取视频采集单位时间内所有视频帧的颜色通道,并对相邻两帧的颜色通道进行比较;如果在视频采集单位时间内仅有一组相邻两帧图像的颜色通道值不同,且这两帧图像在该视频采集单位时间的前20帧内,则判定是由于摄像机状态切换引起的报警,忽略此次报警;否则,判定不是由于摄像机状态切换引起的报警,进入步骤S33进行进一步的判断。
[0089]S33,如果报警次数大于噪点干扰阈值小于等于推送报警阈值(非重要报警视频),则判定不推送报警,将该视频片段保存在本地SD卡等存储介质中,如果大于推送报警阈值则判定推送报警,将引发报警的视频片段保存在本地SD卡等存储介质中,同时传到云端备份,并通过手机app向用户推送报警。
[0090]如果报警次数大于噪点干扰阈值小于等于推送报警阈值(非重要报警视频),则说明在监控区域出现了非常态性干扰,有移动物体闯入了监控区域,但是闯入时间较短,按时间计算并不构成入侵事件。所以判定不推送报警,但是为了防止此短时间内的闯入造成用户的财产或者人身安全,将该视频片段保存到本地SD卡等存储介质中,用户可以通过手机app远程查看,但是不传送到云端备份,也不推送报警。如果大于推送报警阈值则说明有入侵事件,判定推送报警,将引发报警的视频片段保存在本地SD卡等存储介质中,同时传到云端备份,并通过手机app向用户推送报警。其中,推送报警阈值是为了判定视频采集单位时间内触发报警次数是否构成推送报警而设定的界限值,在本发明所提供的实施例中,当视频采集单位时间内触发报警的次数大于推送报警阈值时,则认为是有入侵事件发生,推送报警。
[0091]S34,每进行一个更新间隔unitSize时间后,更新每个栅格的权重以及休眠时间状态。
[0092]每进行一个更新间隔unitSize时间后,更新每个栅格的权重以及休眠时间状态,以保证每个栅格能实时对图像变化做出最准确的反应,具体包括如下步骤:
[0093]S341,对于任意一个栅格,判断此时该格栅的休眠时间,如果该栅格的休眠时间不为0,则该栅格的休眠时间减一个更新间隔unitSize时间。
[0094]S342,如果在此时,栅格的休眠时间为0,或者经过步骤S341后休眠时间为0,则判断格栅的变化次数,并根据栅格的变化次数调整权重和休眠时间;如果该栅格的变化次数小于权重上升变化阈值per1dUpThres*2~ weight |,则权重weight加I (最大不超过O);该栅格休眠时间延长baseTime*2~ weight |。如果该栅格的变化次数大于权重下降变化阈值per1dDownThres*2~ weight |,则权重weight减1,该栅格休眠时间增加baseTime*2~|weight|。
[0095]对于任意一个栅格,如果其休眠时间为0,或者经过步骤S341后休眠时间为0,则该格栅当前阶段的休眠时间已经结束,进一步判断格栅的变化次数,并根据栅格的变化次数调整权重和休眠时间;如果该栅格的变化次数小于权重上升变化阈值per1dUpThres*2~ weight |,说明不需要增加惩罚时间,则权重weight加I (最大为O),该栅格休眠时间延长baseTime*2~ weight |。如果该栅格的变化次数大于权重下降变化阈值per1dDownThres*2~ weight,说明需要增加惩罚时间,则该栅格的权重weight减1,该栅格休眠时间增加 baseTime*2~ | weight I。其中,per1dUpThres 和 per1dDownThres 为基础权重上升和下降阈值。baseTime是基础休眠时间。per1dUpThres和per1dDownThres以及baseTime根据白天和夜晚的时间段不同进行不同的设置。
[0096]S343,如果经过步骤S342,该栅格的权重为0,则将其休眠时间也置为O ;否则,延长其休眠时间为 2~ weight I ^baseTimeDay (如果是晚上则为 2~ weight | ^baseTimeNight)个更新间隔unitSize的时间,并将该栅格的变化次数置为O。
[0097]根据监控视频采集单位时间内触发报警的次数判断是否推送报警,如果推送报警,则将引发报警的视频片段保存在本地SD卡等存储介质中,同时传到云端备份,并通过手机app向用户推送报警;即使本地的设备被破坏,云端的视频片段依然得以保留,为用户提供了法律证据。此外,因为经过算法过滤后,重要的视频数量相当少,因此占用云端资源少,服务提供商可以向用户提供免费的服务。如果判定不推送报警,则将该视频片段保存在本地SD卡等存储介质中。用户可以通过手机app远程查看,但是,不通过手机app推送报警。此类视频并不会上传到云端服务器,因此会节
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1