CN104573625A - 面部检测 - Google Patents
面部检测 Download PDFInfo
- Publication number
- CN104573625A CN104573625A CN201410573513.1A CN201410573513A CN104573625A CN 104573625 A CN104573625 A CN 104573625A CN 201410573513 A CN201410573513 A CN 201410573513A CN 104573625 A CN104573625 A CN 104573625A
- Authority
- CN
- China
- Prior art keywords
- color
- frame
- face
- data handling
- constructed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/56—Extraction of image or video features relating to colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/162—Detection; Localisation; Normalisation using pixel segmentation or colour matching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
- H04N9/643—Hue control means, e.g. flesh tone control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明提供了面部检测。一种用于对帧的流执行面部检测的数据处理系统,该数据处理系统包括:皮肤色块识别器,其被构造为识别第一帧中的皮肤颜色的一个或多个色块并且使用预定形状的相应色块构造来对第一帧中的每个色块进行特征化;第一搜索拼块生成器,其被构造为从一个或多个色块构造生成一个或多个第一搜索拼块;以及面部检测器,其被构造为通过在第一搜索拼块内在流的一个或多个帧中执行面部检测来检测流中的面部。
Description
技术领域
本发明涉及用于在一系列帧中执行面部检测的数据处理系统和方法。
背景技术
虽然人具有容易地识别图片中的面部的能力,但是对于计算机来说,这是一个难以解决的问题。近年来已经进行了显著的努力以改进自动面部识别的准确性和可靠性。然而,即使最强的系统仍然远远落后于人脑的性能,具有低能力处理器的便携式装置的性能在较宽范围的照明条件和面部取向下常常不能够检测到图像中的面部。
基于能够可靠地检测图像和视频中的面部是非常有用的事实而想要对于数字装置改进自动面部检测。例如,了解图像中的面部的位置允许利用面部所属于的人的名称对图像进行手动或自动的加标签操作。并且由于人脑对于面部是特别敏感的,因此了解视频流中的面部的位置允许视频编码器通过优先以更高的质量对包含面部的视频帧的区域进行编码来改进编码视频流的感知质量。此外,如果能够实时地执行面部检测,则能够由相机的自动对焦系统使用场景中的面部的位置以有助于确保图像的这些区域处于合焦状态。
用于执行自动面部检测的很多现代方法是基于Viola-Jones对象检测框架,其将数字图像中的面部检测分解为一系列处理步骤,每个处理步骤在数字处理器处快速地执行。Viola-Jones框架通过将二类分类器应用图像的子窗口来进行操作,每个子窗口处于图像内的不同位置、尺度或旋转角度,以允许检测不同位置或不同大小和旋转角度的面部。对于图像的子窗口执行的每个二类分类器由强分类器的级联组构成,所述强分类器的复杂性增加并且在子窗口上操作以检测子窗口是否可能约束图像中的面部。仅当所有强分类器通过子窗口,才将所通过的子窗口视为表示对于二类分类器匹配(可能要进行进一步的处理)。如果任何强分类器拒绝了子窗口,则对于该子窗口不执行任何进一步的处理并且处理移到下一子窗口。能够在P.Viola和M.Jones的论文"Robust real-time face detection",International Journal of Computer Vision,vol.57,no.2,pp.137-154,2004中找到根据Viola-Jones框架执行的面部检测的进一步的细节。
根据Viola-Jones对象检测框架执行的分类器操作能够在数字处理器处快速地执行,并且甚至在便携式装置中,也允许执行基本级别的实时面部检测。然而,由于针对图像的可能的搜索空间非常大,因此难以使用Viola-Jones框架可靠地实时检测图像中的所有面部。图像的搜索空间可以包括图像中的具有位置、大小和旋转的每个可能的组合的子窗口。为了允许面部的实时检测,通常通过忽略图像中的子窗口的可能的旋转,或者仅考虑窄范围的旋转子窗口,来显著地使搜索空间变窄。这意味着,仅可能发现在图像中至少基本上直立的那些面部。
因此,需要一种改进的用于执行面部检测的设备,其允许在便携式设备处的准确且可靠的实时面部检测并且允许识别在图像中非直立地存在的面部。
发明内容
根据本发明的第一方面,提供了一种数据处理系统,其用于对于帧的流执行面部检测,所述数据处理系统包括:
皮肤色块(patch)识别器,其被构造为识别第一帧中的皮肤颜色的一个或多个色块并且使用预定形状的相应色块构造来对第一帧中的每个色块进行特征化;
第一搜索拼块(tile)生成器,其被构造为从一个或多个色块构造生成一个或多个第一搜索拼块;以及
面部检测器,其被构造为通过在所述第一搜索拼块内在所述流的一个或多个帧中执行面部检测来检测所述流中的面部。
所述面部检测器可以被构造为仅在由搜索拼块表示的帧的区域内执行面部检测,所述搜索拼块包括所述第一搜索拼块。
所述第一搜索拼块生成器可以被构造为生成均具有从相应色块构造的取向确定的取向的所述一个或多个第一搜索拼块。
所述面部检测器可以被构造为通过在第一搜索拼块内在第一帧中执行面部检测来检测所述流中的面部。
所述面部检测器可以被构造为通过将二类分类器应用于所述第一搜索拼块的一个或多个子窗口来执行面部检测。
所述面部检测器可以被构造为仅在所述第一搜索拼块的没有相对于相应搜索拼块的取向旋转的那些子窗口中执行面部检测。
所述皮肤色块识别器可以被构造为形成各色块构造以对在第一帧中识别的皮肤颜色的各色块的位置、大小和取向进行特征化。
所述预定形状可以是椭圆并且所述一个或多个色块构造中的每一个的取向由椭圆的取向来指示。
所述第一搜索拼块生成器可以被构造为对于每个色块构造生成具有与该色块构造的大小相关的预定组的尺寸的多个第一搜索拼块。
所述数据处理系统可以进一步包括变换单元,其被构造为从第一帧以多个尺度生成表示该帧中的消色差(achromatic)信息的图像数据,所述面部检测器被构造为根据该图像数据执行面部检测。
所述数据处理系统可以进一步包括变换单元,其被构造为从第一帧生成皮肤颜色概率图,该皮肤颜色概率图对于所述第一帧中的每个像素指示该像素表示皮肤颜色的概率,所述皮肤色块识别器被构造为根据所述皮肤颜色概率图检测所述第一帧中的皮肤颜色的所述一个或多个色块。
所述皮肤色块识别器可以被构造为执行所述皮肤颜色概率图的阈值处理,以对二进制值进行操作(operate on),所述二进制值对于所述皮肤颜色概率图中的每个像素指示该像素表示皮肤颜色的高概率或低概率,通过识别阈值处理后的皮肤颜色概率图中的高概率值的色块,来从所述皮肤颜色概率图识别所述第一帧中的皮肤颜色的所述一个或多个色块。
所述皮肤色块识别器可以被构造为使用从下述值中的一个选择的阈值来执行所述皮肤颜色概率图的阈值处理:
通过下述步骤确定的阈值,即,从所述概率图中读取预定数目的值,将这些值按照值顺序排序并且计算具有最大差的两个相邻值的平均值;以及
从预定间隔选择的随机值。
所述变换单元可以被构造为通过下述步骤将所述第一帧转换为所述皮肤颜色概率图:
将所述第一帧变换到预定颜色空间,该颜色空间的轴中的一个基本上在根据皮肤颜色的预定分布的最大方差(variation)的方向上取向;以及
根据给定颜色到平均皮肤颜色的颜色空间距离的测量计算该颜色是皮肤颜色的概率。
可以根据所述流的前一帧中由所述皮肤检测器检测到的面部的像素中的至少一些的平均颜色的测量确定平均皮肤颜色。
可以在GPU处支持所述面部检测器和变换单元,并且可以在CPU处支持所述皮肤色块识别器和第一搜索拼块生成器。
所述数据处理系统可以进一步包括第二搜索拼块生成器,其被构造为生成第二搜索拼块,所述第二搜索拼块用于由所述面部检测器用作搜索拼块,以检测所述第一帧中的面部,所述第二搜索拼块生成器被设置为生成第二搜索拼块,所述第二搜索拼块具有随机或伪随机确定的位置和/或大小。
所述数据处理系统可以进一步包括分组单元,其被构造为将由所述面部检测器检测为所述第一帧中的面部的多组交叠子窗口分组在一起,以对于每一组形成单个检测面部。
所述数据处理系统可以进一步包括第三搜索拼块生成器,其被构造为生成第三搜索拼块,所述第三搜索拼块用于由所述面部检测器用作搜索拼块,以检测所述第一帧中的面部,所述第三搜索拼块生成器被设置为从由面部检测器在所述流中的所述第一帧之前的帧中检测到的一个或多个面部生成第三搜索拼块。
所述第三搜索拼块生成器可以被构造为对于在所述第一帧之前的帧中由所述分组单元形成的每个检测面部生成多个第三搜索拼块,所述多个第三搜索拼块与相应面部交叠并且具有:
与该面部的尺寸相关的预定组的尺寸;和/或
与该面部的取向相关的预定组的取向。
所述皮肤色块识别器可以被构造为对于皮肤颜色的多个色块中的每一个形成色块构造,但是所述第一搜索拼块生成器被构造为仅对于预定数目的最大色块构造生成第一搜索拼块。
帧的流可以表示单个图像。
根据本发明的第二方面,提供了一种使用数据处理系统对帧的流执行面部检测的方法,该方法包括:
识别所述流的第一帧中的皮肤颜色的一个或多个色块;
使用预定形状的相应色块构造来对所述第一帧中的所述一个或多个色块中的每一个进行特征化;
从所述第一帧中的所述一个或多个色块构造对于所述第一帧生成一个或多个第一搜索拼块;以及
在所述第一搜索拼块内在所述流的一个或多个帧中执行面部检测以检测所述流中的面部。
根据本发明的第三方面,提供了一种数据处理系统,其用于对帧的流执行面部检测,该数据处理系统包括:
面部检测器,其被构造为通过在为第一帧定义的第一搜索拼块内执行面部检测来检测所述第一帧中的第一面部候选;
颜色测量单元,其被构造为计算一组颜色参数,所述一组颜色参数包括根据预定颜色空间表达的所述第一面部候选的平均颜色;
变换单元,其被构造为:
将第二帧变换到所述预定颜色空间,该颜色空间的轴中的一个基本上在根据皮肤颜色的预定分布的最大方差的方向上取向;以及
通过根据给定颜色到所计算的平均颜色的颜色空间距离的测量,计算该颜色是皮肤颜色的概率,来对于所述第二帧形成皮肤颜色概率图;以及
搜索拼块生成器,其被构造为基于由所述面部检测器使用的所述皮肤颜色概率图生成第二搜索拼块,所述第二搜索拼块定义所述第二帧的所述面部检测器在其中执行面部检测以检测所述第二帧中的一个或多个第二面部候选的区域。
所述第二帧可以在帧的流中的所述第一帧之后。
所述颜色测量单元可以进一步构造为计算第一面部候选沿着预定颜色空间的坐标轴的颜色变化程度作为颜色参数,并且所述变换单元被构造为根据给定颜色到由所计算的颜色变化程度标度的所计算的平均颜色的颜色空间距离的测量来计算该给定颜色是皮肤颜色的概率。
所述颜色测量单元可以被构造为仅根据所述第一面部候选的中心部分来计算所述第一面部候选的颜色变化程度和平均颜色。
可以借助于皮肤颜色的预定分布的主分量分析来确定预定颜色空间的坐标轴。
所述第一面部候选的所述一组颜色参数可以表示所述预定颜色空间中的椭圆,所述椭圆以平均颜色为中心并且具有平行于所述预定颜色空间的坐标轴取向的轴,这些轴具有由颜色的变化的相应程度定义的长度。
所述面部检测器可以被构造为通过将二类分类器应用于所述第一搜索拼块的子窗口来检测所述第一帧中的面部,并且将被检测为所述第一帧中的面部的多组交叠的子窗口分组在一起,以对于每一组交叠的子窗口形成单个面部候选,每个面部候选被分配有根据其组中的交叠的子窗口的数目的权重,并且所述第一面部候选是具有最高权重的面部候选。
所述变换单元可以被构造为保持对于来自所述流中的第二帧之前的一个或多个帧的多个面部候选计算的多组颜色参数,每组颜色参数继承了分配给相应面部候选的权重并且由所述变换单元使用的一组颜色参数是具有最高权重的一组颜色参数。
所述颜色测量单元可以用于对于新的面部候选计算新的一组颜色参数,所述变换单元被构造为,如果用于新的组的椭圆与由当前存储的一组颜色参数表示的椭圆交叠超过预定程度,则通过将现有的一组颜色参数替换为新的一组颜色参数并且通过组合现有的一组颜色参数和新的一组颜色参数的权重形成新的权重来对现有的一组颜色参数进行更新。
可以在GPU处支持面部检测器和变换单元。
可以在CPU处支持颜色测量单元和搜索拼块生成器。
所述第一帧和第二帧可以都表示单个图像,所述第一帧和第二帧可选地是相同的。
根据本发明的第四方面,提供了一种使用数据处理系统对帧的流执行面部检测的方法,该方法包括:
通过在为所述流的第一帧定义的第一搜索拼块内执行面部检测来检测所述第一帧中的第一面部候选;
计算一组颜色参数,其包括根据预定颜色空间表达的所述第一面部候选的平均颜色;
将所述流的第二帧变换到所述预定颜色空间,该颜色空间的轴中的一个基本上在根据皮肤颜色的预定分布的最大方差的方向上取向;
通过根据给定颜色到所计算的平均颜色的颜色空间距离的测量计算该颜色是皮肤颜色的概率来对于所述第二帧形成皮肤颜色概率图;
基于所述皮肤颜色概率图生成第二搜索拼块;并且
通过在所述第二搜索拼块内执行面部检测来检测所述第二帧中的一个或多个第二面部候选。
根据本发明的第五方面,提供了一种机器可读代码,其用于生成所述数据处理系统。
提供了一种机器可读存储介质,其上编码有用于生成所述数据处理系统的非瞬时性机器可读代码。
本发明涉及图像数据中的面部检测。该图像数据能够为例如诸如视频流的帧的一系列图像或单个图像。
附图说明
现在将参考附图借助于示例描述本发明,在附图中:
图1是示出由根据本发明构造的面部检测系统执行的处理的示意图。
图2是积分图像(integral image)的计算的图示。
图3是识别帧中的所检测面部的示例性的一组参数的图示。
图4是用于计算平均皮肤颜色的所检测面部的区域的图示。
图5是用于皮肤颜色的预计分布的自定义(custom)颜色空间的图示。
图6是示出在阈值图中识别的一组皮肤颜色色块的图示。
图7示出了搜索拼块和子窗口之间的示例性关系。
图8是根据本发明的第二方面的对帧的流执行面部检测的方法的流程图。
图9是根据本发明的第四方面的对帧的流执行面部检测的方法的流程图。
具体实施方式
下面的描述用于使得本领域技术人员能够利用和使用本发明,并且是基于特定应用的情形而提供的。所公开的实施方式的各种修改对于本领域技术人员来说将是显而易见的。
在不偏离本发明的精神和范围的情况下,这里定义的一般原理可以应用于其它实施方式和应用。因此,本发明并不意在受到所示出的实施方式的限制,而是符合与这里公开的原理和特征一致的最宽范围。
图1是示出根据本发明构造的面部检测系统执行的处理的示意图。面部检测系统100接收将要被执行面部检测的源帧103的流。面部检测系统对所接收的源帧进行操作,进而识别每个帧中的面部并且在其输出处提供一组检测到的面部115的坐标。根据这里给出的教导,面部检测系统在对当前帧执行面部检测时通过利用从之前的帧获取的信息来展示出对于现有技术系统的改进的性能和效率。这建立在下述事实的基础上:流中在时间上连续的帧中的至少一些很可能彼此相关并且因此能够提供关于当前帧中的皮肤颜色的特定特征以及面部的可能的位置的有用的信息。
能够从相机或记录源(例如,一组存储的照片或视频流)接收源帧。面部检测系统不需要对流中的连续帧进行操作并且可以被构造为仅对于每第n帧(例如,每第2帧或第三帧)进行操作。这能够取决于面部检测系统的特性,例如,系统花费多少时间来执行其面部检测操作。在完成了给定帧中的面部检测时,面部检测系统能够仅接收并且开始处理最近接收的帧。
在优选实施方式中,面部检测系统从相机传感器接收帧103。例如,当用户拍摄时,相机传感器捕获视频帧并且将其提供给相机的图像处理流水线(pipeline)(即,相机流水线)。这些帧(可能处于已处理形式)由相机流水线使用来执行诸如自动对焦和白平衡校正的功能,并且在显示屏幕上作为视频提供给用户以允许用户看到相机传感器正在捕获的内容。面部检测系统100可以作为相机流水线的一部分提供。
提供给面部检测系统100的源帧103将通常为RGB图像,但是也能够使用任何其它适合的颜色编码(例如,YCbCr)。
面部检测系统100包括检测器单元109,其被构造为确定帧的给定区域是否可能包含面部。如本领域中所已知的,这能够通过利用如Viola-Jones对象检测框架所提出的分类器的二类分类器来高效地实现。检测器单元109能够被构造为直接对接收的帧103进行操作,但是为了减少检测器单元的资源要求,二类分类器优选地对缩减规模的图像金字塔108(如图1中所示)执行。现在将描述这样的图像金字塔的生成。
预处理器104被构造为将接收的帧103转换为单通道图像105。利用二类分类器面部检测系统,通常图像中的消色差信息是重要的;颜色信息是不那么重要的,并且能够为了面部检测的目的而丢弃以减少图像大小并且因此减少所要求的处理资源。在图1的示例中,单通道图像105是帧的亮度(luma)或明度(brightness)分量。也可以使用帧的其它表示。例如,如果转换为下面描述的SKN颜色空间,则能够使用S通道(例如,其轴基本上在皮肤颜色的经验确定的分布的最大方差的方向上取向的通道)作为单通道图像105。预处理器104能够额外地以其它方式对帧103进行处理以强调亮度图像105中与面部关联的特征和/或减少所接收的帧的可能的搜索空间。例如,已经发现640×480像素的分辨率对于识别图像中的下至合理尺寸的面部是足够高的,并且因此,根据帧103的分辨率,能够优选的是,对接收到的帧进行缩减规模。
为了避免失真(aliasing)问题,进一步有利的是,预处理器104被构造为形成包括亮度图像105的不同分辨率的多个表示的图像金字塔108。用于形成图像金字塔的技术在本领域中是公知的。对于640×480像素图像,具有六级的图像金字塔已经示出为提供良好的性能,其中每级的分辨率是上级的二分之一(例如,图像金字塔能够包括大小相对于亮度图像105的大小为1/1、1/2、1/4、1/8、1/16、1/32的亮度图像)。可以使用除了2之外的比例系数,但是由于2匹配在其中图像金字塔也被称为mipmap的计算机图形中常用的比例系数,因此2的比例系数是方便的。因此可以使用GPU的mipmap硬件来加速从图像金字塔中查找像素数据的操作,应该使用GPU来实施该系统。
根据二类分类器的选择以及由检测器单元执行的计算的本质,优选的是,检测器单元对图像金字塔的积分图像200执行操作,在积分图像200中,坐标(x,y)处的给定像素值201是由角部(0,0)和(x-1,y-1)定义的矩形中的像素值的和(如图2中所示)。将在检测器单元执行任何面部检测计算之前由检测器单元对这些积分图像进行整体的计算。然而,由于检测器单元109优选地被构造为检测可以在面内旋转的面部,因此将优选的是,对于积分图像进行整周(on the fly)计算以避免检测器单元109在对于每个可能的旋转生成图像时执行一定量的不必要的处理。
在Viola-Jones框架下,每个二类分类器包括复杂性增加的强分类器的级联组。为了确定图像的给定子窗口是否包含面部,按顺序应用强分类器,从而如果级联的所有强分类器发现匹配,则将子窗口分类为面部。在该情况下,子窗口是适合的亮度图像金字塔108的子窗口。如果级联的任一级处都没有发现匹配,则子窗口被分类为非面部并且对于该子窗口终止二类分类器的评估。这里考虑Viola-Jones框架描述了面部检测系统,但是也可以设想其它类型的面部检测算法或变型以受益于本发明的优点。
为了确保通过使用二类分类器方法的穷尽搜索找到图像中的所有面部,将需要将二类分类器应用于图像的所有可能的子窗口。这是因为图像中的面部能够位于任何位置并且能够具有任何大小,并且因此可能的子窗口必须包括所有可能的大小以及位于图像中所有可能的位置的子窗口。如果还将检测在图像中没有“直立”的面部,则还将搜索所有子窗口的所有可能的旋转。这是非常大的搜索空间并且对于相机流水线中实时执行来说是不实际的,特别是在其中主要在意功耗的便携式装置的情况下是不实际的。
这里描述的示例提供了用于向检测器单元109智能地提供其中执行面部检测的搜索拼块的列表的机制,搜索拼块限定了其中将执行面部检测的帧的区域。检测器单元优选地仅搜索标识出的搜索拼块中的面部而不搜索搜索拼块之外的区域。
图7示出了示例性实施中的搜索拼块与子窗口之间的关系。帧703包含使用下述方法确定的搜索拼块710和720。在每个搜索拼块内,对于面部的搜索可以是穷尽的,即,可以使用检测器单元109测试拼块内的每个可能的子窗口。搜索拼块710包含诸如715和716的子窗口,并且搜索拼块720包含诸如725的子窗口。为了清楚起见,没有示出所有的子窗口位置。空间730位于搜索拼块之外,并且没有对其进行搜索。为了减少每个搜索拼块内的搜索空间,可以仅改变子窗口的位置。子窗口的大小和旋转角度在搜索拼块内没有改变。替代地,可以对搜索拼块进行缩放和旋转。子窗口根据搜索拼块的旋转而旋转,并且子窗口的大小保持与搜索拼块成比例。在图7中,搜索拼块710与框架轴对齐并且相对较小。搜索拼块720旋转,并且大于搜索拼块710。因此,将对于小的直立面部测量搜索拼块710的子窗口,并且将对于较大的旋转面部测试搜索拼块720的子窗口。
在一个示例中,通过从图像金字塔的适合级别进行读取,根据当前搜索拼块的大小对提供给检测器单元109的数据进行缩放。类似地,根据当前搜索拼块的旋转计算二类分类器进行计算所根据的积分图像。搜索拼块因此被标准化(normalize),从而检测器单元109可以使用被训练为识别标准化子窗口的大小的直立面部的二类分类器来搜索面部。在一个示例中,标准化的搜索拼块是40×40像素,并且标准化的子窗口是24×24像素。在其它示例中,标准化的搜索拼块以及检测单元处的子窗口的大小可以改变。
因此,如将进一步描述的,定义搜索拼块显著地减小了搜索空间,允许面部检测系统的资源集中于图像的最可能包含面部的那些区域,并且进一步允许实时地检测图像中的改变旋转的面部。此外,在优选实施方式中,面部检测系统对于多个帧进行迭代(iterate),基于帧没有显著地改变的假设来利用与前面的帧相关地确定的信息。该假设通常对于视频帧来说是好的假设,特别是对于当相机的用户进行拍摄时由相机传感器提供的视频帧来说是好的假设。
在使用Viola-Jones型框架的情况下,检测器单元109被构造为搜索给定的标识出的搜索拼块内的一定数目的(优选所有的)可能的子窗口(没有相对于搜索拼块的取向旋转的那些子窗口,例如,如图7中所示)。
在面部检测系统100中,其中将要执行面部检测的搜索拼块被从以下三个源提供给检测器单元109:从拼块生成器110,从根据在前面的帧117中标识的面部候选生成的一组搜索拼块,以及从皮肤检测单元112。现在将描述在这三个源处的搜索拼块列表的生成。没有被搜索的源帧的其他搜索拼块和/或区域能够被从另外的源(其能够位于面部检测系统100外部)提供给检测器单元。例如,相机流水线可以确定源帧的某些区域不太可能或没有包含面部,并且因此不应对其进行搜索;该信息能够被提供给检测器单元以减少用于检测器单元的搜索空间。
应注意的是,在图1中所示的示例系统中,检测器单元在为亮度图像金字塔108定义的搜索拼块中执行面部检测。然而,由于亮度图像金字塔表示源帧103,因此下面的段落可互换地并且等同地针对图像金字塔108和源帧103。
检测器单元109在其输出处提供面部候选111的列表。每个面部候选能够被表示为一组四个坐标:描述面部的位置(通常为限定面部候选的框的左上角)的x和y坐标、描述面部的大小的尺度(scale)s以及描述面部的旋转角度的角度α。在图3中对于帧300示出了这些参数与面部候选301之间的示例性关系。尺度s可以以任何方便的方式来定义,例如,其可以表示检测到的面部的高度或面积。由于检测器单元104将常常在交叠的搜索拼块中或者在同一搜索拼块内的若干子窗口中将同一面部识别出超过一次,因此提供了分组单元114以对面部候选111的列表进行处理并且对交叠的面部候选进行分组,以对于每个检测到的面部形成单个的一组坐标。在任何给定的时间,分组单元114的输出处的检测到的面部的列表表示由面部检测系统的其它功能使用的检测到的面部的可用(working)组。
分组单元114能够被构造为使用任何适合的算法来对面部候选进行分组。在一个示例中,将彼此具有任何程度的交叠的所有候选分组为单个检测到的面部是足够的。在其它示例中,算法可以考虑不同位置处交叠候选的数目以尝试区分接近的若干面部。已经确定了一组候选时,分组单元随后能够确定用于检测到的面部的一组坐标。一种进行该操作的方式可以是形成该组的(x,y,s,α)坐标的平均值(例如,计算一组交叠检测结果的x、y、s和α坐标中的每一个的平均值)。
由拼块生成器110提供搜索拼块116的第一源,拼块生成器110被构造为至少部分地以随机或伪随机的方式(术语“随机”应该被理解为包括“伪随机”)生成亮度图像金字塔108的搜索拼块。例如,拼块生成器110可以被构造为随机地选择搜索拼块的位置和大小。对于由拼块生成器110执行的选择来说能够存在非随机方面。例如,拼块生成器110可以被构造为以搜索拼块大小的预定分布对于每个搜索拼块随机地选择位置,或者拼块生成器110可以被构造为在源帧的一组预定区中的每个内随机地选择特定数目的搜索拼块的位置和大小。最优选地,由拼块生成器110使用Halton序列来生成搜索拼块的位置并且确保所生成的搜索拼块在帧的搜索空间上以及对于若干输入帧在时间上是均匀分布的。
面部能够出现在帧中的任何地方,优选地根据均匀分布来选择由拼块生成器110生成的搜索拼块的x、y位置。由于面部通常仅占据帧的一小部分,因此优选地从对较小的尺度有利的分布生成由拼块生成器生成的搜索拼块的尺度s。这是因为所要求的搜索密度随着尺度的减小而增加。可以方便的是,根据搜索拼块的子窗口中的一个(例如,最大的子窗口)的尺寸来定义搜索拼块的尺度s。以该方式,可以使用同一尺度值s来表示搜索拼块的大小,并且在检测器单元109的输出处产生面部候选111的大小。拼块生成器能够被构造为生成具有根据上述教导选择的位置和大小的搜索拼块,直到生成了预定数目的搜索拼块M为止。
拼块生成器110在其输出不依赖于在前面的源帧中在何处发现面部候选的情况下是搜索拼块的独立源。这确保了面部检测系统即使在找到了面部候选并且根据前面的帧进行了改进时也继续接收将执行面部检测的新的搜索拼块。结果,在接收的帧的序列上,面部检测系统在源帧的图像空间中执行针对面部候选的彻底搜索。由于生成来自其它源的搜索拼块的方式,由拼块生成器110生成的搜索拼块优选地全部具有相同的取向(即,拼块生成器110没有将具有不同旋转的搜索拼块提供给检测器单元109)。
由于拼块生成器110的输出没有依赖于源帧103的内容,因此拼块生成器110能够在任何时间点生成用于检测器的搜索拼块。例如,拼块生成器110能够在支持该拼块生成器110的处理器处存在容量时生成并存储定义用于未来的帧的搜索拼块的参数。
由分组单元114提供搜索拼块117的第二源并且该第二源使得能够在帧之间追踪之前检测到的面部。对于由分组单元114识别出的前面的帧中的每个检测到的面部,生成其中检测器单元109将执行面部检测的一组追踪搜索拼块117。该组追踪搜索拼块允许追踪之前检测到的面部的平移、旋转和缩放中的一个或多个。利用下述一组经验地确定的追踪搜索拼块参数观察到良好的性能:
[x,y,s,α]
[x,y,s,α–0.15]
[x,y,s,α+0.15]
[x,y,0.9s,α]
[x,y,0.9s,α–0.15]
[x,y,0.9s,α+0.15]
[x,y,1.1s,α]
[x,y,1.1s,α–0.15]
[x,y,1.1s,α+0.15]
有利的是,根据对于面部检测系统的外部输入来修改追踪搜索参数。例如,来自与相机处的面部检测系统配合的装置的陀螺仪和/或加速度计数据能够用于推测相机的运动并且因此追踪源帧之间的检测到的面部的所导致的移动。
追踪搜索拼块的使用确保了明确地搜索帧的其中之前检测到面部的区域并且增加了之前检测到的面部即使被平移或旋转到某种程度或者它们的尺度改变时也将在源帧中继续被检测到的可能性。上面列出的没有明确地说明(account for)面部的可能的平移移动,这是因为,如上所述,检测器单元109被构造为在搜索拼块内搜索至少一定数目的可能的子窗口。因此在给定的搜索拼块内,检测器单元109自然地搜索多个相邻的位置。在其中检测器单元109不搜索拼块内的所有相邻子窗口的这里描述的面部检测示例的变型中,追踪搜索拼块能够包括表示之前检测到的面部的预定平移的搜索拼块。
分组单元优选地被构造为一旦检测器单元109完成其当前帧中的搜索就形成用于下一帧的一组第二搜索拼块。另选地,分组单元能够被构造为当从检测器单元接收到检测到的面部的坐标时开始形成多组第二搜索拼块。
由皮肤检测单元112将搜索拼块118的第三源提供给检测器单元109,皮肤检测单元112基于源帧103的区域的颜色识别出源帧103的可能表示皮肤的区域并且因此可能表示其中搜索面部的优良候选的区域。现在将描述优选实施方式中皮肤的区域的识别。在次优选的实施方式中,能够通过其它的机制来识别皮肤的区域,例如,从源帧直接识别皮肤的区域,或者使用被定义为“皮肤颜色”的RGB值的范围来从另一中间图像识别皮肤的区域。
在下面的段落中参考的图9的流程图中概要示出了用于对包括帧901和904的帧的流执行面部检测的示例性方法。在该示例中,在流中,帧901出现在帧904之前并且被以下述方式使用以提供颜色参数,以便于改进帧904中的面部检测。在图8中阐述在这里描述的用于执行面部检测的一般示例性方法。在下面的段落中这些概要方法之间的叠加将变得明显。
为了检测帧中的皮肤颜色的区域,定义其中能够有利地描述皮肤颜色的自定义SKN颜色空间。各种种族的大量人的面部的主分量分析已经示出了颜色空间中的皮肤颜色的分布对于不同皮肤颜色来说都是类似的。能够因此对于所有皮肤颜色定义公共的一组主分量轴并且将其用作新的自定义颜色空间的坐标系统。这能够通过对于较大的一组皮肤颜色的测量结果形成一组主分量轴并且使用这些主分量轴作为SKN轴来实现。这些测量结果将优选地来自各种种族的人。然后能够定义坐标变换以将RGB颜色转换(假定(say))到SKN坐标系。能够对于具有除了RGB之外的颜色编码的源帧执行类似的变换。
预处理器104被构造为将帧103转换到SKN颜色空间图像107中(图9中的905),优选地在将帧缩减规模到适合的尺寸以针对识别帧中的甚至较小尺寸的面部的需求平衡可用处理能力之后执行该转换。已经发现适合于SKN图像的分辨率为160×120像素。
颜色测量单元113使用SKN图像来确定前面的帧(例如,帧901中,在图9中的902处执行的面部检测)中检测到的一个或多个面部的“颜色椭圆”,颜色椭圆参考SKN颜色空间描述该面部的皮肤颜色的分布。在图5中示出了这样的颜色椭圆501并且颜色椭圆501粗略地限定了颜色空间500中的皮肤颜色点502的典型分布。对于一组RGB坐标轴503和SKN坐标轴504示出该颜色椭圆。
为了计算颜色椭圆,颜色测量单元113测量表示面部的位置和大小的检测到的面部矩形的预定区域内的像素的S、K和N值的平均和标准偏差(参见图3;能够另选地利用其它形状来表示检测到的面部)。这六个参数定义颜色椭圆,而平均S、K、N参数定义颜色空间中的检测到的面部的颜色分布的中心并且这些参数的标准偏差定义沿着SKN颜色空间的三个坐标轴的颜色椭圆的大小(即,其轴的长度)。能够同等地使用用于估计检测到的面部的皮肤颜色的分布的中心和扩展的其它技术。除了椭圆之外的形状(例如,立方体)能够用于描述面部的皮肤颜色的分布并且仍然利用同样的六个参数。
如图4中所示,检测到的面部矩形400的预定区域是中心位于检测到的面部内的区域401并且具有基本上小于所检测到的矩形的面积的面积,以有效地对面部的中心区域中的像素的颜色进行采样。优选地,该预定区域是检测到的面部矩形的区域的50%或以下,并且最优选地为25%或以下。
颜色测量单元113被构造为在检测器单元109的输出中形成用于由分组单元114识别的检测到的面部中的一个或多个的颜色椭圆。这能够在检测器单元已经完成了某帧并且检测到的面部在分组单元处可用之后立即进行。优选地,由颜色测量单元对于最可能实际为面部的那些一个或多个检测到的面部形成颜色椭圆。能够以很多种方式评估检测到的面部对应于图像中的实际面部的可能性。最优选地,向在分组单元处识别的每个检测到的面部分配权重,每个权重是聚合(aggregate)以形成该面部检测的交叠检测的数目的度量(measure)。例如,从列表111中的五个面部候选形成的检测到的面部将具有高于仅从两个面部候选形成的检测到的面部的权重。分配给检测到的面部的权重由对应的颜色椭圆继承。其它的度量也能够对于权重有所贡献,例如,检测到的面部的尺寸、其取向和/或其在帧中的位置。
由于最可能的面部候选会随着几个帧的进展(course)而改变,因此有利的是,面部检测系统保持对于超过一个颜色椭圆的追踪。已经发现保持四个颜色椭圆提供了良好的性能,而不要求过量的资源。优选地在预处理器104处保持多个颜色椭圆的参数和从对应的检测到的面部继承的它们各自的权重。如下面所述,预处理器基于权重参数选择适合的颜色椭圆,优选地通过从朝向更高权重偏置的所有颜色椭圆进行选择来选择适合的颜色椭圆。该椭圆表示在图9中在903从前面的帧901计算的颜色参数。
通常,从源帧的流生成的颜色椭圆将会非常类似(这将通常是在同样的照明条件下在视频帧中存在同样的面部的结果)。结果,当计算新的颜色椭圆时,面部检测系统可以发现新的和现有的颜色椭圆基本上交叠。如果新的椭圆与现有的椭圆的中心交叠,则优选地,将新的椭圆的权重增加现有的椭圆的权重,并且新的椭圆的参数覆写现有的椭圆的参数。这有助于面部检测系统反应以例如对于一系列帧改变照明条件。如果新的椭圆没有与任何现有的颜色椭圆交叠,但是其权重高于现有的椭圆,并且已经在预处理器处保持了最大数目的颜色椭圆,则新的椭圆代替具有最低权重的现有椭圆。这有助于该系统适于移动到帧中以及移动到帧之外的面部,以及改变照明条件。
为了确保颜色椭圆的权重不会无限制地增加,每次调用颜色测量单元(例如,每帧一次),通过将权重乘以小于1的数(例如,0.99)来衰减对于每个颜色椭圆保持的权重。以该方式,具有最大权重的颜色椭圆将表示具有是皮肤颜色的最高可信度的颜色分布。较高权重将通常表示近来已经检测到颜色椭圆,但是该颜色椭圆与在源帧中已经存在相对较长时间段的检测到的面部相关。
针对固定的一组SKN坐标轴定义的但通过颜色椭圆的缩放和移位而适于在接收到的帧中观察到的皮肤颜色的皮肤颜色椭圆的使用提供了改变照明条件和皮肤颜色的很大的灵活性而没有引起与坐标变换关联的处理开销。此外,在最高效地进行颜色空间转换(例如,RGB至SKN坐标变换)和颜色椭圆参数的计算(即,缩放和移位操作)的情况下,能够对这两个操作进行去耦和执行。例如,优选的是,在GPU处执行颜色空间转换,因为GPU通常对于执行坐标变换被高度优化。颜色椭圆参数的计算能够在诸如CPU的与GPU相比对于执行坐标变换的优化程度较低的通用处理器处执行。
为了识别接收到的帧中的皮肤颜色的区域,需要定义用于确定接收到的帧(或其缩减规模的(downscale)表示)中的每个像素是否是皮肤颜色的机制。在优选实施方式中,通过设置为预处理器104使用SKN颜色空间和最高权重的颜色椭圆(另选地,能够使用一个或多个颜色椭圆的平均值或优选地加权平均值)计算皮肤概率图106来实现该操作。这是图9中的906,其利用在903处确定的颜色参数。如果由于还没有进行面部检测而还没有建立颜色椭圆,则使用默认颜色椭圆的参数。在次优选的实施方式中,能够从SKN图像或者从原始(可能为缩减规模的)帧本身直接识别接收到的帧中的皮肤颜色的区域。
假设皮肤颜色具有多变量高斯分布,则由于颜色空间的有利选择,预处理器104能够通过计算SKN颜色空间中每个像素P的颜色到生成的颜色椭圆的中心的椭圆距离来形成提供SKN图像107中的每个像素是皮肤颜色的概率p的指示的图:
其中,C表示颜色椭圆的中心,并且Es、Ek和En是颜色椭圆的半长轴的长度。在上述概率p的定义下,像素是皮肤颜色的高概率是接近零的值,而像素是皮肤颜色的低概率是接近1的值(超过1的p的值被截取为1)。
根据SKN图像107的SKN像素值计算皮肤概率图106,但是不需要使用SKN图像本身生成皮肤概率图。例如,预处理器104能够被构造为并行地形成SKN图像和概率图。该概率图将通常(但不是必须)具有与SKN图像相同的分辨率。
皮肤检测单元112被构造为通过查找高概率(即,p的低值)的区域从概率图识别皮肤颜色的区域。这优选地通过对皮肤概率图进行阈值处理以形成接收到的帧中的皮肤颜色的二类识别来实现。能够使用各种方法来实现适合的阈值图。现在将描述两个示例性方法。
根据第一方法,通过从图中的随机位置读取相对较少数目的值,对其进行排序,并且找出列表中的之间具有最大差异的两个相邻值来对于概率图选择阈值概率。在一个示例中,读取的值的数目为20。这些值的平均用作用于概率图的阈值。该第一方法在图像中的皮肤的区域相对较大并且即使当概率图的质量较差(这可以在从前面的帧进行了皮肤颜色的有缺陷的测量的情况下发生)时也运行良好的情况下是有用的。根据第二方法,从预定间隔(例如,0至0.5之间)随机地选择阈值概率。该第二方法当概率图的质量良好并且即使图像中的皮肤的区域较小时也有效时是有用的。选择阈值时的随机性的使用在为系统提供有机会找到否则难以确定的阈值的机会方面是有利的。特别有利的是,对于给定的阈值处理操作,随机地选择上述两种方法之一并且将其用于生成阈值。通过在面部检测系统在帧103上迭代时利用这两种方法,系统受益于这两种方法的特定优点。
在下面的图中参考的图8的流程图中示出用于对源帧801执行面部检测的示例性方法。
皮肤检测单元112被构造为通过在二元阈值图中查找高概率(即,所确定的概率阈值以上)的至少基本上连续的色块来识别接收到的帧中的可能的面部候选。这是图8中的802。能够使用任何适合的算法来识别阈值概率图数据中的这样的色块。在计算机视觉领域中已知各种适合的算法,例如,“连通区域标记(connected-componentlabelling)”或“blob提取”。通常的两阶段(two pass)方法根据能够在第一阶段建立的连接性通过向数据色块指派标签的数据来进行第一阶段。第二阶段然后对其中两个或更多个标签被发现等同的色块进行合并。包括单阶段方法的其它方法也是可能的。给定的色块可以包括一个或多个空隙(void),同时仍然是高概率的基本上连续的色块(例如,人的眼睛或胡子可以位于其中)。
已经识别出指示皮肤颜色的色块的情况下,生成指示色块的位置和大小的参数。在优选实施方式中,在色块周围定义限定框以识别色块的位置和范围。由于这样的限定框用于将与给定色块相关的阈值图的那些元素(例如,像素)分组在一起,因此该限定框能够简单地是在源帧中对齐的轴,即,具有与源帧的边缘正交的边。
在图6中示出了阈值图中的色块周围的限定框的构造。在阈值图600中存在概率值为所计算的阈值以上的若干色块601-605。在该示例中,只有色块601和602实际与源帧中的面部相关,色块603是手并且因此是皮肤,而色块604-606是皮肤颜色范围内的颜色的块,但是其实际上并不表示皮肤(误报)。皮肤检测单元在三个最大色块601-603周围形成限定框607-609。在该示例中,实际上不是面部的色块603因此导致生成了搜索拼块,但是不可能的是,检测器单元将实际上在这些搜索拼块中发现面部。
通过考虑各相应限定框607-609中的每一个内的阈值概率值而对于色块601-603中的每一个构造预定形状(在本示例中为椭圆)。这是图8中的803。适合于色块的该预定形状可以在这里被称为“色块构造”。椭圆能够利用已知的图像处理技术(例如,计算色块的限定框内的二元阈值概率值的各种图像矩(image moments))来适合于给定色块。可以从色块的图心确定每个椭圆的中心,并且给定其尺寸和取向的椭圆的轴也可以从色块的图像矩来确定。
使用椭圆是有利的,这是因为其形状通常与面部的形状很好地匹配并且因此能够用于提供图像中的正脸的取向的可靠识别。基本上从各阈值色块的形状确定每个椭圆的取向。这是基于下述假设,即对色块进行特征化的椭圆的长轴可能大致与由该色块表示的任何面部的对称线平行。换言之,面部通常是高度大于宽度的并且因此合理的猜测是阈值色块的最长尺寸大致地平行于其表示的任何面部的对称线。在图6中所示的示例中,由色块601表示的面部实际上以显著的角度倾斜,这已经由角度α1很好地进行了估计。
皮肤检测单元112从阈值图识别N(例如5)个色块,这些色块将用于生成用于检测器单元109的搜索拼块。例如,皮肤检测单元能够对阈值图中识别的一组色块进行排序并且基于它们相应的限定框或椭圆参数来选择N个最大的色块。为了增加检测器单元找到由限定框或椭圆指示的位置处存在的任何面部的可能性,有利的是,布置为皮肤检测单元从每个椭圆生成具有某一范围的尺度和取向的一组搜索拼块。这是图8中的804和图9中的907。例如,对于由皮肤检测单元生成的N个限定框中的每一个,皮肤检测单元可以生成下述六个搜索拼块:
[x,y,0.75s,α]
[x,y,0.6s,α]
[x,y,0.5s,α]
[x,y,0.75s,α+π]
[x,y,0.6s,α+π]
[x,y,0.5s,α+π]
根据椭圆的位置和取向确定参数x、y、s和α,以限定一组搜索拼块,所述一组搜索拼块均以对应于皮肤颜色的各色块的图像的区域为中心并且均具有与各色块的大小相称的大小。这些参数能够被选择为有效地限定用于椭圆的共享该椭圆的取向的限定框。可以以不同的尺度参数来生成多个拼块,以便于适应(accommodate)通过皮肤颜色的色块预测的面部的尺寸方面的一些不准确性。在一个示例中,根据近似面部的高度的椭圆的长轴的长度来确定缩放因数s。在可以针对照明条件对于色块形状的影响提供更大的鲁棒性的另一示例中,根据椭圆的面积确定缩放因数s。在上述示例中示出的额外的缩放因数(例如,0.75s)被经验地确定以将适合的检测器子窗口的尺寸匹配到皮肤颜色色块的尺寸。
旋转了180度的搜索拼块被提供给检测器单元,这是因为由皮肤检测单元识别的色块的取向具有180度模糊性。
由皮肤检测单元识别的色块的最大数目N能够被预先定义,但是也可以在面部检测系统的操作期间根据可用计算资源而变化。在色块的数目大于N的情况下,皮肤检测单元将优选地选择最大N个色块。另选地,皮肤检测单元能够被构造为从所有可用的色块中进行选择,各个色块被选择的概率是根据色块的相对大小而确定的。
在图8的805和图9的908,检测器单元在根据为每个色块构造的椭圆生成的搜索拼块内执行面部检测以检测源帧的流中的面部候选806/909。
以该方式生成搜索拼块具有若干优点。其智能地指导检测器单元在帧的最可能包括面部的区域中进行搜索,这是因为这些区域具有对应于皮肤颜色的色块的最高的概率。这避免了使得检测器单元对整个图像空间执行穷尽搜索,同时为检测器单元提供了资源以在识别出的搜索拼块内执行详细搜索。皮肤检测单元还提供了从阈值图中的色块的形状确定的改变的旋转的搜索拼块的源。这显著地增加了检测器单元发现源帧中非直立的面部的效率和可能性。
检测器单元109因此被提供有基于下述三种不同的基础而生成的搜索拼块:随机生成的拼块116,其将新的候选注入到检测流水线中并且确保以无偏见的(unbiased)方式通过搜索覆盖图像空间;追踪搜索拼块117,其允许检测器单元在检测到的面部旋转或者发生大小的改变的情况下在帧之间跟踪检测到的面部;以及搜索拼块118,其来自基于接收到的帧中的皮肤颜色识别搜索拼块的皮肤检测单元112。从这三个不同的源接收拼块的净效果在于实质上提高了面部检测的效率并且允许在图像中包括非“直立”的面部的图像帧的流中的面部的能力要求低(low-power)且实时的检测。
使用从其中将要执行面部检测的当前帧生成的皮肤颜色概率图生成来自皮肤检测单元112的搜索色块,其中,从以前的帧提供用于生成皮肤颜色概率图的颜色椭圆。次优选地,皮肤检测单元112能够从当前帧生成用于在下一帧中使用的搜索色块。
根据本发明构造的面部检测系统具有若干有利特性。首先,由于检测器单元的处理时间被高效地分配给图像的最可能产生面部的那些部分,因此能够在帧之间实时地执行面部检测。因此,关于以前的帧中的面部的可能位置的信息以及在检测新面部时有用的颜色信息能够用于提高下一帧中的面部检测的准确性。在几个类似的帧(例如,当用户利用数字相机拍摄时获取的帧)的过程中,面部检测系统准确地锁定并且找到包括在图像的平面中旋转的面部的场景中的面部。
其次,由于在任何时间都能够在其输出处得到通过检测系统获得的面部的当前最佳估计(即,在以前的帧中找到的一组面部检测),因此该系统是灵活的。
第三,该系统能够容易地响应于对于面部检测系统与其它系统(例如,相机流水线中的其它处理系统)共享的任何处理资源的需求而进行调整(scaled)。特别地,面部检测处理的强度能够适应于可用处理资源的量同时保持实时的性能。例如,如果可用处理器循环在支持检测器单元的处理器处下降(例如,在GPU的情况下,要求执行其它图像处理),则能够减少提供给检测器单元的搜索拼块的数目。或者,如果可用处理器循环在支持皮肤检测单元的处理器处下降,则能够减少由皮肤检测单元生成的搜索拼块的数目(并且可能通过增加由拼块生成器110生成的搜索拼块的数目来进行平衡)。由于系统建立在以前的帧中收集的信息的基础上,因此该系统能够在后续帧弥补对于一帧执行的较低量的处理。
该面部检测系统在对当前帧进行处理时使用从以前的帧收集的信息。然而,该系统即使在源图像在帧之间动态地改变(例如,如果用户将相机从一群人摇开并且转向空白墙)时也继续良好地工作。这是因为检测器单元被构造为在帧中搜索在以前的帧中找到面部的位置以确认在这些位置处是否仍然找到面部:如果在帧中的给定位置现在不存在面部,则检测器单元不能够发现匹配并且在其输出处将不再提供这些面部候选。该系统因此快速地响应于源帧的流中的面部的位置的显著改变。在帧中不存在检测到的面部的情况下,颜色测量单元将不对于下一帧提供皮肤颜色的估计并且预处理器将使用从过去的帧中的测量确定的颜色椭圆,或者利用默认的颜色椭圆。
根据本发明构造的面部检测系统特别适合于在GPU(图形处理单元)处被至少部分地支持。图1示出了面部检测系统的处理单元在GPU101与CPU102(中央处理单元)之间的优选分布。在该示例中,预处理器104和检测器109由于其并行架构特别适合于执行图像和颜色空间变换以及二类分类器操作而被在GPU101处支持。其余的处理单元能够在CPU102处支持。GPU处的处理单元可以由适于在GPU的通常高度并行的架构上运行的一个或多个模块(例如,OpenCL模块)来限定,而CPU处的处理单元是适于运行该系统的装置的特定架构的一个或多个软件例程(例如,RISC内核)。
在其中检测器单元被在GPU处支持的本发明的实施方式中,面部检测系统的架构允许高效地利用通常在GPU中并行地提供的很多计算单元。如上所述,检测器单元被构造为在提供给检测器单元的搜索拼块内执行面部检测,并且在本情况下,不同的面部检测线程被分配给搜索拼块内的每个子窗口。因此,能够存在对于不同的子窗口并行地执行面部检测的很多线程。GPU将通常对于被称为波前(wavefront)的线程的组并行地进行操作。由于波前中的线程将比其它线程较早地终止并且包括所有这些线程的持续运行,直到其所有的线程终止为止,这将意味着很多计算单元将没有得到充分利用。对此问题的部分解决方案是将新的子窗口分配给波前的已经完成的现有线程。波前因此能够被保持直到搜索拼块的所有子窗口都已经被搜索为止。为了最大化计算单元的利用率,优选的是,搜索每个搜索拼块内的所有可能的子窗口。
这能够通过使用对于每个搜索拼块每次线程完成了子窗口时自动地递增的索引来实现。该索引保持对于哪些子窗口尚未被分配给线程的追踪。当索引达到搜索拼块中的子窗口的数目时,不再将工作分配给线程,并且波前终止。
已经关于面部检测系统在例如数字相机、智能电话、平板计算机或包括相机的诸如安全摄像头的任何种类的装置的相机流水线中的使用描述了面部检测系统。在另选实施方式中,面部检测系统能够从任何适合的源(包括提供记录的视频流或一系列的一个或多个数字图像的存储子系统以及提供接收的视频流或一系列的一个或多个数字图像的通信子系统)接收帧。
本发明不限于对于帧的流执行并且这里描述的面部检测系统在对于诸如照片的静态图像进行操作时也能够提供优异的性能。为了对静态图像执行面部检测,同一图像可以多次提供给面部检测系统以作为源帧103。在一个示例中,该图像被提供两次,该图像首先被用于确定皮肤颜色,并且然后使用该信息来在第二帧中找到面部。在另一示例中,该帧被提供两次以上,允许皮肤颜色模型在每个后续的迭代中变得更加精细。由于系统所进行操作的每个帧与以前的帧相同,因此该系统展示出了非常好的性能,同时继续提供了如上所述的高效和灵活的优点。
根据这里描述的系统执行的面部检测在很多类型的装置中都是有用的。特别地,在分组单元114处指示的检测到的面部的位置能够由相机流水线的自动对焦系统优先作为自动对焦点,以确保图像中的面部处于合焦状态。检测到的面部信息能够在视频编码设备中使用以通知编码器视频流中的面部的位置并且允许通过优先地增加视频流中的面部的编码质量而改进编码视频的观看质量。检测到的面部信息能够作为用于由相机捕获的照片的元数据以指示照片中的面部的位置。
这里所称的图像或图都不需要由面部检测系统保持为可识别为“图像”或“图”的数据结构。当系统的功能需要这些图像/图(或其一部分)时,所称的图像和图中的任一个(例如,亮度图像105、图像金字塔108、概率图106、阈值图和SKN图像107)可以整体地或部分地由面部检测系统从源图像103计算获得。这里所称的图像和图可以仅作为由面部检测系统执行的算法中的逻辑构造而存在。这里所称的任何面部检测、变换或转换可以包括对于表观对象图像帧执行的缩减规模和其它处理或者可以对从表观对象图像帧进行缩减规模或任何其它方式的处理而获得的图像帧执行。
根据本发明构造的数据处理系统能够实施为硬件、软件或硬件和软件的任何适合的组合。本发明的数据处理系统能够包括例如在一个或多个处理器(例如,CPU和/或GPU)处执行的软件,和/或一个或多个专用处理器(例如,ASIC),和/或适合于被编程以提供数据处理系统的功能的一个或多个可编程处理器(例如,FPGA),和/或包括一个或多个专用的、可编程的和通用处理功能的异构处理器。在本发明的优选实施方式中,数据处理系统包括一个或多个处理器以及其上有存储程序代码的一个或多个存储器,这些数据处理器和存储器例如以组合的方式提供所要求保护的数据处理系统和/或执行所要求保护的方法。
这里描述的数据处理单元(例如,预处理器104、检测器单元109、分组单元114、拼块生成器110、皮肤检测单元112和颜色测量单元113)不需要被提供为分立的单元,并且代表能够(a)以任何方式组合的功能并且(b)它们自己包括一个或多个数据处理实体。数据处理单元能够由任何适合的硬件或软件功能提供,或者由硬件和软件功能的组合提供。
这里使用的术语软件包括用于处理器(例如,CPU和/或GPU)的可执行代码、固件、字节码、诸如C或OpenCL的编程语言代码以及用于诸如FPGA的可重配置逻辑器件的模块。机器可读代码包括软件和用于定义硬件的代码,例如,可以在Verilog或VHDL中生成的寄存器传输级(RTL)代码。
这里描述的数据处理方法中的任一个或多个能够由一个或多个物理处理单元执行,该一个或多个物理执行单元执行使得单元执行这些数据处理方法的程序代码。该物理处理单元或每个物理处理单元能够是诸如CPU或GPU(或其内核)的任意适合的处理器,或者固定功能或可编程硬件。该程序代码能够以非瞬时性形式存储在诸如集成电路存储器或光学或磁存储装置的机器可读介质处。机器可读介质可以包括诸如芯片上存储器、计算机工作存储器和非易失性存储装置的若干存储器。
申请人在这里分别地公开了这里描述的各单独的特征以及两个或更多个这样的特征的组合,从而这样的特征或组合能够基于本说明书作为整体基于本领域技术人员的公知常识来执行,而与这样的特征或特征的组合是否能够解决这里讨论的任何问题无关,并且不构成对于权利要求的范围的限制。申请人指出的是,本发明的多个方面可以由任何这样的单独特征或特征的组合来构成。鉴于上述描述,对于本领域技术人员来说明显的是,可以在本发明的范围内进行各种修改。
Claims (37)
1.一种数据处理系统,所述数据处理系统用于对于帧的流执行面部检测,所述数据处理系统包括:
皮肤色块识别器,所述皮肤色块识别器被构造为识别第一帧中的皮肤颜色的一个或多个色块并且使用预定形状的相应色块构造来对所述第一帧中的每个色块进行特征化;
第一搜索拼块生成器,所述第一搜索拼块生成器被构造为从所述一个或多个色块构造生成一个或多个第一搜索拼块;以及
面部检测器,所述面部检测器被构造为通过在所述第一搜索拼块内在所述流的一个或多个帧中执行面部检测来检测所述流中的面部。
2.根据权利要求1所述的数据处理系统,其中,所述面部检测器被构造为仅在由搜索拼块表示的帧的区域内执行面部检测,这些搜索拼块包括所述第一搜索拼块。
3.根据权利要求1或2所述的数据处理系统,其中,所述第一搜索拼块生成器被构造为生成均具有从所述相应色块构造的取向确定的取向的所述一个或多个第一搜索拼块。
4.根据任一前述权利要求所述的数据处理系统,其中,所述面部检测器被构造为通过在所述第一搜索拼块内在第一帧中执行面部检测来检测所述流中的面部。
5.根据任一前述权利要求所述的数据处理系统,其中,所述面部检测器被构造为通过将二类分类器应用于所述第一搜索拼块的一个或多个子窗口来执行面部检测。
6.根据权利要求5所述的数据处理系统,其中,所述面部检测器被构造为仅在所述第一搜索拼块的没有相对于相应搜索拼块的取向旋转的那些子窗口中执行面部检测。
7.根据任一前述权利要求所述的数据处理系统,其中,所述皮肤色块识别器被构造为形成各色块构造,以对在所述第一帧中识别的皮肤颜色的各色块的位置、大小和取向进行特征化。
8.根据任一前述权利要求所述的数据处理系统,其中,所述预定形状是椭圆,并且所述一个或多个色块构造中的每一个的取向由所述椭圆的取向来指示。
9.根据任一前述权利要求所述的数据处理系统,其中,所述第一搜索拼块生成器被构造为对于每个色块构造生成具有与该色块构造的大小相关的预定组的尺寸的多个第一搜索拼块。
10.根据任一前述权利要求所述的数据处理系统,所述数据处理系统进一步包括变换单元,所述变换单元被构造为从第一帧以多个尺度生成表示该帧中的消色差信息的图像数据,所述面部检测器被构造为根据该图像数据执行面部检测。
11.根据任一前述权利要求所述的数据处理系统,所述数据处理系统进一步包括变换单元,所述变换单元被构造为从第一帧生成皮肤颜色概率图,所述皮肤颜色概率图对于所述第一帧中的每个像素指示该像素表示皮肤颜色的概率,所述皮肤色块识别器被构造为根据所述皮肤颜色概率图检测所述第一帧中的皮肤颜色的所述一个或多个色块。
12.根据权利要求11所述的数据处理系统,其中,所述皮肤色块识别器被构造为执行所述皮肤颜色概率图的阈值处理以计算二进制值,所述二进制值对于所述皮肤颜色概率图中的每个像素指示该像素表示皮肤颜色的高概率或低概率,通过识别阈值处理后的所述皮肤颜色概率图中的高概率值的色块从所述皮肤颜色概率图识别所述第一帧中的皮肤颜色的所述一个或多个色块。
13.根据权利要求12所述的数据处理系统,其中,所述皮肤色块识别器被构造为使用从以下中的一个选择的阈值来执行所述皮肤颜色概率图的阈值处理:
通过以下步骤确定的阈值:从所述概率图读取预定数目的值,将这些值按照值顺序排序并且计算那些具有最大差的两个相邻值的平均值;以及
从预定间隔选择的随机值。
14.根据权利要求11至13中的任一项所述的数据处理系统,其中,所述变换单元被构造为通过下述步骤将所述第一帧转换为皮肤颜色概率图:
将所述第一帧变换到预定颜色空间,该颜色空间的轴中的一个基本上在根据皮肤颜色的预定分布的最大方差的方向上取向;以及
根据给定颜色到平均皮肤颜色的颜色空间距离的测量计算该给定颜色是皮肤颜色的概率。
15.根据权利要求14所述的数据处理系统,其中,根据所述流的前一帧中由所述皮肤检测器检测到的面部的像素中的至少一些的平均颜色的测量确定所述平均皮肤颜色。
16.根据权利要求10至15中的任一项所述的数据处理系统,其中,在GPU处支持所述面部检测器和所述变换单元,并且在CPU处支持所述皮肤色块识别器和所述第一搜索拼块生成器。
17.根据任一前述权利要求所述的数据处理系统,所述数据处理系统进一步包括第二搜索拼块生成器,所述第二搜索拼块生成器被构造为生成第二搜索拼块,所述第二搜索拼块用于由所述面部检测器使用作为搜索拼块以检测所述第一帧中的面部,所述第二搜索拼块生成器被设置为生成具有随机或伪随机确定的位置和/或大小的第二搜索拼块。
18.根据任一前述权利要求所述的数据处理系统,所述数据处理系统进一步包括分组单元,所述分组单元被构造为将由所述面部检测器检测为所述第一帧中的面部的多组交叠的子窗口一起分组,以对于每一组形成单个检测面部。
19.根据任一前述权利要求所述的数据处理系统,所述数据处理系统进一步包括第三搜索拼块生成器,所述第三搜索拼块生成器被构造为生成第三搜索拼块,所述第三搜索拼块用于由所述面部检测器用作搜索拼块以便于检测所述第一帧中的面部,所述第三搜索拼块生成器被设置为从所述流中的所述第一帧之前的帧中由所述面部检测器检测到的一个或多个面部生成第三搜索拼块。
20.根据从属于权利要求18的权利要求19所述的数据处理系统,其中,所述第三搜索拼块生成器被构造为对于所述第一帧之前的帧中由所述分组单元形成的每个检测到的面部生成多个第三搜索拼块,所述多个第三搜索拼块与相应面部交叠并且具有:
与该面部的尺寸相关的预定组的尺寸;和/或
与该面部的取向相关的预定组的取向。
21.根据任一前述权利要求所述的数据处理系统,其中,所述皮肤色块识别器被构造为对于皮肤颜色的多个色块中的每一个形成色块构造,而所述第一搜索拼块生成器被构造为仅对于预定数目的最大色块构造生成第一搜索拼块。
22.根据任一前述权利要求所述的数据处理系统,其中,所述帧的流表示单个图像。
23.一种使用数据处理系统对帧的流执行面部检测的方法,所述方法包括:
识别所述流的第一帧中的皮肤颜色的一个或多个色块;
使用预定形状的相应色块构造来对所述第一帧中的所述一个或多个色块中的每一个进行特征化;
从所述第一帧中的所述一个或多个色块构造对于所述第一帧生成一个或多个第一搜索拼块;以及
在所述第一搜索拼块内在所述流的一个或多个帧中执行面部检测,以检测所述流中的面部。
24.一种数据处理系统,所述数据处理系统用于对于帧的流执行面部检测,所述数据处理系统包括:
面部检测器,所述面部检测器被构造为通过在为第一帧定义的第一搜索拼块内执行面部检测来检测所述第一帧中的第一面部候选;
颜色测量单元,所述颜色测量单元被构造为计算一组颜色参数,所述一组颜色参数包括根据预定颜色空间表达的所述第一面部候选的平均颜色;
变换单元,所述变换单元被构造为:
将第二帧变换到所述预定颜色空间中,该颜色空间的轴中的一个基本上在根据皮肤颜色的预定分布的最大方差的方向上取向;以及
通过根据给定颜色到所计算的平均颜色的颜色空间距离的测量计算该给定颜色是皮肤颜色的概率,来对于所述第二帧形成皮肤颜色概率图;以及
搜索拼块生成器,所述搜索拼块生成器被构造为基于由所述面部检测器使用的所述皮肤颜色概率图生成第二搜索拼块,所述第二搜索拼块定义所述第二帧的所述面部检测器在其中执行面部检测以检测所述第二帧中的一个或多个第二面部候选的区域。
25.根据权利要求24所述的数据处理系统,其中,所述第二帧在所述帧的流中的所述第一帧之后。
26.根据权利要求24或25所述的数据处理系统,其中,所述颜色测量单元进一步构造为计算所述第一面部候选沿着所述预定颜色空间的坐标轴的颜色的变化程度作为颜色参数,并且所述变换单元被构造为根据给定颜色到以所计算的颜色的变化程度标度的所计算的平均颜色的颜色空间距离的测量来计算该给定颜色是皮肤颜色的概率。
27.根据权利要求26所述的数据处理系统,其中,所述颜色测量单元被构造为仅根据所述第一面部候选的中心部分来计算所述第一面部候选的颜色的变化程度和平均颜色。
28.根据权利要求24至27中的任一项所述的数据处理系统,其中,借助于皮肤颜色的预定分布的主分量分析来确定所述预定颜色空间的坐标轴。
29.根据权利要求26至28中的任一项所述的数据处理系统,其中,所述第一面部候选的所述一组颜色参数表示所述预定颜色空间中的椭圆,所述椭圆以所述平均颜色为中心并且具有平行于所述预定颜色空间的坐标轴取向的轴,这些轴具有由颜色的变化的相应程度定义的长度。
30.根据权利要求24至29中的任一项所述的数据处理系统,其中,所述面部检测器被构造为通过将二类分类器应用于所述第一搜索拼块的子窗口来检测所述第一帧中的面部,并且将检测为所述第一帧中的面部的多组交叠子窗口一起分组,以对于每一组形成单个面部候选,每个面部候选被分配有根据其组中的交叠子窗口的数目的权重,并且所述第一面部候选是具有最高权重的面部候选。
31.根据权利要求30所述的数据处理系统,其中,所述变换单元被构造为保持对于来自所述流中的所述第二帧之前的一个或多个帧的多个面部候选计算的多组颜色参数,每组颜色参数继承了分配给相应面部候选的权重并且由所述变换单元使用的一组颜色参数是具有最高权重的一组颜色参数。
32.根据权利要求31所述的数据处理系统,其中,所述颜色测量单元用于对于新的面部候选计算新的一组颜色参数,所述变换单元被构造为,如果用于该新的一组颜色参数的椭圆与由当前存储的一组颜色参数表示的椭圆交叠超过预定程度,则通过将现有的一组颜色参数替换为该新的一组颜色参数并且通过组合该现有的一组颜色参数和该新的一组颜色参数的权重形成新的权重,来对该现有的一组颜色参数进行更新。
33.根据权利要求24至32中的任一项所述的数据处理系统,其中,在GPU处支持所述面部检测器和所述变换单元。
34.根据权利要求24至33中的任一项所述的数据处理系统,其中,在CPU处支持所述颜色测量单元和所述搜索拼块生成器。
35.根据权利要求24至34中的任一项所述的数据处理系统,其中,所述第一帧和所述第二帧都表示单个图像,所述第一帧和所述第二帧可选地是相同的。
36.一种使用数据处理系统对帧的流执行面部检测的方法,所述方法包括:
通过在为所述流的第一帧定义的第一搜索拼块内执行面部检测来检测所述第一帧中的第一面部候选;
计算一组颜色参数,所述一组颜色参数包括根据预定颜色空间表达的所述第一面部候选的平均颜色;
将所述流的第二帧变换到所述预定颜色空间,该颜色空间的轴中的一个基本上在根据皮肤颜色的预定分布的最大方差的方向上取向;
通过根据给定颜色到所计算的平均颜色的颜色空间距离的测量计算该给定颜色是皮肤颜色的概率,来对于所述第二帧形成皮肤颜色概率图;
基于所述皮肤颜色概率图生成第二搜索拼块;并且
通过在所述第二搜索拼块内执行面部检测来检测所述第二帧中的一个或多个第二面部候选。
37.一种机器可读代码,所述机器可读代码用于生成根据权利要求1至22或24至35中的任一项所述的数据处理系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410820511.8A CN104573640B (zh) | 2013-10-23 | 2014-10-23 | 数据处理系统及其生成设备、面部检测方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1318757.0A GB2516512B (en) | 2013-10-23 | 2013-10-23 | Face detection |
GB1318757.0 | 2013-10-23 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410820511.8A Division CN104573640B (zh) | 2013-10-23 | 2014-10-23 | 数据处理系统及其生成设备、面部检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104573625A true CN104573625A (zh) | 2015-04-29 |
CN104573625B CN104573625B (zh) | 2019-09-17 |
Family
ID=49727241
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410820511.8A Active CN104573640B (zh) | 2013-10-23 | 2014-10-23 | 数据处理系统及其生成设备、面部检测方法 |
CN201410573513.1A Active CN104573625B (zh) | 2013-10-23 | 2014-10-23 | 数据处理系统及其生成设备、和面部检测方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410820511.8A Active CN104573640B (zh) | 2013-10-23 | 2014-10-23 | 数据处理系统及其生成设备、面部检测方法 |
Country Status (4)
Country | Link |
---|---|
US (3) | US9633249B2 (zh) |
CN (2) | CN104573640B (zh) |
DE (2) | DE102014115124A1 (zh) |
GB (2) | GB2516512B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111414149A (zh) * | 2019-01-04 | 2020-07-14 | 瑞昱半导体股份有限公司 | 背景模型更新的方法与相关装置 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014189613A1 (en) * | 2013-05-24 | 2014-11-27 | Intel Corporation | Skin tone tuned image enhancement |
CN106462736B (zh) * | 2014-08-07 | 2020-11-06 | 华为技术有限公司 | 用于人脸检测的处理设备和方法 |
GB2533284B (en) | 2014-12-11 | 2017-04-12 | Imagination Tech Ltd | Performing object detection |
FR3035251A1 (fr) * | 2015-04-17 | 2016-10-21 | Stmicroelectronics (Grenoble 2) Sas | Procede et dispositif de generation d'une representation multi-resolutions d'une image et application a la detection d'objet |
GB2541179B (en) | 2015-07-31 | 2019-10-30 | Imagination Tech Ltd | Denoising filter |
CN108352054B (zh) * | 2015-08-26 | 2022-05-03 | 快图有限公司 | 图像处理设备 |
US20180096195A1 (en) * | 2015-11-25 | 2018-04-05 | Microsoft Technology Licensing, Llc | Probabilistic face detection |
US10681125B2 (en) * | 2016-03-29 | 2020-06-09 | Advanced Micro Devices, Inc. | Systems and methods of supporting parallel processor message-based communications |
CN106067016B (zh) * | 2016-07-20 | 2017-06-23 | 深圳市飘飘宝贝有限公司 | 一种人脸图像眼镜检测方法及装置 |
US10509965B2 (en) * | 2016-12-15 | 2019-12-17 | Google Llc | Methods, systems, and media for detecting two-dimensional videos placed on a sphere in abusive spherical video content by tiling the sphere |
US11340977B2 (en) * | 2017-01-11 | 2022-05-24 | International Business Machines Corporation | Predictive analytics for failure detection |
CN108230293A (zh) * | 2017-05-31 | 2018-06-29 | 深圳市商汤科技有限公司 | 确定人脸图像质量的方法和装置、电子设备和计算机存储介质 |
CN107274452B (zh) * | 2017-05-31 | 2020-07-24 | 成都品果科技有限公司 | 一种痘痘自动检测方法 |
US10645357B2 (en) * | 2018-03-01 | 2020-05-05 | Motorola Mobility Llc | Selectively applying color to an image |
FR3081591B1 (fr) * | 2018-05-23 | 2020-07-31 | Idemia Identity & Security France | Procede de traitement d'un flux d'images video |
JP7137746B2 (ja) * | 2019-01-30 | 2022-09-15 | 株式会社Jvcケンウッド | 映像処理装置、映像処理方法および映像処理プログラム |
JP6635208B1 (ja) * | 2019-02-22 | 2020-01-22 | 日本電気株式会社 | 検索装置、検索方法、およびプログラム |
CN110084135B (zh) * | 2019-04-03 | 2024-04-23 | 平安科技(深圳)有限公司 | 人脸识别方法、装置、计算机设备及存储介质 |
CN115428019A (zh) * | 2021-03-22 | 2022-12-02 | 乐天集团股份有限公司 | 信息处理装置、信息处理方法和程序 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6690822B1 (en) * | 2000-10-20 | 2004-02-10 | Eastman Kodak Company | Method for detecting skin color in a digital image |
US20040151381A1 (en) * | 2002-11-29 | 2004-08-05 | Porter Robert Mark Stefan | Face detection |
CN101710427A (zh) * | 2008-09-09 | 2010-05-19 | 富士胶片株式会社 | 面部检测器和面部检测方法 |
US20100272363A1 (en) * | 2007-03-05 | 2010-10-28 | Fotonation Vision Limited | Face searching and detection in a digital image acquisition device |
CN102426652A (zh) * | 2011-10-10 | 2012-04-25 | 北京工业大学 | 基于图像分析的中医面色识别和检索方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999023600A1 (en) * | 1997-11-04 | 1999-05-14 | The Trustees Of Columbia University In The City Of New York | Video signal face region detection |
US6148092A (en) * | 1998-01-08 | 2000-11-14 | Sharp Laboratories Of America, Inc | System for detecting skin-tone regions within an image |
US7099510B2 (en) * | 2000-11-29 | 2006-08-29 | Hewlett-Packard Development Company, L.P. | Method and system for object detection in digital images |
US6697502B2 (en) * | 2000-12-14 | 2004-02-24 | Eastman Kodak Company | Image processing method for detecting human figures in a digital image |
EP1353516A1 (en) * | 2002-04-08 | 2003-10-15 | Mitsubishi Electric Information Technology Centre Europe B.V. | A method and apparatus for detecting and/or tracking one or more colour regions in an image or sequence of images |
KR100474848B1 (ko) * | 2002-07-19 | 2005-03-10 | 삼성전자주식회사 | 영상시각 정보를 결합하여 실시간으로 복수의 얼굴을검출하고 추적하는 얼굴 검출 및 추적 시스템 및 방법 |
US7031499B2 (en) * | 2002-07-22 | 2006-04-18 | Mitsubishi Electric Research Laboratories, Inc. | Object recognition system |
US7020337B2 (en) * | 2002-07-22 | 2006-03-28 | Mitsubishi Electric Research Laboratories, Inc. | System and method for detecting objects in images |
US8351647B2 (en) * | 2002-07-29 | 2013-01-08 | Videomining Corporation | Automatic detection and aggregation of demographics and behavior of people |
US7035461B2 (en) * | 2002-08-22 | 2006-04-25 | Eastman Kodak Company | Method for detecting objects in digital images |
US7212651B2 (en) * | 2003-06-17 | 2007-05-01 | Mitsubishi Electric Research Laboratories, Inc. | Detecting pedestrians using patterns of motion and appearance in videos |
US7844076B2 (en) * | 2003-06-26 | 2010-11-30 | Fotonation Vision Limited | Digital image processing using face detection and skin tone information |
US20080019575A1 (en) * | 2006-07-20 | 2008-01-24 | Anthony Scalise | Digital image cropping using a blended map |
US20080019574A1 (en) * | 2006-07-20 | 2008-01-24 | Anthony Scalise | Machine-controlled image cropping with default |
CN101216885A (zh) * | 2008-01-04 | 2008-07-09 | 中山大学 | 一种基于视频的行人人脸检测与跟踪算法 |
CN101251898B (zh) * | 2008-03-25 | 2010-09-15 | 腾讯科技(深圳)有限公司 | 一种肤色检测方法及装置 |
US8135182B2 (en) * | 2008-04-22 | 2012-03-13 | Eastman Kodak Company | Method for creating photo cutouts and collages |
CN101344922B (zh) * | 2008-08-27 | 2011-11-02 | 华为技术有限公司 | 一种人脸检测方法及其装置 |
CN101630363B (zh) * | 2009-07-13 | 2011-11-23 | 中国船舶重工集团公司第七〇九研究所 | 复杂背景下彩色图像人脸的快速检测方法 |
EP2469450B1 (en) * | 2010-12-24 | 2017-11-22 | OCT Circuit Technologies International Limited | Face detection |
US20130050395A1 (en) * | 2011-08-29 | 2013-02-28 | DigitalOptics Corporation Europe Limited | Rich Mobile Video Conferencing Solution for No Light, Low Light and Uneven Light Conditions |
CN102622589A (zh) * | 2012-03-13 | 2012-08-01 | 辉路科技(北京)有限公司 | 一种基于gpu的多光谱人脸检测方法 |
-
2013
- 2013-10-23 GB GB1318757.0A patent/GB2516512B/en active Active
- 2013-10-23 GB GB1407063.5A patent/GB2519620B/en active Active
-
2014
- 2014-10-17 DE DE102014115124.0A patent/DE102014115124A1/de active Pending
- 2014-10-17 DE DE102014019054.4A patent/DE102014019054A1/de active Pending
- 2014-10-23 US US14/521,957 patent/US9633249B2/en active Active
- 2014-10-23 CN CN201410820511.8A patent/CN104573640B/zh active Active
- 2014-10-23 US US14/522,009 patent/US9349037B2/en active Active
- 2014-10-23 CN CN201410573513.1A patent/CN104573625B/zh active Active
-
2017
- 2017-03-21 US US15/464,980 patent/US10055639B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6690822B1 (en) * | 2000-10-20 | 2004-02-10 | Eastman Kodak Company | Method for detecting skin color in a digital image |
US20040151381A1 (en) * | 2002-11-29 | 2004-08-05 | Porter Robert Mark Stefan | Face detection |
US20100272363A1 (en) * | 2007-03-05 | 2010-10-28 | Fotonation Vision Limited | Face searching and detection in a digital image acquisition device |
CN101710427A (zh) * | 2008-09-09 | 2010-05-19 | 富士胶片株式会社 | 面部检测器和面部检测方法 |
CN102426652A (zh) * | 2011-10-10 | 2012-04-25 | 北京工业大学 | 基于图像分析的中医面色识别和检索方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111414149A (zh) * | 2019-01-04 | 2020-07-14 | 瑞昱半导体股份有限公司 | 背景模型更新的方法与相关装置 |
CN111414149B (zh) * | 2019-01-04 | 2022-03-29 | 瑞昱半导体股份有限公司 | 背景模型更新的方法与相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104573625B (zh) | 2019-09-17 |
DE102014019054A1 (de) | 2015-09-17 |
GB2516512B (en) | 2015-10-14 |
US9633249B2 (en) | 2017-04-25 |
US20170193281A1 (en) | 2017-07-06 |
US20150110351A1 (en) | 2015-04-23 |
GB2519620A (en) | 2015-04-29 |
US10055639B2 (en) | 2018-08-21 |
GB201407063D0 (en) | 2014-06-04 |
DE102014115124A1 (de) | 2015-05-28 |
US9349037B2 (en) | 2016-05-24 |
CN104573640B (zh) | 2019-04-30 |
CN104573640A (zh) | 2015-04-29 |
US20150110352A1 (en) | 2015-04-23 |
GB2519620B (en) | 2015-12-30 |
GB2516512A (en) | 2015-01-28 |
GB201318757D0 (en) | 2013-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104573625A (zh) | 面部检测 | |
US11948350B2 (en) | Method and system for tracking an object | |
US9251425B2 (en) | Object retrieval in video data using complementary detectors | |
JP5259798B2 (ja) | 映像解析方法およびシステム | |
CN108460362B (zh) | 一种检测人体部位的系统及方法 | |
CN100550055C (zh) | 检测视频的图像时间序列中的活动对象的方法 | |
EP2959454B1 (en) | Method, system and software module for foreground extraction | |
CN109447169A (zh) | 图像处理方法及其模型的训练方法、装置和电子系统 | |
CN104166841A (zh) | 一种视频监控网络中指定行人或车辆的快速检测识别方法 | |
CN104217202A (zh) | 信息识别方法、设备和系统 | |
CN113989944B (zh) | 操作动作识别方法、装置及存储介质 | |
WO2012139271A1 (en) | Smile detection techniques | |
CN107808126A (zh) | 车辆检索方法及装置 | |
Lin et al. | Live Face Verification with Multiple Instantialized Local Homographic Parameterization. | |
Costea et al. | Fast pedestrian detection for mobile devices | |
Bai et al. | Multi-scale fully convolutional network for face detection in the wild | |
CN109492573A (zh) | 一种指针读取方法及装置 | |
CN103136536A (zh) | 对象检测系统和方法、图像的特征提取方法 | |
Liang et al. | Towards better railway service: Passengers counting in railway compartment | |
Saini et al. | SOLARNet: A single stage regression based framework for efficient and robust object recognition in aerial images | |
Sadakatul Bari et al. | Performance evaluation of convolution neural network based object detection model for Bangladeshi traffic vehicle detection | |
CN103136524A (zh) | 能够抑制检测结果冗余的对象检测系统和方法 | |
Wang et al. | Fast pedestrian detection based on object proposals and HOG | |
CN109815840A (zh) | 一种确定识别信息的方法及装置 | |
Liu | YOLO-M: An Efficient YOLO Variant with MobileOne Backbone for Real-Time License Plate Detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |