专利名称:图像处理设备、图像处理方法和程序的利记博彩app
技术领域:
本发明涉及图像处理设备、图像处理方法和程序。具体地,本发明涉及通过在短时间内执行下面的分析而提取人物的图像处理设备。所述图像处理设备检测从运动图像流顺序获得的静止图像帧中包括的面部图像(预定对象的图像),根据在当前帧内检测到的面部图像和在前一个帧内检测并且已经被存储的面部图像的面部特征值来确定在当前帧内检测到的面部图像对应的人与在前一个帧内检测并且已经被存储的面部图像对应的人是否相同,并且当所述确定为肯定时存储两个面部图像之一。
背景技术:
近些年来,捕获运动图像的机会已经增加,这是因为使用硬盘和存储卡的摄像机和数字照像机已经被广泛使用。诸如使用运动图像分析来检测高亮部分的方法的各种方法已经被提出,以便从已经记录的大量运动图像文件迅速地检索和观看期望的运动图像文件和场景。这样的用于改善运动图像的检索便利性和观看便利性的方法的一个示例包括使用面部检测技术和面部识别技术来从运动图像文件中提取人物的方法。其他类似的方法已经被提出。
例如,日本未审查专利申请公布第2008-77536号公开了一种方法,用于对在通过解码运动图像文件而获得的静止图像序列中的相邻帧执行面部跟踪以便确定相同人的面部区域,并且最后执行分簇以便区分人物。
发明内容
在日本未审查专利申请公布第2008-77536号公开的方法中,必须输入运动图像文件的全帧或者运动图像文件的几乎全帧,以便精确地执行面部跟踪。这种方法适合于在拍摄期间执行面部跟踪的情况。但是,当要在拍摄后处理运动图像文件时,必须完全解码运动图像文件。当对用于近些年来已经使用的高清晰度电视的运动图像文件执行完全解码时,需要相当长的分析时间。因此,在日本未审查专利申请公布第2008-77536号公开的方法不实用。
期望在短时间内有效地提取人物以便进行分析。
根据本发明的一个实施例,提供一种图像处理设备,其包括面部检测器,其被配置来根据关于从运动图像流中顺序提取的静止图像帧的图像信息项,检测在所述静止图像帧中包括的面部图像;面部特征值计算单元,其被配置来根据关于由所述面部检测器检测的面部图像的图像信息项,计算面部图像的面部特征值;同一性确定单元,其被配置来根据由所述面部特征值计算单元计算的至少第一面部图像的面部特征值和第二面部图像的面部特征值,确定第一面部图像和第二面部图像是否表示同一人,所述第一面部图像包括在当前帧内并且由所述面部检测器检测,所述第二面部图像包括在前一个帧内并且已经由所述面部检测器检测和存储;以及合并处理器,其被配置来当所述同一性确定单元确定所述第一面部图像和所述第二面部图像表示同一人时仅存储所述第一面部图像和第二面部图像之一,并且当所述同一性确定单元确定所述第一面部图像和所述第二面部图像不表示同一人时存储所述第一面部图像和第二面部图像两者。
在该实施例中,面部检测器根据关于面部检测器从运动图像流中顺序提取的静止图像帧的图像信息项,检测在所述静止图像帧中包括的面部图像。注意,虽然在该实施例中检测面部图像,但是一般而言可以检测任意对象的图像。
例如,运动图像流包括预定间隔的多个内帧。通过对内帧的图像信息项执行数据解压缩处理,从运动图像流顺序提取关于静止图像帧的图像信息项。
面部特征值计算单元计算由面部检测器检测的面部图像的面部特征值。面部特征值计算单元检测面部特征位置,诸如眉毛两端、眼睛两端、眉毛中心和眼睛中心的位置,并且使用诸如伽柏(Gabor)滤波器的卷积操作来计算面部特征位置的面部特征值(局部特征值向量)。
同一人出现在运动图像流中。因此,表示同一人的多个面部图像包括在根据关于从运动图像流顺序提取的静止图像帧的图像信息项而检测的面部图像中。当要提取在运动图像流中包括的人物时,最后仅仅针对该人物确定单个面部图像。
同一性确定单元根据至少由面部特征值计算单元计算的第一和第二面部图像的面部特征值来确定在当前帧内检测的第一面部图像和在前一个帧内检测的已经被存储的第二面部图像是否表示同一人。同一性单元单元可以根据第一和第二面部图像的面部特征值来获得第一和第二面部图像之间的类似度,并且可以将所述类似度与门限值相比较,以便确定第一和第二面部图像是否表示同一人。
除了根据所述第一面部图像和第二面部图像的面部特征值之外,所述同一性确定单元还可以根据至少关于所述第一面部图像和第二面部图像的检测帧信息项或者关于所述第一面部图像和第二面部图像的帧之间的间隔的信息来确定所述第一面部图像和第二面部图像是否表示同一人。
所述同一性确定单元可以根据所述第一和第二面部图像的面部特征值来获得所述第一和第二面部图像之间的类似度,当所述类似度等于或者大于第一门限值时确定所述第一和第二面部图像表示同一人,以及当关于所述第一和第二面部图像的检测帧信息项和关于在所述第一和第二面部图像的帧之间的间隔的信息满足预定条件时,并且当所述类似度小于所述第一门限值并且等于或者大于第二门限值时,确定所述第一和第二面部图像表示同一人。
所述检测帧信息项的预定条件可以包括第一条件,其中,所述第一面部图像的检测帧的中心和所述第二面部图像的检测帧的中心之间的距离小于门限值;以及第二条件,其中,所述第一面部图像的检测帧的面积与所述第二面部图像的检测帧的面积的比率在从第一门限值到第二门限值的范围内。关于帧间隔的信息的预定条件可以对应于下述条件,其中,在所述第一和第二面部图像的帧之间的间隔小于门限值。
当所述同一性确定单元确定所述第一和第二面部图像表示同一人时,所述合并处理器存储所述第一和第二面部图像之一。当所述同一性确定单元确定所述第一和第二面部图像不表示同一人时,所述合并处理器存储所述第一和第二面部图像两者。
在该实施例中,检测在从运动图像流中顺序提取的静止图像帧内包括的面部图像,并且根据面部图像的面部特征值来确定在当前帧内检测的面部图像和在前一个帧内检测的面部图像是否表示同一人。当所述确定肯定时,仅仅存储所述面部图像之一。
在这种情况下,例如,每秒提取从中检测到面部图像的静止图像帧。因此,因为要分析的帧的数量小,能够以短分析时间来提取人物。例如,使用MPEG流或者AVC流,仅仅以预定间隔解码在该流内包括的内帧以便使用。即,所谓的完全解码是不必要的,因此实现了分析时间的减少。
如上所述,因为所述同一性确定单元至少根据关于所述第一和第二面部图像的检测帧信息项或者所述第一和第二面部图像的帧之间的间隔来确定所述第一和第二面部图像是否表示同一人,因此增强了确定精度。
即使在所述第一面部图像和所述第二面部图像表示同一人时由于照明条件而导致根据所述第一和第二面部图像的面部特征值所计算的所述第一和第二面部图像之间的类似度小的情况下,根据关于所述第一和第二面部图像的检测帧信息项和关于所述第一和第二面部图像的帧之间的间隔的信息是否满足预定条件,也能够确定所述第一面部图像和所述第二面部图像表示同一人。
所述图像处理设备还可以包括面部旋转角度检测器,其被配置来检测面部旋转角度,所述面部旋转角度用于表示由所述面部检测器检测的面部图像表示的面部的角度;以及噪声面部去除单元,其被配置来根据关于由所述面部旋转角度检测器检测的面部旋转角度的信息项,从由所述面部检测器检测的所有面部图像中去除在相对于前部的预定方向上具有大于门限值的面部旋转角度的面部图像。
对于表示明显面向侧面的面部、明显面向上的面部和明显面向下的面部的图像,有可能所述面部特征值计算单元未能精确地获得面部特征值,因此,所述同一性确定单元的确定精度可能变差。如上所述,通过去除、在相对于前部的预定方向上具有大于门限值的面部旋转角度的面部图像,预先去除了表示明显面向侧面的面部、明显面向上的面部和明显面向下的面部的图像。因此,能够防止所述同一性确定单元的确定精度变差。
图像处理设备还可以包括对比度分数计算单元,其被配置来根据关于由所述面部检测器检测到的面部图像的图像信息项来计算表示所述面部图像的对比度的对比度分数;以及噪声面部去除单元,其被配置来从由所述面部检测器检测到的所有面部图像中去除具有小于门限值的对比度分数的面部图像,所述对比度分数已经由所述对比度分数计算单元计算。
很有可能没有精确计算具有相当低对比度分数的模糊面部图像的面部特征值,导致同一性确定单元的确定精度变差。如上所述,通过去除具有小于门限值的对比度分数的面部图像,能够事先去除具有明显低对比度分数的模糊面部图像。因此,能够防止同一性确定单元的确定精度变差。
所述图像处理设备可以包括面部分簇单元,其被配置来至少根据由所述面部特征值计算单元计算的面部特征值来将所述合并处理器存储的面部图像分配到簇,以便将表示同一人的面部图像分配到单个簇。
当到达所述运动图像流的尾部时,所述合并处理器根据与从所述运动图像流顺序提取的静止图像帧对应的图像数据项来存储预定数量的面部图像。所述面部分簇单元至少根据所述特征值计算单元计算的特征值来执行分簇处理,以便将所述合并单元存储的面部图像中用于表示同一人的面部图像分配到单个簇。
如上所述,当所述合并处理器确定当前帧的面部图像和已经被存储的前一个帧的面部图像表示同一人时,存储所述面部图像之一。以这种方式,当到达运动图像流的尾部时,在所述合并处理器内最终存储的面部图像的数量减少。因此,能够减小面部分簇单元的处理时间。
所述面部分簇单元可以包括类似度计算单元、分层和分簇单元和簇确定单元。所述类似度计算单元可以根据从所述合并处理器存储的面部图像提取的各个面部图像对的面部特征值而计算对应的面部图像对的类似度。所述分层和分簇单元可以将所述合并处理器存储的面部图像分配到各个簇,并且根据由所述类似度计算单元计算的面部图像对的类似度,以所述面部图像对的类似度的降序而顺序合并包括面部图像对的每一个的簇。
所述簇确定单元可以根据由所述分层和分簇单元获得的以树形结构排列的簇信息项来确定从最上层的簇开始的簇上是否发生过度合并,并且通过将已经被确定为过度合并的簇的每一个划分为在所述分层和分簇单元执行合并处理之前所获得的两个簇来确定簇。
所述簇确定单元可以包括平均面部特征值计算单元,其被配置来计算平均面部特征值,所述平均面部特征值通过将在进行过度合并确定处理的簇内包括的面部图像的面部特征值进行平均来获得;以及单独类似度计算单元,其被配置来根据由平均面部特征值计算单元计算的平均面部特征值和在经历过度合并确定处理的簇内包括的面部图像之一的面部特征值来计算单独类似度。当在经历过度合并确定处理的簇内包括的面部图像中的至少之一的单独类似度小于用于与单独类似度进行比较的门限值时,确定经历过度合并确定处理的簇是过度合并的簇。用户设置单元可以允许用户设置用于与单独类似度进行比较的门限值。
所述簇确定单元还可以包括平均类似度计算单元,其被配置来通过将在进行过度合并确定处理的簇内包括的面部图像的单独类似度平均而计算平均类似度,所述单独类似度由单独类似度计算单元获得。当由平均类似度计算单元计算的平均类似度小于用于与平均类似度进行比较的门限值时,确定经历过度合并确定处理的簇是过度合并的簇。用户设置单元可以允许用户设置用于与平均类似度进行比较的门限值。
所述图像处理设备还可以包括代表性图像确定单元,其被配置来针对包括多个面部图像的每一个簇,从每一个簇中包括的多个面部图像确定代表性面部图像。代表性图像确定单元针对包括多个面部图像的每一个簇,至少根据关于多个面部图像的面部旋转角度信息项、面部表情信息项或者对比度信息项,从每一个簇中包括的多个面部图像确定代表性面部图像。
针对包括多个面部图像的每一个簇,代表性图像确定单元可以根据面部旋转角度信息项来减少面部图像的数量,以便获得包括具有比第一门限值小的面部旋转角度的面部图像的第一面部图像组。然后,代表性图像确定单元可以根据面部表情信息项来减少在第一面部图像组内包括的面部图像的数量,以便获得包括具有大于第二门限值的分数的面部图像的第二面部图像组,所述分数表示具有特定的面部表情的程度。所述代表性图像确定单元可以根据对比度信息项将第二面部图像组包括的面部图像中将具有最高的表示对比度程度的分数的面部图像确定为代表性图像处理。用户设置单元可以允许用户设置第一和第二门限值。
如上所述,因为执行了分簇处理,将合并处理器存储的面部图像中表示同一人的面部图像分配到单个簇,并且对包括多个面部图像的簇确定代表性面部图像,因此在其中在运动图像流中显示人物的面部图像的浏览器应用中,防止了同一人的面部图像的重叠,而且能够显示最佳的面部图像。
因此,检测从运动图像流顺序提取的静止图像帧中所包括的面部图像(特定对象的图像),并且根据面部图像的面部特征值来确定在当前帧内检测的面部图像与在前一个帧内检测到并且已经存储的面部图像是否表示同一人。当所述确定肯定时,存储所述面部图像之一。因此,以短的分析时间来有效地执行人物的提取。
因此,以类似度计算、分层和分簇处理、以及簇确定的顺序来连续执行,并且有效地执行分簇,其中,将多个面部图像(特定对象的图像)中表示同一人的面部图像分配到单个簇。
图1是图解根据本发明的一个实施例的图像处理设备的配置示例的方框图; 图2是图解在面部检测帧信息内包括的面部检测帧的位置信息和大小信息的平面图; 图3A和3B是图解作为面部旋转角度的偏转角、滚转角、俯仰角的图; 图4是图解与每个面部图像对应的数据(面部数据)的配置的图; 图5是图解作为人物数据的簇数据的配置的图; 图6是示意地图解了图像处理设备的处理过程的图; 图7是图解针对当运动图像流对应于MPEG视频流时以预定的周期出现的内帧(I帧)内的图像信息执行的数据解压缩处理和解码的图; 图8是图解图像处理设备的处理过程的流程图; 图9是图解由面部检测单元执行的面部图像检测处理的图; 图10是图解用于检测面部图像的静止图像帧(静止图像)内设置的检测帧FR-fa的图; 图11是图解当执行面部图像检测时使用的面部字典和使用面部字典对面部分数SCORE_fa的测量的图; 图12是图解在每对的位置信息和检测帧FR-fa之间的关系的图; 图13是图解静止图像帧(静止图像)IM-0以及通过减小静止图像帧IM-0的大小而获得的图像IM-0a和IM-0b的图; 图14是图解面部检测单元执行的面部图像检测处理过程的流程图; 图15是图解当面部特征值计算单元计算面部特征值(局部面部特征值向量)时检测的面部特征位置的图; 图16是图解当面部特征值计算单元计算微笑分数时对面部图像IM-1执行的标准化(normalization)处理的图; 图17是图解微笑字典和使用微笑字典对微笑分数SCORE_sm的测量的图; 图18是图解使用微笑字典来测量微笑分数SCORE_sm的处理的过程的流程图; 图19是图解通过增加对于各个像素获得的相邻像素的亮度值的差的平方值而获得对比度分数ContrastScore的方法的图; 图20是图解用于获得特定面部图像IM-2的对比度分数ContrastScore的方法的流程图; 图21是图解每次解码单元从运动图像流提取静止图像帧(静止图像)时由面部检测单元和面部特征值计算单元执行的操作的过程的流程图; 图22是图解由噪声面部去除单元执行的去除噪声面部图像的处理的过程的流程图; 图23A和23B是图解不是侧脸图像并且其偏转角是-5度的面部图像的示例、以及作为侧脸(噪声面部)的图像并且其偏转角是+50度的面部图像的示例的图; 图24A和24B是图解不是模糊的面部图像并且其对比度分数是350的面部图像的示例和作为模糊的面部图像(噪声面部图像)并且其对比度分数是120的面部图像的示例的图; 图25是图解由相同面部组合处理器执行的相同面部合并处理的过程的流程图; 图26A和26B是图解前一个面部图像的示例和当前的面部图像的示例的图,所述两个图像彼此非常类似并因此被确定为同一人的图像; 图27A和27B是图解前一个面部图像的示例和当前的面部图像的示例的图,所述两个图像不太类似,因此仅仅从类似度上并未被确定为同一人的图像; 图28A和28B是图解前一个面部图像的示例和当前的面部图像的示例的图,所述两个图像不太类似,但是仅在满足面部检测帧和在帧之间的时间段的条件时被确定为同一人的图像; 图29是图解由面部分簇单元执行的面部分簇处理的过程的流程图; 图30是图解由面部分簇单元使用类似矩阵对各对两个面部图像执行的类似度计算的图; 图31是图解通过根据使用类似矩阵的计算结果而以类似度的顺序划分面部对所产生的面部对列表的示例的表格; 图32是图解由面部分簇单元执行的使用类似矩阵的计算和产生面部对列表的处理的过程的流程图; 图33是图解在分层结构内包括的每个节点的数据(节点数据)的配置的图; 图34是图解通过分层分簇处理而产生的节点的分层结构的示例图; 图35是图解节点数据的具体示例的图; 图36是图解由面部分簇单元执行的分层分簇处理的过程的流程图; 图37是图解从最上节点依序堆叠节点的处理以便确定在由面部分簇单元执行的簇确定处理中是否发生过度合并的图; 图38是图解由面部分簇单元执行的簇确定处理的过程的流程图; 图39是图解由面部分簇单元执行的簇过度合并确定处理的过程的流程图; 图40是图解平均局部特征值向量(平均特征值)的计算的图; 图41是图解在簇确定处理中的簇的确定的示例的图; 图42是图解由面部分簇单元执行的代表性面部确定处理的过程的流程图; 图43A-43D是图解例如从下述面部图像中将是前脸图像并且具有均匀亮度的面部图像确定为代表性面部图像的处理的图不是前脸图像的面部图像、是前脸图像并且具有均匀亮度的面部图像、是前脸图像并具有较差亮度的面部图像、以及作为模糊面部图像的面部图像; 图44是图解当针对“A先生”到“K先生”的多个面部图像执行面部分簇处理时获得的一般结果的示例的图; 图45是用于表示在预测结果和实际结果之间的关系的混淆(confusion)表; 图46是当执行理想面部分簇处理时的混淆表; 图47是图解分簇(分类)结果和熵(平均信息值)之间的关系的第一图; 图48是图解分簇(分类)结果和熵(平均信息值)之间的关系的第二图; 图49是图解分簇(分类)结果和熵(平均信息值)之间的关系的第三图;以及 图50是图解执行图像处理设备的功能单元的处理操作的计算机内部配置的示例图。
具体实施例方式 以下将参考附图描述本发明的实施例。
整体设备的描述 图1是图解根据本发明的一个实施例的图像处理设备100的配置示例的方框图。图像处理设备100包括解码单元101、面部检测单元102、面部特征值计算单元103、噪声面部去除单元104、相同面部合并处理器105和面部分簇单元106。
解码单元101读取例如在硬盘(HDD)或者存储卡中记录的运动图像文件,并且大约每秒从在运动图像文件中包括的运动图像流提取静止图像帧。在运动图像流对应于MPEG(运动图像专家组)或者AVCHD(高级视频编码高清晰度)的视频流的情况下,解码单元101对于以预定周期出现的内帧的图像信息项执行数据解压缩处理,以便输出期望的静止图像帧的图像信息项。
面部检测单元102根据解码单元101连续提取的静止图像帧(静止图像)的图像信息项来检测在静止图像帧内包括的面部图像。面部检测单元102通过在例如以多个分辨率滑过面部检测帧的同时扫描每个静止图像帧而检测面部图像。但是,面部检测单元102检测面部图像的方法不限于此。以下将详细说明面部检测单元102。
每次面部检测单元102检测面部图像,面部检测单元102向所检测的面部图像分配用于指定面部图像的唯一标识符来作为面部ID。使用在运动图像流内包括的帧的对应的一个的帧编号和表示在所述对应的一个帧内的检测顺序的数字来产生每个面部ID。
面部检测单元102向所检测的各个面部图像添加面部ID,并且向面部特征值计算单元103提供面部图像信息项(在面部检测帧内的图像信息项)和面部检测帧信息项。在此,每个所述面部检测帧信息项包括位置信息和大小信息。如图2内所示,位置信息例如表示在静止图像帧内的检测帧DF的左上角的像素的位置(x,y)。如图2内所示,大小信息例如表示在静止图像帧内的检测帧DF的水平大小“宽度”和垂直大小“高度”。以像素的数量表示所述大小。
注意在这个实施例内,当从静止图像帧(静止图像)检测面部图像时,面部检测单元102检测用于表示所述面部图像的面部的角度的面部旋转角。因此,面部检测单元102作为面部旋转角度检测单元。面部检测单元102例如使用面部字典来检测面部图像,所述面部字典根据诸如AdaBoost的机器学习算法来学习。因为面部检测单元102包括用于多个面部旋转角度的面部字典,因此面部检测单元102与面部图像一起检测面部旋转角度。但是,检测方法不限于此。或者,可以使用检测在每个面部图像内的诸如眼睛、鼻子和嘴部的面部部分以便根据所述部分之间的距离关系或者所述部分之间的位置关系来检测面部旋转角度的方法。
面部旋转角度的方向包括三个角度,即偏转角、滚转角、俯仰角。如图3A内所示,以轴202为中心来限定偏转角。轴202与轴201垂直,轴201与连接人的右和左眼的线平行,并且大致延伸通过人的头部的中心。偏转角的右手方向表示负方向,并且偏转角的左手方向表示正方向。而且,如图3B内所示,以轴203为中心通过旋转而产生滚转角。轴203与轴201和轴202垂直,并且使得轴201水平的角度被确定为0度。而且,如图3A内所示,以轴201为中心来限定俯仰角,并且使得俯仰角在轴201的上侧或者下侧。面部向上转动的方向对应于正方向,而面部向下转动的方向对应于负方向。
面部检测单元102向所检测的面部ID加上所述面部ID,并且将面部旋转角度信息项(偏转角、滚转角、俯仰角)与面部图像信息项和面部检测帧信息项(x,y,宽度和高度)一起提供到面部特征值计算单元103。
面部特征值计算单元103根据由面部检测单元102检测的面部图像的图像信息项、即面部图像的面部检测帧的信息项来计算面部图像的面部特征值。面部特征值计算单元103检测面部特征位置,诸如眉毛两端的位置、眼睛两端的位置、眉毛的中心和眼睛的中心,并且使用诸如伽柏滤波器的卷积操作来计算在面部特征位置内的局部特征值向量(识别特征向量)。但是,用于计算局部特征值向量的方法不限于此。以下将详细说明面部特征值计算单元103。
注意,在这个实施例内,面部特征值计算单元103除了面部图像的面部特征值之外,还计算用于表示特定的面部表情的程度的分数,诸如用于表示微笑程度的微笑分数和用于表示对比度程度的对比度分数。因此,面部特征值计算单元103对应于微笑分数计算单元和对比度分数计算单元。
面部特征值计算单元103使用微笑字典来计算微笑分数,所述微笑字典根据诸如AdaBoost的机器学习算法来学习。但是,用于计算微笑分数的方法不限于此。而且,面部特征值计算单元103通过将针对各自像素获得的、相邻像素的亮度值之间的差的平方值彼此相加而计算对比度分数。但是,用于计算对比度分数的方法不限于此。以下将详细说明用于计算微笑分数的方法和用于计算对比度分数的方法。
面部特征值计算单元103将面部特征值、微笑分数和对比度分数与从面部检测单元102提供的面部检测帧信息项和面部旋转角度信息项一起提供到噪声面部去除单元104。
噪声面部去除单元104在随后的阶段去除包括侧脸的图像或者模糊面部图像的面部图像,所述侧脸的图像或者模糊面部图像可能对相同面部合并处理器105的处理和面部分簇单元106的处理有副作用。特别是,当业余爱好者拍摄运动图像时,图像的模糊经常发生,作为图像的对象的人经常移动,或者经常拍摄人的侧脸的图像。
在此,很可能面部特征值计算单元103未获得模糊的面部图像的精确面部特征值。因此,这很可能对相同面部合并处理器105的处理和面部分簇单元106的处理的精确性产生副作用。因此,噪声面部去除单元104对面部特征值计算单元103如上所述获得的对比度分数执行门限值处理,以便不向在后面阶段的处理操作提供模糊的面部图像。
类似地,很可能面部特征值计算单元103未获得侧脸图像的精确面部特征值。因此,这很可能对相同面部合并处理器105的处理和面部分簇单元106的处理的精确性产生副作用。因此,噪声面部去除单元104对面部检测单元102如上所述获得的面部旋转角度执行门限值处理,以便不向在后面阶段的处理操作提供侧脸图像。
噪声面部去除单元104去除具有比门限值(例如150)小的对比度分数的面部图像。而且,噪声面部去除单元104去除具有在相对于前部的预定方向上,即在大于门限值(例如45度)的偏转角的方向或者俯仰角的方向上的面部旋转角度的面部图像。下文将详细说明噪声面部去除单元104。
噪声面部去除单元104向相同面部合并处理器105提供在与从面部特征值计算单元103提供的面部图像对应的数据项(以下称为“面部数据项”)中除了与被去除的面部图像对应的面部数据项之外的面部数据项。
在此,将说明面部数据项的配置。图4是图解每个面部数据项的配置的图。所述面部数据项包括面部ID、面部检测帧信息、面部旋转角度信息、微笑分数、对比度分数和面部特征值。如上所述,面部检测单元102分配面部ID,并且面部检测单元102获得面部检测帧信息和面部旋转角度信息。而且,如上所述,面部特征值计算单元103获得面部特征值、微笑分数和对比度分数。
每次从噪声面部去除单元104提供在当前帧内包括的面部数据项时,相同面部合并处理器105执行合并相同的面部图像的处理。因此,相同面部合并处理器105对应于同一性确定单元和合并处理器。
因为相同面部合并处理器105对于相同的面部图像执行合并处理,因此减少了在到达运动图像流的尾部时最终存储的面部图像的数量。因此,在后面阶段面部分簇单元106执行人物分类处理的时间减少。例如,在持续拍摄单个人的长运动图像流中,如果未执行相同面部合并处理,则有可能在后面阶段面部分簇单元106的处理失败,因为在成千上万的帧内检测到该人的面部图像。
而且,因为相同面部合并处理器105对表示同一人的面部图像执行合并处理,因此,在到达运动图像流的尾部时最终存储的面部图像的数量减少。因此,由面部分簇单元106在后面阶段内执行的人物分类处理的精确性改善。一般地,当同一人的面部图像被一起存储时,要向面部分簇单元106提供的面部图像的数量越小,则人物分类处理的精确性越高。当要被提供到面部分簇单元106的同一人的面部图像的数量增加时,有可能发生过度划分,其中表示同一人的面部图像被划分为不同簇。
相同面部合并处理器105确定在当前帧内检测到的第一面部图像(当前面部图像)内的人和在前一个帧内检测并且被存储的第二面部图像(前一个面部图像)内的人是否是同一人。在这种情况下,针对该确定,相同面部合并处理器105设置根据所述两个面部图像的面部特征值计算的类似度、所述两个面部图像内的面部检测帧的位置、面部检测帧的大小和所述两个面部图像的帧之间的间隔(帧间隔)的各自门限值。
例如,如果帧间隔小、面部检测帧的位置彼此类似并且面部检测帧的大小彼此类似,则很可能在所述两个面部图像内的人对应于同一人。因此,即使由于例如照明条件而导致所述两个面部图像的类似度低,相同面部合并处理器105也确定在所述两个面部图像内的人是同一人。相反,如果帧间隔大并且所述两个面部图像的类似度低,则相同面部合并处理器105确定在所述两个面部图像内的人彼此不同。当相同面部合并处理器105确定在所述两个面部图像内的人对应于同一人时,仅仅存储所述两个面部图像之一,而当相同面部合并处理器105确定在所述两个面部图像内的人不是同一人时,存储所述两个面部图像。以下将描述相同面部合并处理器105。
当到达运动图像流的尾部时,相同面部合并处理器105向面部分簇单元106提供与最终存储的面部图像对应的面部数据项(参见图4)。
当到达运动图像流的尾部时,面部分簇单元106对在相同面部合并处理器105内最终存储的面部图像执行分簇处理,以便向单个簇分配表示同一人的面部图像。以这种方式,分类在运动图像流内的人物。面部分簇单元106至少根据面部图像的面部特征值来执行分簇处理。
在显示在运动图像流内的人物列表的浏览器应用中,为了简单,应当由单个面部图像表示用于表示同一人的面部图像。因此,面部分簇单元106从在作为所述分簇处理的结果所获得的簇内包括的多个面部图像中确定代表性的面部图像。面部分簇单元106根据例如面部旋转角度信息项、面部表情信息项和对比度信息项的至少之一来从所述多个面部图像确定代表性面部图像。以下将详细说明面部分簇单元106。
面部分簇单元106输出作为用于表示在运动图像流中的人物的人物数据项的簇的数据项。图5是图解作为人物数据项的每个簇数据项的配置的图。所述簇数据项包括簇ID、面部ID列表和代表性面部ID。簇ID是用于识别与簇数据项对应的簇的标识符。面部ID列表包括被分配到在对应于簇数据项的簇内包括的面部图像的面部ID。代表性面部ID用于识别当在簇内包括多个面部图像时如上所述确定的代表性面部图像。
现在说明在图1内所示的图像处理设备100的操作。
解码单元101读取在例如硬盘(HDD)或者存储卡内记录的运动图像文件,并且大约每秒从运动图像文件中的运动图像流提取静止图像帧。例如,在运动图像流对应于如图6的(A)和图7的(A)内所示的MPEG(运动图像专家组)的视频流的情况下,解码单元101执行数据解压缩处理,以便解码以预定周期出现的内帧(I帧)的图像信息项,从而顺序输出如图6的(A)和图7的(A)内所示的静止图像帧的图像信息项。
由解码单元101从运动图像流顺序提取的静止图像帧(静止图像)的图像信息项被提供到面部检测单元102。如图6的(C)内所示,面部检测单元102检测在静止图像帧内包括的面部图像。每次面部检测单元102检测到面部图像时,面部检测单元102向所检测的面部图像分配作为面部ID的、用于指定面部图像的唯一ID(标识符)。而且,面部检测单元102在所检测的面部图像内检测表示面部的角度的面部旋转角度。面部检测单元102向所检测的各个面部图像加上面部ID,并且向面部特征值计算单元103提供面部图像信息项、面部检测帧信息项(x、y、宽度和高度)与面部旋转角度信息项(偏转角、滚转角、俯仰角)。
面部特征值计算单元103根据面部检测单元102检测的面部图像的图像信息项来计算作为如图6的(C)内所示的面部图像的面部特征值的局部特征值向量(识别特征向量)。而且,面部特征值计算单元103根据面部检测单元102检测的面部图像的图像信息项来计算用于表示微笑程度的微笑分数和用于表示对比度程度的对比度分数。面部特征值计算单元103将面部特征值、微笑分数和对比度分数与从面部检测单元102提供的面部检测帧信息项和面部旋转角度信息项一起提供到噪声面部去除单元104。
噪声面部去除单元104去除包括侧脸图像或者模糊面部图像的面部图像,所述侧脸图像或者模糊面部图像可能副作用于在后面阶段相同面部合并处理器105的处理和面部分簇单元106的处理。因此,噪声面部去除单元104对面部特征值计算单元103获得的对比度分数执行如上所述的门限值处理,以便去除模糊的面部图像。而且,噪声面部去除单元104对面部检测单元102获得的面部旋转角度执行如上所述的门限值处理,以便去除侧脸图像。即,噪声面部去除单元104去除噪声面部图像(模糊面部图像和侧脸图像)。在与面部检测单元102获得的面部图像对应的面部数据项中,噪声面部去除单元104向相同面部合并处理器105提供除与噪声面部图像对应的面部数据项之外的面部数据项(包括面部ID、面部检测帧信息项、面部旋转角度信息项、微笑分数、对比度分数和面部特征值)。
每次从噪声面部去除单元104提供在当前帧内包括的面部数据项时,相同面部合并处理器105执行合并相同的面部图像的处理。在这种情况下,相同面部合并处理器105对根据所述两个面部图像的面部特征值计算的类似度、所述两个面部图像内的面部检测帧的位置、面部检测帧的大小和所述两个面部图像的帧之间的间隔(帧间隔)设置各自的门限值,以确定是否在两个面部图像内的人表示同一人。当相同面部合并处理器105确定在所述两个面部图像内的人表示同一人时,仅仅所述两个面部图像之一被存储,而当相同面部合并处理器105确定在所述两个面部图像内的人不是同一人时,存储所述两个面部图像两者。
通过对面部检测单元102从静止图像帧检测的面部图像进行的噪声面部去除单元104的处理和相同面部合并处理器105的处理,当到达运动图像流的尾部时,相同面部合并处理器105存储除了噪声面部图像之外的面部图像,并且同一人的面部图像被合并,如图6的(D)内所示。
当到达运动图像流的尾部时,相同面部合并处理器105向面部分簇单元106提供与最终存储在相同面部合并处理器105内的面部图像对应的面部数据项。面部分簇单元106执行分簇处理(分类处理),以便向单个簇分配同一人的面部图像。面部分簇单元106从作为分簇处理的结果所获得的簇内包括的多个面部图像确定代表性面部图像。
因为面部分簇单元106执行如上所述的分簇处理和代表性图像确定处理,因此面部分簇单元106输出与用于表示同一人的人物数据项具有较少重叠的人物数据项(簇的数据项),其用于表示在运动图像流内的人物。
图8是图解图1的图像处理设备100的处理过程的流程图。
在步骤ST1,图像处理设备100开始处理,并且进行到步骤ST2。在步骤ST2,图像处理设备100的解码单元101解码在运动图像文件内包括的运动图像流的内帧(I帧),以便提取静止图像帧(静止图像)的图像信息。
在步骤ST3,图像处理设备100的面部检测单元102试图检测静止图像帧中的面部图像,并且处理进行到步骤ST4。注意,在步骤ST3,图像处理设备100也与所述面部图像一起检测所述面部图像的面部旋转角度。
在步骤ST4,图像处理设备100确定是否检测到任何面部图像。当在步骤ST4内的确定为否定时,图像处理设备100返回到步骤ST2,并且解码单元101对下一个内帧(I帧)执行解码处理。另一方面,当在步骤ST4内的确定为肯定时,图像处理设备100进行到步骤ST5。
在步骤ST5,图像处理设备100的面部特征值计算单元103计算作为在步骤ST3内检测的面部图像的面部特征值的局部特征值向量。注意,在步骤ST5,图像处理设备100的面部特征值计算单元103也计算在步骤ST3内检测的面部图像的微笑分数和对比度分数。
在步骤ST6,图像处理设备100根据在步骤ST3内检测的面部旋转角度和在步骤ST5内计算的对比度分数来确定在步骤ST3内检测的面部图像内是否包括噪声面部图像(侧脸图像或者模糊面部图像)。当在步骤ST6的确定为肯定时,图像处理设备100在步骤ST7从在步骤ST3检测的面部图像中去除噪声面部图像,并且进行到步骤ST8。另一方面,当在步骤ST6的确定为否定时,图像处理设备100直接进行到步骤ST8。
在步骤ST8,根据基于所述两个面部图像的面部特征值计算的类似度、所述两个面部图像内的检测帧的位置、大小和要彼此相比较的两个面部图像的帧之间的间隔,图像处理设备100的相同面部合并处理器105确定在当前帧内检测到的每个面部图像与已经在前一个帧内检测到并且已经存储在相同面部合并处理器105内的面部图像的任何一个是否相同。
在步骤ST9,图像处理设备100将在当前帧内检测到的每个面部图像顺序设置为确定的对象,并且根据在步骤STR8内的确定结果确定在当前帧内检测到的每个面部图像内的人是否与在前一个帧内检测到的面部图像内的任何人相同。当在步骤ST9内的所述确定为肯定时,在步骤ST10,图像处理设备100的相同面部合并处理器105执行合并表示同一人的面部图像的处理,即仅仅存储表示同一人的面部图像之一的处理。其后,图像处理设备100进行到步骤ST11。另一方面,当在步骤ST9内的确定为否定时,作为所述确定的对象的面部图像被存储。其后,图像处理设备100进行到步骤ST11。
在步骤ST11,图像处理设备100确定是否到达运动图像流的尾部。当在步骤ST11内的所述确定为否定时,图像处理设备100返回到步骤ST2,并且解码单元101对下一个内帧(I帧)执行解码处理。另一方面,当在步骤ST11内的确定为肯定时,图像处理设备100进行到步骤ST12。
在步骤ST12,图像处理设备100的面部分簇单元106执行面部分簇处理。即,图像处理设备100执行分簇处理(分类处理),以便向单个簇分配表示同一人的面部图像。另外,对于包括多个面部图像的簇,图像处理设备100执行下述处理从在所述簇内包括的多个面部图像确定代表性面部图像,以便产生人物数据。在步骤ST12之后,图像处理设备100的处理在步骤ST13终止。
以下将详细说明在图1所示的图像处理设备100内包括的面部检测单元102、面部特征值计算单元103、噪声面部去除单元104、相同面部合并处理器105和面部分簇单元106。
面部检测单元 面部检测单元102根据已经由解码单元101顺序提取并且已经暂时存储在存储装置(未示出)内的静止图像帧(静止图像)的图像信息项(在执行灰度转换后获得的图像信息项)来检测在静止图像帧内包括的面部图像。而且,当从静止图像帧(静止图像)检测到面部图像时,面部检测单元102检测表示对应于面部图像的面部的角度的面部旋转角度。
例如,当检测图9的(A)所示的静止图像帧IM-0时,面部检测单元102检测到在静止图像帧IM-0内包括的面部图像IM-1,其被表示为图9的(B)的虚线框。在检测到面部图像IM-1后,面部检测单元102标准化面部图像IM-1,以便获得如图9的(C)所示的具有预定大小、即在这个实施例中水平大小80像素和垂直大小80像素的面部图像IM-2,以由面部特征值计算单元103处理。
面部检测单元102向所检测的面部图像添加面部ID,并且指令存储装置存储面部图像信息项(关于已经被标准化的面部检测帧内的面部图像的信息项)、面部检测帧信息项(位置信息项和大小信息项)和面部旋转角度信息项。然后,面部检测单元102在在后面阶段的适当时刻向面部特征值计算单元103提供所存储的信息项。
将描述由面部检测单元102执行的检测面部图像的处理的示例。在该检测处理中,如图10所示,在静止图像帧IM-0内设置具有预定大小、即水平大小S个像素和垂直大小S个像素的检测帧FR-fa。在这个示例中,所述S个像素对应于80个像素或者更多。如图10的箭头所示,检测帧FR-fa在静止图像帧IM-0上移动,以便顺序改变检测帧FR-fga的位置。然后,使用面部字典对由检测帧FR-fa限定的图像执行面部分数SCORE_fa的测量。根据面部分数SCORE_fa,确定由检测帧FR-fa限定的图像是否是面部图像。
面部字典包括pix_fa1(i)、pix_fa2(i)、θ_fa(i)和α_fa(i)的t4个组合(几百个组合),如图11的(B)所示。在此,如图12所示,pix_fa1(i)和pix_fa2(i)表示由检测帧FR-fa限定的图像内的两个点的位置。注意,在图12中,为了简单,仅仅示出了三对pix_fa1(i)和pix_fa2(i)。此外,θ_fa(i)表示pix_fa1(i)的亮度值和pix_fa2(i)的亮度值之间的差的门限值。另外,α_fa(i)表示要根据pix_fa1(i)的亮度值和pix_fa2(i)的亮度值之间的差与门限值θ_fa(i)之间的比较结果而增加或者减去的加权。省略pix_fa1(i)、pix_fa2(i)、θ_fa(i)和α_fa(i)的值的详细说明,这些值通过诸如AdaBoost的机器学习算法学习而获得。
如图11的(A)所示,面部分数SCORE_fa的测量如下执行。确定pix_fa1(i)、pix_fa2(i)、θ_fa(i)和α_fa(i)的每个组合是否满足表达式(1)。当所述确定为肯定时,执行表达式(2)。另一方面,当所述确定为否定时,执行表达式(3)。注意,在表达式(1)中,pix_fa1(i)表示其位置的亮度值,pix_fa2(i)表示其位置的亮度值。
pix_fa1(i)-pix_fa2(i)<θ_fa(i)(1) SCORE_fa=SCORE_fa+α_fa(i)(2) SCORE_fa=SCORE_fa-α_fa(i)(3) 根据如上所述测量的面部分数SCORE_fa而确定由检测帧FR-fa限定的图像是否是面部图像。注意,在如上所述的面部分数SCORE_fa的测量中,假定在满足表达式(1)时h(i)是1,在不满足表达式(1)时,h(i)是-1,并且以表达式(4)来表达所测量的面部分数SCORE_fa。
当面部分数SCORE_fa大于0时,由检测帧FR-fa限定的图像被确定为面部图像。另一方面,当面部分数SCORE_fa等于或者小于0时,由检测帧FR-fa限定的图像被确定为不是面部图像。注意,不仅0而且略微调整的除了0之外的任何值可以被用作用于所述确定的标准值。
注意,可能在静止图像帧IM-0内包括各种大小的面部图像。因此,当通过在如图10所示的静止图像帧IM-0内设置具有预定大小的检测帧FR-fa而检测面部图像时,仅仅检测对应于检测帧FR-fa的大小的面部图像。因此,为了检测在静止图像帧IM-0内包括的各种大小的面部图像,除了对静止图像帧IM-0内的图像,还对如图13所示的通过适当地减小静止图像帧IM-0的大小而获得的缩小图像IM-0a到IM-0d执行面部图像检测处理。
图14示出面部检测单元102执行的面部图像检测处理过程的流程图。
在步骤ST21,面部检测单元102开始面部图像检测处理,并且进行到步骤ST22。在步骤ST22,面部检测单元102将静止图像帧IM-0的缩小步长值S_NO设置为1。在步骤ST23,面部检测单元102从存储单元读取静止图像帧IM-0的图像信息,执行对应于缩小步长值S_NO的缩放(大小缩小处理),并且产生用于检测面部图像的缩小图像(其大小被缩小的静止图像帧)。
注意,当缩小步长值S_NO是1时,缩小率是1,即用于检测面部图像的缩小图像具有与静止图像帧IM-0相同的大小。而且,缩小步长值S_NO越大,则缩小率越小。使用具有较小缩小率的缩小图像检测的面部图像是在静止图像帧IM-0内的较大面部图像。注意,在此使用的面部检测帧信息(位置信息和大小信息)是静止图像帧IM-0的面部检测帧信息。
在步骤ST24,面部检测单元102在步骤ST23中产生的缩小图像的左上角设置检测帧FR-fa。在步骤ST25,面部检测单元102使用如上所述的面部字典来测量面部分数SCORE_fa。
在步骤ST26,面部检测单元102根据在步骤ST25测量的面部分数SCORE_fa来确定由检测帧FR-fa限定的图像是否是面部图像。在这种情况下,当面部分数SCORE_fa大于0时,面部检测单元102确定由检测帧FR-fa限定的图像是面部图像,而当面部分数SCORE_fa不大于0时,面部检测单元102确定由检测帧FR-fa限定的图像不是面部图像。
当面部检测单元102确定由检测帧FR-fa限定的图像是面部图像时,面部检测单元102进行到步骤ST27。在步骤ST27,面部检测单元102向所检测的面部图像加上面部ID,并且将关于由检测帧FR-fa限定的图像的信息(面部图像信息)与面部检测帧信息(位置信息和大小信息)一起存储在存储单元内。注意,如上所述,面部检测单元102在标准化面部图像后将表示S个像素×S个像素的面部图像的信息存储在存储单元内,以便具有要由面部特征值计算单元103处理的80个像素×80个像素的大小。
在步骤ST27之后,面部检测单元102进行到步骤ST28。当在步骤ST26确定由检测帧FR-fa限定的图像不是面部图像时,面部检测单元102直接进行到步骤ST28。在步骤ST28,面部检测单元102确定检测帧FR-fa是否已经到达静止图像帧IM-0的尾部。当在步骤ST28的确定为否定时,面部检测单元102进行到步骤ST29,其中,检测帧FR-fa移动到下一个位置。其后,面部检测单元102返回到步骤ST25,并且再一次执行如上所述的相同处理。注意,检测帧FR-fa的特定垂直位置在水平方向上移动一个像素。在垂直位置的水平方向上的移动结束后,检测帧FR-fa在垂直方向上移动一个像素,以便向下一个垂直位置移动。
当在步骤ST28内的确定为肯定时,面部检测单元102在步骤ST30确定缩小步长值S_NO是否对应于最后的缩小步长值S_NOmax。当在步骤ST30的确定为否定时,面部检测单元102在步骤ST31设置下一个缩小步长值S_NO+1。其后,面部检测单元102返回到步骤ST23,并且再一次执行如上所述相同的处理。
当在步骤ST30的所述确定为肯定时,已经对与所有的缩小步长值S_NO对应的面部图像执行了面部图像检测处理。因此,面部检测单元102在步骤ST32结束面部图像检测处理。
如上所述,当从静止图像帧(静止图像)检测到面部图像时,面部检测单元102检测用于表示在面部图像内的面部的角度的面部旋转角度。如上所述,当使用通过诸如AdaBoost的机器学习算法而学习的面部字典检测面部图像时,面部检测单元102同时使用用于不同的面部旋转角度的不同的面部字典。
当检测到面部图像时,面部检测单元102将与在检测处理中使用的面部字典对应的面部旋转角度确定为用于表示与所检测的面部图像对应的面部的角度的面部旋转角度。注意,当使用多个面部字典而测量的面部分数SCORE_fa大于0时,与获得最大的面部分数SCORE_fa的面部字典对应的面部旋转角度被确定为用于表示所检测的面部图像的角度的面部旋转角度。在图10的步骤ST27,面部检测单元102也在存储单元内存储关于面部旋转角度的信息。
面部特征值计算单元 面部特征值计算单元103根据关于面部图像的图像信息项(面部图像信息项)来计算由面部检测单元102检测的面部图像的面部特征值,并且在存储单元内存储面部特征值。而且,面部特征值计算单元103根据关于面部图像的图像信息项来计算用于表示微笑程度的微笑分数和用于表示对比度程度的对比度分数,并且在存储单元内存储微笑分数和对比度分数。然后,面部特征值计算单元103在后续阶段的适当时刻向噪声面部去除单元104提供面部特征值、微笑分数和对比度分数。
面部特征值计算单元103检测面部特征位置,诸如眉毛的两端、眼睛的两端、眉毛的中心和眼睛的中心的位置,并且使用诸如伽柏滤波器的卷积操作来计算面部特征位置的局部特征值向量(识别特征向量)。面部特征值计算单元103使用诸如被称为AAM(Active Appearance Models,主动式外观模型)的特定方法根据面部图像信息项和面部旋转角度信息项来检测面部特征位置。在下面的文件内描述该AAM。
F.Cootes,G.J.Edwards,and C.J.Taylor,″Active AppearanceModels″,Proc.Fifth European Conf.Computer Vision,H.Burkhardt andB.Neumann,eds,vol.2,pp.484-498,1998 在AAM方法中,精确地检测与在特定有限区域内的各种角度的面部相对应的面部图像的面部特征位置。因此,当要使用AAM方法检测面部特征位置时,需要一种系统,其中,对于其中要精确地检测面部特征位置的各个区域,检测与不同角度的面部对应的面部图像的不同面部特征位置。例如,检测面部特征位置的用于不同角度的多个检测器(未示出)被布置,并根据由面部角度信息表示的角度来使用所述检测器的适当的一个。
当使用AAM方法来检测面部特征位置时,面部特征值计算单元103选择适合于由面部旋转角度信息表示的面部旋转角度的多个检测器之一,向所选择的检测器提供面部图像信息,并且检测面部特征位置。
由面部特征值计算单元103检测的面部特征位置对应于例如在图15的(A)和(B)所示的位置。注意,图15的(A)是图解从面部前部拍摄的面部图像内检测到的面部特征位置的图,图15的(B)是图解在45度角拍摄的面部图像内检测到的面部特征位置。在图15的(A)和(B)中,由x标记表示的部分被检测为面部特征位置。
参见图15的(A),17个点被检测为面部特征位置,包括每个眉毛的两端(总共四个点,包括右眉毛的两点和左眉毛的两个点)、每只眼睛的两端和每只眼睛的中心(黑眼球)(总共六个点,包括右眼的三个点和左眼的三个点)、鼻子的两端和中心(总共三个点)、嘴部的两端和中心(总共四个点,包括对应于嘴部的两端的两个点、对应于上嘴唇的中心的一个点和对应于下嘴唇的中心的一个点)。在该实施例中,在单个面部图像内检测到17个面部特征位置的假定下继续进行说明。
图15的(A)的面部特征位置(由x标记表示)和图15的(B)的对应面部特征位置(由x标记表示)通过实线彼此连接,以便使得关联关系显然(注意,仅仅示出了眉毛的面部特征位置的关联关系和眼睛的关联关系)。
面部特征值计算单元103检测由面部检测单元102检测的各个面部图像的面部特征位置,并且根据面部特征位置信息项和各个面部特征位置的面部图像信息项计算作为面部特征值的局部特征值向量(识别特征向量)。由面部特征值计算单元103执行的用于计算局部特征值向量的方法的示例包括使用在所关心的面部特征位置附近的图像的计算方法;以及使用诸如伽柏滤波器或者高斯导数滤波器的卷积计算的方法。在这个实施例中,在使用伽柏滤波器来提取局部特征向量的假定下继续进行说明。
现在说明伽柏滤波器(伽柏滤波)的处理。如通常所知,人的视觉细胞包括其中每个对特定的方位具有选择性的细胞。人的视觉细胞包括对垂直线反应的细胞和对水平线反应的细胞。像人的视觉细胞那样,伽柏滤波器是空间滤波器,其包括多个滤波器,其中每个滤波器具有方位选择性。
伽柏滤波器在空间上用伽柏函数表达。如表达式(5)所示,伽柏函数g(x,y)的构成是载体s(x,y),其包括余弦分量;以及包络Wr(x,y),其对应于二维的高斯分布。
g(x,y)=s(x,y)Wr(x,y)(5) 使用多个函数由表达式(6)表示载体s(x,y)。在此,坐标值(u0,v0)表示空间频率,P表示余弦分量的相位。
s(x,y)=exp(j(2π(u0x+v0y)+P))(6) 由表达式(6)表示的载体可以被划分为实数分量Re(s(x,y))和虚数分量Im(s(x,y)),如表达式(7)所示。
Re(s(x,y))=cos(2π(u0x+v0y)+P) Im(s(x,y))=sin(2π(u0x+v0y)+P)(7) 另一方面,通过表达式(8)来表达对应于二维高斯分布的包络。
Wr(x,y)=Kexp(-π(a2(x-x0)r2+b2(y-y0)r2))(8) 在此,座标原点(x0,y0)表示该函数的峰值,并且常数a和b是高斯分布的尺度参数。下标r表示由表达式(9)表达的旋转操作。
(x-x0)r=(x-x0)cosθ+(y-y0)sinθ (y-y0)r=-(x-x0)sinθ+(y-y0)cosθ(9) 因此,从表达式(6)和(8),通过如表达式(10)所示的空间函数来表示伽柏滤波器。
g(x,y)=Kexp(-π(a2(x-x0)r2+b2(y-y0)r2))exp(j(2π(u0x+v0y)+P))(10) 在该实施例中,面部特征值计算单元103使用17个伽柏滤波器执行面部的眼睛、嘴部和鼻子的各自面部特征位置的计算处理。
假定以Gi表示第i个伽柏滤波器,从第i个伽柏滤波器获得的结果(伽柏喷射,Gabor Jet)表示为Ji,并且输入图像表示为I,则通过表达式(11)表示来自伽柏滤波器Gi的响应。
可以使用快速傅立叶变换高速执行表达式(11)的计算。在下面的说明中,通过表达式(11)获得的局部特征值被确定为如下表达式(12)所定义的局部特征值向量(识别特征向量)。
Ji={ji-1,ji-2,...,ji-n}(12) 如上所述,面部特征值计算单元103计算作为各个面部特征位置的特征值的局部特征值向量(识别特征向量)。即,面部特征值计算单元103计算对应于每个面部图像的17个面部特征位置的17个局部特征值向量的组,如表达式(13)所示,并且在存储单元中存储计算结果。
J1={j1-1,j1-2,j1-3,...,j1-n} J2={j2-1,j2-2,j2-3,...,j2-n} J3={j3-1,j3-2,j3-3,...,j3-n} … J17={j17-1,j17-2,j17-3,...,j17-n}(13) 面部特征值计算单元103根据面部检测单元102检测的面部图像的图像信息项(面部图像信息项)来计算用于表示微笑程度的微笑分数。如图16所示,面部特征值计算单元103对面部图像IM-2执行标准化(仿射变换),以便左眼和右眼位于预定坐标,从而产生具有预定大小,即在该实施例中的水平大小48个像素和垂直大小48个像素的标准化面部图像IM-3。
注意,已经根据左眼和右眼的位置标准化的面部图像IM-3的像素数量(48个像素×48个像素)小于已经预先被标准化的面部图像IM-2的像素数量(80个像素×80个像素)。这是因为面部图像IM-2应当具有使得精确地检测面部图像的面部特征值的大量像素(分辨率)。但是,标准化的面部图像IM-3用于检测整个面部的特征(微笑分数),因此即使小数量的像素也是有效的。因为标准化的面部图像IM-3具有小数量的像素,因此减少了存储使用量,并且容易高速地执行特征检测处理。
如图16所示,面部特征值计算单元103使用微笑字典来测量面部分数SCORE_sm。面部分数SCORE_sm用于确定标准化的面部图像IM-3是否包括微笑面部图像。
将描述测量面部分数SCORE_sm的处理。面部字典包括pix_sm1(i)、pix_sm2(i)、θ_sm(i)和α_sm(i)的t3个组合(几百个组合),如图17的(B)所示。在此,pix_sm1(i)和pix_sm2(i)表示标准化的面部图像IM-3内的两个点的位置。此外,θ_sm(i)表示pix_sm1(i)的亮度值和pix_sm2(i)的亮度值之间的差的门限值。而且,α_sm(i)表示要根据pix_sm1(i)的亮度值和pix_sm2(i)的亮度值之间的差与门限值θ_sm(i)之间的比较的结果而增加或者减去的加权。通过经由诸如AdaBoost的机器学习算法学习而获得pix_sm1(i)、pix_sm2(i)、θ_sm(i)和α_sm(i)的值。
如图17的(A)所示,面部分数SCORE_sm的测量如下执行。确定pix_sm1(i)、pix_sm2(i)、θ_sm(i)和α_sm(i)的每个组合是否满足表达式(14)。当所述确定为肯定时,执行表达式(15)。另一方面,当所述确定为否定时,执行表达式(16)。注意,在表达式(14)中,pix_sm1(i)表示其位置的亮度值,pix_sm2(i)表示其位置的亮度值。
pix_sm1(i)-pix_sm2(i)<θ_sm(i)(14) SCORE_sm=SCORE_sm+α_sm(i)(15) SCORE_sm=SCORE_sm-α_sm(i) (16) 图18是图解使用微笑字典来测量微笑分数SCORE_sm的处理过程的流程图。在步骤ST71,面部特征值计算单元103开始分数测量处理,并且进行到步骤ST72。在步骤ST72,面部特征值计算单元103将面部分数SCORE_sm设置为0。在步骤ST73,面部特征值计算单元103将i设置为1。
在步骤ST74,面部特征值计算单元103选择对应于pix_sm1(i)和pix_sm2(i)的亮度值。在步骤ST75,面部特征值计算单元103从pix_sm1(i)的亮度值减去pix_sm2(i)的亮度值。在步骤ST76,面部特征值计算单元103确定计算结果(pix_sm1(i)-pix_sm2(i))是否小于门限值θ_sm(i)(参见表达式(14))。
当在步骤ST76的确定为肯定时,面部特征值计算单元103进行到步骤ST77,并且将面部分数SCORE_sm加上加权α_sm(i)(参见表达式(15))。另一方面,当在步骤ST76的确定为否定时,面部特征值计算单元103进行到步骤ST78,在此,从面部分数SCORE_sm减去加权α_sm(i)(参见表达式(16))。
在步骤ST77或者步骤ST78之后,面部特征值计算单元103进行到步骤ST79。在步骤ST79,面部特征值计算单元103将i递增1。在步骤ST80,面部特征值计算单元103确定i是否大于t3。当在步骤ST80的确定为肯定时,确定对微笑字典内包括的所有t3个组合执行了处理,并且在步骤ST81结束测量微笑分数的处理。另一方面,当在步骤ST80的确定为否定时,面部特征值计算单元103返回到步骤ST74,并且再一次执行如上所述的处理。
面部特征值计算单元103计算如上所述由面部检测单元102检测的各个面部图像的微笑分数,并且在存储单元内存储所述微笑分数。
面部特征值计算单元103根据由面部检测单元102检测的面部图像的图像信息项(面部图像信息项)计算用于表示对比度程度的对比度分数。面部特征值计算单元103根据面部图像的图像信息项通过将针对各自像素获得的、相邻像素的亮度值之间的差的平方值彼此相加来计算对比度分数ContrastScore。
如图19的(A)所示,在计算对比度分数ContrastScore的处理时,在具有80个像素×80个像素大小的面部图像IM-2内设置具有2个像素×2个像素大小的方框BL。在方框BL内包括的四个像素中,以(x,y)表示左上像素的位置,以(x,y+1)表示左下像素的位置,以(x+1,y)表示右上像素的位置,以(x+1,y+1)表示右下像素的位置。
面部特征值计算单元103通过将值x和y在0到78的范围内改变而顺序移动方框BL,并且顺序将针对各自像素获得的、相邻像素的亮度值之间的差的平方值彼此相加。以这种方式获得对比度分数ContrastScore。
假定在像素(x,y)的亮度值和像素(x+1,y)的亮度值之间的差表示为[I(x,y)-I(x+1,y)],在像素(x,y)的亮度值和像素(x,y+1)的亮度值之间的差表示为[I(x,y)-I(x,y+1)],在像素(x,y)的亮度值和像素(x+1,y+1)的亮度值之间的差表示为[I(x,y)-I(x+1,y+1)],在像素(x,y+1)的亮度值和像素(x+1,y)的亮度值之间的差表示为[I(x,y+1)-I(x+1,y)],因此通过表达式(17)来表示对比度分数ContrastScore。注意,在表达式(17),在这个实施例中,N表示面部图像的像素数量,并且N为80×80。
x∈(0,80-2),y∈(0,80-2),N=80×80…(17) 图20是图解获得面部图像IM-2的对比度分数ContrastScore的处理过程的流程图。在步骤ST91,面部特征值计算单元103开始用于获得对比度分数的处理,并且进行到步骤ST92。在步骤ST92,面部特征值计算单元103通过将方框BL(2×2像素)内包括的像素中亮度值之间的差的平方值彼此相加来计算对比度分数。
在步骤ST93,面部特征值计算单元103确定方框BL要被移动到的部分是否存在。当方框BL要被移动到的部分存在于0-78的x和y的范围内时,面部特征值计算单元103确定存在方框BL要被移动到的部分。当在步骤ST93的所述确定为肯定时,面部特征值计算单元103返回到步骤ST92,并且处理对应于方框BL的下一个部分。
当在步骤ST93的确定为否定时,面部特征值计算单元103进行到步骤ST94,在此,面部特征值计算单元103将总的相加值除以面部图像IM-2的像素数量N,以便获得对比度分数ContrastScore。在步骤ST94之后,面部特征值计算单元103在步骤ST95结束处理。
面部特征值计算单元103计算如上所述由面部检测单元102检测的各个面部图像的对比度分数,并且在存储单元内存储对比度分数。
图21是图解每次解码单元101从运动图像流提取静止图像帧(静止图像)时面部检测单元102和面部特征值计算单元103执行的操作过程的流程图。
当解码单元101提取每个静止图像帧时,面部检测单元102和面部特征值计算单元103在步骤ST101开始处理。在步骤ST102,面部检测单元102将关于静止图像帧内的图像的信息转换为灰度级。当将YUV格式用作输入图像的格式时,面部检测单元102仅仅提取Y分量。当将RGB格式用作输入图像的格式时,面部检测单元102计算Y分量,如下面的表达式所示。
Y=(0.299*R+0.587*G+0.114*B) 在步骤ST103,面部检测单元102根据已经被转换为灰度级的静止图像帧的图像信息来检测面部图像,并且进一步检测用于表示由面部图像表示的面部的角度的面部旋转角度(参见图9到图14)。
在步骤ST104,面部特征值计算单元103根据关于由面部检测单元102检测的面部图像之一的信息来计算微笑分数SCORE_sm(参见图16-18)。在步骤ST105,面部特征值计算单元103根据关于由面部检测单元102检测的面部图像之一的信息来计算对比度分数ContrastScore(参见图19和20)。在步骤ST106,面部特征值计算单元103根据由面部检测单元102检测的面部图像之一的信息来检测面部特征位置(参见图15),以便获得面部特征值(局部特征值向量)。
在步骤ST107,面部特征值计算单元103确定是否已经处理了由面部检测单元102检测的所有面部图像。当在步骤ST107的确定为否定时,面部特征值计算单元103返回步骤ST104,并且计算下一个面部图像的微笑分数SCORE_sm、对比度分数ContrastScore和面部特征值。
当在步骤ST107的确定为肯定时,面部特征值计算单元103进行到步骤ST108,在此结束所述处理。
注意,在图21的流程图中,在关于从解码单元101向面部检测单元102提供的静止图像帧(静止图像)内的图像的信息已经被转换为灰度级的情况下,去除由面部检测单元102执行的、用于转换关于在静止图像帧(静止图像)内的图像的信息的处理(步骤ST102的处理)。而且,在图21的流程图中,不必以此顺序来执行步骤ST104到步骤ST106的操作。
噪声面部去除单元 噪声面部去除单元104去除包括侧脸或者模糊面部图像的图像的面部图像,所述侧脸图像或者模糊面部图像可能副作用于在后面阶段内的相同面部合并处理器105的处理和面部分簇单元106的处理。噪声面部去除单元104根据与从面部特征值计算单元103提供的面部图像对应的面部数据项(参见图4)去除噪声面部图像(诸如侧脸图像和模糊面部图像)。
图22是图解由噪声面部去除单元104执行的用于去除噪声面部图像的处理过程的流程图。每次从面部特征值计算单元103提供与面部检测单元102检测的面部图像对应的面部数据项时,噪声面部去除单元104对作为要处理的对象的面部图像顺序执行如图22的流程图所示的噪声面部图像去除处理。
在步骤ST111,噪声面部去除单元104开始处理,并且进行到步骤ST112。在步骤ST112,噪声面部去除单元104确定所关心的面部图像是否是侧脸图像,即噪声面部去除单元104查看关于在所关心的面部图像的面部数据内包括的面部旋转角度的信息。
在步骤ST113,噪声面部去除单元104确定偏转角是否在门限范围内。门限范围例如是±45度。例如,在图23A所示的面部图像具有-5度的偏转角,因此不是侧脸图像,而在图23B所示的面部图像具有+50度的偏转角,因此是侧脸图像(噪声面部图像)。
当在步骤ST113的确定为否定时(参见图23B),噪声面部去除单元104在步骤ST114确定所关心的面部图像是噪声面部图像(侧脸图像),并且去除所关心的面部图像。在步骤ST114之后,噪声面部去除单元104在步骤ST115结束处理。
另一方面,当在步骤ST113的确定为肯定时,噪声面部去除单元104进行到步骤ST116。在步骤ST116,噪声面部去除单元104确定所关心的面部图像是否是模糊面部图像,即噪声面部去除单元104查看与所关心的面部图像对应的面部数据内包括的对比度分数。
在步骤ST117,噪声面部去除单元104确定对比度分数是否大于门限值。所述门限值例如是150。例如,在图24A所示的面部图像具有对比度分数350,因此,不是模糊面部图像,而在图24B所示的面部图像具有对比度分数120,因此是模糊面部图像(噪声面部图像)。
当在步骤ST117的确定为否定时,噪声面部去除单元104进行到步骤ST114,在此,噪声面部去除单元104确定所关心的面部图像是噪声面部图像(模糊面部图像),并且去除所关心的面部图像。在步骤ST114之后,噪声面部去除单元104在步骤ST115结束所述处理。
另一方面,当在步骤ST117的确定为肯定时,噪声面部去除单元104确定所关心的面部图像不是噪声面部图像,因此在步骤ST118不去除所关心的面部图像。在步骤ST118之后,噪声面部去除单元104在步骤ST115结束处理。
注意,在图22的流程图中,当所关心的面部图像的偏转角在门限范围之外时,噪声面部去除单元104确定所关心的面部图像是侧脸图像(噪声面部图像),并且去除所关心的面部图像。另外,当所关心的面部图像的滚转角在门限范围之外时,噪声面部去除单元104可以确定所关心的面部图像是向上的面部的图像或者向下的面部的图像(噪声面部),并且可以去除所关心的面部图像。
相同面部合并处理器 每次从噪声面部去除单元104提供当前帧的面部数据项时,相同面部合并处理器105执行合并相同面部图像的处理。相同面部合并处理器105确定在当前帧内检测到的面部图像内的人与已经在前一个帧内检测到并且已经存储的面部图像内的人是否相同。在这种情况下,针对该确定,相同面部合并处理器105对根据所述两个面部图像的面部特征值计算的类似度、所述两个面部图像内的面部检测帧的位置、面部检测帧的大小和所述两个面部图像的帧之间的间隔(帧间隔)设置各自的门限值。
图25是图解由相同面部合并处理器105执行的相同面部合并处理过程的流程图。当从噪声面部去除单元104接收到表示当前帧的面部图像(除了噪声面部图像之外)的每个面部数据项时,相同面部合并处理器105对如图25所示的每个所述面部图像顺序执行相同面部合并处理。
在步骤ST121,噪声面部去除单元104开始处理,并且进行到步骤ST122。在步骤ST122,相同面部合并处理器105计算在当前帧内所关心的面部图像(当前面部图像)和已经在前一个帧内检测到并且已经存储的面部图像之一(前一个面部图像)之间的类似度。在这种情况下,相同面部合并处理器105使用作为由面部特征值计算单元103计算的面部特征值的、当前面部图像和前一个面部图像的局部特征值向量(参见表达式(13))来计算类似度。
在此,将描述用于获得类似度的方法。使用当前面部图像和前一个面部图像的局部特征值向量(面部特征值)来获得当前面部图像和前一个面部图像之间的类似度。在这种情况下,在当前面部图像的面部旋转角度和前一个面部图像的面部旋转角度彼此不同的情况下(参见图15的(A)和(B)),如果没有任何改变地使用两个面部图像的局部特征值向量,则类似度的计算精度变差。因此,在所述两个面部图像的面部旋转角度彼此不同的情况下,面部特征值计算单元103例如使用映射函数将前一个面部图像的局部特征值向量转换为与对应于当前面部图像的面部的角度相对应的局部特征值向量,其后获得类似度。
在当前面部图像的面部旋转角度设置为0度(参见图15的(A))并且前一个面部图像的面部旋转角度设置为45度(参见图15的(B))的情况下,将描述映射处理。在这种情况下,通过表达式(18)来表示当前面部图像的局部特征值向量,并且通过表达式(19)来表示前一个面部图像的局部特征值向量。注意,字符的上标J和j表示面部旋转角度。字符i表示用于识别面部特征位置的数字。在这个实施例中,因为要计算与17个面部特征位置对应的局部特征值向量,因此字符i对应于数字1-17之一。
执行映射处理,使用映射函数转换从对应于45度角的面部的面部图像提取的局部特征值向量,以便对应于从对应于0度角的面部的面部图像提取的局部特征值向量。表达式(20)表示在映射处理后获得的局部特征值向量。在表达式(20)中,字符J和j上方的“~”表示J和j是近似值。
使用表达式(21)来计算在表达式(20)内包括的元素(在表达式(20)的右侧的“{}”内包括的元素)。
即,使用表达式(19)内包括的所有元素(n个元素,包括Ji-1到Ji-n)通过预定映射函数f来获得表达式(20)内包括的元素j。在这种情况下,映射函数f与在前一个面部图像内包括的面部的角度兼容。而且,对于不同的面部特征位置准备不同的映射函数f。即,因为在这个实施例中检测所述17个面部特征位置,因此对于每个角度提供17个映射函数f。
用于映射处理的一般表达式表示如下。
表达式(22)表示在与具有角度θI的面部对应的前一个面部图像内包括的特征位置i的局部特征值向量。表达式(23)表示在与具有角度θR的面部对应的当前面部图像内包括的特征位置i的局部特征值向量。表达式(24)表示通过执行下述处理而获得的局部特征值向量执行映射处理,转换由表达式(22)获得的前一个面部图像的特征位置i的局部特征值向量,以便对应于从对应于角度θR的面部的面部图像提取的局部特征值向量。
表达式(25)表示在表达式(24)右侧的元素。即,表达式(25)的左侧表示在特征位置i的局部特征值向量的第k个元素的估计值。在表达式(25)的右侧, 是特征值的映射函数,用于使用与具有角度θI的面部对应的面部图像的特征位置i的局部特征值向量的所有元素,对与具有角度θR的面部对应的面部图像的特征位置i的局部特征值向量的第k个元素执行映射处理。
注意,虽然在这个实施例中所有的元素用于映射处理,但是不必将所有的元素都用于映射处理。例如,在所有元素中,可以确定基本上用于估计的元素,以便用于映射处理(以便被分配到映射函数)。即,在要输入的局部特征值向量和在映射处理后获得的局部特征值向量彼此具有明显的起因和效果关系时,不使用输入的局部特征值向量的所有元素作为映射函数的输入变量来执行映射处理,而是仅仅使用已经被确定为具有起因和效果关系的元素来执行映射处理。
然后,相同面部合并处理器105使用标准化的相关计算来计算类似度。当使用标准化的相关计算来计算类似度时,相同面部合并处理器105根据表达式(26)和表达式(27)来计算类似向量。
在表达式(12)和(20)内包括的元素被顺序分配到表达式(26),由此执行标准化相关计算。通过这一点,计算在通过表达式(27)获得的类似向量内包括的元素。换句话说,使用前一个面部图像的局部特征值向量(已经进行映射转换的局部特征值向量)(参见表达式(20))和当前面部图像的局部特征值向量(参见表达式(12)),计算(参见表达式(26))在前一个面部图像和当前的面部图像的相同面部特征位置之间的类似度。
注意,当与当前的面部图像对应的面部的角度是θR时,使用表达式(28)和(29),并且表达式(28)和(29)对应于上面的表达式(26)和(27)。
相同面部合并处理器105获得如上所述计算的类似向量的幅度(参见表达式(27)和(29)),并且将所述幅度用作类似度。
再参见图25的流程图,在步骤ST122后,相同面部合并处理器105进行到步骤ST123。在步骤ST123,相同面部合并处理器105将在步骤ST122获得的类似度与门限值Th1(第一门限值)相比较。假定在步骤ST122获得的类似度的最大值是100,并且门限值Th1是88。
在步骤ST124,相同面部合并处理器105确定类似度是否等于或者大于门限值Th1。当在步骤ST124的确定为肯定时,相同面部合并处理器105进行到步骤ST125,并且确定当前的面部图像和前一个面部图像包括表示同一人的各自的面部图像。例如,图26A和26B分别示出了前一个面部图像和当前面部图像的示例。所述两个面部图像的类似度是例如88,因此,确定这些面部图像表示同一人。
在步骤ST126,相同面部合并处理器105从所述两个面部图像确定代表性面部图像。在这种情况下,在所述两个面部图像中,将对应于最多地面向前方的面部的所述面部图像之一或者具有最高对比度分数的所述面部图像之一确定为代表性面部图像。在步骤ST127,相同面部合并处理器105存储对应于代表性面部图像的面部数据,并且丢弃不对应于代表性面部图像的面部数据。在步骤ST127之后,相同面部合并处理器105进行到步骤ST128,在此结束处理。
另一方面,当在步骤ST124内的确定为否定时,相同面部合并处理器105进行到步骤ST129,并且将在步骤ST122获得的类似度与门限值Th2(第二门限值)相比较。假定在步骤ST122获得的类似度的最大值是100,并且门限值Th2是0。
在步骤ST1200,相同面部合并处理器105确定类似度是否等于或者大于门限值Th2。当在步骤ST1200的确定为肯定时,相同面部合并处理器105进行到步骤ST1201。例如,图27A和27B分别示出了前一个面部图像和当前面部图像的示例。所述两个面部图像的类似度例如是3。
在步骤ST1201,相同面部合并处理器105比较所述两个面部图像的面部检测帧信息项,并且查看关于所述两个面部图像的帧之间的间隔的信息。在步骤ST1201,相同面部合并处理器105确定面部检测帧信息项和帧之间的间隔是否满足特定条件。例如,当面部检测帧的中心之间的距离小于80个像素,面部检测帧的面积比在从1∶0.5到1∶1.5的范围内,并且帧之间的间隔小于5.0秒的时候,确定满足所述条件。注意,80个像素是面部检测帧的中心之间的距离的门限值的示例,面积比1∶0.5和1∶1.5是面部检测帧的面积比的门限值的示例,并且5.0秒是帧之间的间隔的门限值的示例。
当满足所述条件时,相同面部合并处理器105在步骤ST125确定当前面部图像和前一个面部图像表示同一人。因此,即使当两个面部图像的类似度由于例如照明条件而低时,如果帧间隔短并且面部检测帧的位置和大小彼此类似,也确定当前面部图像和前一个面部图像表示同一人。
例如,图28A示出了静止图像帧(帧1),其中,通过面部检测帧DF1检测到前一个面部图像(参见图27A),图28B示出了静止图像帧(帧3),其中,通过面部检测帧DF2检测到当前面部图像(参见图27B)。在这种情况下,面部检测帧DF1的中心和面部检测帧DF2的中心之间的距离是30个像素,面部检测帧DF1与面部检测帧DF2的面积比是1∶1.5,并且帧之间的间隔是3.0秒。因此,满足面部检测帧和帧之间的间隔的条件。
在步骤ST125之后,相同面部合并处理器105进行到步骤ST126。相同面部合并处理器105在步骤ST126执行的操作与如上所述的相同,因此将省略其说明。
当在步骤ST1200或者步骤ST1202的确定为否定时,相同面部合并处理器105进行到步骤ST1203。在步骤ST1203,相同面部合并处理器105确定是否已经处理了所有的在前面部图像。当在步骤ST1203的确定为否定时,相同面部合并处理器105返回到步骤ST122,并且使用所关心的当前面部图像和下一个在前面部图像来执行处理。
当在步骤ST1203的确定为肯定时,相同面部合并处理器105进行到步骤ST1204,并且确定所关心的当前面部图像是对应于新出现的人的面部图像。在步骤ST1205,存储对应于所关心的当前面部图像的面部数据,其后,在步骤ST128结束处理。
注意,在图25的流程图所示的相同面部合并处理中,除了根据从当前面部图像和前一个面部图像的面部特征值计算的类似度之外,还根据检测帧信息项和关于所述两个面部图像的帧之间的间隔的信息来确定当前面部图像和前一个面部图像是否表示同一人。但是,可以仅仅根据从当前面部图像和前一个面部图像的面部特征值计算的类似度来进行所述确定。在这种情况下,在图25的流程图中,当在步骤ST124中类似度小于门限值Th1时,相同面部合并处理器105直接进行到步骤ST1203。
此外,相同面部合并处理器105可以仅仅根据面部图像的检测帧信息项和关于所述面部图像的帧之间的间隔的信息来在图25的流程图的步骤ST1202中进行所述确定。
面部分簇单元 当到达运动图像流的尾部时,面部分簇单元106对在相同面部合并处理器105内最终存储的面部图像执行分簇处理,以便向单个簇分配同一人的面部图像。以这种方式,对运动图像流内的人物进行分类。根据分簇处理的结果,面部分簇单元106从单个簇内包括的多个面部图像确定代表性面部图像。
图29是图解面部分簇单元106执行的面部分簇处理过程的流程图。
面部分簇单元106在步骤ST131开始处理,并且进行到步骤ST132。在步骤ST132,面部分簇单元106计算类似矩阵。即,面部分簇单元106根据从相同面部合并处理器105最终存储的面部图像所提取的面部图像对的特征值(局部特征值向量)来计算该面部图像对的类似度。因此,面部分簇单元106对应于类似计算单元。用于获得类似度的方法与在关于相同面部合并处理器105的说明中所述的方法相同。
假定相同面部合并处理器105最终存储n个面部图像,并且所述n个面部图像具有各自的面部ID f1到fn。在这种情况下,面部分簇单元106计算对应于图30的阴影部分的面部图像对的类似度。
而且,面部分簇单元106根据类似矩阵的计算结果按照类似度的降序分类面部图像对而产生和存储面部对列表,如图31所示。面部对列表包括作为项目的“等级”、“对”和“类似度”。在项目“对”内,列出了面部图像对的面部ID。在项目“类似度”内,列出了所计算的类似度。
图32是图解由面部分簇单元106执行的类似矩阵计算的过程和产生面部对列表的处理的流程图。面部分簇单元106在步骤ST141开始处理,并且进行到步骤ST142。在步骤ST142,面部分簇单元106计算面部图像对之一对的类似度。在步骤ST143,面部分簇单元106确定是否存在下一对。当在步骤ST143的确定为肯定时,面部分簇单元106返回到步骤ST142,并且计算下一对面部图像的类似度。
当在步骤ST143的确定为否定时,面部分簇单元106确定完成图30所示的类似矩阵,并且进行到步骤ST144。在步骤ST144,面部分簇单元106使用类似矩阵以类似度的顺序来分类面部图像对,以便产生面部对列表(参见图31)。在步骤ST144之后,面部分簇单元106进行到步骤ST145,在此,结束所述处理。
向回参见图29的流程图,面部分簇单元106在步骤ST133执行分层/分簇处理。在这种情况下,面部分簇单元106根据在步骤ST132产生的面部对列表(参见图31)而执行分层/分簇处理。在这种情况下,面部分簇单元106使用被称为“单个链接(Single Linkage)”的分簇方法而产生分层结构。因此,面部分簇单元106对应于分层/分簇单元。
具体地,面部分簇单元106确定相同面部合并处理器105最终存储的面部图像为各个簇,并且产生对应于面部图像的在最下层的多个叶。其后,面部分簇单元106参照在步骤ST132产生的面部对列表,并且以类似度的顺序依次合并包括对应于面部图像对的面部ID的簇,以便最后获得单个簇。
面部分簇单元106存储节点数据项,用于表示在分层结构内包括的节点。图33是图解每个节点数据项的配置图。每个节点数据项包括节点编号、上节点信息、下节点信息和叶列表。节点编号是对于每个节点唯一的ID。上节点信息是指向上层节点的指针,并且在最上节点的节点数据项内为“空”。下节点信息是指向下层节点的指针,并且在最下节点的节点数据项内是“空”。叶列表是被保留的最下层(终端节点)中的叶的面部ID列表,单个面部ID包括在终端节点(最下层)的每个节点数据项中。
图34是图解节点的分层结构的示例图。在该节点的分层结构内,15个面部图像最终存储在相同面部合并处理器105中,并且向各个15个面部图像分配面部ID f1到f15。在这种情况下,产生15个最下的叶(终端节点)。在图34的示例中,为了简单,节点编号1-15分配给与面部ID f1到f15对应的终端节点。
向回参见图31的面部对列表,因为对(f1,f3)分配了第一等级,因此产生具有节点编号16的父节点作为具有节点编号1和3并且在其叶列表中分别包括面部ID f1和f3的节点的上节点。然后,因为对(f7,f12)分配了第二等级,因此产生具有节点编号17的父节点作为具有节点编号7和12并且在其叶列表中分别包括面部ID f7和f12的节点的上节点。
然后,因为对(f11,f9)分配了第三等级,因此产生具有节点编号18的父节点作为具有节点编号11和9并且在其叶列表中分别包括面部IDf11和f9的节点的上节点。然后,因为对(f15,f9)分配了第四等级,因此产生具有节点编号19的父节点作为具有节点编号15和18并且在其叶列表中分别包括面部ID f15和f9的节点的上节点。以这种方式,产生节点的分层结构。
图35是图解在节点的分层结构中第19个节点数据的具体示例的图。向第19个节点数据分配节点编号“19”。上节点信息表示指向第26个节点的指针。下节点信息表示指向第15个和第18个节点的指针。叶列表表示已经保留的最下层中的叶的面部ID,即面部ID f9、f11和f15。
图36是图解由面部分簇单元106执行的分层分簇处理过程的流程图。面部分簇单元106在步骤ST151开始处理,并且进行到步骤ST152。在步骤ST152,面部分簇单元106产生对应于面部ID的、在最下层内的多个叶。在步骤ST153,面部分簇单元106参照面部对列表。
在步骤ST154,面部分簇单元106确定在所产生的叶内是否包括两个节点,所述两个节点的每一个具有包括第一等级的面部ID对的叶列表。当在步骤ST154的确定为肯定时,面部分簇单元106进行到步骤ST155,并在步骤ST155产生与第一等级的面部ID对对应的两个节点的父节点。
在步骤ST155后,面部分簇单元106进行到步骤ST156。当在步骤ST154的确定为否定时,面部分簇单元106直接进行到步骤ST156。在步骤ST156,面部分簇单元106确定是否已经到达了具有最低等级的一对面部ID。当在步骤ST156的确定为否定时,面部分簇单元106返回到步骤ST154,在此,对于具有下一等级的一对面部ID执行处理。另一方面,当在步骤ST156的确定为肯定时,面部分簇单元106在步骤ST157结束处理。
向回参见图29的流程图,面部分簇单元106在步骤ST134执行簇确定处理。在这种情况下,面部分簇单元106通过过度合并确定来调整簇。具体地,面部分簇单元106如下执行过度合并确定。根据关于在通过步骤ST133的用于分层的分簇处理而获得的树形结构中的簇的信息项(关于节点的分层结构的信息),面部分簇单元106确定在从最上层的簇开始的簇上是否发生过度合并。然后,面部分簇单元106将确定为已经过度合并的簇划分为在步骤ST133的分层/分簇处理进行的合并之前的两个原始簇。如此确定簇。因此,面部分簇单元106对应于簇确定单元。
如图37所示,面部分簇单元106顺序在堆栈(存储器堆栈)内堆叠(推入)从最上节点开始的节点,其后,提取(弹出)节点以便对各个节点执行过度合并确定处理。
图38是图解由面部分簇单元106执行的簇确定处理过程的流程图。面部分簇单元106在步骤ST161开始处理,并且进行到步骤ST162。在步骤ST162,面部分簇单元106向堆栈内推入最上节点。
在步骤ST163,面部分簇单元106确定所述堆栈是否为空。当在步骤ST163的确定为否定时,面部分簇单元106在步骤ST164弹出堆栈内包括的节点之一。
在步骤ST165,面部分簇单元106确定弹出的节点是否被过度合并。当在步骤ST165的确定为肯定时,面部分簇单元106进行到步骤ST166,并且向堆栈内推入紧接在当前节点下面的层内的节点。其后,面部分簇单元106返回到步骤ST163,并且再一次执行如上所述的处理。另一方面,当在步骤ST165的确定为否定时,面部分簇单元106进行到步骤ST167,在此,面部分簇单元106确定当前节点为最终的簇,并且在簇列表内存储当前的节点。其后,面部分簇单元106返回到步骤ST163,并且再一次执行如上所述的处理。
当在步骤ST163的确定为肯定时,面部分簇单元106直接进行到步骤ST168,在此,结束处理。
将详细说明在步骤ST165执行的簇过度合并确定处理。图39是图解由面部分簇单元106执行的簇过度合并确定处理过程的流程图。在步骤ST171,面部分簇单元106开始处理,并且进行到步骤ST172。在步骤ST172,对于每个节点,根据所关心的节点的叶列表,面部分簇单元106获得其面部ID包括在所关心的节点的叶列表中的面部图像的平均面部特征值。因此,面部分簇单元106对应于平均特征值计算单元。
在该实施例中,面部特征值对应于面部特征值计算单元103计算的局部特征值向量(参见表达式(12))。因此,当叶列表中包括N个面部ID时,面部分簇单元106对局部特征值向量中包括的各个元素将与N个面部图像对应的局部特征值向量相加,并且获得各个元素的平均值,由此在步骤ST172获得平均局部特征值向量,如图40所示。
在步骤ST173,面部分簇单元106获得在所关心的节点内包括的第一面部图像的面部特征值。在步骤ST174,面部分簇单元106计算作为在步骤ST172获得的平均面部特征值和在步骤ST173获得的面部特征值之间的类似度的单独类似度。而且,在步骤ST174,面部分簇单元106获得作为当前获得的单独类似度和前一个获得的单独类似度的平均值的平均类似度。
在步骤ST175,面部分簇单元106确定在步骤ST174获得的单独类似度是否比门限值大,所述门限值用于与单独类似度进行比较。假定在步骤ST172获得的平均特征值表示为faverage,在步骤ST173获得的面部特征值是f,在步骤ST174获得的单独类似度表示为Similarity(fi,faverage),并且用于与单独类似度进行比较的门限值表示为Threshold2。
在这种情况下,在步骤ST175,面部分簇单元106确定Similarity(fi,faverage)是否大于Threshold2。注意,“fi”的“i”表示该面部特征值用于节点中的第i个面部图像。
当在步骤ST175的确定为肯定时,面部分簇单元106进行到步骤ST176,并且确定是否已经处理了所有的面部图像。当在步骤ST176的确定为否定时,面部分簇单元106进行到步骤ST177,并且获得节点中的下一个面部图像的面部特征值。其后,面部分簇单元106返回到步骤ST174,并且再一次执行如上所述的处理。
另一方面,当在步骤ST176的确定为肯定时,面部分簇单元106进行到步骤ST178。在步骤ST178,面部分簇单元106确定在步骤ST174最终获得的平均类似度是否大于用于与平均类似度进行比较的门限值。
假定在步骤ST172最终获得的平均类似度值表示为Average(Similarity(fi,faverage)),并且用于与平均类似度进行比较的门限值表示为Threshold1。在这种情况下,面部分簇单元106在步骤ST178确定Average(Similarity(fi,faverage))是否大于Threshold1。
当在步骤ST178的确定为肯定时,面部分簇单元106进行到步骤ST179,并且确定所关心的节点(弹出的节点)不是过度合并的节点。其后,处理在步骤ST180结束。
当在步骤ST175或者步骤ST178的确定是否定时,面部分簇单元106在步骤ST181确定所关心的节点(弹出的节点)是过度合并的节点。之后,处理在步骤ST180结束。
在图39所示的簇过度合并确定处理中,在步骤ST175和步骤ST178分别使用的用于与单独类似度进行比较的门限值Threshold2和用于与平均类似度进行比较的门限值Threshold1是分簇设置参数。上面虽然未描述,但是面部分簇单元106连接到用户设置单元107(参见图1)。用户使用用户设置单元107任意地设置用于与单独类似度进行比较的门限值Threshold2和用于与平均类似度进行比较的门限值Threshold1。
图41是图解在图38的流程图所示的簇确定处理中的簇的确定的示例图。在簇确定的该示例中,与节点编号25、19、4、20、13和23对应的节点存储在簇列表内来作为最终的簇。
向回参见图29的流程图,面部分簇单元106在步骤ST135执行代表性面部确定处理。在这种情况下,面部分簇单元106确定作为分簇处理结果所获得的每个簇内包括的多个面部图像的代表性面部图像。因此,面部分簇单元106对应于代表性面部确定单元。面部分簇单元106对包括多个面部图像的每个簇,根据所述多个面部图像的面部旋转角度信息项(偏转、滚转、俯仰)、微笑分数和对比度分数来确定代表性面部图像。
图42是图解由面部分簇单元106执行的代表性面部确定处理过程的流程图。面部分簇单元106在步骤ST191开始处理,并且进行到步骤ST192。在步骤ST192,面部分簇单元106计算在所关心的簇内包括的多个面部图像的角度分数Sfront。根据表达式(30),使用作为在所关心的静止图像帧内的面部图像的面部旋转角度信息项的偏转角、滚转角、俯仰角来计算面部图像的角度分数Sfront。在表达式(30)中,系数a、b和c对应于各个角度的加权系数。
Sfront=a|roll|+b|pitch|+c|yaw|(30) 在步骤ST192,面部分簇单元106以如上所述计算的面部图像的角度分数Sfront的升序来划分面部图像。注意,因为面部图像的角度分数Sfront较小,因此对应于所述面部图像的面部的方向较为接近前部。在步骤ST193,面部分簇单元106减少面部图像的数量,以便获得第一面部图像组,其包括具有比前面部确定门限值更小的角度分数的面部图像。
在步骤ST194,面部分簇单元106以微笑分数的降序来划分在第一面部图像组内包括的面部图像。在步骤ST195,面部分簇单元106减少面部图像的数量,以便获得第二面部图像组,其包括具有比微笑门限值更大的微笑分数的面部图像。
在步骤ST196,面部分簇单元106以对比度分数的降序来划分在第二面部图像组内包括的面部图像。在步骤ST197,面部分簇单元106确定第二面部图像组包括的面部图像中具有最大对比度分数的面部图像为代表性面部图像。在步骤ST197之后,面部分簇单元106进行到步骤ST198,在此结束处理。
通过执行图42的流程图所示的代表性面部确定处理,面部分簇单元106在所关心的簇内包括的多个面部图像中确定要作为代表性面部图像的面部图像,其中,与所述面部图像对应的面部的方向接近前部,并且所述面部图像具有高的微笑分数和高的对比度分数。假定在一个簇内包括如图43A-43D分别所示的下述四个面部图像,即不对应于前脸的面部图像;对应于前脸并且具有均匀亮度的面部图像;对应于前脸并且具有不均匀亮度的面部图像;以及对应于前脸并且是模糊面部图像的面部图像。在这种情况下,将对应于前脸并且具有均匀亮度的面部图像确定为代表性面部图像。
注意,在图42的流程图所示的代表性面部确定处理中,在步骤ST193和步骤ST195分别使用的前脸确定门限值和微笑门限值是分簇设置参数。用户使用用户设置单元107(参见图1)任意地设置前脸确定门限值和微笑门限值。
虽然在图42的流程图所示的代表性面部确定处理中使用所有的面部旋转角度信息项、微笑分数和对比度分数,但是它们不是都必然用于代表性面部确定处理。即,仅仅其中一些可以用于代表性面部确定处理。而且,虽然使用微笑分数将具有高微笑分数的面部图像确定为代表性面部图像,但是可以将具有高程度的其他面部表情的面部图像确定为代表性面部图像。在这种情况下,使用面部特征值计算单元103计算其他面部表情的分数,而不是微笑分数,并且所获得的分数用于代表性面部确定处理。
面部分簇单元106输出关于在簇确定处理中确定为最终簇的簇的数据项。关于簇的数据项表示人物数据项,其用于在运动图像流中以表示同一人的人物数据项较少的重叠方式显示人物。
向回参见图29的流程图,在步骤ST135之后,面部分簇单元106进行到步骤ST136,在此,结束处理。
面部分簇的精度评估算法 将描述面部分簇处理的精度评估算法。根据面部分簇处理的精度评估算法来确定在面部分簇单元106执行的簇过度合并确定处理中使用的、用于与单独类似度相比较的门限值Threshold2和用于与平均类似度相比较的门限值Threshold1。
图44是图解当对表示人“A先生”到“K先生”的多个面部图像执行面部分簇处理时获得的结果的示例图。在这种情况下,有可能预定人的簇包括其他人的面部图像。例如,如图44的结果示例所示,“A先生”的簇包括面部图像“B先生”、“C先生”和“D先生”。其中表示不同人的面部图像被错误地确定为表示同一人的面部图像的状态意味着过度合并。而且,在所述结果的示例中,除了“B先生”的簇之外,“A先生”和“K先生”的簇包括“B先生”的面部图像。其中表示同一人的面部图像被错误地确定为不同人的面部图像的状态意味着过度划分。
图45是用于表示在预测结果和实际结果之间的关系的混淆表。在该混淆表内,c(i,j)表示在人i的簇内包括的人j的面部图像的数量。图46是当执行理想面部分簇处理时获得的混淆表。在这种情况下,当j不等于i时,c(i,j)是0。即,在人i的簇内包括的人j的面部图像的数量是0。
考虑熵(平均信息值),当如图47所示人A和B的面部图像分别被精确地划分为簇A和B时,熵H(X)是0。但是,当如图48所示人A和B的面部图像被划分使得簇A和B的每个包括其他人的一些面部图像时,熵H(X)大于0。而且,如图49所示,当人A和B的面部图像被划分使得簇A和B的每一个包括一半其他人的面部图像时(这是最差的划分),熵H(X)是1。
在面部分簇的精度评估算法中,使用两种概念、即混淆表(参见图45)和熵的组合,以便获得过度合并分数SCRc和过度划分分数SCRd。
即,通过下述方式来获得过度合并分数SCRc获得各个行的熵Entropy(row(n)),通过所述行中对应行的面部图像的数量来将每个熵Entropy(row(n))加权,并且将熵Entropy(row(n))彼此相加。通过下述方式来获得过度划分分数SCRd获得各个列的熵Entropy(column(m)),通过对应行的面部图像的数量来将每个熵Entropy(column(m))加权,并且将熵Entropy(column(m))彼此相加。注意,通过面部图像的数量来加权熵Entropy(row(n))和熵Entropy(column(m)),以便当在每个行内包括的面部图像的数量较大时,所述行较大地影响熵。
表达式(31)表示熵Entropy(row(n)),表达式(32)表示过度合并分数SCRc。表达式(33)表示熵Entropy(column(m)),并且表达式(34)表示过度划分分数SCRd。
而且,分别通过表达式(35)、(36)、(37)和(38)来获得p(n,m)、q(n,m)、p(n)和q(m)。
作为在面部分簇单元106执行的簇过度合并确定处理中使用的、用于与单独类似度相比较的门限值Threshold2和用于与平均类似度相比较的门限值Threshold1,提前获得使得过度合并分数SCRc和过度划分分数SCRd接近0的值。
如上所述,在图1所示的图像处理设备100中,相同面部合并处理器105根据在当前帧内检测到的面部图像与在已经存储的前一个帧内检测到的面部图像的面部特征值来确定在当前帧内检测到的面部图像内的人是否与在已经存储的前一个帧内检测到的面部图像内的人相同。当所述确定肯定时,仅仅存储两个面部图像之一。因此,例如,大致每秒提取解码单元101从其检测到面部图像的静止图像帧。于是,因为要分析的帧的数量较小,所以,实现了具有短分析时间的人物提取。在运动图像流例如对应于例如MPEG流或者AVC流的情况下,仅仅以预定间隔解码流内包括的内帧以使用,即不执行完全解码。结果,相当大地减少了分析时间。
而且,在图1所示的图像处理设备100中,除了当前面部图像和前一个面部图像的面部特征值之外,相同面部合并处理器105还根据所述两个面部图像的检测帧信息项和所述两个面部图像的帧之间的间隔来确定当前面部图像中的人和前一个面部图像中的人是否彼此相同。因此,改善了确定的精确性。假定即使所述两个面部图像表示同一人,例如由于照明条件的改变,导致使用所述两个面部图像的面部特征值获得的所述两个面部图像的类似度较低。在这种情况下,通过确定所述两个面部图像的检测帧信息项和所述两个面部图像的帧之间的间隔是否满足预定条件,确定所述两个面部图像表示同一人。
而且,在图1所示的图像处理设备100中,噪声面部去除单元104去除被确定为相对于前部具有预定角度,即例如其偏转角或者俯仰角大于门限值的面部图像。因此,去除表示相当大地面向侧面的面部、相当大地面向上方的面部和相当大地面向下方的面部的面部图像。因此,防止相同面部合并处理器105和面部分簇单元106的确定精确性变差。
而且,在图1所示的图像处理设备100中,噪声面部去除单元104去除具有由面部特征值计算单元103计算并且小于门限值的对比度分数的面部图像。因此,预先去除具有相当低的对比度和作为模糊面部图像的面部图像。因此,防止相同面部合并处理器105和面部分簇单元106的确定精确性变差。
在图1所示的图像处理设备100中,将面部分簇单元106布置在相对于相同面部合并处理器105的后续阶段。因此,面部分簇单元106分类相同面部合并处理器105存储的运动图像流中的面部图像,以便向单个簇分配用于表示同一人的面部图像。因此,有效地获得人物数据。
在图1所示的图像处理设备100中,当确定在当前帧内检测到的面部图像和在前一个帧内检测到的面部图像表示同一人时,相同面部合并处理器105仅仅存储所述两个面部图像之一。因此,当到达运动图像流的尾部时,在相同面部合并处理器105内最终存储的面部图像的数量减少。结果,用于由面部分簇单元106执行的处理的时段减少。
在图1所示的图像处理设备100中,面部分簇单元106顺序执行类似矩阵计算、分层/分簇处理和簇确定处理。因此,有效地执行其中向单个簇分配同一人的面部图像的分簇。
在图1所示的图像处理设备100中,面部分簇单元106执行分簇处理,其中,在相同面部合并处理器105存储的面部图像中将同一人的面部图像分配到单个簇,并且面部分簇单元106确定包括所述面部图像的簇的代表性面部图像。因此,在显示在运动图像流内的人物的面部图像的浏览器应用中,防止了同一人的面部图像的重叠,而且,显示最佳的面部图像。
注意,在图1所示的图像处理设备100中,由相同面部合并处理器105最终存储的所有面部图像经历由面部分簇单元106执行的面部分簇处理。但是,面部分簇单元106首先执行如上所述的类似矩阵计算。因此,当由相同面部合并处理器105最终存储的面部图像(人物候选)的数量太大时,可以限制要输入到面部分簇单元106的面部图像的数量。例如,在根据检测帧的大小、微笑分数或者对比度分数通过划分面部图像来确定要输入的面部图像的优先级后,面部图像的最大数量可以确定为100。
在图1的图像处理设备100中,噪声面部去除单元104布置在相对于相同面部合并处理器105的前一级。但是,可以去除噪声面部去除单元104。
在图1的图像处理设备100中,例如读取在硬盘(HDD)或者存储卡中记录的运动图像文件,并且从运动图像文件包括的运动图像流中提取人物。但是,本发明适应于从在使用诸如数字摄像机(便携式摄像机)或者数字照像机的运动图像拍摄设备拍摄运动图像的同时获得的运动图像流中提取人物的情况。
在图1所示的图像处理设备100中,从静止图像帧检测面部图像。类似地,本发明一般地适应于其中检测特定对象的图像的情况。
在该实施例中,解码单元101仅仅解码内帧(I帧)。但是,在允许可能需要长时间的分析的系统中,诸如数字归档系统,解码单元101可以解码在诸如MPEG视频信号的运动图像帧内包括的所有帧,并且解码单元101可以例如在随后的阶段向面部检测单元102提供解码帧以被处理。在这种情况下,当与仅仅使用内帧的处理相比较时,分析速度降低。但是,减少了人物检测的丢失。
注意,可以通过硬件或者软件来实现实施例中的图像处理设备100的功能单元。当通过软件来实现所述功能单元时,计算机根据在ROM(只读存储器)或者硬盘内存储的程序来执行每个功能单元的处理。
图50是图解执行功能单元的处理操作的计算机500的内部配置的示例图。CPU(中央处理单元)501根据在ROM 502内存储的程序来执行各种操作。RAM(随机存取存储器)503适当地存储当CPU 501执行各种操作时使用的数据和程序。
输入/输出接口505、CPU 501、ROM 502和RAM 503连接到总线504。包括键盘和鼠标的输入单元506连接到输入/输出接口505。输入/输出接口505向CPU 501输出从输入单元506输入的信号。此外,包括显示器和扬声器的输出单元507也连接到输入/输出接口505。
另外,包括硬盘的存储单元508和通过诸如因特网的网络而与其他设备通信的通信单元509也连接到输入/输出接口505。驱动器510也连接到输入/输出接口505,并且用于从诸如磁盘、光盘、磁光盘或者半导体存储器的记录介质读取数据或者向其写入数据。要处理的运动图像文件从通信单元509或者驱动器510输入,并且存储在诸如硬盘的存储单元508中。
本申请包括与在下述申请中公开的主题相关的主题2008年6月18日向日本专利局提交的日本在先申请JP 2008-159782,其整体内容通过引用包含在此。
本领域内的技术人员应当明白,可以根据设计要求或者其他因素来进行各种修改、组合、子组合和改变,它们均落在所附的权利要求或者其等同物的范围内。
权利要求
1.一种图像处理设备,包括
面部检测器,其被配置来根据关于从运动图像流中顺序提取的静止图像帧的图像信息项,检测在所述静止图像帧中包括的面部图像;
面部特征值计算单元,其被配置来根据关于由所述面部检测器检测的面部图像的图像信息项,计算面部图像的面部特征值;
同一性确定单元,其被配置来根据由所述面部特征值计算单元计算的至少第一面部图像的面部特征值和第二面部图像的面部特征值,确定第一面部图像和第二面部图像是否表示同一人,所述第一面部图像包括在当前帧内并且由所述面部检测器检测,所述第二面部图像包括在前一个帧内并且已经由所述面部检测器检测和存储;以及
合并处理器,其被配置来当所述同一性确定单元确定所述第一面部图像和所述第二面部图像表示同一人时仅存储所述第一面部图像和第二面部图像之一,并且当所述同一性确定单元确定所述第一面部图像和所述第二面部图像不表示同一人时存储所述第一面部图像和第二面部图像两者。
2.根据权利要求1的图像处理设备,还包括
解码单元,其被配置来通过对以预定间隔在所述运动图像流内包括的内帧的图像信息项执行数据解压缩处理而顺序提取关于所述静止图像帧的图像信息项。
3.根据权利要求1的图像处理设备,
其中,所述同一性确定单元根据所述第一面部图像和第二面部图像的面部特征值来获得所述第一面部图像和第二面部图像之间的类似度,并且将所述类似度与门限值相比较,以便确定所述第一面部图像和第二面部图像是否表示同一人。
4.根据权利要求1的图像处理设备,
其中,除了根据所述第一面部图像和第二面部图像的面部特征值之外,所述同一性确定单元还根据至少关于所述第一面部图像和第二面部图像的检测帧信息项或者关于所述第一面部图像和第二面部图像的帧之间的间隔的信息来确定所述第一面部图像和第二面部图像是否表示同一人。
5.根据权利要求4的图像处理设备,
其中,所述同一性确定单元
根据所述第一面部图像和第二面部图像的面部特征值来获得所述第一面部图像和第二面部图像之间的类似度,
当所述类似度等于或者大于第一门限值时,确定所述第一面部图像和第二面部图像表示同一人,以及
当关于所述第一面部图像和第二面部图像的检测帧信息项和关于在所述第一面部图像和第二面部图像的帧之间的间隔的信息满足预定条件时,并且当所述类似度小于所述第一门限值并且等于或者大于第二门限值时,确定所述第一面部图像和第二面部图像表示同一人。
6.根据权利要求5的图像处理设备,
其中,所述检测帧信息项的预定条件包括第一条件,其中,所述第一面部图像的检测帧的中心和所述第二面部图像的检测帧的中心之间的距离小于门限值;以及第二条件,其中,所述第一面部图像的检测帧的面积与所述第二面部图像的检测帧的面积的比率在从第一门限值到第二门限值的范围内;以及
关于帧间隔的信息的预定条件对应于下述条件,其中,在所述第一面部图像和第二面部图像的帧之间的间隔小于门限值。
7.根据权利要求1的图像处理设备,还包括
面部旋转角度检测器,其被配置来检测面部旋转角度,所述面部旋转角度用于表示由所述面部检测器检测的面部图像表示的面部的角度;以及
噪声面部去除单元,其被配置来根据关于由所述面部旋转角度检测器检测的面部旋转角度的信息项,从由所述面部检测器检测的所有面部图像中去除在相对于前部的预定方向上具有大于门限值的面部旋转角度的面部图像。
8.根据权利要求1的图像处理设备,还包括
对比度分数计算单元,其被配置来根据关于由所述面部检测器检测到的面部图像的所述图像信息项来计算用于表示所述面部图像的对比度的对比度分数;以及
噪声面部去除单元,其被配置来从由所述面部检测器检测到的所有面部图像中去除具有小于门限值的对比度分数的面部图像,所述对比度分数已经由所述对比度分数计算单元计算。
9.根据权利要求1的图像处理设备,还包括
面部分簇单元,其被配置来根据至少由所述面部特征值计算单元计算的面部特征值来将所述合并处理器存储的面部图像分配到簇,以便将表示同一人的面部图像分配到单个簇。
10.根据权利要求9的图像处理设备,
其中,所述面部分簇单元包括
类似度计算单元,其被配置来根据从所述合并处理器存储的面部图像提取的各个面部图像对的面部特征值而计算各个面部图像对的类似度,
分层和分簇单元,其被配置来将所述合并处理器存储的面部图像分配到各个簇,并且根据由所述类似度计算单元计算的面部图像对的类似度,以所述面部图像对的类似度的降序而顺序合并包括面部图像对的每一个的簇;以及
簇确定单元,其被配置来根据由所述分层和分簇单元获得的以树形结构排列的簇信息项来确定从最上层的簇开始的簇上是否发生过度合并,并且通过将已经被确定为过度合并的簇的每一个划分为在所述分层和分簇单元执行合并处理之前所获得的两个簇来确定簇。
11.根据权利要求10的图像处理设备,
其中,所述簇确定单元包括
平均面部特征值计算单元,其被配置来计算平均面部特征值,所述平均面部特征值通过将在经历过度合并确定处理的簇内包括的面部图像的面部特征值进行平均来获得;以及
单独类似度计算单元,其被配置来根据由平均面部特征值计算单元计算的平均面部特征值和在经历过度合并确定处理的簇内包括的面部图像之一的面部特征值来计算单独类似度;并且
当在经历过度合并确定处理的簇内包括的面部图像中的至少之一的单独类似度小于用于与单独类似度进行比较的门限值时,确定经历过度合并确定处理的簇是过度合并的簇。
12.根据权利要求11的图像处理设备,还包括
用户设置单元,其被配置来允许用户设置用于与单独类似度进行比较的门限值。
13.根据权利要求11的图像处理设备,
其中,所述簇确定单元还包括
平均类似度计算单元,其被配置来通过将在经历过度合并确定处理的簇内包括的面部图像的单独类似度平均而计算平均类似度,所述单独类似度由单独类似度计算单元获得,并且
当由平均类似度计算单元计算的平均类似度小于用于与平均类似度进行比较的门限值时,确定经历过度合并确定处理的簇是过度合并的簇。
14.根据权利要求13的图像处理设备,还包括
用户设置单元,其被配置来允许用户设置用于与平均类似度进行比较的门限值。
15.根据权利要求9的图像处理设备,还包括
代表性图像确定单元,其被配置来针对包括多个面部图像的每一个簇,从每一个簇中包括的多个面部图像确定代表性面部图像。
16.根据权利要求15的图像处理设备,
其中,所述代表性图像确定单元针对包括多个面部图像的每一个簇,根据至少关于多个面部图像的面部旋转角度信息项、面部表情信息项或者对比度信息项,从每一个簇中包括的多个面部图像确定代表性面部图像。
17.根据权利要求16的图像处理设备,
其中,针对包括多个面部图像的每一个簇,代表性图像确定单元
根据面部旋转角度信息项来减少面部图像的数量,以便获得包括具有比第一门限值小的面部旋转角度的面部图像的第一面部图像组;
根据面部表情信息项来减少在第一面部图像组内包括的面部图像的数量,以便获得包括具有大于第二门限值的分数的面部图像的第二面部图像组,所述分数表示具有特定的面部表情的程度;以及
根据对比度信息项将第二面部图像组包括的面部图像中具有最高的表示对比度程度的分数的面部图像确定为代表性图像处理。
18.根据权利要求17的图像处理设备,还包括
用户设置单元,其被配置来允许用户设置第一和第二门限值。
19.一种图像处理方法,包括步骤
根据关于从运动图像流中顺序提取的静止图像帧的图像信息项,检测在所述静止图像帧中包括的面部图像;
根据关于所检测的面部图像的图像信息项来计算面部图像的面部特征值;
根据至少所计算的检测到的第一面部图像和检测到的第二面部图像的面部特征值来确定第一面部图像和第二面部图像是否表示同一人,所述检测到的第一面部图像包括在当前帧内,所述检测到的第二面部图像包括在前一个帧内并且已经被存储;以及
当确定所述第一面部图像和所述第二面部图像表示同一人时仅存储所述第一面部图像和第二面部图像之一,并且当确定所述第一面部图像和所述第二面部图像不表示同一人时存储所述第一面部图像和第二面部图像两者。
20.一种程序,其使得计算机执行
根据关于从运动图像流中顺序提取的静止图像帧的图像信息项,检测在所述静止图像帧中包括的面部图像;
根据关于所检测的面部图像的图像信息项来计算面部图像的面部特征值;
根据至少所计算的检测到的第一面部图像和检测到的第二面部图像的面部特征值来确定第一面部图像和第二面部图像是否表示同一人,所述检测到的第一面部图像包括在当前帧内,所述检测到的第二面部图像包括在前一个帧内并且已经被存储;以及
当确定所述第一面部图像和所述第二面部图像表示同一人时仅存储所述第一面部图像和第二面部图像之一,并且当确定所述第一面部图像和所述第二面部图像不表示同一人时存储所述第一面部图像和第二面部图像两者。
全文摘要
本发明公开一种图像处理设备和图像处理方法及其程序。根据本发明的图像处理设备包括面部检测器,根据关于从运动图像流中顺序提取的静止图像帧的图像信息项,检测在静止图像帧中包括的面部图像;面部特征值计算单元,根据关于面部图像的图像信息项,计算面部图像的面部特征值;同一性确定单元,根据至少包括在当前帧内的第一面部图像的面部特征值和包括在前一个帧内的第二面部图像的面部特征值,确定第一面部图像和第二面部图像是否表示同一人;以及合并处理器,当第一面部图像和第二面部图像表示同一人时仅存储第一面部图像和第二面部图像之一,并且当第一面部图像和第二面部图像不表示同一人时存储第一面部图像和第二面部图像两者。
文档编号G06K9/00GK101610341SQ20091014249
公开日2009年12月23日 申请日期2009年6月18日 优先权日2008年6月18日
发明者赟 孙, 儿嶋环, 后藤智彦, 村田诚, 仓田雅友 申请人:索尼株式会社