基于人脸的图像聚类的制作方法

文档序号:6456245阅读:415来源:国知局
专利名称:基于人脸的图像聚类的制作方法
基于人脸的图像聚类
背景技术
随着个人和组织持续快速积累图像内容的大的收藏,他们将日益要 求用于组织和浏览其收藏中的图像内容的系统和方法。许多系统允许用 户通过图像和其它数字内容与特定事件或主题的联系来对其进行手动 分类,并基于这些分类来划分数字内容。但是,手动分类系统通常耗时 且难用,尤其是随着数字内容收藏规模的变大。 一些系统被配置为基于 颜色、形状或紋理特征来自动划分数字内容,如图像。但是,由于与基 于颜色、形状或紋理的分类关联的固有不准确性,这些自动划分系统通 常易于对数字内容进行错误分类。
在 一 些基于内容的图像检索方法中,低级的视觉特征被用来将图像 分组为有意义的分类,该分类反过来被用来产生用于包含图像的数据库 的索引。根据这些方法,用诸如颜色、紋理、形状和布局等低级特征来 表现图像。查询图像的特征可用来检索数据库中具有类似特征的图像。 总的来说,当被用来分类和索引图像的特征更精确地捕捉到图像内容的 目标方面时,图像自动分类和索引的结果会改善。
最近,在检测和归类人类主题的方面(例如,脸部和眼睛)做出了 努力。例如,在一种方法中,数字图像中的人脸被组织为聚类。根据该 方法, 一人脸图像被用来形成第一个聚类。基于对未分配的人脸图像和 任何现有聚类中的每个脸部图像的比较,人脸识别器产生相似性评分。 如果未分配的人脸图像的相似性评分高于阈值,该未分配的人脸图像被 添加到对应于最高相似性评分的聚类中。如果未分配的人脸图像的相似 性评分低于阈值,该未分配的人脸图像被用于形成一个新的聚类。对于 每个未分配的人脸图像重复该处理。对于每个聚类,包含在聚类中的所 有人脸图像被显示在聚类查看屏幕中。如果人脸图像不属于一个特定的 聚类,用户可以将其从该聚类中删除或重新分配给另外一个聚类。如果 两个聚类的人脸所属相同,用户可以合并这两个聚类。
在半自动人脸聚类方法中,人脸检测器用于从相片中自动提取人 脸。人脸识别器被用来通过人脸与选定模型的相似性来排序人脸。在该
5过程中,当一个或多个人脸与某个人相关时,建立表示这些人脸的模型, 并显示以与该模型的相似性的顺序排序的未标识的人脸。用户可以用拖 放交互技术来选择一些人脸并将其分配给正确的人。模型被更新以合并 新识别的人脸,且未标识的人脸根据其与新模型的相似性来排序。被排 序的人脸在用户界面中呈现为候选者,该用户界面允许用户标识脸部。
使用现有的基于人脸的图像聚类方法构建的人脸模型典型地不准 确地表现它们代表的人的脸部。结果,分级为与特定的人脸模型最接近 的人脸通常不对应于模型所表示的人。特别地,如果一个图像被错误地 包含到 一个聚类中,则与该图像相似的其它图像也会被包括到该聚类 中。这样,每个误报可能会扩散而产生更多的误报。需要基于人脸的图 像聚类系统和方法,其能够建立更准确和更鲁棒的人脸模型。

发明内容
在本发明的一个方面中,在图像中冲企测人脸区域。从每个人脸区域 提取至少 一 个相应的参数值。人脸区域中与满足聚类种子判定的参数值 关联的那些被归类为聚类种子人脸区域。聚类种子人脸区域被聚类为一 个或更多个聚类。为每个聚类建立各自的人脸模型。人脸模型被存储。
在本发明的另一个方面中,在图像中检测人脸区域。从每个人脸区 域提取至少 一个相应的参数值。基于提取的参数值来对人脸区域分级。 以分级顺序将人脸区域聚类为一个或更多个聚类。在显示器上呈现聚类
本发明的其它特征和优势将从包括附图和权利要求书在内的下列 描述而变得明显。


图1是图像处理系统的实施例的框图。
图2是图像处理方法的实施例的流程图。
图3是示出在执行图2的图像处理方法期间生成的信息的示意图。 图4是示例性输入图像的图解视图,在该图像上叠加了划分人脸区 域的实施例的边界。
图5是聚类方法的实施例的流程图。
图6是人脸区域特征空间的实施例的示意图,该特征空间被分为由沿接近度度量维度的距离所定义的各区域。
图7是从人脸区域提取特征的过程的实施例的图解视图。 图8是图像处理系统的实施例的框图。
图9是图像处理方法的实施例的流程图。
图10是呈现图形用户界面的实施例的显示器的图解视图,该用户
界面用于用户对人脸聚类的查看和修改。
图11是呈现图形用户界面的实施例的显示器的图解视图,该用户 界面用于用户对人脸聚类的查看和修改。
具体实施例方式
在下面的描述中,类似的附图标记被用来表示类似的元件。此外, 附图旨在以图解的方式来说明示例性实施例的主要特征。附图并不旨在 描述实际实施例的每个特征或描述的元件的相对尺寸,并且不是按比率 绘制的。
I. 引言
这里具体描述的实施例基于在图像中检测到的人脸区域来聚类图 像。这些实施例影响建立聚类的人脸模型的方法,这些方法被期望提供 更准确和更鲁棒的聚类结果。在这些实施例的一些中,聚类以聚类种子 人脸区域来开始,聚类种子人脸区域被选择来为建立人脸聚类提供更准 确和鲁棒的基础。此外, 一些实施例根据一个或更多个参数来对人脸区 域分级,这些参数被期望强调可能包含人脸部的更多准确表示的人脸区 域。在这些实施例中,人脸区域以从最高级别到最低级别的顺序来聚类, 以获得改善的聚类结果。在一些实施例中,用户反馈被用来进一步改善 聚类结果的聚类准确性。
II. 第一图像处理系统及其组件的示例性实施例
A.图像处理系统的总览
图1示出了图像处理系统IO的实施例,包括人脸检测处理组件12、 参数提取处理组件14、聚类处理组件16以及模型处理组件18。
在操作中,图像处理系统10处理输入图像20集合以生成聚类规范 22和聚类人脸模型24,在数据库26中与输入图像20关联地存储。每 个输入图像20可以对应于任何类型的图像,包括图像传感器(例如数 字摄像机、数字静态图像照相机或光学扫描仪)捕获的原始图像(例如
7视频的关键帧、静态图像或扫描的图像),或这样的原始图像经过处理 (例如,子抽样、裁剪、旋转、滤光、格式重定、增强或其它修改)后
的版本。每个聚类规范22对应于在关联的输入图像20中检测到的不同 的相应人脸。在一些实施例中,每个聚类规范22包括对输入图像20中 包含作为构成部分的人脸的相关联的那些的位置的描述(例如,统一资 源定位符(URL)),以及作为构成部分的人脸在这些输入图像的每个 内的位置(例如,包含人脸区域的限定框的坐标)。在一些实施例中, 图像处理系统1 0在链接到输入图像2 0中关联的那些的相应的数据结构
(例如表格或列表)中存储聚类规范。在一些实施例中,每个输入图像 20对于在该输入图像20中检测到的每个人脸,关联相应的聚类规范22。 这样,在这些实施例中,包括多个检测到的人脸的输入图像20与多个 聚类规范22关联。
图2示出了由图像处理系统10的实施例实现的方法的实施例,并 且图3示出了在执行该方法的说明性实施期间生成的信息。
根据该方法,人脸检测处理组件12在输入图像20中检测人脸区域
(图2,块28)。每个人脸区域包含人脸部的至少一部分。这样,如图 3所示,图像20被分为包含至少一个人脸的图像的集合30,和不包含 任何检测到的人脸的图像的集合32。参数提取处理组件14从每个人脸 区域中提取至少一个相应的参数值34 (图2,块36)。聚类处理组件 16将人脸区域中与满足聚类种子判定的参数值关联的那些归类为聚类 种子人脸区域38(图2,块40)。与不满足聚类种子判定的参数值关联 的人脸区域被归类为非聚类种子人脸区域42。聚类处理组件16还将聚 类种子人脸区域聚类为一个或更多个聚类44 (图2,块46)。在一些实 施例中,聚类过程涉及将聚类种子人脸区域划分为一组初始聚类48,以 及将非聚类种子人脸区域42中的那些分配给各初始聚类48以生成聚类 44的最终集合。模型处理组件18为每个聚类44建立各自的人脸模型 24 (图2,块50)。模型处理组件18在数据库26中存储人脸模型24
(图2,块52)。在一些实施例中,模型处理组件18还在数据库24中 与相应的输入图像20关联地存储聚类规范22。
在图2中示出的自动聚类过程的最后,各图像20被划分到"无人 脸,,类别、"其它人脸,,类别、以及一组图像聚类,该组图像聚类每个 包含的图像具有对应于一个特定人的相应脸部的区域。包含多于一个人脸的图像可以在多于一个图像聚类和类别中出现。
通常,图像处理系统10可以由一个或多个分离的处理组件(或模 块)实现,不限于任何特定的硬件、固件或软件配置。在示出的实施例
中,处理组件12-18可以在任何计算和数据处理环境中实现,包括在数 字电子电路(例如,特定应用集成电路例如数字信号处理器(DSP)) 或在计算机硬件、固件、设备驱动器或软件中。在本示例性实施例中, 模型处理组件18通过人脸识别引擎实现。在一些实施例中,处理组件 12-18中多个的功能性被合并到单个处理组件中。在其它实施例中,一 个或更多个处理组件12-18中每个各自的功能性由相应的一组多个处理 组件执行。
在一些实现中,用于实现该方法的被图像处理系统IO执行的计算 机处理指令和它生成的数据在一个或更多个机器可读媒介中存储。适于 确实地包含这些指令和数据的存储设备包括非易失性存储器的所有形 式,包括,例如,半导体存储设备例如EPR0M、 EEPROM和闪存存储设备, 磁盘例如内部硬盘和可移动硬盘、磁光盘、DVD-R0M/RAM和CD-R0M/RAM。
B.人脸才全测处理组件的示例性实施例
如上所释,人脸检测处理组件12在输入图像20中检测人脸。通常, 人脸检测处理单元12可以使用任何类型的人脸检测过程,其确定在输 入图像20中每个人脸的存在和位置。示例性人脸检测方法包括但不限 于基于特征的人脸检测方法、模板匹配人脸检测方法、基于神经网络的 人脸检测方法以及基于图像的人脸检测方法,这些方法通过^皮标记的人 脸样本的集合来训练机器系统。示例性的基于特征的人脸检测方法在 Viola and Jones, "Robust Real-Time Object Detection," Second International Workshop of Statistical and Computation theories of Vision — Modeling, Learning, Computing, and Sampling, Vancouver, Canada (July 1 3, 2001)中描述,其通过引用结合于此。示 例性的基于神经网络的人脸检测方法在Rowley et al., "Neural Network-Based Face Detection," IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 20, No. "January 1998) 中描述,其通过引用结合于此。
在典型的人脸检测过程中,人脸纟企测处理组件12初始地确定每个 输入图像20中每个人脸的存在和大致位置。在检测到人脸的大致位置
9后,脸部检测处理组件12对准(或配准)检测到的人脸从而它可以被 识别。在该过程中,在检测的人脸中的一个或更多个特征点(例如,眼 睛、鼻尖和嘴或嘴唇)被提取。通常,任意类型的特征提取过程可以被 使用,包括但不限于基于边缘、线和曲线的特征提取方法、基于被设计 为检测特定特征点(例如眼睛和嘴)的模板的提取方法、以及结构匹配
方法。对于每个检测到的人脸,人脸检测处理组件12关于环绕检测到
的人脸的一些或所有部分的相应的脸部限定框对准提取的特征。在一些 实现中,脸部限定框对应于一个矩形,其包括检测到的人脸的眼睛、鼻 子、嘴但不包括整个前额或下巴或头的顶部。
脸部检测处理组件12输出一个或更多个人脸检测参数值34。人脸 检测参数值34的示例性类型包括人脸的数量和脸部限定框的位置(例 如坐标)。脸部检测处理组件12将人脸检测参数值34传递给参数提取 处理组件14、聚类处理组件16和模型处理组件18。
C.参数提取处理组件的示例性实施例
在示出的实施例中,参数提取处理组件14为每个脸部区域确定一 个或更多下列参数53的相应值由人脸检测处理组件12报告的脸部限 定框的尺寸(例如,垂直和水平尺寸或面积);脸部区域的清晰度的度 量;人脸区域的曝光的度量;人脸区域的对比度的度量;人脸区域的饱 和度的度量;以及人脸区域的亮度的度量。参数提取处理组件14将提 取的参数值53传递给聚类处理组件16。
1. 计算尺寸参数值
参数提取处理组件14从人脸检测处理组件12在人脸检测参数值34 中报告的脸部限定框的坐标,确定检测到的人脸区域的线性和面积尺寸。
图4示出了示例性输入图像54,在其上叠加了划分人脸区域58的 实施例的边界56,该人脸区域58对应于人60的脸部的区域。在该例子 中,人脸区域58具有水平尺寸w^。和垂直尺寸hla。e。人脸区域58的面
积尺寸Aface由Aface=Wface X hface给出。 一
2. 计算清晰度参数值
参数提取处理组件14可以以多种不同方式确定清晰度度量。在一 示例性实施例中,清晰度因子可以从对局部清晰度的估算导出,该局部 清晰度对应于在检测到的人脸区域中 一 维亮度梯度的高通和低通能量
10之间的平均比率。根据本实施例,在每个脸部区域中为每个水平像素行 和垂直像素列计算亮度梯度。对于其中梯度超过梯度阈值的每个水平和 垂直像素方向,参数提取处理组件14从梯度的高通能量和低通能量的 比率计算相应的局部清晰度度量。通过平均人脸区域中的所有行和列的 清晰度值,为每个人脸区域计算清晰度值。
3. 计算曝光参数值
参数提取处理组件14可以以多种不同方式来为每个人脸区域确定
夂^ H虽业虔吝 7<r— 一人々4it A,l rb 矣#A 4旦mr Al、 J田々n /f杏 14 其千人怜f -口— fc) ,e乂u乂J^主。 I :7^/^" i〃J 'l ,'》-:5J入'j "T""、^^'工;^tL l丁 14 ■) Z、/fci k!l
域内过度曝光和欠曝光像素的数量的计数来确定每个人脸区域的曝光
度量。在该过程中,如果(i)在以像素为中心的窗口内超过一半像素的
亮度值超过249,或者(ii)在该窗口内亮度梯度的能量和亮度方差的比 率超过900并且在该窗口内的平均亮度超过239,参数提取处理组件14 将人脸区域内的像素标记为过度曝光。如果(i)在该窗口内超过一半像 素的亮度值低于6,或者(ii)在该窗口内亮度梯度的能量和亮度方差的 比率超过900并且在该窗口内的平均亮度低于30,参数提取处理组件 14将人脸区域内的像素标记为欠曝光。参数提取处理组件14通过从1 减去区域中过度曝光像素的平均数量来为每个人脸区域计算各自的过 度曝光度量。类似地,参数提取处理组件14通过从1减去区域中欠曝 光像素的平均数量来为每个区域计算各自的欠曝光度量。结果生成的过 度曝光度量和欠曝光度量相乘在一起,来为每个人脸区域产生各自的曝 光度量。
4. 计算对比度参数值
参数提取处理组件14可以使用多种不同方法中的任一种来为每个 人脸区域计算各自的对比度度量。在一些实施例中,参数提取处理组件 14根据美国专利号5642433中描述的图像对比度确定方法来计算对比 度度量。在一些实施例中,局部对比度度量Q,^,,由等式(1 )给出
1 如果力。>100
1+如果"《100 (1) 其中,"是给定区域的相应的亮度方差。
5. 计算亮度参数值
参数提取处理组件14可以使用多种不同方法中的任一种来为每个 人脸区域计算各自的亮度度量。在一些实施例中,亮度度量对应于人脸区域的平均亮度。
D.聚类处理组件的示例性实施例
聚类处理组件16将人脸区域中与满足聚类种子判定的参数值53关 联的那些归类为聚类种子人脸区域38 (图3,块40;见图1和3)。与 不满足聚类种子判定的参数值关联的人脸区域被归类为非聚类种子人 脸区域42。
聚类种子判定定义了至少一个关于由参数提取处理组件14从检测
■5" AA 乂 J^. rb 4旦"ETcr AA类头'A 乂^《。AA久乂丄
,g H'wj义wv z》、^^ ,肚j j wv不i i o
在一些实施例中,聚类种子判定对应于关于每个聚类种子人脸区域 的最小尺寸的阈值。在一个示例性实施例中,最小尺寸阈值关于包含该 人脸区域的对应的输入图像20规定了每个人脸区域的最小尺寸。在本 实施例中,聚类种子判定P一由等式(2)给出
其中Q/_是人脸区域的尺寸,Q ;,是包含人脸区域的输入图像的尺寸,
且T,^是最小尺寸阈值。在一些实施例中,Q/w和Q^e分别对应于人
脸区域和输入图像的线性尺寸。在另外的实施例中,Qk和Q,.《e分别 对应于人脸区域和输入图像的面积尺寸。
在一些实施例中,聚类种子判定指定了多个关于聚类种子人脸区域 的参数值53的条件。例如,在一些实施例中,聚类种子判定指定关于 两个或更多个参数的值的条件,所述两个或更多个参数从以下选择人 脸区域的尺寸;人脸区域的清晰度;人脸区域的曝光等级;人脸区域的 对比度等级;人脸区域的饱和度等级;以及人脸区域的亮度等级。在这 些实施例的一些中,聚类处理组件16将不同的相应阈值应用到每个选 择的参数,并且具有满足每个阈值的参数值的人脸区域被归类为聚类种 子人脸区域,而具有不满足阈值中任意一个的参数值的人脸区域被归类 为非聚类种子人脸区域。在这些实施例的其它一些中,聚类处理组件16 从对于选择的参数的相关联的值为每个人脸区域计算各自的质量评分, 且具有满足质量阈值的质量评分的人脸区域被归类为聚类种子人脸区 域,而具有不满足质量阈值的质量评分的人脸区域被归类为非聚类种子 人脸区域。在这些实施例的一些中,质量评分对应于选择的参数的值的 加权平均,其中权重和质量阈值是根据经验确定的。在其它实施例中,聚类处理组件16从清晰度度量、曝光度量、对比度度量和饱和度度量 计算相应的质量评分。在该过程中,聚类处理组件16通过为每个人脸 区域计算这些度量的乘积,并将乘积结果按比率改变到指定的动态范围
内(例如,0到255 ),确定相应的质量评分。结果生成的按比率改变 的值对应于对应的人脸区域的相应的图像质量评分。
聚类处理组件16将聚类种子人脸区域36聚类为一个或更多个聚类 44 (图2,块46;见图3)。通常,聚类处理组件16可以以多种不同的
.二丄、,丄ff义水.iJ^ "7一 ,n入HT fTX必 Ai丄一 /ri "1" rfflT!L '—& 、匕Ar7 / 1.MM 、 H5t
力jA4^〃J》k大4t1 乂v/徑—ia j x^k大,。4石'l-叫、r卜一j K取w 卩、K-pm 乂 ,n大、
凝聚型层次聚类、k-均值聚类和自适应样本集构建聚类。
图5示出了由聚类处理组件16执行以对聚类种子人脸区域36聚类
的自适应样本集构建聚类方法的实施例。该方法对多个阈值和聚类的迭 代改进的使用被期望来克服与误报传播关联的问题,并由此获得良好的 结果。
根据该方法,聚类处理组件16用聚类种子人脸区域中的一个来开 始聚类(图5,块70)。在一些实施例中,聚类处理组件16基于为至 少一个参数提取的值来对聚类种子人脸区域分级,并选择最高等级的聚 类种子人脸区域来开始该聚类。在这些实施例的一些中,聚类种子人脸 区域以从最大尺寸比率(即人脸区域尺寸与对应的输入图像尺寸的比 率)到最低尺寸比率的顺序来分级。在这些实施例的另一些中,聚类种 子人脸区域以从最高质量评分到最低质量评分的顺序来分级。在一些实 施例中,聚类处理组件16随机选择开始的聚类种子区域。
聚类处理组件16确定每个开始的聚类和下一个聚类种子人脸区域 之间的相应的接近度度量( )(图5,块72)。通常,接近度度量
可以对应于比较每个开始的聚类和下一个聚类种子人脸区域之间的相 对接近性或类似性的任何类型的度量。在一些实施例中,模型处理组件 18为每个聚类建立各自的从脸部特征导出的人脸模型,脸部特征从作为 构成部分的人脸区域提取(见下面的§ II. E)。在这些实施例中,聚类 处理组件16将信息74 (见图1 )传递到模型处理组件18,其中该信息 74包括聚类和下一聚类种子人脸区域。模型处理器组件建立代表该聚类 的人脸模型、从下一聚类种子人脸区域中提取脸部特征、并基于人脸模 型和提取的脸部特征来计算接近度度量76 (见图1 )。模型处理组件18 将接近度度量76传递到聚类处理组件16。在一些实现中,接近度度量对应于代表该聚类的特征向量和代表下一个聚类种子人脸区域的特征 向量之间的相似性评分。在其它实现中,接近度度量从对这些特征向量
之间的距离的度量(例如向量范数,如L2范数)导出。
图6示出了被分为区域80、 82、 84、 86的示例性脸部区域特征空 间78,这些区域由划分沿着径向维度的不同距离的边界所定义,径向维 度对应于接近度度量 并在零接近度度量值处开始。
响应于确定相应的接近度度量满足第一接近度判定,聚类处理组件
1乙、l々卞—/vSS来4工/ n^v H7 sfi-々入Jl 丄厶JL义来rb冥4立& AA —入,ra《
1 U 1"|- " 'I々N^ctiJ z V/J2w人:7V /| 乂口"V夕 ^: I ^'/5^^UWV I v j ,
块78)。在一些实施中,第一接近度判定对应于最小接近度阈值(t,, 见图6)。这样,在这些实现中,如果下一个聚类种子人脸区域和最接 近的存在的聚类之间的接近度度量满足最小接近度阈值,聚类处理组件 16将该下一聚类种子人脸区域分配给最接近的存在的聚类。
响应于确定相应的接近度度量满足不同于第 一接近度判定的第二 接近度判定,聚类处理组件16用该下一个聚类种子人脸区域来开始新 的聚类(图5,块80)。在一些实现中,第二接近度判定对应于最大接 近度阈值(t2,见图6)。这样,在这些实现中,如果下一个聚类种子 人脸区域和最接近的存在的聚类之间的接近度度量低于第二接近度阈 值(t2,见图6),聚类处理组件16用该下一个聚类种子人脸区域来 开始新的聚类。
聚类处理组件16对所有相继的聚类种子人脸区域重复块72、 78和 80的过程(图5,块82)。在一些实施例中,相继的聚类种子人脸区域 以从最高级别到最低级别的级别顺序来处理。
在所有的聚类种子人脸区域已经被根据图5的块70-82处理之后, 如果存在任何没有被分配的聚类种子人脸区域并且聚类分布不同于前 一迭代(图5,块83),每个聚类的人脸模型被更新(图5,块85 )。 在该过程中,聚类处理组件16选择聚类中的一个或更多个人脸来更新 人脸模型。例如,在一些实施例中,聚类处理组件使用一个或更多个下 列类型的人脸区域来更新每个人脸模型(i)与已有的人脸模型最不相 同的人脸区域(例如,具有最低的人脸识别评分,或者对应于面向侧面 像最多或旋转最多的人脸的人脸区域);(ii)显示的面角与用来建立 已有人脸模型的人脸区域的面角不同的人脸区域;(iii)具有最高质量 评分的人脸区域;以及Uv)具有最高接近度评分的人脸区域。聚类处理
14组件16使用选择的人脸区域的特征来更新人脸模型(图5,块85)。 接着,聚类处理组件16将所有未分配的人脸区域分级(图5,块85), 并使用更新的人脸模型来对分级的未分配的人脸区域重复块72-85的过程。
块72-85的迭代在没有更多的未分配聚类种子人脸区域或如果当前 聚类分布与前一迭代的聚类分布相同时停止(图5,块83)。于是,如 果还有没分配的聚类种子人脸区域,聚类处理组件16将与满足不同于
《 2—力^ 一 4士 ,c^ r£p 、t,1丄厶哲一 :-在士,l々上A二c^ r^F旦V TTV_厶A 土 乂、vffi;J
"—/Tw " "^文^乂夂,'J & wy V 二wj^t乂iCJ wy牧^w夂/又主入^wy个刀wu
的聚类种子人脸区域分配给最接近的开始的聚类(图5,块84)。在一 些实现中,第三接近度判定对应于在接近度度量轴上位于第一和第二接 近度阈值t,, t2之间的最小接近度阚值(t3,见图6)。这样,在这 些实施中,如果未分配的聚类种子人脸区域和最接近的存在的聚类之间 的接近度度量等于或高于第三接近度阈值(t3,见图6),聚类处理组 件16将未分配的聚类种子人脸区域分配给最接近的开始的聚类。第一、 第二和第三接近度阈值的值典型地根据经验确定。
聚类处理组件16然后对任何剩余的聚类种子人脸区域重复块 70-86的过程(图5,块86)。在一些实施例中,剩余的聚类种子人脸 区域被分级(例如,以尺寸比率的顺序或以质量评分的顺序),并以从 最高分级到最低分级的分级顺序来聚类。
在所有聚类种子人脸区域已经被分配到各自的聚类之后(图5,块 86),基于非聚类种子人脸区域和代表聚类的相应人脸模型之间的接近 度的度量,聚类处理组件16将各非聚类种子人脸区域42分配给相应的 聚类(图5,块88)。在一些实施例中,如果对应的接近度度量满足第 三接近度判定,聚类处理组件16将各非聚类种子人脸区域42分配给最 接近的聚类;否则聚类处理组件16将非聚类种子人脸区域分配给单独 的分类,其可以被标记为,例如,"其它人脸"。
在一些实施例中,聚类处理组件16自动将只包含少量相片的小聚 类(例如,包含少于N张相片的聚类,其中N可以是2或3)合并到较 大的聚类。在一个示例性实施例中,小聚类中的所有人脸与较大聚类的 每个人脸模型匹配,并且当人脸与至少一个人脸才莫型成功匹配时,它被 分配给匹配最好的聚类;否则,不匹配的小聚类被分配到"其它人脸" 分类。在另一实施例中,对于一个小聚类,如果它中的一个或更多个人脸与一个较大的聚类成功匹配(例如,该小聚类和该最接近的大聚类之 间的接近度度量满足第三接近度判定),将该小聚类和该较大的聚类合 并;否则,该小聚类被合并到"其它人脸,,类别。
在一些实施例中,聚类处理组件16在执行一个或更多个图5的块 所表示的过程中加入知识和规则。例如,在一些实施例中,如果从一张 相片中检测到两个或更多个人脸,这些人脸被分配给不同的聚类。在这 些实施例中,聚类处理组件16防止聚类包含来自每个图像多于一个的
/二 、/ll a-、 A" ,\ /, n入 PT , btr义lI 'm乂丄 i /"/ jL 、工,lJ>_ 乂< rr々 ", & rr
TF7^T"J力Xj^P力-日"八/Bf li》A。
5K夭乂-王5且'IT 10日M》》i^MJJil-午"IJ^ J vr开7T,F] (例如,如果人脸区域X1和X2来自同一相片,且Xl被分配给聚类Zl,
那么没有必要比较人脸区域X2和聚类Zl ),并降低了由于误归类引起
的错误。
E.模型处理组件的示例性实施例
模型处理组件18为每个聚类44建立各自的人脸模型24 (图2,块 50)。通常,任何类型的脸部特征提取过程可以被用来从检测到的人脸 区域提取特征,检测到的人脸区域在人脸检测处理组件12输出的脸部 参数值42中报告。示例性脸部特征提取过程包括但不限于基于边缘、 线和曲线的特征提取方法;基于设计来检测特定的特征点(例如,眼睛 和嘴)的模板的提取方法;以及结构匹配方法。在一些实施例中,主成 分分析(PCA)被用来将特征空间分解为由前几个特征向量张成的低维 度的子空间,以及与该特征向量空间正交的子空间。
图7示出了由模型处理组件18的实施例实现的过程的实施例,该 过程从检测到的人脸区域90提取特征。根据该过程,脸部特征值 (f。, f\, ...,fN)根据一组脸部特征定义92从人脸区域90中提取。每个 脸部特征定义对应于描述如何计算或度量相应脸部特征值(f。, f,, ..., fN) 的规则。每个特征值反映了相应脸部特征对在脸部特征集合92张成的 特征空间中的脸部区域90的表示的贡献。为脸部区域90计算的脸部特 征值的集合构成脸部曲线向量94。
模型处理组件18在数据库26中存储人脸模型24 (图2,块52 )。 在一些实施例中,模型处理组件18还在数据库24中与相应输入图像关 联的存储聚类规范22。
III.第二图像处理系统及其组件的示例性实施例
图8示出了图像处理系统100的实施例,对应于图1中示出的图像处理系统IO,除了图像处理系统100还包括用户接口处理组件102,通 过该组件用户与图像处理系统10进行交互。在操作中,用户接口处理 组件102在显示器上呈现聚类22的表示104、 106。显示器26可以是, 例如,平板显示器,例如LCD(液晶显示器)、等离子显示器、EL显示 器(电激发光显示器)和FED (场发射显示器)。在一些实现中,用户 接口处理组件102允许用户在显示器上交互地浏览自动生成的人脸聚类 1 04, 1 06。用户接口处理组件102还允许用户指定对人脸聚类规范22
/ /_ /.A L /,A , n入 ' /— /一 Ll^ , /. /.A 丄 m二 丄^ — *」 V丄1 A n A"
日'M 厢孑外。》J 各、>^八/J3T豕矢日"1:t 1 口J 4百疋日"?厢孑号,夂川,妖w X-王5且,T丄UZ
释。用户接口处理组件102将解释的用户命令指令传送到聚类处理组件 16。聚类处理组件16根据从用户接口处理组件102接收的编辑为给定 的人脸聚类生成修改的规范,并且模型处理组件基于修改的聚类规范22 生成修正的人脸模型24。用户接口处理组件102将修正的人脸聚类呈现 给用户,用户可以浏览修正的人脸聚类,指定对修正的人脸聚类的编辑, 或命令图像处理系统100呈现某些或全部其它人脸聚类。
图9示出了由图像处理系统100的实施例实现的方法的实施例。 根据该方法,人脸检测处理组件12在图像20中检测人脸区域(图 9,块108)。人脸检测处理组件12可以根据上述任一种人脸检测方法 来检测人脸。典型地,生成各自的限定框以表示每个检测到的人脸的位 置和尺寸。
参数提取处理组件14从每个人脸区域提取至少一个相应的参数值 34 (图9,块110)。参数提取处理组件14可以根据上述任一种参数提 取方法来从人脸区域中提取参数值。
聚类处理组件16基于提取的参数值来对人脸区域分级(图9,块 112)。在一些实施例中,聚类处理组件16用上述任一种方法来为每个 检测到的人脸计算各自的质量评分。质量评分可以基于人脸特征例如人 脸的尺寸、亮度和清晰度来确定。人脸的尺寸可以是绝对尺寸或相对于 相应输入图像的尺寸的尺寸,其可以表示为脸部限定框的尺寸和输入图 像的尺寸之间的比率。例如,相对尺寸可以被定义为限定框的较长边的 长度与相应输入图像的较长边的长度的比率。在一些实施例中,当满足 下列条件时质量评分相对较高脸部区域的尺寸相对于输入图像的尺寸 大;脸部区域没有被过度曝光(太亮)或欠曝光(太暗);脸部区域清 晰(不模糊)。在这些实施例中,脸部区域根据计算的质量评分以从最
17高质量评分到最低质量评分的降序来分级。
在脸部区域被分级后(图9,块112 ),聚类处理组件16以分级顺 序将脸部区域聚类为一个或更多个聚类(图9,块114)。
在聚类过程期间,聚类处理组件16与模型处理组件18协同工作。 在一些实施例中,模型处理组件18由人脸识别引擎实现。在这些实施 例中,人脸识别引擎用给定聚类中的 一 个或更多个人脸来训练人脸模 型。人脸识别引擎从查询人脸区域(例如,下一个被聚类的人脸区域) 提取脸、部特4正。人脸、识另U引擎匹配才是取的特征与聚类的人/险才莫型,并生 成0和1之间的接近度评分,该评分指示查询人脸区域和人脸模型之间 的近似程度。典型地,接近度评分越高,查询人脸区域与人脸聚类越有 可能表示同一个人的图像。人脸识别引擎将经验确定的阈值(T)应用 到接近度评分。如果接近度评分高于T,则人脸识别引擎报告查询人脸 区域与人脸聚类匹配;否则,人脸识别引擎报告查询人脸区域与人脸聚 类不匹配。
通常,聚类处理组件16可以以多种不同的方式来对人脸区域聚类, 包括但不限于最近邻(k-NN)聚类、凝聚型层次聚类、k-均值聚类和自 适应样本集构建聚类。在一些实施例中,聚类处理组件16如下来聚类 人脸区域
(1) 分级列表中的第一个人脸,XI,被选择作为第一个聚类 的代表。使用XI的脸部特征来为该聚类训练人脸模型 Ml;
(2) 选择分级列表中的下一个人脸X,并与所有现有的人脸 模型匹配。假设Sj(X,Mj)是X与第j个人脸模型匹配的 评分,且i=arg max(Sj(X,Mj))。如果S,T,则将X分 配给第i个聚类;否则,用X作为代表形成新的聚类, 并且使用X的脸部特征来训练用于该聚类的人脸模型。
(3) 继续步骤(2),直到分级列表中的所有人脸被处理。 参考图10,在人脸区域已被聚类之后(图9,块114),用户接口
处理组件102在显示器116上呈现各聚类的表示(图9,块118)。用 户接口处理组件102允许用户指定对人脸聚类的一个或更多个修改。响 应于用户输入,聚类处理組件16和模型处理组件18协同修改一个或更 多个聚类(图9,块119)。用户可以通过对输入设备(例如,计算机鼠标)的操纵来向用户接口处理组件102指定命令,输入设备向驱动显 示器116的显示控制器输出显示控制信号。显示控制信号典型地为运动 度量的形式,该度量典型地对应于位移参数值、速度参数值和加速度参 数值中的一个或更多个。显示控制器处理显示控制信号以控制,例如, 指示符121在显示器116上的移动。
在一些实施例中,用户接口处理组件102在多层次图形用户接口中 呈现聚类表示。如图10所示,在图形用户接口的第一层次120中,显 示包含每个聚类的代表人脸的各输入图像20的缩略图122。在一些实施 例中,聚类根据聚类中包含的输入图像的数量来分级,并且缩略图122 以分级顺序示出。因此,最大的聚类在图10中示出的图形用户接口层 次120的顶行中呈现。
在操作中,响应于用户在图形用户接口层次120中选择缩略图122 中的一个,用户接口处理组件102呈现对应于选中的缩略图所表示的人 脸聚类中的所有图像的缩略图。如图11所示,在图形用户接口的第二 层次124中,选择的聚类中的输入图像根据相关联的人脸识别相似性评 分(即,通过匹配输入图像的人脸区域和聚类的人脸模型而得到的评分) 来分级,并且图片缩略图根据相似性评分,从最高相似性评分到最低相 似性评分来示出。因此,在图11中,缩略图的顶行包含被确定为与聚 类的人脸模型最相似的人脸区域。
这样,图形用户接口允许用户查看初始的聚类结果。在该查看的过 程中,用户会发现一些聚类是有趣的而其它的不是。例如,在图形用户 接口的第一层次12Q中呈现的前几个聚类(即最大聚类)可包含家庭成 员的图片,并且对用户可能是最重要的,而一些小聚类(例如,仅包含 一个或少数图片的聚类)可能包含用户不感兴趣的图片。可选地,用户 可以选择不重要的小聚类并将它们合并为单独的分类,其可以被标记为 "其它"。在一些实施例中,在"其它"分类中的聚类在随后的迭代中 不在图形用户接口中示出。
图形用户接口允许用户选择一个特定的聚类和修改该聚类内作为 构成部分的图像。例如,通过对聚类中成员的查看,用户可以发现聚类 中的一些图片是误报或者一些其它聚类应该与选择的聚类合并,因为它 们表示同一个人。图形用户接口允许用户找出选择的聚类中的误报,以 及将选择的聚类与其它聚类合并。
19对选择的聚类的任何修改作为对图像处理系统100的反馈。基于该
反馈,聚类处理组件16修改被修改的聚类的规范,且模型处理组件重 建(或重新训练)对应于该修改的聚类的人脸模型。在图10示出的说 明性例子中,聚类#7和#8表示与聚类#1表示的人相同的人。因此,响 应于用户选择聚类#7和#8的缩略图,图像处理系统100将选择的聚类 与聚类#1合并,并且模型处理组件18通过加上来自聚类#7和#8的人脸 模型的脸部特征来重新训练聚类#1的模型。在该例子中,与聚类#1的 原始人脸模型相比,聚类#7提供了关于当从较低角度看时这个人的脸的 更多信息,并且聚类#8提供了关于该人脸侧面像的更多信息。该附加的 信息帮助建立该人脸的更全面的模型。
在同时,被用户找出并校正的误报的脸部特征(用户不需要选取所 有的误报,而只是一个子集)在重新训练的过程中被不强调。在一些实 施例中,当一个聚类中多于指定数量(例如1或2)的误报实际上包含 同一个人的脸时,聚类处理组件16可以为这个人创建新的聚类,模型 处理组件18可以通过使用一个或更多个这些误报人脸来训练新的人脸 模型,来为这个聚类创建新的人脸模型。
通常,图形用户接口允许用户(l)如果聚类包含多个人中每个的多 个图像,将它分为两个或更多个聚类;(2)如果两个或更多个聚类是同 一个人的,则将它们合并;(3)将来自一些聚类的一个或更多个图像加 入另一个聚类;以及(4)从聚类中去除一个或更多个图像。用户通过使 用输入设备例如计算机鼠标点击和/拖动聚类的缩略图来做出上述选 择。响应于这些聚类修改中的每一个,聚类处理组件16更新聚类规范 22,且模型处理组件18训练新的人脸模型或通过强调或不强调某些脸 部特征来重新训练现有的人脸模型。
在对用户选择的聚类的人脸模型的首轮重新训练之后,根据上述任 一聚类方法,基于调整的人脸模型和人脸识别引擎,图像被重新分配给 各聚类。新的聚类结果在如图10和11中示出的显示器116上呈现。于 是,用户可以查看该结果并提供更多反馈以改善聚类准确性。这些迭代 可以继续,直到用户满意结果。
大部分计算,包括人脸检测、脸部特征提取和初始匹配和聚类,被 图像处理系统IOO自动执行。用户可以在执行这些处理步骤期间不管系 统的工作。在涉及用户的交互部分期间,聚类方法所引起的计算开销很有限(例如,对人脸模型的重新训练及将图片重新分配给聚类)。因此, 聚类方法中的用户-机器交互部分相对有效且需要相对较少的计算资源
来实现。
IV.结论
这里详细描述的实施例基于在图像中检测到的人脸区域来聚类图 像。这些实施例影响建立聚类的人脸模型的方法,该方法被期望提供更 准确和更鲁棒的聚类结果。在这些实施例中的一些中,聚类用聚类种子 人脸区域来开始,这些人脸区域被选择来为建立人脸聚类提供更准确和 鲁棒的基础。此外, 一些实施例根据一个或更多个参数来对人脸区域分 级,所述参数被期望强调可能包含人脸的更多准确表示的人脸区域。在 这些实施例中,人脸区域以从最高级别到最低级别的顺序来聚类,以获 得改善的聚类结果。在一些实施例中,用户反馈被用来进一步改善聚类 结果的聚类准确性。
其它实施例在权利要求的范围内。
权利要求
1. 一种方法,包括在图像(20)中检测人脸区域(58);从每个人脸区域(58)提取至少一个相应的参数值(53);将人脸区域(58)中与满足聚类种子判定的参数值(53)关联的那些归类为聚类种子人脸区域(38);将各聚类种子人脸区域(38)聚类为一个或更多个聚类(44,48);为每个聚类(44,48)建立各自的人脸模型(24);以及存储人脸模型(24)。
2. 如权利要求l所述的方法,其中,所述提取包括 为每个人脸区域(58)确定一个或更多个下列参数(53)的各自的值人脸区域(58)的清晰度度量;人脸区域(58)的对比度度量;人 脸区域(58)的饱和度度量;以及人脸区域(58)的曝光度量;以及 确定表明人脸区域(58)的尺寸的相应尺寸参数值。
3. 如权利要求l所述的方法,其中所述归类包括将与下列至少之一关联的每个人脸区域(58)归类为 非聚类种子人脸区域(42):不满足尺寸判定的一个或更多个尺寸参数 值(53);不满足亮度判定的亮度参数值(53);以及不满足清晰度判 定的清晰度参数值(53);并且所述聚类包括基于非聚类种子人脸区域(42)和相应的人脸模型 (24)之间的接近度度量来将非聚类种子人脸区域(42)分配给各个聚 类(48)。
4. 如权利要求l所述的方法,其中,所述聚类包括(a) 用聚类种子人脸区域(38)中的一个开始一聚类(48);(b) 确定每个开始的聚类(48)和聚类种子人脸区域(38)中的下 一个之间的相应的接近度度量;(c) 响应于确定相应的接近度度量满足第一接近度判定,将该下一 个聚类种子人脸区域(38)分配给最接近的开始的聚类(48);(d) 响应于确定相应的接近度度量满足不同于第 一接近度判定的第 二接近度判定,用该下一个聚类种子人脸区域(38 )开始新的聚类(48 );(e) 对所有相继的聚类种子人脸区域(38)重复(b)-(d)。
5. 如权利要求4所述的方法,其中,在(a)之前,聚类包括基于为 至少一个参数(53)提取的值来对聚类种子人脸区域(38)分级,并且 (b)包括以从最高分级到最低分级的分级顺序来选择下一个聚类种子人 脸区域(38 )。
6. 如权利要求4所述的方法,其中(b)包括基于从聚类的作为构成 部分的聚类种子人脸区域(38)提取的特征,为每个开始的聚类(48) 建立各自的人脸模型(24),以及确定从下一个聚类种子人脸区域(38) 提取的特征和每个人脸模型(24)之间的相应的接近度度量。
7. 如权利要求4所述的方法,其中在(e)之后,聚类包括(f)将与满足不同于第 一和第二接近度判定的 第三接近度判定的接近度度量关联的未分配的聚类种子人脸区域(38 ), 分配给最接近的开始的聚类(48);并且在(f)之后,对未分配给任一开始的聚类(48)的各聚类种子人脸 区域(38)重复(a)-(e)。
8. 如权利要求l所述的方法,其中,所述聚类包括自动合并包含 不满足计数阈值的相应数量的作为构成部分的人脸区域(58)的聚类 (44)。
9. 一种设备,包括人脸检测处理组件(12),可操作以在图像(20)中检测人脸区域 (58);参数提取处理组件(14 ),可操作以从每个人脸区域(58 )提取至 少一个相应的参数值(53);聚类处理组件(16),可操作以将人脸区域(58)中与满足聚类种 子判定的参数值(53)关联的那些归类为聚类种子人脸区域(38),该 聚类处理组件(16)还可操作以将各聚类种子人脸区域(38)聚类为一 个或更多个聚类(44, 48 );以及模型处理组件(18),可操作以为每个聚类(44, 48 )建立各自的 人脸模型(24 ),并存储人脸模型(24 )。
10. —种方法,包括在图像(20)中检测人脸区域(58);从每个人脸区域(58)提取至少一个相应的参数值(53); 基于提取的参数值(53)对各人脸区域(58)分级;按分级顺序将各人脸区域(58 )聚类为一个或更多个聚类(44, 48 );以及在显示器(116)上呈现聚类(44,")的表示。
全文摘要
描述了基于人脸的图像聚类系统和方法。一方面,在图像(20)中检测人脸区域(58)。至少一个相应的参数值(53)从每个人脸区域(58)中提取。人脸区域(58)中与满足聚类种子判定的参数值(53)关联的那些被归类为聚类种子人脸区域(38)。聚类种子人脸区域(38)被聚类为一个或更多个聚类(44,48)。为每个聚类(44,48)建立各自的人脸模型(24)。人脸模型(24)被存储。另一方面,在图像(20)中检测人脸区域(58)。至少一个相应的参数值(53)从每个人脸区域(58)提取。基于提取的参数值(53)来对人脸区域(58)分级。按分级顺序将各人脸区域(58)聚类为一个或更多个聚类(44,48)。聚类(44,48)的表示在显示器(116)上呈现。
文档编号G06K9/00GK101523412SQ200780038102
公开日2009年9月2日 申请日期2007年10月11日 优先权日2006年10月11日
发明者T·张 申请人:惠普开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1