专利名称:快速步态识别方法
技术领域:
本发明涉及一种步态识别方法,尤其涉及一种基于时空轮廓分析的快速步态识别方法。
背景技术:
步态识别是一种新兴的生物特征识别技术,同样也是计算机视觉领域一个重要研究课题,旨在根据人们走路的姿势进行身份识别。人们可以把人脸、指纹等静态图像的识别归结为第一代生物识别技术,那么可以把新兴的这种识别技术称为第二代生物识别技术。步态识别具有远距离和非侵犯性等优势,受到现代智能监控系统研究者的越来越多的关注。在视频监控系统中,人脸及步态特征一直都被认为是两个重要的可利用的特征。但人脸识别容易受化妆、佩戴物及距离等因素的影响,步态识别可克服以上缺陷,在远距离非接触的状态下进行,具有可远距离获取,非接触性和非侵犯性,以及难以隐藏,难以模仿或盗用的优点。从视频监控技术日趋走向智能化、无线化道路上来看,步态是远距离情况下最有潜力的生物特征,并且是进一步从精细化监控功能的必要线索,在辅助身份识别的同时,还可以实现目标对象的年龄和性别,甚至可用于辨别目标对象的种族类型。而步态识别技术的关键问题是步态特征的表征方法,很多算法的共同思路是利用人体外形提取步态特征。和虹膜人脸指纹等生物特征相比,步态包含更为复杂的属性,因此有效地步态特征提取一直是一个没有很好解决的问题。
发明内容
本发明旨在解决现有技术中存在的技术问题,特别创新地提出了一种快速步态识别方法,将身份识别问题逐层分解,采用决策级信息融合的策略,提高了步态识别的速度。为了实现本发明的上述目的,本发明提供了一种快速步态识别方法,其特征在于包括以下步骤SI、建立由步态特征组成的步态特征数据库,其中每一步态特征对应于一个人员,且每一步态特征均包括5个分量个人编号、身高、性别、年龄和步态信息文件指针,每一步态信息文件指针对应于一个步态信息分量;S2、采集待识别人体的身高,并获取待识别人体的步态信息分量;S3、根据该待识别人体的身高,对该步态特征数据库中的人员进行筛选;S4、根据该待识别人体的性别和年龄,对该步态特征数据库中的人员进行进一步筛选;S5、分别计算出该待识别人体的步态信息分量与上述筛选出的各人员的步态信息分量之间的欧几里德距离,并将欧几里德距离最小的人员识别为该待识别人体。本发明中步态特征包括5个分量,首先通过身高筛选,然后通过性别年龄筛选,最后通过步态信息分量筛选,本发明将身份识别问题逐层分解,采用决策级信息融合的策略,提高了步态识别的速度;此外,步态信息分量以步态信息文件指针的方式存储至步态特征数据库中,将步态识别问题完全转换成了数据库查询问题,在步态信息分量筛选过程中可以通过该步态信息文件指针快速查找到对应的步态信息分量,由此进一步提高了步态识别的速度。建立支持该特征存储和快速检索的步态数据库,最终基于时空轮廓分析算法选择时空能量图(Spatio-Temporal Energy,STE)作为步态信息的特征图,提出结构化快速步态识别的方法,使得每个阶段的问题处理都更简便,速度更快,从而使得最终识别性能更好。在所述步骤SI中,该身高h通过直尺测量获取,单位精确至毫米mm ;该性别s直接输入,由0表示男性,I表示女性;该年龄a根据当前日期与出生日期的差值确定。所述步骤SI中在获取该步态信息文件指针*P时首先获取步态信息分量,再建立与该步态信息分量对应的步态信息文件指针*P ;所述步骤SI和步骤S2中在获取步态信息分量时,均按照以下步骤执行Al、采集包括人体的步态视频流以及不包括人体的背景图像;A2、将该步态视频流中的各视频帧以及该背景图像分别转换为灰度图像,并将该步态视频流中各视频帧与该背景图像分别做差分运算,从而获得各视频帧的人体区域图;A3、将该人体区域图转换为人体轮廓线图;A4、对该人体轮廓线图进行标准化处理;A5、将标准化后的人体轮廓线图转换为时空能量图,并将该时空能量图作为步态
信息分量。本发明将人体区域图转换为人体轮廓线图,提高了数据压缩率,节约了存储空间,并且将人体轮廓线图转换为时空能量图,以时空能量图作为步态新型分量,由于时空能量图对噪声干扰影响不敏感,由此提高了步态识别的精确度。所述步骤A2还包括对各视频帧的人体区域图进行处理的过程A2-1、对各视频帧中人体区域图进行自适应阈值处理;A2-2、对各视频帧中人体区域图进行高斯平滑滤波和形态学处理,去除该人体区域的灰度级图像中的噪声;A2-3、对各视频帧中人体区域图进行n次腐蚀运算,进一步去除噪声,并且对该人体区域图进行膨胀运算,进行边缘补偿,其中n为大于零的整数。本发明中对各视频帧的人体区域图的处理过程,进一步提高了步态识别的精确度。所述步骤A3由以下步骤组成A3-1、对人体区域图进行边缘检测,从而获得人体边缘图像;A3-2、对人体边缘图像进行查找轮廓运算如果像素点在表示人体可运动部分的轮廓线上,则将该像素点的像素值设置为1,否则将该像素点的像素值设置为0 ;A3-3、查找人体边缘图像的外部轮廓,进行多边形逼近,使得顶点数目减少后接近人体真实轮廓,并且绘制出人体外部轮廓线,从而获得人体轮廓线图。所述步骤A4由以下步骤组成A4-1、确定在该人体轮廓线图中仅包括人体轮廓的最小矩形框图f(x,y),并且计算出该最小矩形框图f(x,y)的像素点总数NXM,其中N表示该最小矩形框图f(x,y)中每行的像素点个数;
A4-2、按照缩放比例对该最小矩形框图f (x,y)进行尺寸缩放,其中h表
2000 Λ
示身高,贝1J尺寸缩放后,该最小矩形框图f' U1 , Y1 )中X' = ax, y1 = ay,由N'表示尺寸缩放后,该最小矩形框图f' (X',y')中每行的像素点个数;A4-3、沿着直线y' = y'。,确定在该人体轮廓上相距最近的两个点(x' ,,y'。)和(X' 2, y'。),这两个点对应于人体颈部最细的位置,其中太。e
,round O为取整运算;A4-4、根据公式X计算出人体颈部最细位置处的中轴线X'。,并且以该
~ 2
中轴线V。为对称轴,在该最小矩形框图f, (X, ,Y1 )的左右和上部添加像素值为O的像素点,将该最小矩形框图Γ U丨,1')缩放至标准的尺寸,从而实现人体轮廓线图的标准化。本发明在对该人体轮廓线图进行标准化处理时,以人体颈部最细位置处的中轴线Xi。为对称轴对人体轮廓部分进行缩放,既保持了每个人身高与步幅的比例,也保留了身闻 目息。综上所述,由于采用了上述技术方案,本发明的有益效果是I、本发明中步态特征包括5个分量,首先通过身高筛选,然后通过性别年龄筛选,最后通过步态信息分量筛选,本发明将身份识别问题逐层分解,采用决策级信息融合的策略,提高了步态识别的速度;此外,步态信息分量以步态信息文件指针的方式存储至步态特征数据库中,将步态识别问题完全转换成了数据库查询问题,在步态信息分量筛选过程中可以通过该步态信息文件指针快速查找到对应的步态信息分量,由此进一步提高了步态识别的速度;2、将人体区域图转换为人体轮廓线图,提高了数据压缩率,节约了存储空间,并且将人体轮廓线图转换为时空能量图,以时空能量图作为步态新型分量,由于时空能量图对噪声干扰影响不敏感,由此提闻了步态识别的精确度;3、对各视频帧的人体区域图进一步的处理过程,进一步提高了步态识别的精确度;4、本发明在对该人体轮廓线图进行标准化处理时,以人体颈部最细位置处的中轴线V。为对称轴对人体轮廓部分进行缩放,既保持了每个人身高与步幅的比例,也保留了
身高信息。本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中图1是快速步态识别方法的流程图;图2是建立步态特征数据库的流程图;图3是本发明的第一实施例中,激光测量仪测量待识别身高的示意图4是本发明的第一实施例中,获取人体区域图的流程图;图5是本发明的第一实施例中,获取人体轮廓线图并进行对该人体轮廓图进行标准化处理的流程图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。如图1所示,该快速步态识别方法包括以下步骤步骤一、建立由步态特征组成的步态特征数据库,其中每一步态特征对应于一个人员,且每一步态特征均包括5个分量个人编号ID、身高h、性别S、年龄a和步态信息文件指针*P,每一步态信息文件指针*P对应于一个步态信息分量。该步态特征定义为struct GaitFeature // 步态特征{char ID [maxSize] ;// 个人编号float h ;// 身高int s [2] ; // 性别int a ;// 年龄FILE *P ;} ; //步态信息文件指针如图2所示,建立由步态特征组成的步态特征数据库时,步态特征中身高h通过直尺测量获取,单位精确至毫米mm ;性别s直接输入,由0表示男性,I表示女性;年龄a根据当前日期与出生日期的差值确定,由此该年龄a信息可以自动更新。获取该步态特征中步态信息文件指针*P时首先获取步态信息分量,再建立与该步态信息分量对应的步态信息文件指针*P。步骤二、采集待识别人体的身高,并获取该待识别人体的步态信息分量。在本发明的第一实施例中,采用激光测量仪采集待识别人员的身高。如图3所示,将激光测量仪与摄像机安放在一起,使得激光测量仪的扫描平面与地面正交,一旦待识别人体行至扫描平面则能瞬间获得其身高。如图5所示,激光测量仪测量出r、S1, 02,则待识别人体的身高hzhi+hfrtan 0 Jrtan 0 2,其中r表示待识别人体的腰部与激光测量仪的距离。步骤三、根据该待识别人体的身高,对该步态特征数据库中的人员进行筛选。在本发明的第一实施例中,设定步态特征数据库中存储步态特征的表名为GaitFeaturel,检索表名为GaitFeaturel的各步态特征中的身高值,即SELECT ID FROM GaitFeaturel WHERE ID=, h,定义类型为vector〈int>的容器Re,把得到的结果放入Re中。调用Re. size ()得到Re中元素的个数n。(Re是一个包含当前待识别者的人员步态特征初步集合,且集合中每个人的身高都在[h_Ah,h+Ah]范围内(Ah为误差),表示有n个人与被识别者的步态信息分量距离都很接近,被识别者是这n个人之一。)步骤四、根据该待识别人体的性别和年龄,对该步态特征数据库中的人员进行进一步筛选。本发明中根据待识别人体的实际情况,可以采用人为判断并手动输入的方式进行筛选。步骤五、分别计算出该待识别人体的步态信息分量与上述筛选出的各人员的步态信息分量之间的欧几里德距离,并将欧几里德距离最小的人员识别为该待识别人体。上述步骤一和步骤二中在获取步态信息分量时,均按照以下步骤执行Al、采集包括人体的步态视频流以及不包括人体的背景图像.A2、将该步态视频流中的各视频帧以及该背景图像分别转换为灰度图像,将该步态视频流中各视频帧与该背景图像分别做差分运算,从而获得各视频帧的人体区域图。应注意的是该步态视频流包括多个步态序列,其中每一步态序列对应于一个步态周期,即每一步态序列的起始视频帧对应的人体动作相同,并且在采集步态视频流的同时需要记录行人相对于摄像机的距离以及行走方向。
此外,上述步骤A2中还包括对各视频帧的人体区域图进行处理的过程,具体为A2-1、对各视频帧中人体区域图进行自适应阈值处理;A2-2、对各视频帧中人体区域图进行高斯平滑滤波和形态学处理,去除该人体区域的灰度级图像中的噪声;A2-3、对各视频帧中人体区域图进行η次腐蚀运算,进一步去除噪声,并且对该人体区域图进行膨胀运算,进行边缘补偿,其中η为大于零的整数。在本发明的第一实施例中,在C++环境下调用OpenCV视觉库实现上述步骤,如图4所示,具体为第一步、采集不包括人体的背景图像ImgbackGround并通过图像加载函数cvLoadlmage ( “ImgbackGround.jpg”,-1)将该背景图像导入OpenCV视觉库中,建立背景模型,其中该图像加载函数cvLoadImage( “ImgbackGround.jpg”,-1)中的参数-1表示在导入该背景图像之前将该背景图像转化为灰度图;第二步、采集包括人体的步态视频流gaitFeature. avi并通过视频获取函数cvCreateFileCapture (“gaitFeature. avi”)将该步态视频流 gaitFeature. avi 导入该 OpenCV视觉库中;第三步、通过视频巾贞查询函数CvQueryFrameO获取该步态视频流gaitFeature.avi的当前视频巾贞FrameCur ;第四步、将该当前视频巾贞FrameCur转化为灰度图像,并通过函数CvAbsDiff(FrameCur, ImgbackGround, frameForgeground)对当前视频巾贞 FrameCur 与背景图像ImgbackGround进行差分运算,从而获得人体区域的灰度级图像frameForgeground ;第五步、通过函数cvAdaptiveThresholde O对该人体区域的灰度级图像frameForgeground进行自适应阈值处理;第六步、设置函数cvSmoothO的参数smoothtype为CV_GAUSSIAN,通过该函数cvSmoothO对该人体区域的灰度级图像进行高斯平滑滤波和形态学处理,去除该人体区域的灰度级图像中的噪声;第七步、通过函数cvErode O对该人体区域的灰度级图像进行η次腐蚀运算,进一步消除噪声,并且通过函数cvDilate O对该人体区域的灰度级图像进行膨胀运算,进行边缘补偿,其中η为大于零的整数,可以实际实验情况自行选择。A3、将人体区域图转换为人体轮廓线图,具体的步骤为
A3-1、对人体区域图进行边缘检测,从而获得人体边缘图像;A3-2、对人体边缘图像进行查找轮廓运算如果像素点在表示人体可运动部分的轮廓线上,则将该像素点的像素值设置为1,否则将该像素点的像素值设置为0 ;A3-3、查找人体边缘图像的外部轮廓,进行多边形逼近,使得顶点数目减少后接近人体真实轮廓,并且绘制出人体外部轮廓线,从而获得人体轮廓线图。本发明将人体可运动部分视为刚体,由于刚体的轮廓信息就足以表示人体的步态特征,因此本发明去掉刚体内部像素信息,只保留人体轮廓线,这样的人体二值轮廓线图与人体区域图相比,数据压缩率很高,可节约存储空间。在本发明的第一实施例中,在C++环境下调用OpenCV视觉库实现上述步骤,如图5所示,具体为
第一步、通过边缘检测函数cvCannyO对人体区域图进行边缘检测,从而获得人体边缘图像ImgCanny ;第二步、通过轮廓查找函数cvFindContours ()对人体边缘图像ImgCanny进行查找轮廓运算,其中将该轮廓查找函数cvFindContours ()的内参数mode设置为CV_RETR_EXTERNAL (即只检测出最外部轮廓),内参数method设置为CV_CHAIN_C0DE (即用Freeman链码输出轮廓);第三步、通过逼近多边函数cvApproxPoly ()对查找人体边缘图像ImgCanny的外部轮廓,进行多边形逼近,使得顶点数目减少后接近人体真实轮廓,并且通过轮廓绘制函数cvDrawContours ()绘制出人体外部轮廓线,从而获得人体轮廓线图1mgContours。A4、在采集步态视频流时,由于摄像机焦距不同,摄像速率不同等诸多因素会造成人体在不同图像上的位置和大小存在很大差别,因此为了以相同的标准表示每个人的步态特征,便于快速步态识别,本发明对人体轮廓线图进行标准化处理,具体的步骤为A4-1、确定在该人体轮廓线图中仅包括人体轮廓的最小矩形框图f (X,y),并且计算出该最小矩形框图f(x,y)的像素点总数NXM,其中N表示该最小矩形框图f(x,y)中每行的像素点个数;A4-2、由于目前人体的身高大多不超过2m,因此按照缩放比例a= 对该最
2000/V
小矩形框图f(x,y)进行尺寸缩放,其中h表示身高(单位为mm),则尺寸缩放后,该最小矩形框图'(X' , y')中X' =ax, y' = ay,由N'来表示尺寸缩放后,该最小矩形框图f' U丨,Jr )中每行的像素点个数。A4-3、沿着直线y' =y'。,确定在人体轮廓上相距最近的两个点(x' y/ c)和(X' 2, J1。),这两个点对应于人体颈部最细的位置,其中y'。G
,round ()为取整运算;A4-4、根据公式Xe计算出人体颈部最细位置处的中轴线X'。,并且以该
中轴线X'。为对称轴,在该最小矩形框图f' U' ,y')的左右和上部添加像素值为0的像素点,将该最小矩形框图f' U' ,Jr )缩放至标准的尺寸,从而实现人体轮廓线图的标准化。本发明以人体颈部最细位置处的中轴线X'。为对称轴对人体轮廓部分进行缩放,既保持了每个人身高与步幅的比例,也保留了身高信息。在本发明的第一实施例中,在C++环境下调用OpenCV视觉库实现上述步骤,如图5所示,具体为第一步、通过矩形边界函数cvBoundingRect O获取人体轮廓线图1mgContours中包含人体轮廓部分的最小矩形框Rectl,其中该最小矩形框Rectl包含的信息有矩形框起始坐标(X,y)以及长宽(height, width),则该最小矩形框Rectl的像素点总数为Rectl.height*Rectl. width ;第二步、通过图像截取函数cvGetSubRect O从人体轮廓线图1mgContours中截取出人体轮廓部分并保存为ImgContourl ;第三步、通过尺寸缩放函数cvReSize O将人体轮廓部分ImgConTourl进行尺寸缩放为100 X 64,从而获得标准化后的人体轮廓线图1mgConTour2。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
权利要求
1.一种快速步态识别方法,其特征在于包括以下步骤 51、建立由步态特征组成的步态特征数据库,其中每一步态特征对应于一个人员,且每一步态特征均包括5个分量个人编号、身高、性别、年龄和步态信息文件指针,每一步态信息文件指针对应于一个步态信息分量; 52、采集待识别人体的身高,并获取待识别人体的步态信息分量; 53、根据该待识别人体的身高,对该步态特征数据库中的人员进行筛选; 54、根据该待识别人体的性别和年龄,对该步态特征数据库中的人员进行进一步筛选; 55、分别计算出该待识别人体的步态信息分量与上述筛选出的各人员的步态信息分量之间的欧几里德距离,并将欧几里德距离最小的人员识别为该待识别人体。
2.根据权利要求I所述的快速步态识别方法,其特征在于在所述步骤SI中,该身高h通过直尺测量获取,单位精确至毫米mm ;该性别s直接输入,由O表示男性,I表示女性;该年龄a根据当前日期与出生日期的差值确定。
3.根据权利要求I所述的快速步态识别方法,其特征在于所述步骤SI中在获取该步态信息文件指针*P时首先获取步态信息分量,再建立与该步态信息分量对应的步态信息文件指针*P ; 所述步骤SI和步骤S2中在获取步态信息分量时,均按照以下步骤执行 Al、采集包括人体的步态视频流以及不包括人体的背景图像; A2、将该步态视频流中的各视频帧以及该背景图像分别转换为灰度图像,并将该步态视频流中各视频帧与该背景图像分别做差分运算,从而获得各视频帧的人体区域图; A3、将该人体区域图转换为人体轮廓线图; A4、对该人体轮廓线图进行标准化处理; A5、将标准化后的人体轮廓线图转换为时空能量图,并将该时空能量图作为步态信息分量。
4.根据权利要求3所述的快速步态识别方法,其特征在于所述步骤A2还包括对各视频帧的人体区域图进行处理的过程 A2-1、对各视频帧中人体区域图进行自适应阈值处理; A2-2、对各视频帧中人体区域图进行高斯平滑滤波和形态学处理,去除该人体区域的灰度级图像中的噪声; A2-3、对各视频帧中人体区域图进行η次腐蚀运算,进一步去除噪声,并且对该人体区域图进行膨胀运算,进行边缘补偿,其中η为大于零的整数。
5.根据权利要求3所述的快速步态识别方法,其特征在于所述步骤A3由以下步骤组成 Α3-1、对人体区域图进行边缘检测,从而获得人体边缘图像; Α3-2、对人体边缘图像进行查找轮廓运算如果像素点在表示人体可运动部分的轮廓线上,则将该像素点的像素值设置为1,否则将该像素点的像素值设置为O ; Α3-3、查找人体边缘图像的外部轮廓,进行多边形逼近,使得顶点数目减少后接近人体真实轮廓,并且绘制出人体外部轮廓线,从而获得人体轮廓线图。
6.根据权利要求3所述的快速步态识别方法,其特征在于所述步骤Α4由以下步骤组成 A4-1、确定在该人体轮廓线图中仅包括人体轮廓的最小矩形框图f(x,y),并且计算出该最小矩形框图f(x,y)的像素点总数NXM,其中N表示该最小矩形框图f(x,y)中每行的像素点个数; A4-2、按照缩放比例对该最小矩形框图f (x,y)进行尺寸缩放,其中h表示身
全文摘要
本发明提出了一种快速步态识别方法,属于步态识别领域。该方法中步态特征包括5个分量,首先通过身高筛选,然后通过性别年龄筛选,最后通过步态信息分量筛选,将身份识别问题逐层分解,采用决策级信息融合的策略,提高了步态识别的速度;步态信息分量以步态信息文件指针的方式存储至步态特征数据库中,将步态识别问题完全转换成了数据库查询问题,可以通过该步态信息文件指针快速查找到对应的步态信息分量,由此进一步提高了步态识别的速度。此外,在获取步态信息分量过程中将人体区域图转换为人体轮廓线图,提高了数据压缩率,节约了存储空间,并且将人体轮廓线图转换为时空能量图,以时空能量图作为步态新型分量,提高了步态识别的精确度。
文档编号G06K9/00GK102982323SQ201210552339
公开日2013年3月20日 申请日期2012年12月19日 优先权日2012年12月19日
发明者李校林, 张天永, 朱闯, 何策 申请人:重庆信科设计有限公司