专利名称:一种人体检测方法和系统的制作方法
技术领域:
本发明涉及模式识別领域,尤其涉及一种人体检测方法和系统。
背景技术:
人体检测是计算机视觉领域的一个重要研究课题,作为智能^L频分析的 前端步骤,其在智能监控、驾驶员辅助系统、基于内容的视频检索、和高级 人机接口等方面具有重要的应用价值。人体检测的主要目标就是在静态图像 或者运动视频中,实现人体目标的自动检测。依据对人体知识的利用方式, 人体检测技术分为两类基于特征的人体检测和基于模式分类的人体检测。
模型的知识,把人体检测看作一个模式分类的问题。
现有的基于模式分类的人体检测技术,以基于支持向量机(SVM, support vector machine)和梯度直方图(HOG, histogram of gradient)的方法效 果最佳。支持向量机是一种广泛使用的分类器,该分类器具有较佳的泛化能 力。但是,该方法的一个重要的缺陷是速度太慢,无法达到实际使用的要求。 该方法速度慢的最重要原因是因为为了检测到不同大小和不同位置的人体, 需要对图像放缩并且对每个位置进行判定,由于处于不同位置的窗口的HOG 特征不同,因而需要多次计算HOG特征,从而使得算法速度很隄。
发明内容
本发明针对人体检测的现有技术中基于窗口方法需要多次计算同 一类特 征从而造成运算量大和运算复杂度高的不足,提供了一种人体检测方法和系 统。
9在本发明的第一方面,提供了一种人体检测方法,包括步骤提取样本 图像中所有宽为第一宽度,高为第一高度的第一矩形区域边缘方向直方图特 征;根据所述所有第一矩形区域边缘方向直方图特征,利用分类器训练算法, 训练得到人体分类器;根据缩放因子把原始待检测图像缩放为 一 系列尺度的 待检测图像;提取所述一系列尺度的待检测图像中所有宽为第一宽度,高为 第一高度的第二矩形区域边缘方向直方图特征;利用训练得到的所述人体分 类器对所述所有第二矩形区域的边缘方向直方图特征进行判定,检测出所述 原始待检测图像中的人体位置候选区域;对所述人体位置候选区域进行后处 理,检测出所述原始待检测图像中的人体位置区域。
进一步地,所述提取样本图像中所有宽为第一宽度,高为第一高度的第 一矩形区域边缘方向直方图特征包括用所述宽是第一宽度,高是第一高度 的矩形区域在水平和垂直方向遍历所述样本图像,划分得到所述所有第一矩 形区域,把所述每一个第一矩形区域划分为四个大小相同,宽是第二宽度, 高是第二高度,水平和垂直方向两两相邻的第三矩形区域;采用边缘方向直
方图特征的计算方法,得到所述所有第三矩形区域的边缘方向直方图特征, 把所述每一个第 一矩形区域中的四个第三矩形区域的边缘方向直方图特征首 尾依次相连,得到所述每一个第一矩形区域的特征向量,把所述每一个第一 矩形区域的特征向量作为所述每一个第 一矩形区域边缘方向直方图特征,或 者对所述特征向量进行归 一化得到所述每一个第 一矩形区域边缘方向直方图 特征。
进一步地,所述提取一系列尺度的待检测图像中所有宽为第一宽度,高 为第一高度的第二矩形区域边缘方向直方图特征包括:用所述宽是第一宽度, 高是第一高度的矩形区域在水平和垂直方向遍历所述一系列尺度的待检测图 像,划分得到所述所有第二矩形区域;把所述每一个第二矩形区域划分为四 个大小相同,宽是第二宽度,高是第二高度,水平和垂直方向两两相邻的第 四矩形区域;采用边缘方向直方图特征的计算方法,得到所述所有第四矩形 区域的边缘方向直方图特征,把所述每一个第二矩形区域中的四个第四矩形 区域的边缘方向直方图特征首尾依次相连,得到所述每一个第二矩形区域的 特征向量,把所述每一个第二矩形区域的特征向量作为所述每一个第二矩形区域边缘方向直方图特征,或者对所述特征向量进行归 一化得到所述每一个 第二矩形区域边缘方向直方图特征。
在本发明的第二方面,提供了一种人体检测系统,包括待检测图像缩 放模块,用于根据缩放因子把原始待检测图像縮放为 一系列尺度的待检测图 像;边缘方向直方图特征提取模块,用于提取输入样本图像中宽是第一宽度, 高是第 一 高度的所有第 一矩形区域的边缘方向直方图特征,以及用于提取所 述待检测图像缩放模块输出的一系列尺度的待检测图像中宽是第一宽度,高 是第一高度的所有第二矩形区域的边缘方向直方图特征;人体分类器训练模 块,用于根据所述边缘方向直方图特征提取^^莫块输出的所有第一矩形区域的 边缘方向直方图特征,利用分类器训练算法,训练得到人体分类器;人体分 类模块,用于利用所述人体分类器训练模块输出的人体分类器对所述边缘方 向直方图特征提^^莫块输出的所有第二矩形区域的边缘方向直方图特征进行 判定,检测出所述原始待检测图像中的人体位置候选区域;人体分类后处理 模块,用于对所述人体分类模块输出的人体位置候选区域进行后处理,检测 出所述原始待检测图像中的人体位置区域。
进一步地,所述边缘方向直方图特征提取模块进一步包括矩形区域划 分模块,用于用所述宽是第一宽度,高是第一高度的矩形区域在水平和垂直 方向遍历所述样本图像和一 系列的待检测图像,分别划分得到所述所有第一 矩形区域和第二矩形区域,把所述每一个第一矩形区域和每一个第二矩形区 域分别划分为四个大小相同,宽是第二宽度,高是第二高度,水平和垂直方 向两两相邻的第三矩形区域和第四矩形区域;边缘方向直方图特征计算模块, 用于计算所述矩形区域划分模块输出的所有第三矩形区域和所有第四矩形区 域的边缘方向直方图特征,并且把所述每一个第一矩形区域中的四个第三矩 形区域的边缘方向直方图特征首尾依次相连,得到所述每一个第一矩形区域 的特征向量,把所述每一个第 一矩形区域的特征向量作为所述每一个第 一矩 形区域边缘方向直方图特征,或者对所述每一个第一矩形区域的特征向量进 行归一化得到所述每一个第一矩形区域边缘方向直方图特征,以及把所述每 一个第二矩形区域中的四个第四矩形区域的边缘方向直方图特征首尾依次相
连,得到所述每一个第二矩形区域的特征向量,把所述每一个第二矩形区域的特征向量作为所述每一个第二矩形区域边缘方向直方图特征,或者对所述 每一个第二矩形区域的特征向量进行归一化得到所述每一个第二矩形区域边
缘方向直方图特征。
本发明提供的 一种人体检测方法和系统,采用基于特征的思路计算图像
上所有位置处的HOG特征,然后对得到的HOG特征,采用训练好的模型进 行判定。由于对于图像只需要计算一次HOG特征,因而能够降低运算量, 提高速度。
下面结合附图对本发明的具体实施方式
做进一步的详细说明,附图中 图1是本发明一实施例的人体检测方法的流程图; 图2是本发明一实施例中6个方向的无符号离散化边缘方向的示意图; 图3是本发明一实施例的人体检测系统的结构框图。
具体实施例方式
图像中的人体轮廓和背景交界处具有强烈的边缘,现有的人体检测算法 已经证明,人体轮廓和背景交界处的边缘是进行人体检测的重要信息;而单 一像素点的梯度,并没有很强的表示能力,此外,对于噪声和不同人人体姿 态外观的变化也比较敏感。本发明采用矩形区域的归一化边缘方向梯度直方 图(HOG, histogram of gradient)分布作为特征来构建分类器。
为了避免多次计算边缘方向直方图特征,本发明只采用 一种大小区域的 特征定义方式,这样,对图像首先计算一次边缘方向直方图特征,则提取各 个位置的矩形窗口的边缘方向直方图特征时,不再需要为每个矩形窗口单独 计算一次边缘方向直方图特征。如果仅仅采用一个矩形区域的边缘方向直方 图特征,由于没有利用相邻区域的边缘方向直方图特征,得到的效果并不是 很好。本发明采用基于四区域边缘方向直方图归 一化特征作为最终的矩形区 域HOG特征定义把图像上的矩形区域划分为四个大小相同,并且水平和 垂直方向两两相邻的较小的矩形区域,分别对这四个4支小的矩形区域求取边缘方向直方图,然后将四个较小的矩形区域求得的边缘方向直方图首尾依次 连接,得到一个特征向量,把该特征向量作为矩形区域边缘方向直方图特征,
或者对该向量采用2范数或者1范数进行归一化,得到矩形区域边缘方向直 方图特征。
图1是本发明一实施例的人体检测方法的流程图。如图1所示,人体检 测的方法包^r:
101 )提取样本图像中所有宽为第一宽度,高为第一高度的第一矩形区域 边缘方向直方图特征。
本步骤进一步包括步骤
1011)用宽是第一宽度,高是第一高度的矩形区域在水平和垂直方向遍历 样本图像,划分得到所有第一矩形区域,把每一个第一矩形区域划分为四个 大小相同,宽是第二宽度,高是第二高度,水平和垂直方向两两相邻的第三 矩形区域。
假定人体模型的高度为/f",宽度为『M,割取包含人体区域的图像放 缩到模型大小作为正样本,割取不包含人体区域的图像放缩到模型大小作为 反样本,则用宽是2^,高是2i/,的矩形区域在水平和垂直方向遍历宽是『^, 高是//#,的正反样本图像。把正反样本图像中得到的每一个宽是2『f,高是 2A的第一矩形区域,划分为四个大小相同,宽是K,高是ZZ,,并且水平和 垂直方向两两相邻的第三矩形区域。
上述^和^是设定常数,需要满足2『)W样本,且2ifJ//样本。该宽是『样本, 高是H样本的样本图像中共包含(仏羊本-2/fr+l)x(『"-2『r +1)个第一矩形区域。 本发明中称2『,为第一宽度,2仏为第一高度,称^为第二宽度,//,为第二 高度。
1012)采用边缘方向直方图特征的计算方法,得到所有第三矩形区域的 边缘方向直方图特征,把每一个第一矩形区域中的四个第三矩形区域的边缘 方向直方图特征首尾依次相连,得到每一个第一矩形区域的特征向量,把每 一个第一矩形区域的特征向量作为每一个第一矩形区域边缘方向直方图特 征,或者对每一个第一矩形区域的特征向量进行归一化得到每一个第一矩形 区域边缘方向直方图特征。
13本步骤中,采用边缘方向直方图特征的计算方法,计算得到宽是『^,高是H^的样本图像中所有宽是^,高是Z/,的第三矩形区域的边缘方向直方
图特征,把每一个宽是2ff;,高是2i/,的第一矩形区域中的四个宽是^,高是&的第三矩形区域的边缘方向直方图特征首尾依次相连,得到每一个第一矩形区域的特征向量,把每一个第 一矩形区域的特征向量作为每一个第 一矩形区域边缘方向直方图特征,或者对每一个第一矩形区域的特征向量进行归一化得到每一个第 一矩形区域边缘方向直方图特征。
进一步,归一化方法是采用对每一个第一矩形区域的特征向量的每个值
都除以该特征向量的1范数或2范数,从而得到每一个第一矩形区域图像归
一化边缘方向直方图特征。
上述边缘方向直方图特征的计算方法的步骤包括
10121)计算样本图像的各像素点的水平边缘和垂直边缘。
计算宽是『^ ,高是//^的样本图像的各像素点的水平边缘和垂直边缘。像素点边缘的求取方法有很多种,常用的如sobel或prewitt算子
_-101 一 -I_2 -r
-20200 0
一l0112 1
左侧的矩阵S1为sobel水平方向的检测模板,该矩阵用于计算中心处元素A (即第2行第2列的元素)的水平边缘,用EH(A)表示,右侧的矩阵S2为sobel垂直方向的检测模板,用于计算A点的垂直边缘,用EV(A)表示。
10122)根据样本图像的各像素点的水平边缘和垂直边缘,得到样本图像的各像素点的边缘强度和离散化边缘方向。
根据步骤10121 )中计算得到的各像素点的水平边缘EH和垂直边缘EV,进一步计算各像素点的边缘方向,用ED表示,和边缘强度,用EI表示。采用无符号的边缘方向定义,即边缘方向的范围是0 180度,此时相差180度的边缘方向为同一个方向。对无符号的边缘方向进行离散化,即将180度的范围等分为N个区间。图2是本发明一实施例中6个方向的无符号离散化边缘方向的示意图,即N-6的情况,此时,边缘方向属于同一个区间范围内的像素点,它们离散化边缘方向的值相同,用NED表示。边缘强度的计算方式有多种,例如El-V五i/2 +£K2或EI-I五//1 +1 £K I ,
由图2可知,像素点的无符号边缘方向ED-arceot(^),则该像素点的离散化
<formula>formula see original document page 15</formula>
边缘方向NED={i| ,S £Z)< 180*(1+1),且1=0, 1... N-1},其中arccot函数为余
N N
切函数的反函数。如果采用上述定义先计算ED,再由ED计算NED的值,由于存在开方及三角运算,计算速度较慢,可以采用下述方法快速计算得出各像素点的NED值
i) 如果EH为O,则设定此时NED为O;否则,进行ii)步骤;
ii) 初始化i-0,计算^X的值;
<formula>formula see original document page 15</formula>iii )如果1X小于等于cot(18(),i+1))的值,终止流程;否则,进行iv)步EH N
骤;
iv) i增加l,如果此时i〈N-l,则回到iii)步骤,否则终止流程。
得到的i的值即为该像素点NED的值。显然,由于上述过程中只需要进行简单的代数运算和余切函数的计算,因此计算速度大大快于采用根据NED的定义进行计算的方法。
通过上述方法,遍历宽是『#*,高是/f^的样本图像内所有的像素点,可以得到各像素点的边缘强度和离散化边缘方向。
10123 )根据样本图像的各像素点的边缘强度和离散化边缘方向,计算图像中所有宽是第二宽度,高是第二高度的矩形区域的边缘方向直方图特征。
根据宽是『样本,高是//样本的样本图像的各像素点的边缘强度和离散化边缘方向,计算样本图像内所有宽是^,高是i/,的第三矩形区域的边缘方向直方图特征。
矩形区域R的边缘方向直方图特征的第i个值的定义是该区域内所有离散化边缘方向取值为i的像素点的边缘强度的累积和,用公式表示为
<formula>formula see original document page 15</formula>
其中,P (x, y)表示区域R内第x列、y行的像素点,即坐标为(x, y)的像素点。
在计算矩阵区域的边缘方向直方图特征时,现有技术中都是采用多维积分图像的方法,本发明披露一种计算方法,该方法运算速度也很快,同时,该方法节省4艮多内存。
采用该方法计算图像中所有宽是第二宽度,高是第二高度的第三矩形区
域的边缘方向直方图特征的步骤是
101231) 计算左上顶点在图像第一行的所有宽是1,高是第二高度的矩形区域的边缘方向直方图特征。
按上述矩形区域的边缘方向直方图特征定义计算并保存样本图像中左上顶点是(/,0),宽是l,高是A的『样本个矩形区域及(/,0,l,i/,)的边缘方向直方图特征i/OG(i (/,0,l,//r)),其中"0,1,…,『样本-1;
101232) 计算左上顶点在图像除第一行以外其它行的所有宽是l,高是第二高度的矩形区域的边缘方向直方图特征。
在该样本图像中,根据左上顶点是(/力,宽是l,高是i/,的矩形区域及(/,U,A)的边缘方向直方图特征HOG(A(/,U,仏)),迭代计算得到左上顶点是("+1)的宽是1 ,高是A的矩形区域i (/,, +1,1, A)的边缘方向直方图特征+ 其中/ = 0,1,'..『样本-1, ^ = 0,1,".//样本一//,-1。具体计算
方法是^9G(W(/,a,A》和^OG(/ (/,f + l,l,i^))的差别在于,前者多了像素(/力的边缘强度值,而后者多了像素(U + Z/,)的边缘强度值。假定像素(/,/ + 乂)的离散化边缘方向是/ = ;^/)(/,/ + /^),像素(/力的离散化边缘方向是_/ = A^D(/力,则将/ZOG^(/,U,A》的第i个值加上像素("+A)的边缘强度值£"/" + /^),将i/OG(i (/,"A))的第j个值减去像素(/,0的边缘强度值£/(/力,并保持^9G(/ (/,U,A》其它离散化边缘方向上的边缘强度值不变,便得到//007(及(/,"1,1,^)),其中/ = 0,1,..『样本-1, f = 0,1广.7/样本-//广1。
101233) 计算左上顶点在图像第一列的所有宽是第二宽度,高是第二高度的矩形区域的边缘方向直方图特征。
在该样本图像中,根据左上顶点是(/力,宽是l,高是A的矩形区域/ (/,U, A)的边缘方向直方图特征Z/OG(i (/, U, Wr》,其中/ = 0,1,…,『r -1,
16《=0,1,..,//样本-计算得到左上顶点是(O,,),宽是^,高是if,的第三矩形区域及(0义『;0//,)的边缘方向直方图特征
朋G(及(O, ^『r, //r)) = Z朋G(及(/, U, ))
0化》;-1
其中/ = 0,1,..,//样本—A。
101234 )计算左上顶点在图像除第一列以外其它列的所有宽是第二宽度,高是第二高度的矩形区域的边缘方向直方图特征。
在该样本图像中,根据左上顶点是(/力,宽是^,高是仏的第三矩形区域i (/,/,f^,i^)的边缘方向直方图特征Z/CX (/ (/A^,/^)),和左上顶点是(/力,宽是l,高是A的矩形区域/ (/,/,l,^)的边缘方向直方图特征//0卿"l,i/》),迭代计算得到左上顶点是(/ + 1力,宽是^,高是i/,的第三矩阵区域^ (/ + 1义『,,^,)的边缘方向直方图特征
//0G(/ (/ + U,『r,) = //OG(及(/, f, ^ ,//》)+ i/OG(i (/ +『r, U, /f r)) - ifOG(及(/, U, A》
其中/ = 0,1,...『样本-『,—1, b0,l,…i/样本—/^。
上述实施例给出的第101232) 、 101233)和101234步都是快速计算方法,在实施例中并不全是必须的,也可以采用矩形区域的离散化边缘方向直方图特征的定义来代替其中的任何一步,从而计算矩形区域的离散化边缘方向直方图特征。比如采用实施例中的第101231)步,采用矩形区域的离散化
边缘方向直方图特征的定义来计算左上顶点是(Z + U),宽是l,高是乂的矩形区域+ 的边缘方向直方图特征HO卿/,"l风)),其中
/ = 0,1,.",『广1, ? = 0,1,".,#样本-//r,进而采用第101233)步和101234)步,计算得到各第三矩形区域的HOG特征。也可以采用矩形区域的离散化边缘方向直方图特征的定义代替第101233)和101234)步。
103 )得到样本图像的所有第一矩形区域边缘方向直方图特征后,根据所有第一矩形区域边缘方向直方图特征,利用分类器训练算法,训练得到人体分类器。
在本发明一实施例中,分类器训练算法是首先采用adaboost (自适应提升)对所有第一矩形区域边缘方向直方图特征进行特征选择,选择的准则可
17以定义为所有特征中,使得加权误差和最小的特征,然后将所有被选择的第
一矩形区域边缘方向直方图特征作为特征,采用SVM分类器训练算法进行训练得到最终的分类器。
在本发明另 一实施例中,分类器训练算法是把所有第一矩形区域的边缘方向直方图特征作为SVM的特征,采用SVM分类器训练算法进行训练,得到子SVM分类器,将该子SVM分类器的输出作为特征,并采用层次型adaboost算法进行训练,最终得到层次型的adaboost人体分类器。
105 )根据缩放因子把原始待检测图像缩放为一系列尺度的待检测图像。
根据缩放因子S把宽是『待测,高是//待测的原始待检测图像缩放为M个宽是『^xS"S高是/^双x"的一系列尺度的待检测图像,组成金字塔型待检测图像,其中m-0,l,…M-l, S是放缩因子,可以取为小于1的数,比如取为0.8。 M是正整数,其取值满足『待测x^—^『样本且i/待测xnw样本即可。
107)提取一系列尺度的待检测图像中所有宽为第一宽度,高为第一高度
的第二矩形区域边缘方向直方图特征。
本步骤进一步包括
1071) 用宽是第一宽度,高是第一高度的矩形区域在水平和垂直方向遍历一系列尺度的待检测图像,划分得到所有第二矩形区域;把每一个第二矩形区域划分为四个大小相同,宽是第二宽度,高是第二高度,水平和垂直方向两两相邻的第四矩形区域。
对所有宽是『^xS、高是/^,jxS""的一系列尺度的待检测图像,其中S是缩放因子,w-0,l,…M-l,分别采用宽是2『,,高是2i/,的矩形区域在水平和垂直方向遍历该一系列尺度的待检测图像,把所有得到的第二矩形区域划分为四个大小相同,宽是『,,高是A,水平和垂直方向两两相邻的第四矩形区域。
1072) 采用边缘方向直方图特征的计算方法,得到所有第四矩形区域的边缘方向直方图特征,把每一个第二矩形区域中的四个第四矩形区域的边缘方向直方图特征首尾依次相连,得到每一个第二矩形区域的特征向量,把每一个第二矩形区域的特征向量作为每一个第二矩形区域边缘方向直方图特
征,或者对每一个第二矩形区域的特征向量进行归一化得到每一个第二矩形区域边缘方向直方图特征。
采用边缘方向直方图特征的计算方法,计算得到宽是『,xS、高是 H,的一系列尺度的待检测图像中所有宽是^ ,高是&的第四矩形区域 的边缘方向直方图特征,其中S是缩放因子,w-0,l,…M-l,把每一个第二 矩形区域中的四个第四矩形区域的边缘方向直方图特征首尾依次相连,得到 每一个第二矩形区域的特征向量,把每一个第二矩形区域的特征向量作为每 一个第二矩形区域边缘方向直方图特征,或者对该特征向量进行归一化得到 每一个第二矩形区域边缘方向直方图特征。
进一步,归一化方法是采用对每一个第二矩形区域的特征向量的每个值 都除以该特征向量的1范数或2范数,从而得到每一个第二矩形区域图像归 一化边缘方向直方图特征。
如果在计算第 一矩形区域的边缘方向直方图特征时,采用了归一化方式, 则此时计算第二矩形区域的边缘方向直方图特征时,也采用归一化方式。否 则,如果在计算第一矩形区域的边缘方向直方图特征时,未采用了归一化方 式,即把第 一矩形区域的特征向量作为第 一矩形区域边缘方向直方图特征, 则此时计算第二矩形区域的边缘方向直方图特征时,也不采用归一化方式, 把第二矩形区域的特征向量作为第二矩形区域边缘方向直方图特征。
上述在计算所有第四矩形区域边缘方向直方图特征时,采用的算法与步 骤10121 )、 10122)和10123)的相同:只需把步骤10121 )、 10122)和10123) 中的『样本替换为『待测x,,//样本替换为/f待测xS、其中S是缩放因子, w = 0,l,".M — l。
109 )利用上述训练得到的人体分类器对所有第二矩形区域边缘方向直方 图特征进行判定,检测出原始待检测图像中的人体位置候选区域。
111 )对人体位置候选区域进行后处理,检测出原始待检测图像中的人体 位置区域。
下面再对本发明一实施例的一种人体检测系统进行详细说明。图3是本 发明一实施例的人体检测系统的结构框图。如图3所示,人体检测系统包括 待检测图形缩放模块301、边缘方向直方图特征提取模块302、人体分类器训 练模块303、人体分类模块305和人体分类后处理模块306。如图3所示,待检测图像缩放模块301用于根据缩放因子S把宽是『# , 高是H待測的原始待检测图像缩放为M个宽是『待測xS、高是/Z待测x^的一系 列尺度的待检测图像,组成金字塔型待检测图像,其中w-0,l,…M-l。
如图3所示,边缘方向直方图特征提取模块302进一步包括矩形区域划 分模块3021以及边缘方向直方图特征计算模块3022。形区域划分模块3021 用于用宽是第一宽度2^ ,高是第一高度2//,的矩形区域在水平和垂直方向遍 历输入的宽是『样本,高是i/样本的样本图像,并把每个宽是2^,高是2^的第 一矩形区域划分为四个大小相同,宽是第二宽度K,高是第二高度/f,,水平 和垂直方向两两相邻的第三矩形区域;矩形区域划分;f莫块3021还用于用宽是 第一宽度2『,,高是第一高度2i/,的矩形区域在水平和垂直方向遍历从待检测 图像缩放模块输出的宽是『#测x T ,高是x Sm的 一 系列尺度的待检测图 像,并把得到的所有宽是2『"高是2i/,的第二矩形区域划分为四个大小相同, 宽是第一宽度^,高是第一高度A,水平和垂直方向两两相邻的第四矩形区 域。其中,『待测xf ^『样本,且i/待测xS嗣2i/样本。边缘方向直方图特征计算 模块3022用于计算矩形区域划分模块3021输出的所有第三矩形区域和所有 第四矩形区域的边缘方向直方图特征,并且4巴每一个第一矩形区域中的四个 第三矩形区域的边缘方向直方图特征首尾依次相连,得到每一个第一矩形区 域的特征向量,把每一个第一矩形区域的特征向量作为每一个第一矩形区域 边缘方向直方图特征,或者对每一个第一矩形区域的特征向量进行归一化得 到每一个第一矩形区域归一化边缘方向直方图特征,以及把每一个第二矩形 区域中的四个第四矩形区域的边缘方向直方图特征首尾依次相连,得到每一 个第二矩形区域的特征向量,把每一个第二矩形区域的特征向量作为每一个 第二矩形区域边缘方向直方图特征,或者对每一个第二矩形区域的特征向量 进行归 一化得到每一个第二矩形区域归 一化边缘方向直方图特征。
进一步,.上述归一化方法是采用对特征向量的每个值都除以特征向量的 1范数或2范数,从而得到归一化边缘方向直方图特征。
如果在计算第一矩形区域的边缘方向直方图特征时,采用了归一化方式, 则计算第二矩形区域的边缘方向直方图特征时,也采用归一化方式。否则, 如果在计算第一矩形区域的边缘方向直方图特征时,未采用了归一化方式,
20即把第 一矩形区域的特征向量作为第 一矩形区域边缘方向直方图特征,则此 时计算第二矩形区域的边缘方向直方图特征时,也不采用归一化方式,把第 二矩形区域的特征向量作为第二矩形区域边缘方向直方图特征。
在本发明一实施例中,上述边缘方向直方图特征计算模块3022包括水平 边缘和垂直边缘计算模块、边缘强度和离散化边缘方向计算模块和矩形区域 边缘方向直方图特征计算模块。水平边缘和垂直边缘计算模块用于得到宽是 『,高是i/的图像的各像素点的水平边缘和垂直边缘。边缘强度和离散化边 缘方向计算模块用于根据水平边缘和垂直边缘计算模块输出的各像素点的水 平边缘和垂直边缘,得到图像的各像素点的边缘强度和离散化的边缘方向。 矩形区域边缘方向直方图特征计算模块用于根据边缘强度和离散化边缘方向 计算模块输出的各像素点的边缘强度和离散化边缘方向,计算宽是『,高是 i/的图像中所有宽是第二宽度^,高是第二高度仏的矩形区域的边缘方向直 方图特征。其中,宽是『,高是//的图像可以代表宽是『样本,高是Z/样本的样 本图像,也可以代表宽是『待测x Sm ,高是xSm的一 系列尺度的待检测图像。
在本发明一实施例中,上述矩形区域边缘方向直方图特征计算模块进一 步包括第一计算模块、第二计算模块、第三计算模块和第四计算模块。
第一计算模块用于计算左上顶点在图像第一行的所有宽是l,高是第二 高度的矩形区域的边缘方向直方图特征,即用于计算图像中左上顶点是(/,0), 宽是1,高是i/,的W个矩形区域及(/,0,1,//,)的边缘方向直方图特征 ^X7(i (/,0,1,》,其中/ = 0,1,…,『-1 。
第二计算模块用于在该宽是『,高是/f的图像中,根据左上顶点是(/力,
宽是1 ,高是的矩形区域i (/,/,l,A)的边缘方向直方图特征 //OG(/ (/,/,1,//,)),迭代计算得到左上顶点是(/,"l),宽是l,高是/f,的矩形 区域及(/,"l风)的边缘方向直方图特征/fO卿/,"l,1,/^)),其中 / = 0,1,...『-1,纟=0,1,...//-^-1的当像素+ 的离散化边缘方向是 / = A D(/,f + i^),像素(/,《)的离散化边缘方向是y-JV五D(/力,则将 i/OG(/ (M,1,/^))的第i个值加上像素(/,"A)的边缘强度值五/(/,"//;),将
//OG(/ (/,U,A》的第j个值减去像素(/力的边缘强度值五/("),保持 /fOG(/ (/,U,乂))其它离散化边缘方向上的边缘强度值不变,得到//(9G(/ (/,"l,1,/^))。
第三计算模块用于在该宽是『,高是//的图像中,根据左上顶点是(/力,
宽是1 ,高是的矩形区域/ (/,/,1,//,)的边缘方向直方图特征
//(9GCRCJ),计算得到左上顶点是(0力,宽是^,高是A的矩形区域 / ((U^,/^)的边缘方向直方图特征,其中/ = 0,1,...,^-1, f = 0,l,...,//-A的
腦,斌,//》S腦,风)),一i,…// —a。
0化 ;-1
第四计算模块用于在该宽是『,高是〃的图像中,根据左上顶点是(/力, 宽是『,,高是//,的矩形区域^(/, ,^,//,)的边缘方向直方图特征的
i/cx;(/ (/,/,『r,/o)和左上顶点是(/力,宽是i,高是/i;的矩形区域及(/,u,/^) 的边缘方向直方图特征/ZOG(及(/,U,/^)),迭代计算得到左上顶点是(z + i力, 宽是,,,高是/^的矩阵区域/ (/+1,"『,,//,)的边缘方向直方图特征
//(7G(及(/ +1, f, , i/,) = ZfOG(及(/, ^ ^,//,)) + i/OG(及(/ + ^ , u, a)) — //OG(及(/, u, a)) 其中/^0,l,…,『-『广l, ? = 0,1,...,//-7/,。
上述宽是『,高是Z/的图像可以代表宽是『样本,高是//样本的样本图像, 也可以代表宽是『,xSm ,高是//, xSm的一系列尺度的待检测图像。
如图3所示,人体分类器训练模块303用于根据边缘方向直方图特征提 取模块302输出的所有第 一矩形区域的边缘方向直方图特征,利用分类器训 练算法,训练得到人体分类器。
在本发明一实施例中,分类器训练算法是首先采用adaboost算法对所有 第 一矩形区域边缘方向直方图特征进行特征选择,选择的准则可以定义为所 有特征中,使得加权误差和最小的特征,然后将所有被选择的第一矩形区域 边缘方向直方图特征作为特征,采用SVM分类器训练算法进行训练得到最 终的分类器。
在本发明另一实施例中,分类器训练算法是把所有第一矩形区域的边缘 方向直方图特征作为SVM的特征,采用SVM分类器训练算法进行训练,得 到子SVM分类器,将该子SVM分类器的输出作为特征,并采用层次型 adaboost算法进行训练,最终得到层次型的adaboost人体分类器。
22如图3所示,人体分类模块304用于利用人体分类器训练模块303输出 的人体分类器对边缘方向直方图特征提取模块302输出的所有第二矩形区域 的边缘方向直方图特征进行判定,检测出原始待检测图像中的人体位置候选 区域。
如图3所示,人体分类后处理模块305用于对人体分类模块304输出的 人体位置候选区域进行后处理,检测出原始待检测图像中的人体位置区域。
显而易见,在不偏离本发明的真实精神和范围的前提下,在此描述的本 发明可以有许多变化。因此,所有对于本领域技术人员来说显而易见的改变, 都应包括在本权利要求书所涵盖的范围之内。
权利要求
1、一种人体检测方法,其特征在于,包括步骤提取样本图像中所有宽为第一宽度,高为第一高度的第一矩形区域边缘方向直方图特征;根据所述所有第一矩形区域边缘方向直方图特征,利用分类器训练算法,训练得到人体分类器;根据缩放因子把原始待检测图像缩放为一系列尺度的待检测图像;提取所述一系列尺度的待检测图像中所有宽为第一宽度,高为第一高度的第二矩形区域边缘方向直方图特征;利用训练得到的所述人体分类器对所述所有第二矩形区域的边缘方向直方图特征进行判定,检测出所述原始待检测图像中的人体位置候选区域;对所述人体位置候选区域进行后处理,检测出所述原始待检测图像中的人体位置区域。
2、 如权利要求1所述的方法,其特征在于,所述提取样本图像中所有 宽为第一宽度,高为第一高度的第一矩形区域边缘方向直方图特征进一步包 括用所述宽是第一宽度,高是第一高度的矩形区域在水平和垂直方向遍历 所述样本图像,划分得到所述所有第一矩形区域,^^所述每一个第一矩形区 域划分为四个大小相同,宽是第二宽度,高是第二高度,水平和垂直方向两 两相邻的第三矩形区域;采用边缘方向直方图特征的计算方法,得到所述所有第三矩形区域的边 缘方向直方图特征,把所述每一个第一矩形区域中的四个第三矩形区域的边 缘方向直方图特征首尾依次相连,得到所述每一个第一矩形区域的特征向量, 所述每一个第一矩形区域的特征向量作为所述每一个第一矩形区域边缘方向 直方图特征,或者对所述特征向量进行归一化得到所述每一个第一矩形区域 边缘方向直方图特征。
3、 如权利要求1所迷的方法,其特征在于,所述提取一系列尺度的待 检测图像中所有宽为第一宽度,高为第一高度的第二矩形区域边缘方向直方图特征进一步包括用所述宽是第一宽度,高是第一高度的矩形区域在水平和垂直方向遍历 所述一系列尺度的待检测图像,划分得到所述所有第二矩形区域;把所述每 一个第二矩形区域划分为四个大小相同,宽是第二宽度,高是第二高度,水 平和垂直方向两两相邻的第四矩形区域;采用边缘方向直方图特征的计算方法,得到所述所有第四矩形区域的边 缘方向直方图特征,把所述每一个第二矩形区域中的四个第四矩形区域的边 缘方向直方图特征首尾依次相连,得到所述每一个第二矩形区域的特征向量, 所述每一个第二矩形区域的特征向量作为所述每一个第二矩形区域边缘方向 直方图特征,或者对所述特征向量进行归一化得到所述每一个第二矩形区域 边缘方向直方图特4i。
4、 如权利要求1所述的方法,其特征在于,所述分类器训练算法是首 先采用adaboost算法对所述所有第一矩形区域边缘方向直方图特征进行特征 选择,然后采用所述选择得到的第一矩形区域边缘方向直方图特征作为SVM 分类器的特征,并训练得到最终的人体分类器。
5、 如权利要求1所述的方法,其特征在于,所述分类器训练算法是把 所述所有第一矩形的边缘方向直方图特征作为SVM分类器的特征,训练得 到子SVM分类器,将所述子SVM分类器的输出作为特征,采用层次型 adaboost算法进行训练,得到层次型adaboost人体分类器。
6、 如权利要求2或3所述的方法,其特征在于,所述边缘方向直方图 特征的计算方法包括计算图像的各像素点的水平边缘和垂直边缘;根据所述各像素点的水平边缘和垂直边缘,得到所述图像的各像素点的 边缘强度和离散化边缘方向;根据所述图像的各像素点的边缘强度和离散化边缘方向,计算所述图像 中所有宽是第二宽度,高是第二高度的矩形区域的边缘方向直方图特征。
7、 如权利要求2或3所述的方法,其特征在于,所述归一化是采用对 所述特征向量的每个值除以所述特征向量的1范数或2范数。
8、 如权利要求6所述的方法,其特征在于,所述根据图像的各像素点的水平边缘和垂直边缘,得到所迷图像的各像素点的边缘强度和离散化边缘方向进一步包括计算左上顶点在所述图像第一行的所有宽是1,高是第二高度的矩形区 域的边缘方向直方图特征;计算左上顶点在所述图像除第一行以外其它^f亍的所有宽是1,高是第二 高度的矩形区域的边缘方向直方图特征;计算左上顶点在所述图像第一列的所有宽是第二宽度,高是第二高度的 矩形区域的边缘方向直方图特征;计算左上顶点在所述图像除第一列以外其它列的所有宽是第二宽度,高 是第二高度的矩形区域的边缘方向直方图特征。
9、 如权利要求8所述的方法,其特征在于,所述计算左上顶点在图像 除第一行以外其它行的所有宽是1,高是第二高度的矩形区域的边缘方向直 方图特征进一步包括把左上顶点在所述图像前一行同一列的宽是1,高是第二高度的矩形区 域的边缘方向直方图特征中序号为前一行同 一 列像素离散化边缘方向的特征 值,与所述前一行同一列像素的边缘强度值相减,得到左上顶点在所述图像 当前行同一列的宽是1,高是所述第二高度的矩形区域边缘方向直方图特征 中序号为所述同一行前一列像素离散化边缘方向的特征值;把左上顶点在所 述图像前一行同一列的宽是1,高是所述第二高度的矩形区域边缘方向直方 图特征中序号为前一行加上所述第二高度、同 一列的像素离散化边缘方向的 特征值,与所述前一行加上所述第二高度、同一列的像素边缘强度值相加, 得到左上顶点在所述图像当前行同一列的宽是1,高是所述第二高度的矩形 区域边缘方向直方图特征中序号为所述前一行加上所述第二高度、同一列的 像素离散化边缘方向的特征值;左上顶点在所述图像当前行同一列的宽是1, 高是所述第二高度的矩形区域边缘方向直方图特征的其它值等于左上顶点在 所述图像前一行同一列的宽是1,高是所述第二高度的矩形区域边缘方向直 方图特征的对应值。
10、 如权利要求8所述的方法,其特征在于,所述计算左上顶点在图像 第一列的所有宽是第二宽度,高是第二高度的矩形区域的边缘方向直方图特征进一步包括把左上顶点依次在所述图像同 一行第 一列到同 一行第二宽度列的所述第 二宽度个宽是1,高是第二高度的矩形区域的边缘方向直方图特征相加,得 到左上顶点在所述图像同一行第一列的宽是所述第二宽度,高是所述第二高 度的矩形区域的边缘方向直方图特征。
11、 如权利要求8所述的方法,其特征在于,所述计算左上顶点在图像 除第一列以外其它列的所有宽是第二宽度,高是第二高度的矩形区域的边缘 方向直方图特征进一 步包括把左上顶点在所述图像同一行前一列的宽是第二宽度,高是第二高度的 矩形区域的边缘方向直方图特征加上左上顶点在所述图像同一行所述第二宽 度加上前一列的宽是1,高是所述第二高度的矩形区域的边缘方向直方图特 征,再减去左上顶点在所述图像同一行前一列的宽是1,高是所述第二高度 的矩形区域的边缘方向直方图特征,得到左上顶点在所述图像同 一行当前列 的宽是所述第二宽度,高是所述第二高度的矩形区域的边缘方向直方图特征。
12、 一种人体检测系统,其特征在于,包括待检测图像缩放模块,用于根据缩放因子把原始待检测图像缩放为一系 列尺度的待检测图像;边缘方向直方图特征提取模块,用于提取输入样本图像中宽是第一宽度, 高是第一高度的所有第一矩形区域的边缘方向直方图特征,以及用于提取所 述待检测图像缩放模块输出的一系列尺度的待检测图像中宽是第一宽度,高 是第 一 高度的所有第二矩形区域的边缘方向直方图特征;人体分类器训练模块,用于根据所述边缘方向直方图特征提取模块输出 的所有第一矩形区域的边缘方向直方图特征,利用分类器训练算法,训练得 到人体分类器;人体分类模块,用于利用所述人体分类器训练模块输出的人体分类器对 所述边缘方向直方图特征提取模块输出的所有第二矩形区域的边缘方向直方 图特征进行判定,检测出所述原始待检测图像中的人体位置候选区域;人体分类后处理模块,用于对所述人体分类模块输出的人体位置候选区域进行后处理,得到所述原始待检测图像中的人体位置区域。
13、 如权利要求12所述的系统,其特征在于,所述边缘方向直方图特 征提取模块进一步包括矩形区域划分才莫块,用于用所述宽是第一宽度,高是第一高度的矩形区 域在水平和垂直方向遍历所述样本图像和一系列的待检测图像,分别划分得 到所述所有第 一矩形区域和第二矩形区域,把所述每一个第 一矩形区域和每 一个第二矩形区域分别划分为四个大小相同,宽是第二宽度,高是第二高度, 水平和垂直方向两两相邻的第三矩形区域和第四矩形区域;边缘方向直方图特征计算模块,用于计算所述矩形区域划分模块输出的 所有第三矩形区域和所有第四矩形区域的边缘方向直方图特征,并且把所述 每一个第 一矩形区域中的四个第三矩形区域的边缘方向直方图特征首尾依次 相连,得到所述每一个第一矩形区域的特征向量,所述每一个第一矩形区域 的特征向量作为所述每一个第 一矩形区域边缘方向直方图特征,或者对所述 每一个第一矩形区域的特征向量进行归一化得到所迷每一个第一矩形区域边 缘方向直方图特征,以及把所述每一个第二矩形区域中的四个第四矩形区域 的边缘方向直方图特征首尾依次相连,得到所述每一个第二矩形区域的特征 向量,所述每一个第二矩形区域的特征向量作为所述每一个第二矩形区域边 缘方向直方图特征,或者对所述每一个第二矩形区域的特征向量进行归一化 得到所述每一个第二矩形区域边缘方向直方图特征。
14、 如权利要求12所述的系统,其特征在于,所述分类器训练算法是 首先采用adaboost算法对所述所有第一矩形区域边缘方向直方图特征进行特 征选择,然后采用所述选择得到的第 一矩形区域边缘方向直方图特征作为 SVM分类器的特征,并训练得到最终的人体分类器。
15、 如权利要求12所述的系统,其特征在于,所述分类器训练算法是 首先把所述所有第一矩形的边缘方向直方图特征作为SVM分类器的特征, 训练得到子SVM分类器,将所述子SVM分类器的输出作为特征,采用层次 型adaboost算法进行训练,得到层次型adaboost人体分类器。
16、 如权利要求13所述的系统,其特征在于,所述边缘方向直方图特 征计算模块进一步包括水平边缘和垂直边缘计算模块,用于得到图像的各像素点的水平边缘和垂直边缘;边缘强度和离散化边缘方向计算模块,用于根据所述水平边缘和垂直边 缘计算模块输出的各像素点的水平边缘和垂直边缘,得到所述图像的各像素点的边缘强度和离散化边缘方向;矩形区域边缘方向直方图特征计算模块,用于根据所述边缘强度和离散 化边缘方向计算模块输出的各像素点的边缘强度和离散化边缘方向,计算所 述图像中所有宽是第二宽度,高是第二高度的矩形区域的边缘方向直方图特 征。
17、 如权利要求13所述的系统,其特征在于,所述归一化是采用对所 述特征向量的每个值除以所述特征向量的1范数或2范数。
18、 如权利要求16所述的系统,其特征在于,所述矩形区域边缘方向 直方图特征计算模块进一步包括第一计算模块,用于计算左上顶点在所述图像第一行的所有宽是1,高 是第二高度的矩形区域的边缘方向直方图特征;第二计算模块,用于计算左上顶点在所述图像除第一行以外其它行的所有宽是1,高是第二高度的矩形区域的边缘方向直方图特征;第三计算模块,用于计算左上顶点在所述图像第一列的所有宽是第二宽 度,高是第二高度的矩形区域的边缘方向直方图特征;第四计算模块,用于计算左上顶点在所述图像除第一列以外其它列的所 有宽是笫二宽度,高是第二高度的矩形区域的边缘方向直方图特征。
19、 如权利要求18所述的系统,其特征在于,所述第二计算模块进一 步用于把左上顶点在所述图像前一行同一列的宽是1,高是第二高度的矩形区 域的边缘方向直方图特征中序号为前一行同 一 列像素离散化边缘方向的特征 值,与所述前一行同一列像素的边缘强度值相减,得到左上顶点在所述图像 当前行同一列的宽是1,高是所述第二高度的矩形区域边缘方向直方图特征 中序号为所述同一行前一列像素离散化边缘方向的特征值;把左上顶点在所述图像前一行同一列的宽是1,高是所述第二高度的矩形区域边缘方向直方 图特征中序号为前一行加上所述第二高度、同 一列的像素离散化边缘方向的 特征值,与所述前一行加上所述第二高度、同一列的像素边缘强度值相加, 得到左上顶点在所述图像当前行同一列的宽是1,高是所述第二高度的矩形 区域边缘方向直方图特征中序号为所述前一行加上所述第二高度、同一列的像素离散化边缘方向的特征值;左上顶点在所述图像当前行同一列的宽是1, 高是所述第二高度的矩形区域边缘方向直方图特征的其它值等于左上顶点在 所述图像前一行同一列的宽是1,高是所述第二高度的矩形区域边缘方向直 方图特征的对应值。
20、 如权利要求18所述的系统,其特征在于,所述第三计算模块进一 步用于把左上顶点依次在所述图像同一行第一列到同一行第二宽度列的所述第 二宽度个宽是1,高是第二高度的矩形区域的边缘方向直方图特征相加,得 到左上顶点在所述图像同一行第一列的宽是所述第二宽度,高是所述第二高 度的矩形区域的边缘方向直方图特征。
21、 如权利要求18所述的系统,其特征在于,所述第四计算模块进一 步用于把左上顶点在所述图像同一行前一列的宽是第二宽度,高是第二高度的 矩形区域的边缘方向直方图特征加上左上顶点在所述图像同一行所述第二宽 度加上前一列的宽是1,高是所述第二高度的矩形区域的边缘方向直方图特 征,再减去左上顶点在所述图像同一行前一列的宽是1,高是所述第二高度 的矩形区域的边缘方向直方图特征,得到左上顶点在所述图像同 一行当前列 的宽是所述第二宽度,高是所述第二高度的矩形区域的边缘方向直方图特征。
全文摘要
本发明提供了一种人体检测方法和系统,该方法包括提取样本图像中所有宽是第一宽度,高是第一高度的第一矩形区域边缘方向直方图特征;根据所有第一矩形区域边缘方向直方图特征,利用分类器训练算法,训练得到人体分类器;根据缩放因子把原始待检测图像缩放为一系列尺度的待检测图像;提取该一系列尺度的待检测图像中所有宽是第一宽度,高是第一高度的第二矩形区域边缘方向直方图特征;利用训练得到的人体分类器对所有第二矩形区域的边缘方向直方图特征进行判定,检测出原始待检测图像中的人体位置候选区域;对检测出的人体位置候选区域进行后处理,检测出原始待检测图像中的人体位置区域。
文档编号G06K9/00GK101645135SQ200910088229
公开日2010年2月10日 申请日期2009年7月13日 优先权日2009年7月13日
发明者邓亚峰 申请人:北京中星微电子有限公司