专利名称:使用进化算法的面部识别的制作方法
技术领域:
本发明涉及图像识别领域,特别是为了快速有效的识别,使用遗传算法确定图像的哪些特征可以首选区别于其他的图像,和/或确定出快速有效的识别所需的不同特征的最小数目。
图像识别,特别是面部识别,在各种应用中日益成为一种流行特征。安全系统使用面部识别,对选定个体的访问予以授权或者拒绝,或者在识别出特定人物时启动警报器,或者在某一个体在人群中穿梭的时候,对其进行持续不断的跟踪等等。类似,住宅自动化系统正在被配置成区别家庭中的居住者,以便为每一位居住者定制此系统的特征。
大多数面部识别系统不直接比较图像来实现识别。而是使用一个预定义表征参数的集合描述每张脸的特征,例如脸型的椭圆率、眼睛之间的距离、下巴的形状等等,根据这些表征参数的比较搜索目标面部。设计这些表征参数的目的在于帮助区分不同脸的图像,以及同一张脸的不同图像之间的匹配。如此,目标图像可以和一组参考图像进行比较,并且根据表征参数,与目标图像匹配的可能参考图像的数量减少,更好的情况是减少到一个参考图像,该参考图像对应于和目标图像中的相同的面部。在受控环境中,例如配置了安全相机的前厅入口,在目标面部与授权面部库之间进行比较是一个相当简单的过程。之前已经在光线好的地方使用适当的姿势采集了每个被授权的个体的图像。要求进入安全机构的人需要按照指示站在相对于相机的某个位置,以达到和采集被授权人图像时最为匹配的环境。提供充足的光照以推动直接比较过程。
然而,对于大多数应用,要求目标个体摆好姿势是一种不切实际的限制。例如,大多数住宅的居住者,一般不会同意站在住宅的特定位置,以便让住宅自动化系统对自己进行识别。大多数安全系统的设计都不显眼,以便不阻碍正常的营业或是通行,如果每个走向或是通过一个区域的人都要停下并且摆好姿势,安全系统将很快变得毫无用处。这样在大多数应用中,获取目标图像或图像时的条件比理想条件差,并且通常不直接对应于图像库中图像的姿势和方向。在图像跟踪系统中,从一个场景中获取目标的图像,然后将该图像与下一场景中的图像进行匹配,原始图像和后来的图像都将不是在理想条件下获取的。
因为用于面部识别而进行比较的两幅图像中,通常有一幅或是两幅都是在比理想条件差的条件下获得的,通常对定义每张脸的所有表征参数进行严格比较是不恰当的。由于面部相对于相机的特定方向,或者由于由非理想条件引起的阴影,或者由于其它环境因素,导致有些参数不可确定。然而还有一种比缺少表征参数的测量更复杂的困难,就是也是由于在比理想条件差的条件下获取图像,出现了错误测量的表征参数。在两幅图像典型比较中,有些参数匹配,有些参数不匹配,还缺少有些参数。
常规的面部识别系统需要能够根据不完全的、甚至常常是矛盾的信息,得出匹配或是不匹配的结论。通常系统开发人员确定最有助于确认匹配的特定参数,与其它参数相比较,在匹配/不匹配判定的过程中给这些参数更大的“权重”。在有些系统中,参数的结合的“权重”多于它们各自的“权重”。例如,面部的椭圆率和眼睛之间的距离在匹配/不匹配判定过程中分别具有某种重要性,而当椭圆率和眼睛之间的距离都匹配时,就给予图像一个额外的重要性。通常基于对几百幅图像的反复试验,开发这种判定规则。显然这些判定规则的有效性能区分面部识别系统成功与否,需要投入相当可观的资源开发这些判定规则。
对比目前相互竞争的面部识别系统,会显现出不同的性能特征。一个系统可能会比它的竞争对手在室外环境下更为成功,另一个系统可能会在室内条件下更出色,等等。有些系统可能对相机角度特别敏感,其它的可能对阴影特别敏感。虽然每种面部识别系统的提供商都想在所有领域中取胜,开发每种环境下的规则的代价阻碍了定制面部识别系统使之适用于各种潜在环境。同样,在大多数应用中,面部识别系统将为一个客户在各种环境使用。在这种情况下,该客户通常选择具有足够全面性能的系统,即使其它可供选择的系统在选定的条件下性能更高。也就是说,一个室内、室外性能都普普通通的系统,通常比一个室内性能卓越但是室外性能不佳的系统(或者室内性能不佳但室外性能卓越的系统)更有优势。
本项发明的一个目标提供帮助开发面部识别系统的判定规则的系统和方法。本项发明的进一步目标是提供一种系统和方法,该系统和方法帮助定制面部识别系统在可供选择环境中面部的判定规则通过提供一种系统和方法实现上述及其它目的,该系统和方法中通过进化算法(evolutionary algorithm)例如遗传算法(geneticalgorithm)确定用于面部识别的参数。在指定环境下,评估候选参数集合的面部识别性能。用最有效的参数集合生成后代参数集合,随后评估后代参数集合的面部识别性能。使用继承该最成功集合的属性的后代集合的每一代重复这一过程,直到系统收敛于一个在该指定条件下能够表现最优性能的参数集合。类似,可以为其它环境确定其它参数集合。当面部识别系统应用时,根据目标图像产生的环境采用适当的参数集合。如此,系统就在各种应用环境中都表现出最优性能。
参考附图通过实例的方式更加详细地解释了本发明,附图中
图1是根据本发明用于确定面部识别的首选参数集合的系统的示例性框图。
图2是根据本发明的一个面部识别系统实例的框图,该系统被配置成依赖特定环境使用可选表征参数集合。
从附图中可以看出,同样的参考数字表示类似或者相应的特征或功能。
本项发明的前提是这样的观察用于面部图像比较的参数的选择高度依赖于获取图像的环境。在典型的面部表征过程中,对于每张脸可能有上百个不同的表征参数可用。虽然对于一张面部的识别有上百个参数可用,包含还是排除每个用于面部识别的参数的选择决定了面部识别系统的有效性。这些参数中的某些会比其他参数更有助于区别每张面孔;一些参数的测量对环境因素特别敏感,如果错误确定了该参数,将破坏面部比较过程;有些参数只有在一个或多个其它参数也可用时才有用处;等等。
根据包括/排除每个参数(或参数的子集)的选择的可能组合的数量,要确定各种环境下面部识别所使用的表征参数是一项令人畏缩的工作。
依照本项发明,优选根据在与面部识别系统工作条件类似的环境下获取的测试图像,使用进化算法要排除或要包括确定哪些参数,以便有效进行面部识别。
进化算法通过一种迭代的后代生成过程运算,并且包括遗传算法、变异算法(mutation algorithms)等等。在一个典型的进化算法中,假定某些属性或者基因与执行给定任务的能力有关,不同的基因集合产生执行该任务的有效性的不同级别。对于其中属性集合与任务执行的有效性之间的关系没有闭合形式解(a closed formsolution)的问题,进化算法特别有效。此处引用作为参考的美国第6,260,031号专利,2001年7月10日提交的,“CODE COMPACTION BYEVOLUTIONARY ALGORITHM”,J.David Schaffer、Keith E.Mathias和Larry J.Eshelman,揭示了在压缩软件代码、数据文件等中使用进化算法。此处引用作为参考的美国第5,940,533号专利,“METHODFOR ANALYZING CURSIVE WRITING”(1999年8月17日提交,PhilippeGentric),公开了使用进化算法确定草书中的字母、字符串。此处引用作为参考的美国第5,140,530号专利,“GENETIC ALGORITHMSYNTHESIS OF NEUTRAL NETWORKS”(1992年8月18日提交,Guhaet al.等),公开了为了解决特定问题,使用进化算法确定要在神经网络中使用的优选结构。
通过直接反复测试研究,使用遗传算法的后代生成过程,确定在完成特定任务时最有效的特定基因集合。基因或是属性的集合被称作染色体。在进化算法的遗传算法分类中,使用生成——再结合的循环(reproduction-recombination cycle)繁殖后代。在生成——再结合循环的生成阶段中,具有不同染色体的种群的成员配对,并且生成后代。这些后代具有从父母成员那里继承来的属性,通常是作为父母中每个的基因的一些随机组合。在传统的遗传算法中,完成特定任务时,比其它成员更有效的个体具有更多机会交配并生成后代。也就是说,具有首选染色体的个体有更多产生后代的机会,希望后代继承允许父母有效完成特定任务的任何基因。根据对那些完成特定任务表现出的有效性的偏爱,生成——再结合循环的再结合阶段实现下一代父母的形成。照这样,具有有效完成特定任务的属性的后代的数量会一代一代增加。也使用其它生成后代的方法的范例,例如无性生成、突变等等,来生成后代,这些后代具有越来越多的改善完成特定任务的能力的可能性。
在本文公开的内容中,种群包括具有用于面部识别的特定表征参数的成员。选出的表征参数的候选集合被编码为染色体,其反映包含或排除可能表征参数。如上所述,对于区分或是比较面部,预期有些参数的集合更为有效。通过从具有对于识别或比较面部更有效的染色体的成员而不是从其它成员生成后代,后代准确识别面部的有效性可能增强。
图1是根据本发明用于确定面部识别的首选参数集合的系统100的示例性框图。数据集合110为面部识别器140的所有可用的表征参数。这些参数包括了以下表征特征,例如眼睛之间距离、鼻子的宽度、眼窝的深度、下颌的线条等等。如上所述,包含所有可能的表征参数并不一定能提供有效或高效的面部识别性能,尤其是在获取面部图像的条件比理想环境差时。系统100的目标是,基于对不同参数集合的性能的评估,确定首选表征参数集合。
在本发明的直接实施方式中,在一个参数集合中,采用位映射标识每个参数包含在参数集中或排除在其外。也就是说,进化算法的“染色体”包含的位数与参数数目相同,每一位的值标识对应的参数包含在该参数集中还是排除在其外。
设置集合选取器120产生参数集合130的最初种群,以用于进化。任何数量的技术都可以用于产生这些初始集合。在一种简单的实施方式中,使用随机选择过程随机设定每个参数集中的位。在更有方向性的实施方式中,用户可以识别传统上被认为是最有效的参数,前述随机过程可能偏向于喜欢包括这些参数。因为如下所述,进化算法会不断修改该种群的成员关系,所以初始种群的选择是相当任意的并且只影响系统收敛于表现出众性能的参数集合所需的时间。在种群130中,参数的成员集合的数目也可以是有些随意的。通常优选大量成员集合,以便为生成具有各种特征的后代提供充分的基因库。名义上,为了提供遗传多样性,具有50个参数集的种群就足够了。
在面部识别器140中,评估种群130的每个参数成员集合的性能。面部识别器140被配置成接收目标图像和多个参考图像,并且使用本领域中普通人脸识别技术,从参考图象中生成一个目标标识符,该目标标识符标识出参考图像中的哪幅和目标图像最匹配。使用术语“参考图像”是为了方便,因为许多面部识别系统都被设置成确定目标面孔是否是经过授权的面孔集合中的成员。另一方面,在人物跟踪系统中,“参考图像”对应于特定场景中的任何以及所有面部图像,而目标图像是先前场景中的面部。同样,如上所述,真实的面部识别根据每幅图像的表征参数进行,这些参数提供给面部识别器140以代替实际目标和参考图像。
在本发明的优选实施方式中,目标图像和参考图像的质量对应于期望在特定环境下提供的图像的品质。例如在面部识别系统初次使用时可以在其测试阶段进行图像采集,在该系统应用的各种环境中收集不同的图像集合。例如在单个现场系统中,随着环境中光线的变化,可以在一天的不同时间中采集不同的图像集;在多相机配置中,可以在一天中的不同时间,为每台相机采集不同的图像集。对于有受控光线的单相机系统,只需要一个图像集。
在测试模式中,收集多个测试目标图像,例如,通过手动识别每个目标采确定每个目标图像的正确识别。
通过向面部识别器140提交多幅测试目标图像中的每一幅,并且在评估器(evaluator)150中将该面部识别器为每幅测试目标图像生成的目标标识符与正确目标标识符比较。在一个简单的实施方式中,每个被评估的参数集合的有效性的测量量是被正确识别的测试目标图像的百分比。根据面部识别器140的期望使用,还可以使用其它的有效性衡量。例如,如果面部识别器140用于允许被授权的个体进入安全区,并被配置成提供“未发现匹配”的结果,可以设置评估器150从错误识别的目标图像的测量量(measure)减去相当大的量,并为每个正确识别的目标图像增加较小的量,而既不增加也不减小“未发现匹配”结果的测量量。基于识别器140的可能应用的其它计分技术,对于本领域的普通技术人员将是显而易见的。与此类似,当识别器140在不同条件下工作时,可以采用不同的计分技术。例如具有不同安全前提的区域可以有不同的安全需求,对错误识别的目标也有不同的处罚。
对于特定参数集合,当特定环境下的所有目标图像都应用到识别器140时,评估器150向进化算法170报告该参数集合的有效性的测量,对于种群130中的下一个参数集合重复这一过程。当种群130中的所有参数集合都经过评估后,进化算法170将具有与每一个参数集合有关的有效性的测量。基于这些有效性的测量,进化算法170使用传统进化算法技术,产生一个新的参数集种群130。
对新种群中的每个成员进行评估以提供相应的有效性的测量量,重复上面详细描述的过程。设置进化算法170,使其继续生成新的种群130,直到其收敛于首选参数集合,或者超出时限。在生成每个新的种群时,期望成员的有效性的测量量将会改善。通常定义收敛为一改进速率,该改进速率低于对给定数量的代(generation)规定的阈值。在达到收敛,或者超出时限时,具有最高的有效性测量量的参数集合,就被定义为该指定条件下的首选参数集合。
如果有效性的最高测量量没有达到指定的最小值,基于假设进化算法170可能已经收敛于局部最佳值且更好的最佳值可能在解空间中的其它地方,可以选择使用不同的初始种群130重复整个过程。或者,每个新的种群130都可以设置成包括“突变异种(mutants)”,包括随机生成的基因,这些基因提供评估解空间中的不同区域的机会。
在进化算法170中,可以使用各种进化算法技术。在该示例性算法170中,适应性评估器(fitness evaluator)174根据它们的已确定的有效性测量量来选择用于产生种群130的新成员的成员。适应性评估器174还可以配置成基于其它的标准选择用于后续种群代的成员。例如,包含在该集合中的参数的数量也可以包含在适应性的确定中,特别是在面部识别器140的效率依赖所使用的参数个数的情况下。或者,所包括参数的个数可能仅用于打破具有相同有效性测量量的参数集之间的平局。
使用具有最优性能或最佳适应性的参数集合通过后代生成器172创造种群130的新成员。在一个优选实施例中,通过“交叉”结合具有最佳适应性的参数集合对来生成后代。随机交换该对中每位“父母”的染色体的部分以形成两个新的后代。因为每位父母的染色体都提供高于平均的性能,当一位父母的一个或多个有利基因交换到另一位父母时覆盖了相应的不利基因,交叉染色体有可能比每位父母的染色体都提供更好的性能。
对于面部识别器140可能的各种运行环境执行上文描述的进化参数集合确定过程,为这些环境中的每一种确定一个首选表征参数集合。
图2是根据本发明的一个面部识别系统实例200的框图,该系统被配置成依赖于特定环境使用可选表征参数集合。
在220可获得通过图1的进化算法170每种环境确定的首选参数集的每一个,根据对获得当前目标图像的环境的识别由参数集选择器220选择所述首选参数集。通常,这种环境识别是和当前的照明条件相关的。也就是说,例如每个环境可能有参考场景的相关图像,且对当前环境的识别是通过将参考场景的当前图像和参考场景的每张相关图像比较,以找出和当前图像照明条件最相似的环境。或者,可以将环境分类为“明亮”、“中等”和“黑暗”,用户在其中选择最适合当前环境的。类似,描述可能和一天中的时间、一年里的季节相关,比如“夏天、中午”,“冬天、夜晚”等。对于多台照相机的环境,优选将每台照相机对应于一种或者多种环境,例如“相机1,工作时间”、“相机1,下班时间”、“相机2,工作时间”等等。考虑到本文对于头一本领域中的一个普通技术人员显而易见,环境识别可以采用多种形式,唯一的要求是,所应用的系统200中的环境识别要和确定评估系统100中的首选参数集合的环境条件相对应图2中的面部识别器140和图1中用于评估参数集合的相同的识别器140。在本申请中,采用对于所识别出的环境被确定为优良的参数集合,使用它识别当前目标图像。
当获得其它环境中的目标图像时,参数集合选择器210会为该环境选择适合的首选参数集合,并且将其提交到面部识别器140。这样,可以向面部识别器140连续提供首选参数集合,而不管环境的变化。
对于本领域中一个普通技术人员显而易见,,只要允许参数集合选择器210提供首选参数集合,本发明可应用于任何使用可能表征参数的子集的面部识别器140,所述首选参数集合识别包含在给定环境中的子集中的表征参数。
前文只叙述了本发明的原理。可以理解,虽然文中没有精确描述,但本领域的技术人员能够设计出体现本发明因而在本发明的精神和范围内的各种装置。例如,本发明中提出了包含每个参数被包含还是被排除的编码的染色体。还可以使用其它的编码方案。例如,在本文中引用作为参考的美国专利申请“MULTI-FEATURECOMBINATION GENERATION AND CLASSIFICATION EFFECTIVENESSEVALUATION USING GENETIC ALGORITHM”(序列号为09/498,882,2000年2月7日提交,David Schaffer,Attorney docket US000028),示范了一种将参数的特定结合看作单个基因的编码方案。例如在文本表征过程中,对于“绿色贝雷帽”、“飞碟”、“红十字”等单词短语的编码不依赖于每个单词“绿色”、“贝雷帽”、“飞”、“碟”、“红”、“十字”等,因为这种单词短语的重要性要高于每个独立的单词。也就是说,例如,认识“红十字”的候选成员比认识“红”和“十字”的候选成员在文本表征程序中具有实质上更高性能级别,因为“红”和“十字”的匹配将会出现在许多并不涉及“红十字”的文件中。这应用在本项发明中为,与参数组合(例如所选参数的比率、或者参数之和和/或参数之间的差别,等等)的匹配可能比与该组中的每个参数匹配具有更高的面部识别率。考虑到本文的公布,这些和其它系统配置以及优化特征对于本领域的一个普通技术人员将是明显的,并且被包含在下面权利要求的范围内。
权利要求
1.面部识别系统,包含面部识别器,配置成根据表征参数集合识别目标图像中的面部,以及参数集合选择器,可操作地与面部识别器相耦合,其被配置成根据从中获得目标图像的环境的标识符,从多个表征参数集合中选取表征参数集合,以供面部识别器使用。
2.根据权利要求1的面部识别系统,其中通过应用进化算法识别多个环境的测试目标图像,来确定该多个表征参数集合,以及从中获得目标图像的环境对应于该多个环境之一。
3.根据权利要求1的面部识别系统,其中环境标识符与多台照相机中的照相机标识符对应。
4.根据权利要求1的面部识别系统,其中环境标识符包括一天中的时间,和照明的测量量中的至少一个。
5.根据权利要求1的面部识别系统,其中目标图像中的面部被与多个参考图像之一对应地识别出来。
6.一种确定用于面部识别的首选表征参数集合的系统,包含面部识别器,配置成根据表征参数集合,提供目标图像中面部的标识符,评估器,可操作地与面部识别器相耦合,被配置成根据标识符的精确度,确定表征参数集合的有效性的测量量。进化算法,可操作地与评估器相耦合,配置成向面部识别器提供可供选择的表征参数集合,以便随后使用评估器确定这些可供选择的表征参数集合的有效性的测量量,其中可供选择的表征参数集合以优先表征参数集合的有效性的测量量为基础,并且进化算法进一步被配置成根据可供选择的表征参数集合和优先表征参数集合中的每个表征参数集合的有效性的测量量,来识别首选表征参数集合。
7.根据权利要求6的系统,其中每个表征参数集合都包括多个可用的表征参数的表征参数子集
8.根据权利要求7的系统,其中有效性的测量量进一步以表征参数子集的大小为基础。
9.根据权利要求6的系统,其中设置进化算法,使其通过以下步骤提供可供选择的表征参数集合至少部分根据每个优先集合的有效性的测量量,确定该优先表征参数集合中的每个优先集合的适合性,根据每个优先集合的适合性,识别优先表征参数集合的高性能集合,通过结合两个或者更多高性能集合的属性,至少生成可供选择的表征参数集合的一个集合。
10.根据权利要求9的系统,其中进一步配置进化算法,使其通过随机过程,生成至少另一个可供选择的表征参数集合。
11.根据权利要求6的系统,其中标识符的精度依赖于对多幅参考图像中一幅的识别。
12.根据权利要求11所指的系统,其中对于正确识别多个参考图像中对应于目标图像的一幅,有效性的测量量增加第一量,对于不正确的识别,其减少第二量,其中第二量大于第一量。
13.一种确定用于面部识别的首选表征参数集合的方法,包括生成表征参数集合的第一种群,根据识别多个测试目标图像的每一个的精确度,对集合的该第一种群中各个成员集合进行评估,以提供集合的第一种群中每个成员集合的有效性测量量,根据集合的第一种群中每个成员集合的有效性测量量,生成表征参数集合的第二种群,根据随后的识别多个目标图像的每一个的精确度,对集合的第二种群中的每个成员集合进行评估,以提供集合的第二种群中每个成员集合的有效性测量量,并且至少部分根据集合的第一、第二种群中每个成员集合有效性的测量量,确定首选表征参数集合。
14.根据权利要求13的方法,其中生成集合的第二种群,包括至少部分根据集合的第一种群中每个成员集合的有效性测量量,识别集合的第一种群的高性能成员集合,通过结合集合的第一种群中两个或更多高性能成员集合的属性,至少生成集合的第二种群的一个成员集合。
15.根据权利要求13的方法,还包括获得多组多个测试图像,每组多个测试图像对应于多种环境中的每种环境,对于每组多个测试图像,如权利要求13中详述的那样生成并评估每个成员集合,以确定每种环境下的首选表征参数集合。
16.根据权利要求13的方法,其中识别该多个目标图像中的每个的精确度以多个参考图像之一与目标图像相对应的识别为基础。
17.根据权利要求16的方法,还包括获得多组多个参考图像,每组多个参考图像与多种环境中的每种相对应,对于每组多个参考图像,如权利要求13中详述的那样生成并评估每个成员集合,以确定每种环境下的首选表征参数集合。
18.根据权利要求13的方法,其中第一和第二种群中的每个成员集合都包括多个可用表征参数的表征参数子集。
全文摘要
本文提出了通过进化算法(例如遗传算法),确定用于面部识别的参数的系统和方法。对于给定环境下的面部识别性能,评估候选参数集合。使用最有效的参数集合生成后代参数集合,之后对这些后代集合进行针对面部识别的评估。重复此过程,其中每一代的后代集合都继承最成功集合的属性,直到系统收敛于一个在给定环境下表现优越性能的参数集合。类似,为其它环境确定其它参数集。当使用面部识别系统时,依照目标图像产生的环境,使用适当的参数集合。这样,该系统在其运行的各种环境中,都表现出优越的性能。
文档编号G06K9/00GK1666220SQ03815090
公开日2005年9月7日 申请日期2003年6月16日 优先权日2002年6月27日
发明者V·菲洛明, S·古特塔, M·特拉科维 申请人:皇家飞利浦电子股份有限公司