一种基于轨迹序列分析和规则归纳的视频行为识别方法

文档序号:6609961阅读:225来源:国知局
专利名称:一种基于轨迹序列分析和规则归纳的视频行为识别方法
技术领域
本发明属于人工智能、计算机视觉、模式识别、机器学习技术领域,特别涉及视频中行为识别方法。

背景技术
随着计算机技术的飞速发展,新型的高性能中央处理器为计算机提供了强大运算能力,大容量内存和硬盘为计算机提供了超强的数据存储、读取能力。然而许多涉及人类感知活动的方面,例如视觉功能,听觉功能,嗅觉功能,自然语言理解功能等,计算机还远远没有接近人脑的水平。这一现状无法满足一些高级应用的需求,例如我们希望计算机能够进行视觉监控场景下人的行为分析,当发生有人翻越围栏、丢包、打架等异常行为后,可以自动进行报警。为满足这些高级应用,许多涉及人工智能的相关研究如计算机视觉、计算机听觉,计算机嗅觉、自然语言处理等研究领域应运而生。视频中的行为理解是当前计算机视觉领域中一个很活跃的研究主题,它旨在用计算机自动处理摄像头捕捉到的视频,检测其中的感兴趣运动目标,跟踪其运动状态,识别其运动行为。其研究成果在智能视觉监控,高级人机交互,视频信息压缩等领域有广阔的应用前景。
在固定摄像头的拍摄场景中,运动物体的轨迹数据记录了该物体从进入摄像机视野到离开摄像机视野的位置信息,是隐含运动物体语义行为最有用的信息之一。目前基于轨迹分析的行为理解方法主要利用轨迹聚类技术对单条轨迹的空间分布建模。所获取的轨迹类可以被看作是运动物体在场景中经常经过的路径。基于这些自动学习出的路径,一些简单的单物体行为,例如“车辆1沿路径X经过场景”可以被识别出来。然而这些轨迹聚类工作没有考虑隐含在连续轨迹序列中的上下文信息,因此很多在更大时间尺度中的更为复杂的行为无法被识别,例如在交通路口的红绿灯规则“红灯停绿灯行”表示为多个车辆在一个红绿灯周期内不同车道的相继通行过程,因此简单的单个车辆轨迹聚类是无法获取这样复杂规则的。本发明通过对连续轨迹序列进行分析,从中发现一些频繁发生的运动模式,并使用规则归纳算法得到一系列的事件规则。
目前对于更为复杂的行为识别,概率图模型和规则推理是两个被广泛使用的主要方法,概率图模型诸如隐马尔科夫模型(HMM)、动态贝叶斯网(DBN)包括参数学习过程,可以很好的处理底层图像处理所带来的观测噪声,但随着时间尺度的增大和事件复杂性的增加(运动物体的个数,隐含规则的复杂程度),图模型的结构学习会非常困难。并且概率图模型的方法是一种黑箱子式的分类方法,即首先需要人为标定训练样本,之后进行模型参数或结构的训练,其训练得到的结构及参数的语义含义不易被人理解,导致一些先验知识不易嵌入模型之中来提高行为识别准确率。与此相比,在基于规则推理的方法中,事件规则作为行为模型更易被人所理解并且可以很方便的嵌套先验知识,因此基于规则推理的方法是让计算机达到行为识别目的的另一个可行选择。目前该方法所面临的主要问题是事件规则无法自动获取,在大部分基于规则推理的工作中,事件规则是由人为指定的,领域专家需要为一个场景内的所有可能的感兴趣事件设定规则,人工耗费很大。很难想象一个没有自动学习能力,全部依靠手工输入事件规则的系统能被称为是智能的,因此本发明的出发点就是利用其他领域,如自然语言处理,已有的规则归纳算法,自动学习视频中的事件规则,并利用这些规则对感兴趣的事件进行识别。
文法规则归纳在人工智能,自然语言处理研究领域被研究了多年,它旨在从训练句子中自动归纳出一系列的能有效代表训练数据的文法规则。本发明采用了一个通用文法规则归纳框架产生事件规则(文献1 P.Grunwald.“A minimum description length approach to grammarinference”Connectionist,Statistical and Symbolic Approaches toLearning for NaturalLanguage Processing,volume 1004 of LectureNotes in AI,pp 203-16 Berl inSpringer Verlag,1996),同时为了提高规则学习的时间效率以及保障所学得到的规则有语义含义,频繁约束条件和多层规则归纳策略被应用在这个一般性框架之中。
基于所学习到的事件规则,行为识别过程可以被看作为一个文法分析过程,基于一个文法分析算法(文献2 A.Stolcke,“An efficientprobabilistic context-free parsing algorithm that computes prefixprobabilities”,Computational Linguistics,v.21no.2,pp.165-201,June 1995),我们扩展了其原有算法以适应视频中行为的特殊性。


发明内容
现有的基于规则的行为识别系统需要专家为场景中每个感兴趣行为制定其事件规则,因此在实际应用中大大增加了人工耗费,就此问题,本发明的目的是在固定摄像机条件下,对检测得到的运动物体轨迹进行分析,自动学习其中蕴含的事件规则,并利用这些规则进行行为识别,为此,本发明提供一种基于轨迹序列分析和规则归纳的视频行为识别方法。
为了实现所述的目的,本发明基于轨迹序列分析和规则归纳的视频行为识别方法的技术方案如下 轨迹分割步骤S1对有底层跟踪算法得到的轨迹根据事先定义好的语义区域进行分割,用于获得有最基本语义含义的轨迹段; 轨迹聚类步骤S2在每一个语义区域中的轨迹段进行聚类,用于得到最基本的运动模式; 获得原子事件序列步骤S3为属于同一个基本运动模式的轨迹段建立隐马尔科夫模型,作为原子事件模型;之后针对原始轨迹序列的每一轨迹段,计算其符合原子事件模型的似然概率来判别事件类别,得到原子事件序列; 规则归纳步骤S4对获得的原子事件序列,利用一个基于最小描述长度的多层规则归算法以获取带有更高层语义含义的事件规则; 基于文法分析的行为识别步骤S5根据学习得到的事件规则,利用文法分析器识别给定原子事件序列中蕴含的带有更高层语义含义的事件类别。
根据本发明的实施例,其轨迹分割包括如下步骤 步骤S11在图像场景中,设定几个语义区域; 步骤S12每条轨迹被它所经过的语义区域分割为若干子段,每段有一个最基本的语义含义,即沿某一运动模式经过某一区域。
根据本发明的实施例,其轨迹聚类包括如下步骤 步骤S21所有轨迹段经重采样后,得到长度相同的轨迹段; 步骤S22对获得的长度相同的轨迹段集合,进行主成份分析,得到轨迹段的主分量表示; 步骤S23计算两两轨迹段之间的欧式距离,得到该轨迹集合的相似性矩阵; 步骤S24根据该相似性矩阵,利用一个谱聚类算法将轨迹段集合分为若干子集。
根据本发明的实施例,其获取原子事件序列包括如下步骤 步骤S31对聚类得到的每一类轨迹段,训练一个隐马尔科夫模型,作为该原子事件的检测模型; 步骤S32对于要识别的轨迹段,计算其符合各个隐马尔科夫模型的似然概率,选择似然概率最大的那个模型作为其分类结果; 步骤S33提取每个原子事件的时空属性,根据事件结束时刻升序排列形成一个原子事件序列。
根据本发明的实施例,其多层规则归纳策略,包括初始化后,循环执行如下步骤 步骤S41对当前事件序列中出现的事件类别集,根据事件类别间的时空距离,利用聚类算法得到若干事件类别组; 步骤S42在所有事件类别组中,利用基于最小描述长度准则的规则归纳算法,产生事件规则,将其加入当前事件规则集;之后判断若事件类别组的个数大于1,则执行步骤S43,反之如果只有一个事件类别组,则跳出循环,返回当前规则集作为规则归纳结果; 步骤S43利用获取得到的事件规则对原有事件序列进行替换。
根据本发明的实施例,所述的多层规则归纳策略,基于最小描述长度的规则归纳算法,包括初始化后,循环执行如下步骤 步骤S421根据当前规则集和事件序列,产生候选规则集合。判断若候选规则集合不为空或者循环次数没有超过预设的阈值,则执行步骤S422;反之,则跳出循环,返回规则集; 步骤S422根据最小描述长度准则,获取可以最大限度压缩当前事件序列的事件规则,加入规则集; 步骤S423用当前事件规则进行实例替代,更新事件序列。
根据本发明的实施例,基于文法分析的行为识别包括初始化分析状态集后,循环执行如下步骤 步骤S51判断将要扫描的原子事件是否超出了事件序列的总长度,若没有超出,从当前分析状态集中找到与这原子事件相关的状态进行扫描操作,生成新的状态;反之,说明原子事件序列的所有事件均已被处理,跳出循环,并在分析状态集中检查要识别的事件是否已经存在; 步骤S52利用上一步骤中产生的新状态,在当前分析状态集中进行完成操作,进行时间关系推理; 步骤S53根据当前状态集,进行预测操作,产生有可能和下一被扫描的原子事件相关的状态。
本方法分为训练和识别两个过程,所述训练过程包括 1.运动物体的轨迹分割; 2.轨迹段聚类; 3.用隐马尔科夫模型(HMM)建立原子事件模型; 4.基于最小描述长度(MDL)准则的事件规则归纳; 所述的识别过程包括 1.对测试的轨迹序列分割; 2.轨迹段映射为原子事件; 3.所得事件串通过文法分析器识别是何种行为; 视频中的行为理解在智能视觉监控、高级人机交互等领域有广阔的研究应用价值。基于轨迹分析和规则归纳,本发明提供了一个完整的视频行为理解框架首先,预处理阶段将轨迹分割为若干有基本语义的基本轨迹段,这一步骤使没有语义的轨迹信号转化为一系列含有最基本语义含义的轨迹段。之后通过有效的轨迹特征提取和轨迹段聚类分析,轨迹段被分为若干基本运动模式,这些模式被认为是该场景中的各种原子事件类别,并用隐马尔科夫模型(HMM)对其进行建模以识别新来的轨迹段所属的原子事件类别。这一步骤完成了从没有确切语义的轨迹段信号向基本原子事件符号的转化。最后,用一个基于最小描述长度准则的规则归纳算法获取蕴含在轨迹序列中的事件规则,并在规则归纳过程中考虑到了视频事件的空时属性,采用一种多层的规则归纳策略,从而大大提高了规则学习的有效性,并对感兴趣事件利用一个扩展的文法分析器加以识别,这一步骤自动获取了更高层事件的组成规则,可完成底层原子事件向高层更为复杂事件的转化。
因此本发明解决了在固定摄像机场景中利用计算机自动学习频繁发生的运动事件规则,并对感兴趣行为进行自动识别的问题。该技术可用于基于规则的智能视觉监控、高级人机交互等具体应用,自动学习事件规则极大的节省了以往需要专家制定场景内所有事件规则的人力耗费,从而能用计算机协助人、甚至代替人完成事件识别的任务,在一定程度上推进了模式识别理论在视频信息处理中的应用。



图1是本发明行为识别方法的系统框图; 图2是本发明轨迹聚类及建立原子事件模型的流程图; 图3是本发明子事件之间时间关系的示意图; 图4是本发明一个事件规则实例的示意图; 图5是本发明中事件规则归纳的基本流程图; 图6是该发明中的多层规则归纳策略图; 图7是本发明复杂行为识别的文法分析流程图; 图8是本发明一个交通监控场景中车辆通行状态变换示意图; 图9是本发明一个交通监控场景中轨迹分割的示意图; 图10是本发明一个交通监控场景中轨迹聚类的结果示意图; 图11是本发明一个交通监控场景中行为识别的示意图;
具体实施例方式 下面结合附图详细说明本发明技术方案所涉及的各个细节问题。
图1为本发明行为识别方法的系统框图,包括训练和识别两个部分; 识别过程包括轨迹分割单元S1、原子事件检测器S32和文法分析器S5; 训练过程包括轨迹段聚类单元S2、原子事件建模单元S31和事件规则归纳单元S4; 原始轨迹数据0进入轨迹分割单元S1生成原子轨迹段数据1,原子轨迹段数据1分别给入轨迹段聚类单元S2和原子事件检测器S32; 原子事件检测器S32接收原子轨迹段数据1生成原子事件序列数据4,原子事件序列数据4分别给入文法分析器S5和事件规则归纳单元S4; 文法分析器S5接收原子事件序列数据4生成事件识别结果6; 轨迹段聚类单元S2接收原子轨迹段数据1生成轨迹段类数据2; 原子事件建模单元S31接收轨迹段类数据2,并生成原子事件模型数据3给入原子事件检测器S32; 事件规则归纳单元S4接收原子事件序列数据4生成事件规则数据5,事件规则数据5也给输入文法分析器S5以分析输入原子事件序列是否含有要识别的事件。
轨迹获取与轨迹分割 我们利用一个视频跟踪算法(文献[3]Tao Yang,Stan Z.Li,QuanPan and Jing Li,“Real Time Multiple Objects Tracking withOcclusion Handling in Dynamic Scenes”,In Proc.Conf.CVPR vol.1,pp.970-975,2005)获取运动物体的原始轨迹并保存其在数据库中。根据轨迹表示,最基本的原子事件所能表示的语义含义是“物体从何处来到何处去”。因此我们人为设定几个语义区域。每条轨迹被它所经过的语义区域分割为若干子段,每段有一个最基本的语义含义,即“运动物体在区域a中沿路径x从边界1到边界2”。以上的轨迹分割过程将没有语义的轨迹信号转化为一系列含有最基本语义含义的轨迹段。
轨迹段聚类与原子事件建模 轨迹分割后,每一语义区域内的每一轨迹段都可以映射为一个原子事件,原子事件类别由该区域内轨迹段聚类确定。轨迹段聚类与原子事件建模的流程图如附图2所示,在本发明中一种基于相似性度量的聚类算法被采用。轨迹段之间的距离由PCA+Euclidean距离计算,其计算过程如下首先把原始轨迹集合DO中长度不一的轨迹段重采样为相同长度的轨迹段,得到轨迹集合D1。轨迹长度可为该轨迹集中所有轨迹长度的平均值。之后把轨迹段的y轴坐标接在x轴坐标之后,如此每条轨迹段被表示为一个长度为2*n(n为轨迹长度)的向量,接着利用主成分分析(PCA),一条轨迹被前N个(N<n)最有效的主特征分量D2表示。之后计算两两轨迹段间的欧式距离,建立一个距离矩阵即相似性矩阵D3。基于该距离矩阵,利用谱聚类算法(文献4 M.Maila,J.Shi,“A Random Walks Viewof Spectral Segmentation”AI and STATISTICS(AISTATS’01),2001)得到若干轨迹段类C1、C2......Cn,此轨迹段的类经隐马模型的训练,得到n个原子事件模型M1、M2.......Mn。
场景中这些语义含义单一的运动模式被认为是该场景中最基本的原子事件,针对每一轨迹段类,我们训练一个隐马尔科夫模型(HMM)。对新来的轨迹段通过计算其符合各个事件模型的似然概率,选择似然概率最大的那个模型作为其分类结果。
经过轨迹聚类并建立原子事件模型,我们可以将一条轨迹段转化为一个原子事件。然而在以后的事件规则归纳中,仅一个表明事件类别的符号还不足以提供足够多的信息。因此我们还计算了其他的一些信息用以表征事件,在此一个事件被表示成一个5元组{e_type,id,t_range,s_range,likelihood},其中“e_type”表示事件类别;“id”表示该事件的执行者编号;用t位置和s位置表示该事件的时空属性,“t_range”表示该事件在整个事件序列中的时间存在区间,即该事件发生的起始时刻和终止时刻(start_point,end_point);“s_range”表示该事件在图像坐标系下所占的空间位置信息,表示为在图像坐标的x轴,y轴,以及运动方向轴上的存在区间{x_min,x_max),(y_min,y_max),(o_min,o_max};“likelihood”表示该事件符合事件模型的似然概率。由此,经过轨迹向原子事件的转变后,轨迹序列被表示为一个原子事件序列,根据各个原子事件的终止时刻end_point,原子事件被由小到大的排列起来。总之以上的轨迹段聚类与原子事件建模过程完成了从没有确切语义的轨迹段信号向基本原子事件符号的转化。
基于最小描述长度准则的事件规则的归纳 事件规则由两部分组成规则结构和规则属性。结构表示是基于文法产生式。然而为了表示子事件之间更为复杂的时序关系,一个附加的时间关系矩阵被引入。因此一个长度为n的事件规则可表示为 E→s{R}[P] E表示为左侧的非终结符,s为一个长度为n的符号串,其中的每一个符号表示一个事件。R代表时间关系矩阵,其中的元素r[i][j]表示第i个事件与第j个事件之间的时间关系,时间关系的定义如附图3所示,其中A,B两个事件的发生时间段分别由黑色实线及黑色虚线表示,A与B的时间关系依图示会有七种,分别为“b”表示“A在B之前”,“m”表示“A与B相继”,“o”表示“A与B交叠”,“e”表示“A与B同时”,“d”表示“A在B之间”,“s”表示“A于B开始”,“f”表示“A以B终止”;与之相反,B与A的时间关系可表示上述时间关系的逆关系。所以实际上两个事件之间的时间关系共有十三种(“e”和它的逆是相同的)。P表示给定事件E后,该规则被选中的概率。如附图4所示,图上方表示了一个事件规则的表示示例,大体由两部分组成,左侧为规则的文法产生式,表明事件“P”由子事件“A”,“B”,“C”组成,其间的顺序是依据三个事件的终止时刻由小到大排列。下方的坐标系中的每条黑线代表了一个事件的发生,横轴表明时间,纵轴表明事件,多条黑线就表示了事件序列。虚线框内三个事件,由于其事件类别和时间关系符合上方规则的定义,这三个事件组合在一起就是该事件规则的一个实例。
除了规则结构之外,两个实数的属性值被用于进一步描述规则中出现的每一个事件




表示规则中每个事件实例时间长度的平均值,

表示规则实例的空间属性的平均值。
定义了事件规则之后,一个基于最小描述长度准则的规则归纳算法被用于进行规则的提取。该算法可看作是一个优化问题的求解过程,其思想是找到一系列的事件规则,使得这些事件规则被用于对原有事件序列进行压缩时的压缩能力最强。该算法的基本流程如附图5所示,该算法首先进入初始化,设定返回的规则集合为空,之后进入产生候选规则集合单元S421,在该单元中根据当前的事件规则集和当前被压缩的事件序列,通过对各种事件类别的“建造”和“合并”操作得到新的候选规则集。若候选规则集不为空,则利用最小描述长度评估单元S422对候选规则集中的每一个事件规则进行评估。在此利用每一规则对当前的事件序列进行压缩,压缩程度的衡量由描述长度表示,选择压缩能力最强的事件规则作为新产生的事件规则,其规则属性



在进行压缩时经过统计该规则在事件序列中的实例得到。之后进入事件序列更新单元S423,完成新规则对其实例的替代,更新事件序列。之后进入下一轮循环,寻找下一个事件规则。当不再产生任何事件规则,或者循环次数超过之前给定的阈值后,停止规则归纳过程,返回所学习得到的事件规则集在此,我们可以应用集束搜索(beam search)以避免算法收敛于局部最优。
以上所述为事件归纳的基本算法,在此,我们利用“建造”和“合并”两个操作子产生候选规则。
“建造”操作可表示如下对两个事件类别“A”和“B”,可生成新的候选规则P→AB,其中“A”与“B”之间的关系可以为八种可能的时间关系{b,m,o,s,d,f,e,i-f}(时间关系如附图3所示,i-f关系表示f关系的逆关系)中的任何一种。
“合并”操作可表示如下对两个事件类别“A”和“B”,可生成新的候选规则P→A|B,其中“A”与“B”之间的关系并不表示时间关系,而是逻辑关系“或”,表示A或者B的发生都表明了P发生。
然而只利用这个基本算法会产生太多的候选规则,从而加重以后的评估过程的工作量,并且有些没有语义的但是确实可以压缩事件序列的候选规则也有可能被选中成为新的事件规则,这些无关规则会干扰接下来的规则归纳过程。为了解决这些问题,并考虑到视频事件的空时属性,一个多层的规则归纳策略被提出,其思想来自于一个启发式的规则人总是更愿意通过“建造”或者“合并”两个相邻比较近的物体形成一个更一般的概念。在这里两个视频事件的近邻关系由其间的时空距离决定。首先定义两个视频事件的时空距离如下(在此处,事件不是指某一次事件发生的实例,而是事件类别) s-t_D(A,B)=α*s_D(A,B)+(1-α)*t_D(A,B) 这是一个空间距离s_D(A,B)和时间距离t_D(A,B)的加权和。权值α由经验决定。s_D(A,B)定义如下
其中

表示事件A的所有实例的s_range属性(见上面原子事件的表示)的平均值,在此s_range被表示为一个立方体,三维分别是x轴,y轴和方向轴;

是立方体cubeA的体积;

为包含



最小立方体;该距离取值为0到2,且尺度无关,这个性质非常重要,因为随着归纳过程的进行,事件序列中的事件的平均时间空间尺度会越来越大。
t_D(A,B)被计算为两个事件实例之间时间距离的平均值 其中nA是事件A的实例数目, 为事件ai的存在时间间隔,

表明时间间隔的长度,

为包含



的最小时间间隔。
基于这个时空距离,多层的事件规则归纳策略如附图6所示的如下过程在初始化中设定规则集为空后,在单元S41中,为事件序列中频繁发生的事件类别间两两计算时空距离,并利用简单的聚类算法,如层级聚类算法得到若干事件类别组,这个过程称之为“分割”过程;之后进入处理单元S42,在每一事件类别组中进行基于最小描述长度准则的规则归纳算法,即同一个事件组中事件类别才可以被“建造(construct)”和“合并(merge)”,得到一系列的事件规则,将其加入当前事件规则集;之后在单元S43中利用新学习到的规则对原有事件序列进行实例替换得到新的事件序列,单元S42的操作称之为“归纳”过程。此后在新的事件序列上,重复进行如上操作,直到最后经过“分割”后只有一个事件类别组,此时进行最后一次规则归纳(单元S42)后跳出循环,返回最终的事件规则集合。以上多层的规则归纳策略利用了视频事件的时空属性,能保证规则归纳算法得到更多的具有明确语义含义的事件规则,从而提高了规则学习的有效性。
除应用多层规则归纳策略以保证产生规则的快速有效以外,一个频繁模式挖掘算法也被应用于寻找频繁发生的候选规则,只有那些支持度(support)超过给定阈值的候选规则才被允许进入下一步的评估过程。每个规则的支持度(support)同时用于计算各个规则的条件概率。假定有n个规则共享同一个最左侧非终结符,那么第i个规则的条件概率计算如下 用最小描述长度准则对一组规则候选进行评估时,其目标函数可由下式表示 L(G,S)=L(S/G)+L(G) 此处L(S/G)表示利用规则集G对原有事件序列5进行压缩后的事件序列的编码长度,L(G)则代表对规则集G的编码长度。优化目标是寻找一个合适的规则集G使L(S,G)最小。因此最主要的问题就是如何对事件序列进行编码以计算描述长度。从上述事件规则的定义中可知一个事件规则可以表示为一个符号串附加一个时间关系矩阵,同样的我们也可以把事件序列也表示为一个符号串附加一个时间关系矩阵,此时的符号串的长度和矩阵的维数等于事件序列的长度。因此对事件序列的编码可以分为以下两个步骤 首先对符号串进行编码,假定当前的符号串为e1e2...en,其中每个符号都来自集合{E1,E2,...Ec},并且ei=Ek为原始事件序列中子序列sub_S经过被当前规则集进行压缩替代后的结果。因此,对这个字符串进行编码的码长计算如下 此处P(ei)=P(Ek)是事件序列中事件Ek正规化后的支持度(support);lik_ei为事件序列中第i个事件ei的似然概率。假设子串e′1e′2...e′m被规则E→E′1E′2...E′m替代为e,事件e的似然概率是在其刚刚产生时即被计算 此处P(E→E′1E′2...E′m)是规则的条件概率,e′j是事件E′j的实例。
对符号串进行编码后,下一步骤是对时间关系矩阵进行编码。考虑到时间关系矩阵是一个类反对称矩阵,因此只需对上三角阵进行编码,其中每一个元素有8种可能的取值{before,meet,overlap,start,during,finish,equal,i-finish}。然而对于事件序列的时间关系矩阵而言,每一行元素的绝大多数取值都会为before。
因此对于矩阵第i行元素,给定其中七种时间关系的数量(除before关系)vj,j∈{1,2,...,7}后,有 种放置方式。
假设各种放置的概率相同,则为当前第i行元素进行编码需要码长为 之后还需对vj和i值进行编码,共需要(7logui+logN)位,其中ui=maxj{vj},N为事件序列的长度。因此对时间关系矩阵进行编码所需的总码长为 最终给定当前规则集G后,我们需要L(S|G)=Sbits+Rbits位为时间序列进行编码。相似的编码策略也可以用于为每一条规则进行编码。最后,L(G)为每条规则码长的总和。
基于文法分析的事件识别 通过以上过程,本发明通过规则归纳自动学习得到一个场景中的频繁发生的事件规则,极大的节省了以往需要专家制定场景内所有事件规则的人力耗费,。接下来在正确学习的事件规则中,对于使用者感兴趣的事件,我们利用文法分析方法自动识别其是否发生在给定的一段视频之中。
首先,利用跟踪技术自动获取视频中感兴趣运动物体的轨迹,并根据语义区域对轨迹段进行分割,利用学习过程中所学到的HMM原子事件模型,识别轨迹序列中的原子事件形成事件序列。以上过程和学习过程中轨迹信号到事件符号的转换过程一致。
文法分析器被用来识别符号串中蕴含的更复杂的行为。在此我们基于原有的Earley-Stolcke分析器,将时序推理模块加入其中,从而可以识别子事件之间更为复杂的时序关系。整个文法分析流程如附图7所示,在初始化单元1进行初始分析状态的设定,之后文法分析主要分为三个模块的循环执行扫描单元S51,完成单元S52和预测单元S53。扫描单元S51的任务是观测当前的原子事件,并在分析状态集中寻找和当前原子事件直接相关的状态进行扫描操作,并改变其状态,此过程中加入了时间关系推理。之后的完成单元S52的任务是寻找和当前原子事件间接相关的其它状态,完成状态和状态间的推理,在此过程中同样需要加入了时间关系推理。最后预测单元S53根据当前的各个状态,预测下一个可能会被扫描到的原子事件。此三个模块循环执行,直到事件序列中的所有事件均被处理。最后在分析状态集中检查事件是否发生,若事件被识别,可以通过在以往状态集中的回溯以便得到该事件的构成结构。
实施例 以上介绍了该行为理解方法的整个学习和识别过程。下面结合一个具体实例说明本发明的具体实施过程与效果。在附图8所示的交通场景中,我们记录了一段长度为90分钟的交通视频,其中包括了45个红绿灯变换周期,我们希望能通过对车辆轨迹流的自动分析,学习得到正常轨迹流中由红绿灯规则所控制的车辆通行变换模式。该通行模式由附图8所示,三张图中带箭头的黑色线表示了丁字路口的三种通行状态,分别为“辅路向主路的左转弯通行状态”,“主路向辅路的左转弯通行状态”以及“主路通行状态”,图之间的透明的大箭头标明了三种状态之间的前后承启关系。
利用已有的底层跟踪系统,视频中的车辆轨迹被获取得到,每条轨迹在视频中的时间信息也被保存下来。首先选择一部分轨迹经过轨迹分割,一个原始轨迹的分割过程如附图9所示,图中黑色线代表一条轨迹,箭头表示运动方向,图中的两条虚线代表了这个交通路口两条人行横道,整个路口也被分为三个语义区域1、2和3,之后通过轨迹段聚类,15个主要的轨迹模式被得到。一些轨迹类的示意如附图10所示,图中所示,绿色线表示轨迹类中所有的轨迹,红色箭头线表示轨迹的方向。这些基本的轨迹类均可看作是车辆沿某一车道在该场景中各个语义区域的通行行为。图中v1代表车辆沿主路左侧最内侧车道经过区域1,v3代表车辆沿主路右侧中间车道经过区域1,v7代表车辆从辅路左转向通过区域2,v5表示车辆从主路右侧左转向经过区域3。和这四个轨迹类相似,其他的轨迹类都可以看做是车辆在该交通路口的基本通过模式。
之后通过对这些轨迹类训练HMM,分别建立原子事件模型。对所有车辆进行原子事件检测和异常轨迹及噪声去除(不属于任何主要轨迹模式的轨迹为异常轨迹)之后,得到的原子事件序列被用于学习交通事件规则,一些学习得到的规则如下附表所示
其中小写字母v1至v15表示15个原子事件。可看出不仅单个车辆在场景中通行的主要模式被正确的表示,而且一些递归规则也学习得到,用以描述在绿灯期间连续通行的事件。例如组成事件“A”的一个规则,A->v11 v3,表示A事件可由v11和v3组成,其中v11和v3之间的时间关系为“m”,表示v3与v11是相继关系当已知A发生的条件下,这条规则被应用的条件概率为0.482.通过查看原子事件v11和v3的语义含义,我们可以知道这条规则实际上代表了一辆车从主路右侧中间车道通过该丁字路口的行为。规则A->A A则表示A还可以由多个A嵌套组成,此时A与A之间的时间关系为“b”,表明第二个A应发生在第一个A之后。其条件概率为0.002。这条规则表示了主路右侧车道车辆连续穿行的行为。以此类推,其他事件B,C,D,E分别表示了在该丁字路口各种车辆通行行为。
然而由于辅路到主路的右转弯轨迹的频繁出现使得整个场景的红绿灯通行规则没有被正确表示。而此轨迹和红绿灯规则没有任何关系,应该算作噪声,但目前的技术还无法自动从轨迹流中将其去除。因此我们人为的从事件序列中将其去除,之后红绿灯规则被正确学习表示。附图11中“*”在前面的规则就是人为去除“辅路到主路右转弯通行”轨迹后,通过规则学习得到的有关整个场景的交通规则。
事件识别的一个实例示意如附图11所示,要识别的事件是在该丁字路口的一个交通周期内车辆交替通过事件。此图上面部分表明了在此周期内主要的五种子事件在时间上的存在情况,纵轴表示各种事件,横轴表示时间,黑色的粗线表明在这段时间内某种事件正在发生。符号含义见附图11所示。“C”事件和规则无关,然而并不影响事件的识别。下面的图表示文法分析器对如上图所示输入事件序列的分析结果,图中的事件B和事件D分别标明主路向辅路左转弯,和辅路向主路左转弯事件,“B”与“D”之间的“b”表明他们之间的时间关系为“B”在“D”之前发生,根据附图11内的规则,“B”“D”组合在一起成为事件“H”。而事件E与事件A分别表示“左侧主路通行”和“右侧主路通行”,这两者的同时发生激发了“主路通行”事件“F”。最后,“H”与“F”最终组成了事件“I”,即在一个周期内丁字路口的车辆正常通行。
上面描述是用于实现本发明的实施例,本领域的技术人员应该理解,在不脱离本发明的范围的任何修改或局部替换,均属于本发明权利要求来限定的范围。
权利要求
1.一种基于轨迹序列分析和规则归纳的视频行为识别方法,其特征在于
轨迹分割步骤S1对有底层跟踪算法得到的轨迹根据事先定义好的语义区域进行分割,用于获得有最基本语义含义的轨迹段;
轨迹聚类步骤S2在每一个语义区域中的轨迹段进行聚类,用于得到最基本的运动模式;
获得原子事件序列步骤S3为属于同一个基本运动模式的轨迹段建立隐马尔科夫模型,作为原子事件模型;之后针对原始轨迹序列的每一轨迹段,计算其符合原子事件模型的似然概率来判别事件类别,得到原子事件序列;
规则归纳步骤S4对获得的原子事件序列,利用一个基于最小描述长度的多层规则归算法以获取带有更高层语义含义的事件规则;
基于文法分析的行为识别步骤S5根据学习得到的事件规则,利用文法分析器识别给定原子事件序列中蕴含的带有更高层语义含义的事件类别。
2.根据权利要求1所述的行为识别方法,其特征在于,其轨迹分割包括如下步骤
步骤S11在图像场景中,设定几个语义区域;
步骤S12每条轨迹被它所经过的语义区域分割为若干子段,每段有一个最基本的语义含义,即沿某一运动模式经过某一区域。
3.根据权利要求1所述的行为识别方法,其特征在于,其轨迹聚类包括如下步骤
步骤S21所有轨迹段经重采样后,得到长度相同的轨迹段;
步骤S22对获得的长度相同的轨迹段集合,进行主成份分析,得到轨迹段的主分量表示;
步骤S23计算两两轨迹段之间的欧式距离,得到该轨迹集合的相似性矩阵;
步骤S24根据该相似性矩阵,利用一个谱聚类算法将轨迹段集合分为若干轨迹段类。
4.根据权利要求1所述的行为识别方法,其特征在于,其获取原子事件序列包括如下步骤
步骤S31对聚类得到的每一类轨迹段,训练一个隐马尔科夫模型,作为该原子事件的检测模型;
步骤S32对于要识别的轨迹段,计算其符合各个隐马尔科夫模型的似然概率,选择似然概率最大的那个模型作为其分类结果;
步骤S33提取每个原子事件的时空属性,根据事件结束时刻升序排列形成一个原子事件序列。
5.根据权利要求1所述的行为识别方法,其特征在于,其多层规则归纳策略,包括初始化后,循环执行如下步骤
步骤S41对当前事件序列中出现的事件类别集,根据事件类别间的时空距离,利用聚类算法得到若干事件类别组;
步骤S42在所有事件类别组中,利用基于最小描述长度准则的规则归纳算法,产生事件规则,将其加入当前事件规则集;之后判断若事件类别组的个数大于1,则执行步骤S43,反之如果只有一个事件类别组,则跳出循环,返回当前规则集作为规则归纳结果;
步骤S43利用获取得到的事件规则对原有事件序列进行替换。
6.根据权利要求5所述的行为识别方法,其特征在于,所述的多层规则归纳策略,基于最小描述长度准则的规则归纳算法,包括初始化后,循环执行如下步骤
步骤S421根据当前规则集和事件序列,产生候选规则集合;判断若候选规则集合不为空或者循环次数没有超过预设的阈值,则执行步骤S422;反之,则跳出循环,返回规则集;
步骤S422根据最小描述长度准则,获取可以最大限度压缩当前事件序列的事件规则,加入规则集;
步骤S423用当前事件规则进行实例替代,更新事件序列。
7.根据权利要求1所述的行为识别方法,其特征在于,基于文法分析的行为识别包括初始化分析状态集后,循环执行如下步骤
步骤S51判断将要扫描的原子事件是否超出了事件序列的总长度,若没有超出,从当前分析状态集中找到与这原子事件相关的状态进行扫描操作,生成新的状态;反之,跳出循环,并在分析状态集中检查要识别的事件是否已经存在;
步骤S52利用上一步骤中产生的新状态,在当前分析状态集中进行完成操作,进行时间关系推理;
步骤S53根据当前状态集,进行预测操作,产生有可能和下一被扫描的原子事件相关的状态。
全文摘要
本发明公开一种基于轨迹序列分析和规则归纳的视频行为识别方法,解决人工耗费大的问题,采用将场景中的完整轨迹分割为若干有基本语义的轨迹段,通过轨迹聚类得到若干基本运动模式为原子事件,并用隐马尔科夫模型建模,通过基于最小描述长度准则的规则归纳算法,获取蕴含在轨迹序列中的事件规则,基于事件规则,用扩展的文法分析器对感兴趣事件加以识别。本发明提供完整的视频行为识别框架,在规则归纳过程中考虑视频事件的空时属性,提出了一种多层规则归纳策略,大大提高了规则学习的有效性,推进模式识别在视频行为识别的应用。本发明应用于智能视频监控,自动分析当前监控场景下汽车或行人的运动行为,使计算机协助人或代替人完成监控任务。
文档编号G06K9/62GK101334845SQ20071011799
公开日2008年12月31日 申请日期2007年6月27日 优先权日2007年6月27日
发明者谭铁牛, 黄凯奇, 彰 张, 王亮生 申请人:中国科学院自动化研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1