物体检测装置、物体检测方法以及程序与流程

文档序号:22323463发布日期:2020-09-23 02:01阅读:111来源:国知局
物体检测装置、物体检测方法以及程序与流程

本发明涉及从图像间检测物体的技术。



背景技术:

以往,已知从图像检测人的面部等规定的物体的技术(专利文献1、专利文献2)。近年来,因深度学习(deeplearning)的出现,图像检测精度在飞跃性地提高。但是,相比以往方法,深度学习的计算量大得多。

这样,深度学习的计算负荷较高,因此被认为不适合诸如移动设备之类的嵌入式设备。即使考虑到近年来的技术革新,在嵌入式设备中执行深度学习算法也不容易。若考虑到这样的状况,则寻求在诸如嵌入式设备之类的计算资源缺乏的设备中也能够进行动作的、高速并且高精度的物体检测算法。

现有技术文献

专利文献

专利文献1:日本特开2007-133840号公报

专利文献2:日本特开2008-102611号公报



技术实现要素:

发明要解决的课题

为了在计算资源缺乏的设备中也进行高速且高精度的物体检测,可以考虑首先通过计算负荷小的算法(轻量算法)进行检测,仅将被检测出的区域作为对象而通过诸如深度学习之类的计算负荷大但高精度的算法(高精度算法)进行检测。此时,作为对在使用了轻量算法的检测中被检测出的许多区域的对策,还可以考虑将这些多个区域进行整合,对整合后的区域进行高精度算法下的检测。根据这样的方法,可以以与仅使用了高精度算法的检测同样的精度比其更快地进行检测。

然而,在图像中被包含大量检测对象物的情况下,由于整合区域的数量变大而无法实现足够的高速。例如,在以集体照片作为对象进行面部检测的情况下,整合区域的数量与图像内的人物的数量相同或者为其以上,若将全部这些区域为对象进行基于高精度算法的检测,则计算时间很长。

考虑到这样的问题,本发明的目的在于,通过能够进行高速且高精度的物体检测的技术。

用于解决课题的单元

本发明具有根据彼此不同的检测算法从图像中检测规定的物体的第一检测单元以及第二检测单元,将由第一检测单元检测出的候选区域进行整合,仅对从整合后的候选区域中选择出的候选区域执行第二检测单元进行的物体检测。对象物可以是任意的物体,但例举人的面部或身体等人体部位、动物或者其部位、汽车、商品作为例子被列举。

更具体地说,本发明的一方式的物体检测装置是从图像检测对象物的物体检测装置,具有第一检测单元、第二检测单元、区域整合单元、选择单元。第一检测单元以及第二检测单元都被构成为从图像检测规定的对象物,但各自的检测算法不同。这里,与第一检测单元比较,第二检测单元的检测算法是检测精度高但计算量大的检测算法即可。

第一检测单元被构成为从图像检测被估计为存在对象物的多个候选区域。区域整合单元被构成为基于这些多个候选区域,决定一个或者多个整合区域。选择单元在由区域整合单元决定的整合区域之中选择至少一部分。第二检测单元被构成为将通过选择单元选择出的整合区域作为对象进行物体检测。

根据这样的结构,由于限定于整合区域进行第二检测单元进行的物体检测,所以能够实现处理的高速化,同时能够维持第二检测单元的检测精度。特别地,由于由选择单元筛减设为第二检测单元的处理对象的整合区域的数量,所以即使是在图像中包含很多对象物因此很多整合区域被决定的情况下,也能够抑制处理速度的下降。即,根据本发明的物体检测装置,能够实现高速且高精度的物体识别。

本方式的物体检测装置通过构成为还具有进行对象物的跟踪的跟踪单元,能够在从运动图像检测对象物时优选地利用。即,也可以构成为使用跟踪单元对至前帧为止被确定为对象物的物体或者区域进行跟踪,对其它区域进行使用了第一检测单元、区域整合单元、选择单元、以及第二检测单元的检测。这里,“至前帧为止被确定为对象物的物体(区域)”包含在对前帧的处理中由第二检测单元检测为对象物的物体(区域)、以及由跟踪单元跟踪而检测出的物体(区域)两者。

在此情况下,跟踪单元将前帧中被确定为对象物的物体作为对象,进行当前帧中的跟踪处理即可。而且,选择单元选择前帧中位于被确定为对象物的区域以外的至少一部分整合区域即可。这样,即使限制在各帧中使用第二检测单元新检测的面部的数目,也能够进行跟踪单元进行的面部检测。因此,即使是图像中存在许多对象物的情况,如果构图上没有变化,则被第二检测单元检测为对象物的对象物的数目会增加,可以期待在几帧后所有对象物被跟踪单元跟踪。而且,由于各帧中的第二检测单元的处理对象的整合区域受到限制,所以能够防止各帧中的计算量过大。

若选择单元被构成为选择规定数目以内的整合区域,则其选择基准没有被特别限定。例如,选择单元也可以从前帧中位于被确定为所述对象物的区域以外的整合区域之中,选择可靠性为阈值以上的规定数目个整合区域。此处的可靠性是与整合区域内包含对象物的概率关联的值。而且,选择单元也可以在前帧中位于被确定为所述对象物的区域以外的整合区域之中,从尺寸大的一方起选择规定数目个整合区域。除可靠性或尺寸以外,可以考虑整合区域中包含的对象物的属性(例如,若对象物为人,则为年龄或性别等),也可以考虑是否为将几个候选区域进行整合所得到的整合区域。而且,也可以将这些多个基准组合而根据基准来选择整合区域。而且,在前帧中进行了第二检测单元进行的检测的情况下,也可以考虑其可靠性。例如,若前帧中的第二检测单元中的检测的可靠性低,则在当前帧中也可以不选择相同的整合区域,或降低选择的优先级。选择单元不必总是选择“规定数目”个整合区域,如果满足条件的整合区域不存在规定数目个,则仅选择满足条件的整合区域即可。

在本方式中,选择单元也可以还考虑前帧中的所述第二检测单元的检测得分,进行整合区域的选择。可能存在检测得分(可靠性)基于第一检测单元被计算得高、但检测得分基于第二检测单元被计算得低的区域。通过考虑前帧中的基于第二检测单元的检测得分进行选择,能够防止在这样的情况下选择相同的整合区域。而且,优选不仅考虑最近1帧中的检测得分,还考虑之前的帧中的检测得分,此时附加与时间相应的权重来考虑。而且,也可以还考虑帧间的区域的相似度来进行选择。

在本方式中,选择单元最终能够选择“在前帧中位于被确定为是对象物的区域以外的至少一部分整合区域”即可。用于实现此目的的一方法是,在被输入到选择单元的整合区域内不包含“在前帧中位于被确定为是对象物的区域的整合区域”。另一方法是,选择单元从被输入的整合区域之中除去“在前帧中位于被确定为是对象物的区域的整合区域”。

为了实现前者的方法,本方式的物体检测装置还具有预处理部,所述预处理部对与在前帧中被确定为是所述对象物的物体的区域对应的当前帧图像的区域实施使该区域不被检测为所述物体的预处理。作为这样的预处理的例子,可以考虑将区域以规定的图案(例如,单色填充的图案)置换的处理。作为另一例,还设想滤波处理,但优选处理负荷尽量小。通过实施这样的预处理,从在前帧中被确定为所述对象物的物体的区域中,不会被第一检测单元检测到对象物,所以在被输入到选择单元的整合区域之中不包含上述的区域。

为了实现后者的方法,本方式的物体检测装置也可以还具有存储在前帧图像中被确定为是所述对象物的区域的位置的存储单元。通过参照这样的存储单元,选择单元能够从选择对象中除去位于存储单元所存储的位置的整合区域。

若区域整合单元将第一检测单元检测出的候选区域进行整合,则其具体的处理内容并没有被特别限定。从候选区域之中决定代表区域,将位于距代表区域为规定距离以内的其它的候选区域进行整合即可。在决定代表区域时,若将检测得分或区域尺寸设为基准,则能够提高整合区域内存在对象物的概率。而且,若在整合时考虑区域尺寸的相似度或对象物的属性的相似度,则能够进行整合以使在一个整合区域内仅包含一个对象物。

而且,本发明能够作为包含上述单元的至少一部分的物体检测装置来理解。而且,本发明还能够作为物体检测方法来理解。而且,还能够作为用于使计算机执行这些方法的各步骤的计算机程序、非暂时性地存储了该程序的计算机可读取的存储介质来理解。只要不产生技术上的矛盾,上述结构以及处理的每一个就能够相互组合而构成本发明。

发明的效果

根据本发明,能够进行高速并且高精度的物体检测,在计算资源缺乏的计算机中也能够利用高精度的物体检测。

附图说明

图1是表示本发明的应用例的结构的方框图。

图2是表示第一实施方式的面部检测装置的硬件结构的图。

图3是表示第一实施方式的面部检测装置的结构的方框图。

图4a以及图4b是对第一检测部112进行的面部检测处理进行说明的图。

图5a以及图5b是对第一检测部112进行的面部检测处理进行说明的图。

图6是表示区域选择部114进行的区域整合处理的流程的流程图。

图7a以及图7b是表示区域整合处理中的整合区域决定的例子的流程图。

图8是对区域整合处理的例子进行说明的图。

图9是表示区域选择部114进行的区域选择处理的流程的流程图。

图10是表示第一实施方式的面部检测装置进行的面部检测处理的流程的流程图。

图11是对第一实施方式的面部检测装置进行的面部检测处理进行说明的图。

图12是表示第一实施方式的变形例的面部检测装置的结构的方框图。

图13a以及图13b是对第一实施方式的变形例中的预处理的例子进行说明的图。

具体实施方式

(应用例)

本发明的物体检测装置设为检测对象的物体可以是任意的物体,但这里对应用于面部检测的应用例进行说明。在具有使用了haar-like特征量和adaboost的第一面部检测部、以及使用了深度学习的第二面部检测部的面部检测装置中,可以考虑如下那样的检测方法。首先,对于输入图像整体进行第一面部检测部进行的检测,决定面部可能存在的区域(面部候选区域)。由于寻求基于第一面部检测部的多个面部候选区域,所以将与相同的面部对应的多个区域进行整合,仅对被整合后的区域进行第二面部检测部进行的面部检测。由此,能够在短时间内实现使用了深度学习的高精度的面部检测。然而,在许多人物包含于输入图像中的情况下,由于整合区域的数量变多,所以无法实现足够的高速。

图1是表示应用了本发明的面部检测装置10的结构的方框图。面部检测装置10具有第一检测部12、区域整合部13、区域选择部14、第二检测部15。这些各部可以通过cpu执行程序来实现,也可以通过asic等专用的逻辑电路来实现。

图像输入部11获取设为面部检测的对象的图像数据。输入图像可以是静止图像,也可以是运动图像。

第一检测部12通过相对高速且轻量的算法进行面部检测。例如,能够采用使用了haar-like特征量和adaboost的算法。以下将被第一检测部112估计为存在面部的区域称为面部候选区域。一般而言,第一检测部112对于一个面部的周边检测多个面部候选区域。第一检测部112是本发明的第一检测单元的一例。第一检测部12例如能够使用hog(梯度直方图(histgramofgradient))特征量、sift特征量、surf特征量等任意的特征量作为特征量。而且,学习方法也可以使用adaboost以外的boosting方法、或svm(支持向量机(supportvectormachine))、神经网络、决策树学习等任意的学习方法。

区域整合部113将由第一检测部112检测出的面部候选区域进行整合。如上述,第一检测部112对于一个面部的周边检测多个面部候选区域,所以区域整合部113将被估计为与一个面部对应的多个面部候选区域进行整合而生成整合区域。区域整合部113是本发明的区域整合单元的一例。

区域选择部114在由区域整合部113决定出的整合区域之中,选择设为第二检测部115进行的处理的对象的整合区域。也可以对区域选择部114选择的整合区域的数目设定上限。区域选择部114基于规定的基准,选择与该基准的匹配率高的规定数目个(以内)的整合区域。作为规定的基准,能够采用基于第一检测部112的检测得分(可靠性)、整合区域的尺寸、整合区域中包含的面部(人物)的属性(年龄和性别等)等。区域选择部114是本发明的选择单元的一例。

第二检测部115使用相对高精度且低速的算法进行面部检测。例如,能够采用使用了诸如cnn(卷积神经网络)之类的深度学习的算法。通过第二检测部115、区域选择部114将被选择出的整合区域作为对象进行面部检测。第二检测部115是本发明的第二检测单元的一例。第二检测部15的算法不限于cnn,能够使用rnn(递归神经网络(recurrentneuralnetwork))和sae(堆叠式自动编码器(stackedautoencoder))、dbn(深度信念网络(deepbeliefnetwork))等任意的方法。

根据面部检测装置10的上述结构,由于成为第二检测部15进行的检测的对象的整合区域的数量被限制,所以即使在输入图像中存在许多面部的情况下也可以高速且高精度地进行面部检测。

面部检测装置10有从1张图像(帧图像)可检测的面部的数最大为规定数目个的限制,但通过将面部跟踪处理组合并应用于运动图像,能够检测运动图像中的所有面部。即,面部检测装置10基于面部跟踪处理跟踪检测完毕的面部,由第一检测部12以及第二检测部15进行新面部的检测。这样,抑制各帧中的计算量,并且由第二检测部15对每帧检测新的面部,成为面部跟踪处理的跟踪对象,图像中的所有面部最终成为跟踪处理的跟踪对象。就面部跟踪处理而言,由于处理轻便且精度也足够,所以通过设为这样的结构,能够将处理速度的下降设为最小限度,并且高精度地检测运动图像中的所有面部。

(第一实施方式)

以下说明的实施方式涉及被搭载在诸如智能手机之类的移动信息终端中而从运动图像检测面部的面部检测装置(物体检测装置)。然而,这不过是例示,从图像检测的物体不需要是面部,也可以是任意的物体。而且,面部检测装置(物体检测装置)也可以被搭载在移动信息终端以外的任意的信息处理装置(计算机)上。

本实施方式的面部检测装置能够应用于例如自动对焦(af)、人数计数、车辆的驾驶员监视(drivermonitoring)、被设置在人数很多的场所内的安全摄像机中的人物检测等用途。

<结构>

图2是表示本实施方式的面部检测装置100的硬件结构的图。面部检测装置100包括图像输入部101、运算装置102、存储装置103、通信装置104、输入装置105、输出装置106。图像输入部101是从摄像机110接受图像数据的接口。而且,在本实施方式中从摄像机110直接接受图像数据,但也可以经由通信装置104接受图像数据,或者经由记录介质接受图像数据。运算装置102是cpu(中央处理单元(centralprocessingunit))等通用的处理器,执行被存储在存储装置103中的程序,执行后述处理。存储装置103包括主存储装置以及辅助存储装置,存储由运算装置102执行的程序,并且存储图像数据或程序执行中的临时数据。通信装置104是用于面部检测装置100与外部的计算机进行通信的装置。通信方式可以是有线也可以是无线,通信标准也可以是任意的。输入装置105由触摸屏、按钮、键盘等的其中一个构成,是用于用户对面部检测装置输入指示的装置。输出装置106由显示装置或扬声器等构成,是面部检测装置用于进行对用户的输出的装置。

<面部检测装置的功能和处理>

运算装置102通过执行程序,进行图3所示的各部的处理。即,运算装置102执行图像输入部111、第一检测部112、区域整合部113、区域选择部114、第二检测部115、面部跟踪部116、结果输出部117进行的各自的处理。以下对各部的处理内容进行说明。

[图像输入部111]

图像输入部111获取设为面部检测的对象的图像数据。设想本实施方式中被输入的图像为运动图像,但输入图像也可以为静止图像。输入图像可以经由图像输入部101从摄像机20获取,也可以经由通信装置104从其他计算机获取,还可以经由存储装置103从存储介质获取。

[第一检测部112]

第一检测部112从输入图像检测面部候选区域(被估计为存在面部的区域)。第一检测部112被构成为能够从输入图像检测各种各样的大小(尺寸)或朝向的面部。在检测面部候选区域时,第一检测部112还估计可靠性、面部的朝向。第一检测部112估计性别、年龄、人种等属性,还进行面部认证,并且也可以使这些处理结果能够在后级的处理中利用。

在本实施方式中,第一检测部112被构成为使用haar-like特征量作为图像特征量,使用adaboost作为学习算法。以下,使用图4a、图4b对本实施方式中的第一检测部112进行说明。

如图4a所示,为了检测各种大小的面部,第一检测部112分别从将输入图像以多个倍率缩小的缩小图像301~303中截出规定的尺寸的矩形区域310,使用识别器320判别面部是否被包含在该区域中。通过在缩小图像301~303内扫描矩形区域310,能够检测被包含在图像中的各种尺寸的面部。而且,在本实施方式中截出了矩形区域,但截出的区域可以是矩形以外的任意形状的区域。

如图4b所示,识别器320判别由矩形区域310截出的对照图案是否为面部。识别器320从对照图案中的多个局部区域,分别提取基于明暗关系的特征量(haar-like特征量)。识别器320具有多个弱识别器,各个弱识别器基于少数的特征量判别对照图案是否为面部。弱识别器各自的判别性能较低,但通过组合这些多个弱识别器,能够高精度地判别是否为面部。而且,识别器320输出对照图案为面部图案的确定性(可靠性),作为输出值。因此,可靠性为规定的阈值以上的区域被作为面部候选区域处理。

参照图5a、图5b对步骤s2的第一检测部112进行的面部检测处理的具体例进行说明。图5a表示输入图像400。在输入图像400中,拍摄有人物401、402。若以这样的输入图像400作为对象进行第一检测部112进行的面部检测处理,则在人物401、402的面部周边被检测到多个面部候选区域。这是因为,在面部的周边,即使对照图案的位置或大小多少发生变化,也会被判断为对照图案是面部。

图5b是表示对输入图像400的例示性的检测结果。在人物401的面部周边被检测到三个面部候选区域411、412、413,在人物402的面部周边被检测到三个面部候选区域414、415、416。而且,从实际上不存在面部的区域中,面部候选区域417也被检测到。在背景的模样碰巧类似于面部的情况下会发生这种情况。

[区域整合部113]

区域整合部113将由第一检测部112检测出的多个候选区域进行整合。区域整合部113将多个候选区域分组,从各组的候选区域决定一个整合区域。图6是表示区域整合部113进行的整合区域决定处理的细节的流程图。以下,根据图6的流程图进行说明。

在步骤s31中,区域整合部113将从步骤s2中检测出的多个候选区域之中可靠性为最大的区域选择为代表区域。而且,代表区域的决定不需要仅基于可靠性进行,也可以考虑区域尺寸或面部朝向等其它信息来进行。在考虑区域尺寸时,可以将尺寸大的区域优先,也可以将接近规定的尺寸的区域优先。而且,在决定代表区域时,也可以基于区域尺寸或其它信息进行而不使用可靠性。

对检测出的多个候选区域之中的代表区域以外执行步骤s32~s34的处理循环l1。这里将循环l1中被设为处理对象的候选区域称为关注候选区域。

在步骤s32中,区域整合部113计算代表区域和关注候选区域之间的关联得分。关联得分是表示代表区域和关注候选区域为相同的面部的区域的确定性的得分。能够基于区域间的距离(例如,区域中心间的距离)或候选区域的尺寸计算关联得分。例如,区域间的距离越近,关联得分被算出得越大。而且,区域尺寸之差越小,关联得分被算出得越大。

区域间的距离或区域尺寸的相似度被视为第一检测部112的检测结果的相似度的例子。也可以基于第一检测部112的检测结果的其它项目的相似度决定关联得分。例如,也可以基于被检测出的面部的朝向的相似度、被检测出的面部的属性(例如,年龄、性别、人种、表情等)的相似度计算关联得分。在考虑多个因素来决定关联得分的情况下,使用含有将这些多个因素作为变量的函数即可。简单地说,根据各因素的相似度的平均或者加权平均决定关联得分即可。适当决定加权平均时的权重即可。

在步骤s33中,区域整合部113判定关注候选区域的关联得分是否为阈值t1以上。在关联得分为阈值t1以上的情况(s33为“是”)下,在步骤s34中,区域整合部113将关注候选区域决定为代表区域的关联区域。即,关注候选区域被分组在与代表区域相同的组中。

通过对所有的候选区域进行上述步骤s32~s34的处理,能够决定与代表区域关联的候选区域。

而且,这里将关联得分为阈值t1以上的候选区域决定为关联区域,但也可以将关联得分最大的规定数目个候选区域决定为关联区域。或者,也可以将关联得分为阈值t1以上、并且关联得分为高位规定数目的候选区域决定为关联区域。

在步骤s35中,区域整合部113将代表区域及其关联区域进行整合而决定整合区域。整合区域的决定方法没有被特别限定。这里,参照图7a、图7b对两个整合区域决定方法进行说明。

例如,如图7a所示,在整合区域决定处理s35中,也可以将代表区域本身决定为整合区域(步骤s351)。或者,如图7b所示,整合区域决定处理s35也可以由如下那样的步骤构成。首先,获取属于与代表区域相同的组的关联区域(s352)。接着,计算以代表区域和关联区域作为对象决定区域的各个参数的平均值。(步骤s353)。最后,决定具有被算出的平均值作为参数的区域,作为整合区域(s354)。作为参数的例子,可列举区域中心的平均值、区域尺寸的平均值。作为另一参数的例子,包含可靠性、面部朝向、年龄、性别、人种、表情等。

在步骤s36中,判断是否残留可靠性为阈值t2以上的候选区域。详细地说,在由第一检测部112检测出的候选区域之中、被判断为是代表区域或关联区域的区域以外的候选区域之中,判断是否存在可靠性为阈值t2以上的区域。在存在可靠性为阈值g2以上的候选区域的情况下,返回到步骤s31而反复进行上述的处理。此时,被判断为是代表区域或关联区域的区域被从处理对象中排除,进行步骤s31~s35的处理。

图8是对对图5b所示的检测结果实施上述那样的整合处理的处理例进行说明的图。从候选区域411~417之中,例如候选区域411、415、417被分别决定为代表区域。然后,决定由候选区域411~413组成的整合区域421、由候选区域414~416组成的整合区域422、仅由候选区域417组成的整合区域423。

[区域选择部114]

区域选择部114从由区域整合部113进行整合后的多个整合区域之中选择设为第二检测部115进行的面部检测的对象的整合区域。区域选择部114基于以下基准而选择整合区域。

(1)不选择前帧中被判断为是面部的位置的整合区域

(2)从(1)以外的整合区域之中选择评价值为高位的规定数目个整合区域。

参照图9的流程图,对区域选择部114进行的区域选择处理进行说明。

在步骤s91中,区域选择部114获取前帧中被检测出的面部区域的位置。各帧中的最终的面部检测的结果被第二检测部115或者面部跟踪部116得到,检测出的面部区域的位置、尺寸、可靠性、属性等信息被存储在检测结果存储部118中。区域选择部114通过参照检测结果存储部118,能够掌握前帧中被检测出的面部区域的位置。

在步骤s92中,区域选择部114通过将当前帧的整合区域的位置和前帧中的面部区域的位置进行比较,从选择对象中除去前帧中被判断为是面部的位置的整合区域。而且,在当前帧的整合区域与前帧中的面部区域是否一致的判断中,不仅可以考虑位置,也可以还考虑区域尺寸或区域内的图像的相似度等。

在步骤s93中,区域选择部114对于步骤s92之后剩余的整合区域,计算评价值。整合区域的评价值是,该整合区域内含有面部的概率越高则被计算得越高的值。作为评价值的例子,能够采用整合区域的可靠性。整合区域的可靠性能够基于第一检测部112对构成整合区域的各个面部候选区域的可靠性(检测得分)来决定。例如,能够采用第一检测部112的可靠性的平均值作为整合区域的可靠性。而且,作为整合区域的评价值,也可以采用整合区域的尺寸,也可以使尺寸越大则评价值越高。这是因为,可以认为,区域越大,则包含面部的概率越高。此外,作为整合区域的评价值,也可以采用整合区域内的对象物的朝向。能够适当设定将哪个朝向的评价提高,但考虑在朝向正面时使评价值最高,按设为朝向斜、横、后的顺序次之。也可以考虑多个项目来决定评价值。例如,也可以通过基于可靠性的第一评价值和基于区域尺寸的第二评价值(简单平均、加权平均)的平均来决定评价值。而且,在先前的帧中由第二检测部115进行了检测处理的情况下,也可以考虑基于第二检测部115的检测可靠性来决定评价值。

在步骤s94中,区域选择部114选择评价值为高位的规定数目个整合区域。规定数目个被决定为使得面部检测处理在1帧期间内结束的值。因此,规定数目个是应该基于面部检测装置100的计算资源的多少来决定的参数。而且,也可以附加评价值为阈值以上这样的条件作为整合区域选择的条件。这样,能够抑制含有面部的概率较低的区域成为第二检测部115的处理对象的情况。这里的阈值是若评价值小于该阈值则视为在整合区域中不含有面部的值。

[第二检测部115]

第二检测部115判定在由区域选择部114选择出的整合区域的各自中是否含有面部。第二检测部115是使用被称为卷积神经网络(cnn)的多层神经网络进行学习的识别器。通过异构(heterogeneous)学习,不仅能够进行面部/非面部的判别,还能够进行面部朝向、年龄、性别、人种、表情等多个任务的判别。本实施方式的第二检测部115也实现这些判别任务。

有关由第二检测部115检测为面部的区域的信息被存储在检测结果存储部118中。而且,有关由第二检测部115检测为不是面部的整合区域的信息也可以也被存储在检测结果存储部118中。

[面部跟踪部116]

面部跟踪部116在当前帧中检测前帧中被检测出的面部。面部跟踪部116的跟踪处理能够采用公知的任意跟踪算法。面部跟踪部116仅将前帧中被检测出的面部区域的周围作为对象来检测面部。由于跟踪处理这样进行,所以能够高速地执行。由面部跟踪部116检测出的面部区域的信息被存储在检测结果存储部118中。

[结果输出部117]

结果输出部117输出有关由第二检测部115以及面部跟踪部116检测出的面部区域的检测结果。结果输出部117关于检测结果的可靠性为阈值以上的整合区域输出表示被检测出面部的结果信息。可靠性低于阈值的整合区域也可以不包含在结果信息中。检测结果信息至少包含面部区域,除此之外,优选包含可靠性、面部的朝向、年龄、性别、人种、表情等的一个以上。

结果输出部117也可以以任何方式输出检测结果信息。例如,结果输出部117可以在画面上显示检测结果信息,也可以存储在存储装置中,还可以通知给其他模块和其他装置,还可以进行它们之中的多个。

[检测结果存储部118]

在检测结果存储部118中存储由第二检测部115以及面部跟踪部116检测出的面部区域的位置、尺寸、属性等信息。而且,在检测结果存储部118中还包含被判断为不包含面部的整合区域,关于第二检测部115进行了检测处理的各整合区域,也可以存储面部检测的可靠性(检测得分)。

<处理流程>

参照图10的流程图,对本实施方式中的面部检测处理进行说明。而且,应注意的是,该流程图是概念性地说明本实施方式中的面部检测处理的图,在实施方式中不需要实现如该流程图那样的处理。

在步骤s1001中,从图像输入部111获取的运动图像数据之中,获取设为处置对象的帧图像。而且,不需要将运动图像的所有帧设为面部检测处理的对象,也可以每隔几帧进行面部检测处理。以下,将步骤s1001中获取的帧图像称为当前帧图像。而且,将至此为止作为处理对象的帧图像称为前帧图像。

接着,在步骤s1002中,获取对前帧图像的检测结果,掌握前帧中被检测为面部区域的区域。在当前帧图像中,对于在前帧中被判断为不是面部区域的区域,通过步骤s1003~s1006的处理进行面部检测。另一方面,对于在前帧中判断为面部区域的区域,通过步骤s1007进行面部跟踪。

而且,在图10的流程图中,说明了步骤s1003~s1006的处理是对前帧中被判断为不是面部区域的区域进行的处理,但如果在前帧中被检测出的面部区域不成为步骤s1006的第二检测处理的处理对象,则该区域也可以成为步骤s1003~s1005的处理对象。

在步骤s1003中,第一检测部112对整个当前帧图像,执行使用了haar-like特征量和adaboost的基于比较轻量的算法的面部检测处理。第一检测部112进行的面部检测处理如参照图4、图5等说明的那样。

如上述,第一检测部112对一个面部的周边检测多个面部候选区域,所以在步骤s1004中,区域整合部113将被估计为与一个面部对应的多个面部候选区域进行整合而生成整合区域。区域整合处理如使用图6、图7等说明的那样。

在步骤s1005中,区域选择部114选择在步骤s1005中被整合的整合区域之中的一部分。如上述,区域选择部114除去前帧中被判断为面部的位置的整合区域,选择评价值为高位的规定数目个整合区域。在本实施方式中,在区域选择处理中,通过除去与前帧中被检测出的面部区域对应的整合区域,将前帧中被检测出的面部区域以外作为第二检测部115进行的处理的对象。

在步骤s1006中,第二检测部115将在步骤s1005中选择出的整合区域作为对象进行使用了深度学习算法的面部检测处理。第二检测部115的检测结果被存储在检测结果存储部118中。

在步骤s1007中,面部跟踪部116进行前帧中被检测出的面部的跟踪处理,在当前帧中检测位置。面部跟踪部116将跟踪处理的结果存储在检测结果存储部118中。

将第二检测部115的检测结果和面部跟踪部116的跟踪结果相加得到的结果是当前帧中的面部检测结果。在步骤s1008中,等待第二检测部115进行的检测处理和面部跟踪部116进行的跟踪处理这双方完成,确定对当前帧图像的检测结果。

在步骤s1009中,结果输出部117输出检测结果。例如,将在帧图像中重叠了表示面部区域的矩形的图像显示在输出装置106(显示器)上。

在步骤s1010中,判定面部检测处理是否结束。面部检测的结束,例如可以由用户明示地指示,也可以在结束了图像的输入的时刻结束面部检测。在继续面部检测处理的情况下,返回到步骤s1001,对于后续帧反复进行同样的处理。

参照图11a~图11d,说明对连续的帧应用了本实施方式的面部检测处理时的动作例。这里,设区域选择部114进行的整合处理的选择数(规定数目)为2个,对处理拍摄了3个人物的图像的例子进行说明。

图11a是说明对第一帧的处理的图。这里,第一检测部112以及区域整合部113进行的处理的结果,获取了5个整合区域a~e。在处理第一帧时,由于不存在检测完毕的面部,所以全部的整合区域成为应用了第二检测部115的检测处理的对象的候选。这里,设区域选择部114进行的区域选择的结果是,评价值为高位的两个整合区域b、c被选择。第二检测部115将整合区域b、c作为对象进行使用了深度学习算法的面部检测处理,从整合区域的b、c这双方检测面部。由此,在第一帧中被判定为,整合区域b、c是面部区域。

图11b是说明对第二帧的处理的图。本次设区域b、c中存在的面部为面部跟踪部116进行的跟踪处理的对象。面部跟踪部116从与第一帧几乎同样的位置检测面部。

而且,由于设想在帧间构图中没有大幅度的变更,所以第一检测部112以及区域整合部113的结果与第一帧是同样的,5个整合区域a~e被获取。这里,由于区域b、c在1帧中被判断为面部区域,所以成为区域选择部114进行的选择的对象之外。设区域选择部114从区域a、d、e之中选择了评价值为高位的两个整合区域a、d。第二检测部115将整合区域a、d作为对象进行使用了深度学习算法的面部检测处理,判断为,整合区域d是面部区域但整合区域a不是面部区域。

以上的处理的结果,在第二帧中被判定为,整合区域b、c、d是面部区域。

图11c是说明对第三帧的处理的图。本次区域b、c、d中存在的面部在面部跟踪部116进行的跟踪处理中成为对象。面部跟踪部116从与第二帧几乎同样的位置检测面部。

而且,由于设想在帧间构图中没有大幅度的变更,所以第一检测部112以及区域整合部113的结果与第一帧是同样的,5个整合区域a~e被获取。这里,由于区域b、c、d在1帧中被判断为面部区域,所以成为区域选择部114进行的选择的对象之外。因此,区域选择部114选择区域e。第二检测部115将整合区域e作为对象进行使用了深度学习算法的面部检测处理,判断为整合区域e不是面部区域。

以上的处理的结果,在第三帧中被判定为,整合区域b、c、d是面部区域。

图11d是说明对第四帧的处理的图。本次,区域b、c、d中存在的面部成为在面部跟踪部116进行的跟踪处理中继续成为对象。面部跟踪部116从与第三帧几乎同样的位置检测面部。

这里说明了图像中仅包含三个面部的例子,但即使是包含更多的面部的情况,通过反复进行上述的处理,最终由第二检测部115检测全部面部,之后能够由面部跟踪部116进行跟踪。

在上述说明中,说明了使得第三帧中仅整合区域e被选择,但整合区域a也可以被选择。同样,在4帧之后整合区域e也可以被选择。而且,在图11的说明中,第一检测部112总是检测为区域a、e始终是面部区域,但由于整合区域a、e是非面部区域,所以随着时间的推移,能够期待不会被第一检测部112检测为面部区域。

<本实施方式的效果>

若将haar-like特征量+adaboost学习的面部检测处理与深度学习(cnn)的面部检测处理进行比较,则后者为高精度,但运算量也大。因此,在像移动信息终端那样的运算资源比较缺乏的计算机中,若对输入图像整体进行深度学习型的面部检测,则处理时间变长。对此,在本实施方式中,首先,使用简易型的面部检测处理筛减可能存在面部的区域,进而将候选区域进行整合并仅对整合区域进行深度学习型的面部检测。由此,能够期待兼顾检测精度和检测速度,但在图像中包含的面部的数目很大的情况下,会发生计算量变大、处理来不及的情况。因此,通过从整合区域之中选择(缩小)设为深度学习型的面部检测的对象的区域,则无论图像中包含的面部的数目如何,都可以进行高速的处理。

尽管通过限定进行深度学习型的面部检测的整合区域的数量来抑制处理负荷,但一次能够检测的面部的数目受限。因此,通过对运动图像应用本方法,检测完毕的面部通过面部跟踪处理进行检测,将未检测的面部通过深度学习型的面部检测处理进行检测,从而数帧后能够检测图像内的全部的面部。

(变形例1)

在上述实施方式中,区域选择部114通过从选择的对象中排除前帧中位于被检测出的面部区域的位置的整合区域,能够防止前帧中位于被检测出的面部的位置的整合区域成为第二检测部115进行的检测处理的对象。然而,即使通过上述以外的方法也可以得到同样的效果。

图12是表示本变形例的面部检测装置100的结构的图。与第一实施方式比较,不同点在于,在第一检测部112之前设置预处理部119。预处理部119参照检测结果存储部118,通过对前帧中被检测出面部的区域实施加工,使得第一检测部112不从该区域检测面部。

使用图13a以及图13b进行说明。例如,如图13a所示,设在第一帧的图像中面部从整合区域b、c中被检测出。在此情况下,对第二帧的图像,如图13b所示,作为预处理进行将面部区域(整合区域b,c)的位置用单色图案填充的加工。可以用单一颜色图案以外的图案图像置换面部区域,也可以对面部区域实施滤波处理。而且,设为加工的对象的区域不需要是整个面部区域,只要不被检测为面部,也可以只是其中的一部分。

这样,在第一检测部112检测的面部候选区域以及区域整合部113决定的整合区域中,不包含在前帧中被判断为面部区域的区域。因此,在本变形例中,区域选择部114不需要参照前帧的检测结果,仅简单地根据评价值来选择整合区域即可。

(变形例2)

在区域选择部114选择整合区域时,也可以利用前帧中的第二检测部115的诸如不是面部的检测结果,使得不选择在前帧中第二检测部115判断为不是面部的区域。其理由在于,由于第二检测部115进行的面部检测的检测精度高,所以面部没有被包含在该区域中的可能性高。

但是,若设想构图随时间变化,则不优选使得继续不选择曾经被判断为不是面部的区域。因此,最好使得区域选择部114在由第二检测部115判断为不是面部的几帧之间不进行选择。或者,也可以是,在前帧中被判断为不是面部区域的区域、且图像的相似度为阈值以上的情况下,区域选择部114不进行选择。

而且,也可以不进行这里说明的处理。其理由在于,若为非面部的区域,则被第一检测部112继续检测为面部的可能性较低。而且,其理由在于,若为非面部的区域,则即使被第一检测部112检测为面部,其可靠性也较低,被区域选择部选择的优先级下降。而且,其理由在于,即使假设成为被区域选择部114选择出的第二检测部115的处理对象,由于第二检测部115处理的区域的数量被限制,所以处理负荷成为课题的情况也得以避免。

(其他实施方式)

在上述说明中,第一检测部112是使用了haar-like特征量和adaboost学习的检测器,但不限于此。例如,作为特征量,能够使用hog(histgramofgradient)特征量、sift特征量、surf特征量、sparse特征量等任意的特征量。而且,学习单元也能够使用adaboost以外的boosting方法、或svm(支持向量机(supportvectormachine))、神经网络、决策树学习等任意的学习方法。除此之外,还能够采用使用了积分图像的特征量提取、或使用了级联结构的识别器等。

而且,第二检测部115也不限于cnn,也可以是基于rnn(递归神经网络(recurrentneuralnetwork))和sae(堆叠式自动编码器(stackedautoencoder))、dbn(深度信念网络(deepbeliefnetwork))、dnn(深度神经网络(deepneuralnetwork))等任意方法的检测器。而且,第二检测部115也可以不是使用了深度学习的检测器。但是,期望第二检测部115的检测算法相比第一检测部112的检测算法能够进行高精度的检测且计算量更大。

而且,不需要第一检测部112的算法为深度学习以外的方法且第二检测部115的算法为深度学习的方法,彼此不同即可。两个算法也可以都是非深度学习算法,还可以都是深度学习算法。例如,也可以第一检测部112的算法为使用了haar特征量和boosting学习法的方法,第二检测部115的算法为使用了hog特征量和boosting学习法的方法。或者,也可以是,第一检测部112的算法为cnn,第二检测部115的算法为dnn。

而且,在上述说明中检测对象的物体为面部,但检测对象物体也可以是任意的物体。即,本发明能够应用于检测任意的规定物体的物体检测装置。作为检测对象物体的极少数的例子,可以列举人体、特定的动物、汽车、特定的商品等。

而且,在上述说明中,物体检测装置被搭载在智能手机等的移动信息终端上,也可以被搭载在任何的装置上。本发明的物体检测装置能够安装在台式计算机、笔记本式计算机、平板式计算机、智能手机、移动电话、数字摄像机、数码相机等任意的信息处理装置(计算机)上。但是,通过搭载在运算资源比较缺乏的装置上,本发明的效果更显著。

(附注)

物体检测装置,其为从图像检测对象物的物体检测装置(10,100),具有:

第一检测单元(12,112),从所述图像检测存在所述对象物的多个候选区域;

区域整合单元(13,113),基于由所述第一检测单元检测出的多个候选区域,决定一个或者多个整合区域;

选择单元(14,114),从所述整合区域之中,选择至少一部分;以及

第二检测单元(15,115),将被选择出的整合区域作为对象,通过与所述第一检测单元不同的检测算法检测所述对象物。

标号说明

100:面部检测装置,111:图像输入部,112:第一检测部113:区域整合部,114:区域选择部,115:第二检测部,116:面部跟踪部,117:结果输出部,118:检测结果存储部。

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