目标识别方法及装置、人脸识别方法及装置与流程

文档序号:12126039阅读:198来源:国知局
目标识别方法及装置、人脸识别方法及装置与流程

本公开涉及图像识别技术领域,尤其涉及一种目标识别方法及装置、人脸识别方法及装置。



背景技术:

方向梯度直方图(Histogram of Oriented Gradient,HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子,它通过计算和统计图像局部区域的梯度方向直方图来构成特征。HOG特征结合SVM分类器已经被广泛应用于图像识别中,例如,人脸关键点定位方法,其用于检测出人脸上的关键部件(眼睛、鼻子、嘴巴等)的位置,是人脸识别中的一个不可或缺的步骤,也在一些视频实时的应用中显示出了很大的威力,例如视频中的实时美颜。在这种视频实时处理的任务中,由于视频一秒钟有几十帧图片,所以对算法运行速度的要求非常高。

已有技术中,基于级联线性回归的人脸关键点定位算法包括:首先初始化一个人脸关键点位置P0,然后在初始化位置处提取HOG特征,然后使用线性回归对该HOG特征进行回归计算,得到一个坐标更新量ΔP0,然后更新人脸关键点的坐标位置P1=P0+ΔP0,完成人脸关键点坐标的一次迭代。同样的,下一次迭代也是在人脸关键点的当前位置提取HOG特征,计算坐标更新量,更新位置。该算法往往需要多次迭代才能收敛,因此也需要多次的计算HOG特征,由于HOG特征的计算过程需要计算每个像素点的梯度方向,所以这里有一些重复计算,耗时较大,效率较低。



技术实现要素:

本公开实施例提供目标识别方法及装置、人脸识别方法及装置。所述技术方案如下:

根据本公开实施例的第一方面,提供一种目标识别方法,包括:

获取目标图像;

获取所述目标图像中每个像素点的梯度方向,其中所述梯度方向被划分为多个梯度方向区间;

根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图;

提取所述目标图像中的HOG特征,以进行目标识别;

其中,在提取HOG特征时,利用所述每个梯度方向区间的梯度方向积分图进行直方图统计。

其中,根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图,包括:

确定当前的梯度方向区间;

对于所述当前的梯度方向区间内的任一像素点,获取位于所述任一像素点与原点之间的矩形区域内且梯度方向在所述当前的梯度方向区间的像素点个数;

将位于所述任一像素点与原点之间的区域内且梯度方向在所述当前的梯度方向区间的像素点个数作为所述当前的梯度方向区间的所述梯度方向积分图在所述任一像素点位置处的值。

其中,提取所述目标图像中的HOG特征,包括:

确定当前的梯度方向区间;

确定当前的直方图统计区域;

通过下式统计所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数:

CountR=p4+p1-p2-p3

其中,CountR为所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数;p1、p2、p3、p4为所述当前的梯度方向区间对应的梯度方向积分图中所述直方图统计区域对应的积分区域的四个顶点,其中,p4为距离所述梯度方向积分图左上角原点最远的一个顶点,p1为距离所述梯度方向积分图左上角原点最近的一个顶点,所述p2和p3为其他两个顶点。

其中,所述方法还包括:

迭代执行提取所述目标图像中的HOG特征的步骤,直至满足迭代结束成条件为止。

其中,所述目标图像为人脸图像。

其中,所述方法还包括:

对所述HOG特征进行回归计算,得到所述人脸图像中人脸关键点的坐标更新量;

根据所述人脸关键点的坐标更新量更新所述人脸关键点的当前坐标;

迭代执行提取所述目标图像中的HOG特征的步骤,直至满足迭代结束条件为止。

根据本公开实施例的第二方面,提供一种目标识别装置,包括:

第一获取模块,被配置为获取目标图像;

第二获取模块,被配置为获取所述目标图像中每个像素点的梯度方向,其中所述梯度方向被划分为多个梯度方向区间;

第三获取模块,被配置为根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图;

提取模块,被配置为提取所述目标图像中的HOG特征,以进行目标识别;其中,在提取HOG特征时,利用所述每个梯度方向区间的梯度方向积分图进行直方图统计。

其中,所述第三获取模块包括:

第一确定子模块,被配置为确定当前的梯度方向区间;

第一获取子模块,被配置为对于所述当前的梯度方向区间内的任一像素点,获取位于所述任一像素点与原点之间的矩形区域内且梯度方向在所述当前的梯度方向区间的像素点个数;

第二获取子模块,被配置为将位于所述任一像素点与原点之间的区域内且梯度方向在所述当前的梯度方向区间的像素点个数作为所述当前的梯度方向区间的所述梯度方向积分图在所述任一像素点位置处的值。

其中,所述提取模块包括:

第二确定子模块,被配置为确定当前的梯度方向区间;

第三确定子模块,被配置为确定当前的直方图统计区域;

统计子模块,被配置为通过下式统计所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数:

CountR=p4+p1-p2-p3

其中,CountR为所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数;p1、p2、p3、p4为所述当前的梯度方向区间对应的梯度方向积分图中所述直方图统计区域对应的积分区域的四个顶点,其中,p4为距离所述梯度方向积分图左上角原点最远的一个顶点,p1为距离所述梯度方向积分图左上角原点最近的一个顶点,所述p2和p3为其他两个顶点。

其中,所述目标识别装置还包括:

迭代模块,被配置为迭代执行所述提取模块,直至满足迭代结束成条件为止。

其中,所述目标图像为人脸图像。

其中,所述装置还包括:

计算模块,被配置为对所述HOG特征进行回归计算,得到人脸关键点的坐标更新量;

更新模块,被配置为根据所述人脸关键点的坐标更新量更新所述人脸关键点的当前坐标;

迭代模块,被配置为迭代执行所述提取模块,直至满足迭代结束条件为止。

根据本公开实施例的第三方面,提供一种目标识别装置,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为:

获取目标图像;

获取所述目标图像中每个像素点的梯度方向,其中所述梯度方向被划分为多个梯度方向区间;

根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图;

提取所述目标图像中的HOG特征,以进行目标识别;其中,在提取HOG特征时,利用所述每个梯度方向区间的梯度方向积分图进行直方图统计。

本公开的实施例提供的技术方案可以包括以下有益效果:

上述技术方案,在目标图像的识别过程中,首先获取待检测的目标图像,计算目标图像中每个像素点的梯度方向,并计算每个梯度方向区间的积分图;之后,在提取HOG特征时,利用所述积分图进行直方图统计,根据所提取的HOG特征进行目标识别。本公开的技术方案通过采用积分图的方式,只需要对每个像素点的梯度方向计算一次,避免了在目标图像的识别过程中迭代提取HOG特征时重复计算像素的梯度方向的问题,有效的加快了算法的运行速度。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是根据一示例性实施例示出的目标识别方法的流程图。

图2是根据一示例性实施例示出的目标识别方法中步骤103的流程图。

图3是根据一示例性实施例示出的目标识别方法中步骤104的流程图。

图4是根据一示例性实施例示出的HOG特征提取中梯度方向积分图利用示意图。

图5是根据一示例性实施例示出的目标识别装置的框图。

图6是根据一示例性实施例示出的目标识别装置中第三获取模块503的框图。

图7是根据一示例性实施例示出的目标识别装置中提取模块504的框图。

图8是根据一示例性实施例示出的适用于目标识别装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

图1是根据一示例性实施例示出的一种目标识别方法的流程图,如图1所示,所述目标识别方法包括以下步骤101-104,

在步骤101中,获取目标图像;

在步骤102中,获取所述目标图像中每个像素点的梯度方向,其中所述梯度方向被划分为多个梯度方向区间;

在步骤103中,根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图;

在步骤104中,提取所述目标图像中的HOG特征,以进行目标识别;其中,在提取HOG特征时,利用所述每个梯度方向区间的梯度方向积分图进行直方图统计。

本实施例中,在目标图像的识别过程中,首先获取待检测的目标图像,计算目标图像中每个像素点的梯度方向,并计算每个梯度方向区间的积分图;之后,在提取HOG特征时,利用所述积分图进行直方图统计,根据所提取的HOG特征进行目标识别。本公开的技术方案通过采用积分图的方式,只需要对每个像素点的梯度方向计算一次,避免了在目标图像的识别过程中迭代提取HOG特征时重复计算像素的梯度方向的问题,有效的加快了算法的运行速度。

在一实施例中,所述目标图像可以是人脸图像、其他物体图像等。所述获取目标图像包括:获取包括目标图像的输入图像;利用检测方法检测出目标的区域,进而得到目标图像;所述目标图像可以为所述目标所在的矩形区域,即检测到的目标的外接矩形。所述目标图像为人脸图像时,可以采用LBP(Local Binary Patterns,局部二值模式)特征和Adaboost迭代算法从输入图像中检测得到人脸图像。

在一实施例中,获取所述目标图像中每个像素点的梯度方向之前,需要对所述目标图像进行预处理。所述预处理过程包括将所述目标图像进行灰度转换,即将所述目标图像转化为灰度图,并调整所述目标图像至预定大小。像素点的梯度方向的计算包括计算该像素点在水平方向上的梯度dx和竖直方向上的梯度dy,再通过计算得到该像素点的梯度方向。

通过提取HOG特征,并利用提取到的HOG特征进行目标识别是目前较为常见的目标识别方法,但是在提取HOG特征时,通常做法都是将梯度方向划分成多个梯度方向区间,然后针对每个梯度方向区间分别统计相应的直方图特征。而本公开的一实施例中,在提取HOG特征前预先获取梯度方向积分图,是为了在提取HOG特征时,直接使用梯度方向积分图中的每个像素点对应梯度方向信息,而无需重新计算,避免重复计算。因此,在获取梯度方向积分图时,也是通过将所梯度方向划分成多个梯度方向区间,例如,将360度的空间平均划分为6个梯度方向区间,每个梯度方向区间为60度,再针对每个梯度方向区间计算梯度方向积分图。在计算梯度方向积分图时对梯度方向的划分与在提取HOG特征时对梯度方向的划分是一致的,即计算梯度方向积分图和提取HOG特征时所划分的梯度方向区间个数及每个区间的度数相同。在本公开的一实施例中,提取了HOG特征后,可以根据实际所要识别的目标选择合适的算法对目标进行识别。例如,所要识别的目标为人脸时,可以根据HOG特征进行人脸关键点定位,进而识别出图像中的人脸。

在一实施例中,所述梯度方向积分图可以表示为与所述目标图像大小相同的二维向量;所述每个梯度方向区间内的梯度方向积分图中任一点的值为所述目标图像从左上角到该点所构成的矩形区域内其梯度方向在所述梯度方向区间内的像素点个数,其中,该点的梯度方向等于所述目标图像上该点对应像素点的梯度方向。

在一实施例中,如图2所示,步骤103中根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图,包括:

在步骤201中,确定当前的梯度方向区间;

在步骤202中,对于所述当前的梯度方向区间内的任一像素点,获取位于所述任一像素点与原点之间的区域内且梯度方向在所述当前的梯度方向区间的像素点个数;

在步骤203中,将位于所述任一像素点与原点之间的矩形区域内且梯度方向在所述当前的梯度方向区间的像素点个数作为所述当前的梯度方向区间的所述梯度方向积分图在所述任一像素点位置处的值。

在本实施例中,计算每个梯度方向区间的梯度方向积分图时,从第一个梯度方向区间开始,确定当前的梯度方向区间。对于目标图像中的任一像素点,计算出该任一像素点在当前的梯度方向区间对应的梯度方向积分值,并将其作为所述梯度方向积分图中相应位置处的值。而所述任一像素点在当前的梯度方向区间对应的梯度方向积分值为所述目标图像上左上角到该任一像素点构成的矩形区域(即以左上角到该任一像素点的连线作为对角线的矩形框)内的像素点,其梯度方向属于所述当前的梯度方向的个数。在计算完每一梯度方向区间对应的梯度方向积分图之后,将其保存下来。

在一实施例中,如图3所示,步骤104中提取所述目标图像中的HOG特征,包括:

在步骤301中,确定当前的梯度方向区间;

在步骤302中,确定当前的直方图统计区域;

在步骤303中,通过下式统计所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数:

CountR=p4+p1-p2-p3

其中,CountR为所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数;p1、p2、p3、p4为所述当前的梯度方向区间对应的梯度方向积分图中所述直方图统计区域对应的积分区域的四个顶点,其中,p4为距离所述梯度方向积分图左上角原点最远的一个顶点,p1为距离所述梯度方向积分图左上角原点最近的一个顶点,所述p2和p3为其他两个顶点。

本实施例中,提取HOG特征时,直方图统计过程为将目标图像划分成固定大小的多个直方图统计区域,如6*6个像素,然后将该直方图统计区域的梯度方向划分成多个梯度方向区间,此处的划分方式及梯度方向区间的大小与前述步骤中计算梯度方向积分图时的相同,对所述直方图统计区域中的每个像素点用所述梯度方向区间在直方图中进行投影,就得到该直方图统计区域对应的直方图了。例如,将6*6个像素的直方图统计区域的梯度方向划分成6个梯度方向区间,第一个梯度方向区间为0-60度,第二方向区间为60-120之间,依次类推。在投影时,直方图统计区域中的某一像素点的梯度方向在60-120度之间,则直方图中对应该像素点的值加一,统计完每个像素点对应的直方图的值,则可以得到该直方图统计区域的梯度方向直方图了。

本实施例中,在确定了当前的梯度方向区间以及直方图统计区域后,直接利用之前计算得到的当前的梯度方向区间对应的梯度方向积分图来统计。例如,如图4所示,对于直方图统计区域来说,其在梯度方向积分图S中对应的积分区域R的四个顶点分别为p1、p2、p3、p4,p4为距离梯度方向积分图S的左上角原点最远的一个顶点,p1为距离梯度方向积分图S的左上角原点最近的一个顶点,所述p2和p3为积分区域S的其他两个顶点,p1、p2、p3、p4的值分别为位于目标图像中对应像素点与左上角原点所构成的区域且梯度方向在该像素点所在梯度方向区间的像素点个数,因此,在统计直方图时,只需要获取对应直方图统计区域的积分区域R内的像素点个数即可。因此可以通过下式计算得到积分区域R内的像素点个数:

CountR=p4+p1-p2-p3

因此,所述CountR为所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数。通过本实施例的上述方式,在提取HOG特征时,直接使用前述步骤已经计算得到的梯度方向积分图进行直方图统计,而不用在每次提取HOG特征时重新计算。

在一实施例中,所述方法还包括:迭代执行提取所述目标图像中的HOG特征的步骤,直至满足迭代结束成条件为止。在目标识别方法中,提取HOG特征并根据所述HOG特征对图像中的目标进行识别时,通常都采用迭代算法进行多次迭代,依次逼近的方式最终获得目标检测的最终结果。本公开在多次迭代过程中,提取HOG特征时,始终利用预先获取得到的梯度方向积分图得到目标图像的HOG特征,而避免了重复计算每个像素点的梯度方向,并统计不同梯度方向区间中像素点个数这一问题,因此提高了图像识别效率。

在一实施例中,所述目标图像为人脸图像。上述目标识别方法适用于人脸识别中,如人脸关键点定位方法等。所述方法还包括:对所述HOG特征进行回归计算,得到人脸关键点的坐标更新量;根据所述人脸关键点的坐标更新量更新所述人脸关键点的当前坐标;迭代执行提取所述目标图像中的HOG特征的步骤,直至满足迭代结束条件为止。

在一实施例中,进行人脸关键定位时,首先对输入的图像进行检测,以获取其中的人脸区域,进而得到人脸图像。所述人脸图像为一矩形区域。在获得人脸图像后,将所述人脸图像进行灰度处理,即将所述人脸图像转化为灰度图,并将其大小调整为预先设定的尺寸大小,所述预先设的尺寸大小根据实际情况进行设置。之后,计算所述人脸图像中每个像素点在水平方向和数字方向上的梯度,进而根据所述水平方向和竖直方向上的梯度计算得到像素点的梯度方向。在计算得到所述人脸图像中每个像素点的梯度方向后,对每一梯度方向区间单独求积分图S,例如,将梯度方向划分成了N个梯度方向区间,则需要得到N个梯度方向积分图。在人脸关键点定位时,按照平均位置初始化得到所述人脸图像中人脸关键点位置,然后在人脸关键点当前位置处提取HOG特征,具体提取HOG特征的步骤在前面有详细介绍,此处不再赘述。提取得到当前位置处的HOG特征后,利用回归算法对所提取的HOG特征进行回归计算,进而得到人脸关键点位置的坐标更新量,根据人脸关键点的坐标更新量更新人脸关键点的当前位置,之后再在更新后的人脸关键点的当前位置处提取HOG特征,迭代执行,直至满足迭代结束条件为止。本实施例中,由于每次迭代都需要提取一次HOG特征,即意味着每次迭代都需要计算每个像素点的梯度方向,而本实施例中,在提取HOG特征时,不需要每次迭代时重复计算每个像素点的梯度方向,而是直接利用预先计算好的梯度方向积分图即可获取提取HOG特征所需要的直方图信息,节省了计算步骤,提高了效率。

下述为本公开装置实施例,可以用于执行本公开方法实施例。

图5是根据一示例性实施例示出的一种目标是把装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图5所示,该目标识别的装置包括:

第一获取模块501,被配置为获取目标图像;

第二获取模块502,被配置为获取所述目标图像中每个像素点的梯度方向,其中所述梯度方向被划分为多个梯度方向区间;

第三获取模块503,被配置为根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图;

提取模块504,被配置为提取所述目标图像中的HOG特征,以进行目标识别;其中,在提取HOG特征时,利用所述每个梯度方向区间的梯度方向积分图进行直方图统计。

本实施例中,在目标图像的识别过程中,首先获取待检测的目标图像,计算目标图像中每个像素点的梯度方向,并计算每个梯度方向区间的积分图;之后,在提取HOG特征时,利用所述积分图进行直方图统计。本公开的技术方案通过采用积分图的方式,只需要对每个像素点的梯度方向计算一次,避免了在目标图像的识别过程中迭代提取HOG特征时重复计算像素的梯度方向的问题,有效的加快了算法的运行速度。

在一实施例中,所述目标图像可以是人脸图像、其他物体图像等。所述获取目标图像包括:获取包括目标图像的输入图像;利用检测方法检测出目标的区域,进而得到目标图像;所述目标图像为所述目标所在的矩形区域,即检测到的目标的外接矩形。所述目标图像为人脸图像时,可以采用LBP(Local Binary Patterns,局部二值模式)特征和Adaboost迭代算法从输入图像中检测得到人脸图像。

在一实施例中,获取所述目标图像中每个像素点的梯度方向之前,需要对所述目标图像进行预处理。所述预处理过程包括将所述目标图像进行灰度转换,即将所述目标图像转化为灰度图,并调整所述目标图像至预定大小。像素点的梯度方向的计算包括计算该像素点在水平方向上的梯度dx和竖直方向上的梯度dy,再通过计算得到该像素点的梯度方向。

在一实施例中,在提取HOG特征时,通常做法都是将梯度方向划分成多个梯度方向区间,然后针对每个梯度方向区间分别统计相应的直方图特征。而本公开中,在提取HOG特征前预先获取梯度方向积分图,是为了在提取HOG特征时,直接使用梯度方向积分图中的每个像素点对应梯度方向信息,而无需重新计算,避免重复计算。因此,在获取梯度方向积分图时,也是通过将所梯度方向划分成多个梯度方向区间,例如,将360度的空间平均划分为6个梯度方向区间,每个梯度方向区间为60度,再针对每个梯度方向区间计算梯度方向积分图。在计算梯度方向积分图时对梯度方向的划分与在提取HOG特征时对梯度方向的划分是一致的,即计算梯度方向积分图和提取HOG特征时所划分的梯度方向区间个数及每个区间的度数相同。

在一实施例中,所述梯度方向积分图可以表示为与所述目标图像大小相同的二维向量;所述每个梯度方向区间内的梯度方向积分图中任一点的值为所述目标图像从左上角到该点所构成的矩形区域内其梯度方向在所述梯度方向区间内的像素点个数,其中,该点的梯度方向等于所述目标图像上该点对应像素点的梯度方向。

在一实施例中,如图6所示,所述第三获取模块503,包括:

在第一确定子模块601中,被配置为确定当前的梯度方向区间;

在第一获取子模块602中,被配置为对于所述当前的梯度方向区间内的任一像素点,获取位于所述任一像素点与原点之间的区域内且梯度方向在所述当前的梯度方向区间的像素点个数;

在第二获取子模块603中,被配置为将位于所述任一像素点与原点之间的矩形区域内且梯度方向在所述当前的梯度方向区间的像素点个数作为所述当前的梯度方向区间的所述梯度方向积分图在所述任一像素点位置处的值。

在本实施例中,计算每个梯度方向区间的梯度方向积分图时,从第一个梯度方向区间开始,确定当前的梯度方向区间。对于目标图像中的任一像素点,计算出该任一像素点在当前的梯度方向区间对应的梯度方向积分值,并将其作为所述梯度方向积分图中相应位置处的值。而所述任一像素点在当前的梯度方向区间对应的梯度方向积分值为所述目标图像上左上角到该任一像素点构成的矩形区域(即以左上角到该任一像素点的连线作为对角线的矩形框)内的像素点,其梯度方向属于所述当前的梯度方向的个数。在计算完每一梯度方向区间对应的梯度方向积分图之后,将其保存下来。

在一实施例中,如图7所示,所述提取模块504包括:

在第二确定子模块701中,被配置为确定当前的梯度方向区间;

在第三确定子模块702中,被配置为确定当前的直方图统计区域;

在统计子模块703中,被配置为通过下式统计所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数:

CountR=p4+p1-p2-p3

其中,CountR为所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数;p1、p2、p3、p4为所述当前的梯度方向区间对应的梯度方向积分图中所述直方图统计区域对应的积分区域的四个顶点,其中,p4为距离所述梯度方向积分图左上角原点最远的一个顶点,p1为距离所述梯度方向积分图左上角原点最近的一个顶点,所述p2和p3为其他两个顶点。

本实施例中,提取HOG特征时,直方图统计过程为将目标图像划分成固定大小的多个直方图统计区域,如6*6个像素,然后将该直方图统计区域的梯度方向划分成多个梯度方向区间,此处的划分方式及梯度方向区间的大小与前述步骤中计算梯度方向积分图时的相同,对所述直方图统计区域中的每个像素点用所述梯度方向区间在直方图中进行投影,就得到该直方图统计区域对应的直方图了。例如,将6*6个像素的直方图统计区域的梯度方向划分成6个梯度方向区间,第一个梯度方向区间为0-60度,第二方向区间为60-120之间,依次类推。在投影时,直方图统计区域中的某一像素点的梯度方向在60-120度之间,则直方图中对应该像素点的值加一,统计完每个像素点对应的直方图的值,则可以得到该直方图统计区域的梯度方向直方图了。

本实施例中,在确定了当前的梯度方向区间以及直方图统计区域后,直接利用之前计算得到的当前的梯度方向区间对应的梯度方向积分图来统计。例如,如图4所示,对于直方图统计区域来说,其在梯度方向积分图S中对应的积分区域R的四个顶点分别为p1、p2、p3、p4,p4为距离梯度方向积分图S的左上角原点最远的一个顶点,p1为距离梯度方向积分图S的左上角原点最近的一个顶点,所述p2和p3为积分区域S的其他两个顶点,p1、p2、p3、p4的值分别为位于目标图像中对应像素点与左上角原点所构成的区域且梯度方向在该像素点所在梯度方向区间的像素点个数,因此,在统计直方图时,只需要获取对应直方图统计区域的积分区域R内的像素点个数即可。因此可以通过下式计算得到积分区域R内的像素点个数:

CountR=p4+p1-p2-p3

因此,所述CountR为所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数。通过本实施例的上述方式,在提取HOG特征时,直接使用前述步骤已经计算得到的梯度方向积分图进行直方图统计,而不用在每次提取HOG特征时重新计算。

在一实施例中,所述装置还包括:迭代模块,被配置迭代执行提取所述目标图像中的HOG特征的步骤,直至满足迭代结束成条件为止。在目标识别方法中,提取HOG特征并根据所述HOG特征对图像中的目标进行识别时,通常都采用迭代算法进行多次迭代,依次逼近的方式最终获得目标检测的最终结果。本公开在多次迭代过程中,提取HOG特征时,始终利用预先获取得到的梯度方向积分图得到目标图像的HOG特征,而避免了重复计算每个像素点的梯度方向,并统计不同梯度方向区间中像素点个数这一问题,因此提高了图像识别效率。

在一实施例中,所述目标图像为人脸图像。上述目标图像识别装置适用于人脸识别中,如人脸关键点定位装置等。所述人脸识别装置还包括:计算模块,被配置为对所述HOG特征进行回归计算,得到人脸关键点的坐标更新量;更新模块,被配置为根据所述人脸关键点的坐标更新量更新所述人脸关键点的当前坐标;迭代模块,被配置为迭代执行所述提取模块,直至满足迭代结束条件为止。

在一实施例中,进行人脸关键定位时,首先对输入的图像进行检测,以获取其中的人脸区域,进而得到人脸图像。所述人脸图像为一矩形区域。在获得人脸图像后,将所述人脸图像进行灰度处理,即将所述人脸图像转化为灰度图,并将其大小调整为预先设定的尺寸大小,所述预先设的尺寸大小根据实际情况进行设置。之后,计算所述人脸图像中每个像素点在水平方向和数字方向上的梯度,进而根据所述水平方向和竖直方向上的梯度计算得到像素点的梯度方向。在计算得到所述人脸图像中每个像素点的梯度方向后,对每一梯度方向区间单独求积分图S,例如,将梯度方向划分成了N个梯度方向区间,则需要得到N个梯度方向积分图。在人脸关键点定位时,按照平均位置初始化得到所述人脸图像中人脸关键点位置,然后在人脸关键点当前位置处提取HOG特征,具体提取HOG特征的步骤在前面有详细介绍,此处不再赘述。提取得到当前位置处的HOG特征后,利用回归算法对所提取的HOG特征进行回归计算,进而得到人脸关键点位置的坐标更新量,根据人脸关键点的坐标更新量更新人脸关键点的当前位置,之后再在更新后的人脸关键点的当前位置处提取HOG特征,迭代执行,直至满足迭代结束条件为止。本实施例中,由于每次迭代都需要提取一次HOG特征,即意味着每次迭代都需要计算每个像素点的梯度方向,而本实施例中,在提取HOG特征时,不需要每次迭代时重复计算每个像素点的梯度方向,而是直接利用预先计算好的梯度方向积分图即可获取提取HOG特征所需要的直方图信息,节省了计算步骤,提高了效率。

根据本公开实施例的第三方面,提供一种目标识别装置,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,处理器被配置为:

获取目标图像;

获取所述目标图像中每个像素点的梯度方向,其中所述梯度方向被划分为多个梯度方向区间;

根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图;

提取所述目标图像中的HOG特征,以进行目标识别;其中,在提取HOG特征时,利用所述每个梯度方向区间的梯度方向积分图进行直方图统计。

上述处理器还可被配置为:

其中,根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图,包括:

确定当前的梯度方向区间;

对于所述当前的梯度方向区间内的任一像素点,获取位于所述任一像素点与原点之间的矩形区域内且梯度方向在所述当前的梯度方向区间的像素点个数;

将位于所述任一像素点与原点之间的区域内且梯度方向在所述当前的梯度方向区间的像素点个数作为所述当前的梯度方向区间的所述梯度方向积分图在所述任一像素点位置处的值。

其中,提取所述目标图像中的HOG特征,包括:

确定当前的梯度方向区间;

确定当前的直方图统计区域;

通过下式统计所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数:

CountR=p4+p1-p2-p3

其中,CountR为所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数;p1、p2、p3、p4为所述当前的梯度方向区间对应的梯度方向积分图中所述直方图统计区域对应的积分区域的四个顶点,其中,p4为距离所述梯度方向积分图左上角原点最远的一个顶点,p1为距离所述梯度方向积分图左上角原点最近的一个顶点,所述p2和p3为其他两个顶点。

其中,所述方法还包括:

迭代执行提取所述目标图像中的HOG特征的步骤,直至满足迭代结束成条件为止。

图8是根据一示例性实施例示出的一种用于目标识别装置的框图,该装置适用于终端设备。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。

处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。

存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。

电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。

多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。

I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。

在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置800的处理器执行时,使得装置800能够执行上述目标识别方法,所述方法包括:

获取目标图像;

获取所述目标图像中每个像素点的梯度方向,其中所述梯度方向被划分为多个梯度方向区间;

根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图;

提取所述目标图像中的HOG特征,以进行目标识别;其中,在提取HOG特征时,利用所述每个梯度方向区间的梯度方向积分图进行直方图统计。

其中,根据所述目标图像中每个像素点的梯度方向,获取每个梯度方向区间的梯度方向积分图,包括:

确定当前的梯度方向区间;

对于所述当前的梯度方向区间内的任一像素点,获取位于所述任一像素点与原点之间的矩形区域内且梯度方向在所述当前的梯度方向区间的像素点个数;

将位于所述任一像素点与原点之间的区域内且梯度方向在所述当前的梯度方向区间的像素点个数作为所述当前的梯度方向区间的所述梯度方向积分图在所述任一像素点位置处的值。

其中,提取所述目标图像中的HOG特征,包括:

确定当前的梯度方向区间;

确定当前的直方图统计区域;

通过下式统计所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数:

CountR=p4+p1-p2-p3

其中,CountR为所述直方图统计区域内在所述当前的梯度方向区间上的像素点个数;p1、p2、p3、p4为所述当前的梯度方向区间对应的梯度方向积分图中所述直方图统计区域对应的积分区域的四个顶点,其中,p4为距离所述梯度方向积分图左上角原点最远的一个顶点,p1为距离所述梯度方向积分图左上角原点最近的一个顶点,所述p2和p3为其他两个顶点。

其中,所述方法还包括:

迭代执行提取所述目标图像中的HOG特征的步骤,直至满足迭代结束成条件为止。

本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

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