一种应用于ATM机舱内用户异常行为的检测方法与流程

文档序号:16088698发布日期:2018-11-27 22:45阅读:261来源:国知局

本发明属于图像及视频处理技术改进领域,尤其涉及一种应用于ATM 机舱内用户异常行为的检测方法。



背景技术:

自动取款机(Automatic Teller Machine,ATM)的广泛使用,给诸多用户 带来了便捷,如何保护银行ATM安全使用,及保护人的生命财产安全, 防范各种基于ATM机的犯罪行为是一个亟待改善的问题。

目前,针对ATM异常行为判断技术,要么采用单独传统算法去判断, 例如使用光流算法提取运动向量,并根据运动向量剧烈程度进行判断是否 有异常行为发生;采用模板匹配的方法,根据输入图像提取特征与训练阶 段预先保存好的模板进行相似度比较,与模板类别中相似度最高的一类作 为识别结果,这些方法对目标的变化,光照的鲁棒性等干扰比较差。要么 采用传统算法结合机器学习算法进行判断,例如根据不同行为的运动方向 具有不用规律,提取根据光流算法来提取运动向量特征放到机器学习相关 分类器中进行判断分类是否属于异常行为。然而这些方法很大程度上限制 了算法实时性的要求,而且容易受到外界噪声的干扰,如本来ATM内无 人,但是由于外界噪声影响导致产生运动向量特征刚好类似异常行为特征, 那么会分类器会产生误报。



技术实现要素:

本发明的目的在于提供一种应用于ATM机舱内用户异常行为的检测 方法,旨在解决现有技术中容易发生误报的行为检测的技术问题。

本发明是这样实现的,一种应用于ATM机舱内用户异常行为的检测 方法,所述检测方法包括以下步骤:

S1、对获取的实时视频流使用改进背景建模算法提取运动前景并跟踪 运动目标;

S2、判断跟踪运动目标是否进入检测区,如进入检测区,则判断跟踪 运动目标是否为新目标,如是新目标,则送入深度学习训练的人员分类器 中并执行下一步骤,如是旧目标并且已经标记为被分类的目标,则无需再 次调用分类器;

S3、判断是否决定计数,如是,则根据计数决定启用哪一个分类器, 若检测结果被标记为异常并超过异常阈值,则发出相应的报警信号,如否 则放弃;

S4、根据跟踪运动目标的质心判断质心是否在检测区域内结合前景占 检测区比例,如果检测到质心已经不在检测区域内,并且前景占检测区比 重很小,则认为目标离开检测区。

本发明的进一步技术方案是:所述步骤S2中还包括以下步骤:

S21、对每个跟踪的目标创建一个结构体并保留该目标的跟踪信息;

S22、在处理新帧时将上一帧记录的目标所有质心与当前帧每个运动目 标质心一一比对求欧式距离。

本发明的进一步技术方案是:所述步骤S3中还包括以下步骤:

S31、判断送入人员分类器中新目标的前景是否是人,如分类结果输出 人的概率比模型中其他类别概率都高,则判断此前景是人,从而人的计数 加1,否则计数器维持不变。

本发明的进一步技术方案是:所述步骤S3中还包括以下步骤:

S32、根据当前统计的人数来决定步骤S33还是步骤S34,若当前只计 数到1个人,则执行步骤S34,若计数结果不是1个人,则执行步骤S33;

S33、根据当前计数到人数判断是否大于1,如是,则执行步骤S36;

S34、启动打砸行为检测分类器对运动矢量提取特征并编码,且对特征 进行分类设定阈值来辅助判断满足条件则发出打砸报警信号;

S35、根据打砸分类器判断是否有打砸行为发生并设置报警阈值,如检 测到打砸行为并满足报警阈值时,则发出打砸报警信号;

S36、启动打斗行为检测分类器对运动矢量提取时空特征并编码,且对 特征进行分类设定阈值来辅助判断满足条件则发出打斗报警信号;

S37、根据打斗分类器判断是否有打砸行为发生并设置报警阈值,如检 测到打斗行为并满足报警阈值时,则发出打斗报警信号。

本发明的进一步技术方案是:所述步骤S36中还包括以下步骤:

S361、将提取的运动目标时空特征送入打斗分类器中进行分类。

本发明的进一步技术方案是:所述步骤S1中采集视频流的网络摄像机 采用顶视安装的方式进行安装。

本发明的进一步技术方案是:所述步骤S4中的质心计算公式为: 其中,f(x,y)为图像(x,y)处的像素值。

本发明的进一步技术方案是:所述步骤S34中还包括以下步骤:

S341、对运动矢量通过加入阈值处理过滤掉噪声干扰。

本发明的进一步技术方案是:所述运动矢量去噪公式为: 其中,Mi表示宏块i的运动矢量,Mix和Miy分别代表水平和垂直分量,阈值为T。

本发明的进一步技术方案是:所述步骤S1之前还包括以下步骤:

S0、首先,采集一定数量图片中包含人的图片作为正样本,采集一定 数量的不包含人的图片作为分类的负样本。使用MobileNet网络训练并调 优得到一个比较准确的人员分类器。然后,采集单人打砸行为和双人打斗 行为的正负样本用于分别训练打砸和打斗模型。采集样本要求从不同角度 和高度采集。所述单人打砸行为样本,将视频中无人、单人正常进出ATM 区域正常取款、单人进入ATM区域并正常取款、单人取款后正常离开ATM 区域、单人在正常取款过程稍微扭动身体或者其他轻微动作的图像作为负 样本;将打砸ATM动作图像作为正样本。所述双人打斗行为样本,将视 频中无人、一人一前以后正常进出ATM区域、两人在ATM区域闲聊、两 人进去后一人在正常取款,另外一人搭取款人肩膀、一人正常取款,另外 一人在旁边站着观看的图像作为负样本;将两人有扭动和挥拳打斗的图像 作为正样本。所述的打砸和打斗行为分类器使用GBDT(Gradient Boosting Decision Tree)梯度提升决策树进行训练,并经过参数调优测试得到较好的 分类模型。

本发明的有益效果是:本发明采用传统算法结合机器学习以及深度学 习的方法,使用改进的传统算法提取运动目标,采用深度学习判断检测区 域是否有人,采用机器学习方法对提取的运动矢量构造时空特性进行训练 和识别,可以有效的解决使用传统算法由于噪声等因素带来的ATM机异 常行为检测引起的误报、漏报问题。

附图说明

图1是本发明实施例提供的应用于ATM机舱内用户异常行为的检测 方法的流程图。

具体实施方式

如图1所示,本发明提供的应用于ATM机舱内用户异常行为的检测 方法,其详述如下:

步骤S0,首先,采集一定数量图片中包含人的图片作为正样本,采集 一定数量的不包含人的图片作为分类的负样本。使用MobileNet网络训练 并调优得到一个比较准确的人员分类器。然后,采集单人打砸行为和双人 打斗行为的正负样本用于分别训练打砸和打斗模型。采集样本要求从不同 角度和高度采集。所述单人打砸行为样本,将视频中无人、单人正常进出 ATM区域正常取款、单人进入ATM区域并正常取款、单人取款后正常离 开ATM区域、单人在正常取款过程稍微扭动身体或者其他轻微动作的图 像作为负样本;将打砸ATM动作图像作为正样本。所述双人打斗行为样 本,将视频中无人、一人一前以后正常进出ATM区域、两人在ATM区域 闲聊、两人进去后一人在正常取款,另外一人搭取款人肩膀、一人正常取 款,另外一人在旁边站着观看的图像作为负样本;将两人有扭动和挥拳打 斗的图像作为正样本。所述的打砸和打斗行为分类器使用GBDT(Gradient Boosting Decision Tree)梯度提升决策树进行训练,并经过参数调优测试得 到较好的分类模型。

步骤S1,使用改进的VIBE背景建模提取运动目标,改进的算法主要 体现在背景更新阶段,辅助人员分类器进行判断,当检测到前景目标时人 时,提取此目标前景作为掩码,在此后背景更新中,判断背景更新的邻域 是属于掩码内,如果属于,则此邻域像素值不更新,否则进行更新。这将 保证前景不会被学进背景中去,影响后面的判断。

步骤S2,根据提取的运动目标进行跟踪,为每个目标创建一个结构体, 保留该目标的跟踪信息,具体地,结构体包含目标的面积,编号ID,质心 位置,根据阈值过滤掉尺寸过小的目标,设置目标质心间的阈值,当处理 新帧时,将上一帧记录的目标所有质心与当前帧每个运动目标质心一一比 对,求欧式距离,得到最小的距离d与阈值t比较,若d<t,则说明此目标s 是上一帧的对应的运动区域,更新此目标对应的结构体参数,并将目标标 记为已跟踪,当运动目标质心距离大于设定的阈值,并且没有分配ID时, 认为是新目标,则分配一个新的ID,并计入目标链表中。

步骤S3,检测运动目标是否检测区内的方法根据射线法来判断,具体 来说以质心点为射线的端点,向右做一条水平射线,统计该射线与多边形 的交点个数,如果交点个数为奇数,那么此质心在多边形内,如果为偶数, 则判断为此质心在多边形外,在计数时,对多边形水平边和质心点在边的 延长线上时,忽略这两种情况的计数。

步骤S4,对进入区域的目标检测判断是否为新目标,判断的依据是根 据步骤S2中运动目标跟踪结果判断,当前帧的运动目标与上一帧运动目标 无匹配,并且没有分配ID的,则认为是新目标;

步骤S5,根据S4的结果,若判断为新目标,则提取该目标区域,并 送入人员分类器中进行判断前景是否是人,具体来说人员分类器就是对正 负样本使用谷歌开源的TensorFlow系统来对开源的视觉识别模型 MobileNet进行训练得到一个分类模型。如果分类结果输出人的概率比模型 中其他类别概率都高,则判断此前景是人,从而人的计数加1,否则计数 器维持不变。

步骤S6,根据当前统计的人数来决定执行步骤S7还是步骤S8。若当 前只计数到一个人,那么执行步骤S8,启动打砸分类器;若计数结果不是 一个人,则执行步骤S7。

步骤S7,根据当前计数判断,若满足大于1个人条件,则执行步骤10, 启动打架分类器。

步骤S8,启动打砸行为检测分类器,提取运动矢量特征并编码,对特 征进行分类,并设定阈值来辅助判断,满足条件则发出打砸报警信号。具 体地,使用ffmpeg在视频解码过程中提取P帧的运动信息,运动矢量按照 16*16的宏块进行计算,根据计算出的运动矢量进行编码,具体来说将运 动矢量划分9个维度进行编码,考虑到含有运动物体的宏块,运动矢量幅 值比较大,而不含运动物体的宏块,运动矢量接近为0,但是由于噪声干 扰,因此需要加入阈值处理过滤掉干扰。0维统计的是运动矢量幅值小于 一定阈值和运动矢量幅值几乎为0的矢量,其他8维则是将360度空间平 均划分为8个维度。每一帧分别统计每个维度上运动矢量的个数。为了有 效判断是否发生异常行为,需要结合前面帧信息和后面帧信息运动矢量来 综合判断,因此在运动矢量的基础上增加了时间维度来描述运动目标的特 征,具体地,就是结合连续若干帧图像的运动矢量构成时空特征,经过大 量实验验证,取连续帧视频30-40帧构建时空特征得到较好的结果。在加 入时间维后,为了增加运动矢量场的密度,从而使特征更加突出,采用了 线性插值的方式来对运动矢量场插值。具体地,若当前帧有运动矢量,并 且当前帧的前一帧没有运动矢量,并且当前帧的上上帧有运动矢量,那么 对前一帧图像运动矢量进行插值,插值矢量值为当前帧与当前帧的上上帧 运动矢量和的平均值,若计算出的平均值不为0,则前一帧运动矢量计数 加1,把前一帧的运动矢量重新统计到对应维度上。将最终获取的具有时 间序列的运动特征送入打砸分类器进行分类。

所述的运动矢量计算步骤描述如下:

1)假设当前帧共有提取到N个运动矢量,首先分别计算每个矢量x 方向分量和y方向分量的差值:

在上式中,mv[i].dstx,mv[i].dsty分别表示此运动矢量i在图像中的绝对目的水 平坐标和垂直坐标,mv[i].srcx,mv[i].srcy分别表示此运动矢量i在图像中的绝 对原始水平坐标和垂直坐标。

2)计算矢量块索引,式中gridstep表示 运动估计块的大小,在此处取16。

3)累计每个索引的矢量值。此处以索引(m,n)为例,累计落在(m,n) 索引上的矢量值,并将落在此索引上的计数器(用C表示)值加1。

4)分别计算每个索引块的平均位移,作为此块的最终输出运动矢量。 此处以索引块(m,n)为例,最终此块的运动矢量为:

其中Vx代表运动矢量水平分量,Vy代表运动矢量垂直分量

所述的运动矢量去噪原理为:

式中Mi表示宏块i的运动矢量,Mix和Miy分别代表水平和垂直分量, 阈值为T。

步骤S9,根据所述的打砸分类器判断是否有打砸行为发生,并设置报 警阈值,当检测到打砸行为并满足报警阈值时,则发出打砸报警信号。

步骤S10,启动打斗行为分类器,其提取的运动矢量时空特征与步骤 S8一样,将提取的特征送入打斗分类器中进行分类。

步骤S11,根据所述的打斗分类器判断是否有打斗行为发生,并设置 报警阈值,当检测到打斗行为并满足报警阈值时,发生打斗报警信号。

步骤S12,根据运动跟踪的质心判断质心是否在检测区域内结合前景 占检测区比例来判断目标是否离开检测区,判断质心是否在检测区域内如 步骤S3所述方法一样。当检测到质心在检测区外或者检测不到质心,并且 前景占检测区比例小于一定阈值,认为目标离开检测区。

所述的质心公式计算为:

式中,f(x,y)为图像(x,y)处的像素值。

步骤S13,若目标离开检测区,则将所有信号重置,主要包括人数统 计置0,清空运动目标链表,VIBE背景建模学习率恢复正常。

所述GBDT(Gradient Boosting Decision Tree)梯度提升决策树分类器, 其模型定义为加法模型:

式中,x为输入的样本,h为最小二乘回归树,w为最小二乘回归树的参数, α为每颗回归树的权值。

通过最小化损失函数求解最优模型:

其中,在求解最优模型过程,GBDT利用损失函数L的负梯度拟合本轮的 损失近似值,进而拟合一个最小二乘回归树。第t轮第i个样本损失函数 负梯度表示为:

采用传统算法结合机器学习以及深度学习的方法,使用改进的传统算 法提取运动目标,采用深度学习判断检测区域是否有人,采用机器学习方 法对提取的运动矢量构造时空特性进行训练和识别,可以有效的解决使用 传统算法由于噪声等因素带来的ATM机异常行为检测引起的误报、漏报 问题。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在 本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含 在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1