使用卷积神经网络的面部超分辨率的制作方法

文档序号:10598370阅读:275来源:国知局
使用卷积神经网络的面部超分辨率的制作方法
【专利摘要】使用双通道深度卷积神经网络(BCNN)的面部超分辨率,其可以自适应地融合两个通道的信息。在一个示例中,所述BCNN实现为从输入图像提取高等级特征。所提取的高等级特征与输入图像中的低等级细节组合,以产生较高分辨率图像。优选地,获得合适的系数,以自适应地组合所述高等级特征和所述低等级细节。
【专利说明】
使用卷积神经网络的面部超分辨率
技术领域
[0001] 本发明总体上涉及图像处理,更具体地说,涉及生成较高分辨率面部图像。
【背景技术】
[0002] 面部识别系统对数字图像或视频帧执行图像处理,以自动地标识人。一些面部识 别方法的性能可能极大地取决于面部图像的分辨率。例如,在标准清晰度监控视频中所捕 获的可检测的面部可能仅为12乘12像素或更低的分辨率。这些低分辨率面部图像可能使得 面部识别和分析的性能降级。为了改进低分辨率面部图像上的面部识别和分析的性能,执 行面部超分辨率以推断具有更高分辨率的面部图像。
[0003] 在一种方法中,获得低等级特征以执行面部超分辨率。例如,全局本征面部或局部 纹理片块的选取已经视为低等级特征。然而,低等级特征典型地对于外表的变化(例如姿 势、分辨率程度以及运动模糊的变化情况)并非鲁棒的。因此,该方法一般受限于在受约束 的条件下重构前面面部图像。
[0004] 在另一方法中,具有各种姿势和表情的大规模高分辨率训练面部集合用于执行面 部超分辨率。例如,基于各种姿势和表情而生成低分辨率测试面部。然而,于在训练集合中 未发现高度相似的面部的情况下,该方法可能不正确地生成较高分辨率面部图像。此外,因 为模糊的片块可能并非描述得足够,所以如果低分辨率面部图像是模糊的,则该方法中所 执行的面部超分辨率可能不正确地工作。
[0005] 在又一方法中,实现面部分量的结构信息,以执行面部超分辨率。例如,代替低等 级特征,对于匹配片块而实现面部分量的结构信息。该方法极大地取决于精确的面部关键 点以捕获结构信息。然而,从低分辨率面部图像捕获结构信息是困难的。此外,如果低分辨 率面部图像是模糊的,则该方法中所执行的面部超分辨率可能不正确地工作。
[0006] 因此,出于面部识别和其它目的,需要更好的方法以执行面部超分辨率。

【发明内容】

[0007] 本发明通过从较低分辨率面部图像生成较高分辨率面部图像来克服现有技术的 限制。为了方便,较高分辨率面部图像可以有时称为超分辨率面部图像。一种方法自适应地 组合低等级信息和高等级信息,以重构较高分辨率下的超分辨率面部图像。从原始输入面 部图像推导低等级信息,并且从中间超分辨率面部图像获得高等级信息。合成原始输入图 像和中间超分辨率面部图像在最终超分辨率图像(即输出面部图像或所重构的图像)上产 生改进的精度。
[0008] -个方面包括一种用于从输入面部图像生成较高分辨率输出面部图像的系统。在 一种方法中,所述系统包括卷积神经网络(CNN),其生成输入面部图像的面部表示。所述CNN 包括卷积层、非线性化层和下采样层。所述系统还包括面部超分辨率器,其从所述面部表示 生成超分辨率面部图像。所述超分辨率面部图像具有比所述输入面部图像更高的分辨率。 此外,所述系统包括面部组合器,其将所述超分辨率面部图像与所述输入面部图像的上采 样版本组合,以产生输出面部图像。
[0009] 在示例实现方式中,所述系统包括系数估计器,其从所述面部表示生成系数。在一 种方法中,所述面部组合器生成所述输出面部图像作为所述超分辨率面部图像和所述输入 面部图像的上采样版本的线性组合,其中,所述系数确定所述线性组合。所述系数估计器可 以是从所述面部表示生成所述系数的神经网络。优选地,所述系数估计器是全连接神经网 络。
[0010] 其它方面包括与前述方面有关的组件、设备、系统、改进、方法、处理、应用和其它 技术。
【附图说明】
[0011] 本发明具有当结合附图时将从本发明的【具体实施方式】和所附权利要求更容易理 解的其它优点和特征,其中:
[0012] 图1是面部识别系统的简化示图。
[0013] 图2是示例面部合成器模块的示图。
[0014] 图3是示例双通道卷积神经网络的示图。
[0015] 图4是执行面部识别的方法的流程图。
[0016] 图5是执行面部超分辨率的方法的流程图。
[0017] 图6绘制用于不同的高斯模糊的系数a的概率密度函数。
[0018] 图7示出具有不同的高斯模糊和运动模糊的输入面部图像上的各种面部超分辨率 的定性比较。
[0019] 图8示出关于对低分辨率输入面部图像和高分辨率输出面部图像执行的关键点检 测的示例。
[0020] 图9A绘制具有高斯模糊的输入面部图像和超分辨率面部图像上的关键点检测的 误差。
[0021] 图9B绘制具有运动模糊的输入面部图像和超分辨率面部图像上的关键点检测的 误差。
[0022] 图10A是用于比较具有高斯模糊的输入图像和超分辨率面部图像上的面部识别的 性能的柱状图。
[0023] 图10B是用于比较具有运动模糊的输入图像和超分辨率面部图像上的面部识别的 性能的柱状图。
[0024] 附图仅为了说明的目的而描述本发明实施例。本领域技术人员从以下讨论将容易 理解,在不脱离在此所描述的本发明的原理的情况下,可以采用在此所示的结构的替选实 施例。
【具体实施方式】
[0025] 附图和以下描述仅通过说明的方式与优选实施例有关。应注意,从以下讨论,在此 所公开的结构和方法的替选实施例将容易地理解为在不脱离本发明的原理的情况下可以 采用的可行替选。
[0026] 所公开的面部识别系统和方法执行面部超分辨率。在一种方法中,面部超分辨率 是基于合成输入面部图像的低等级信息和高等级信息的。在一个方面中,面部超分辨率实 现深度卷积神经网络(CNN),以从低分辨率输入图像推断较高分辨率图像。深度CNN被实现 以从输入图像提取高等级特征。所提取的高等级特征与输入图像中的低等级细节组合,以 产生较高分辨率图像。优选地,获得系数,以自适应地组合高等级特征和低等级细节。该方 法中所执行的面部超分辨率能够处理具有大的外表变化(例如,姿势、分辨率程度和运动模 糊的变化条件)的图像,而不依赖于面部关键点。
[0027] 面部识别概述
[0028]图1是根据一个实施例的面部识别系统100的简化示图。面部识别系统100接收低 分辨率(例如15乘15像素)下的目标面部图像110T,并且尝试识别面部(即,将面部与特定个 体关联)。面部识别系统100还接收用于已知个体的基准面部图像110R。基准面部图像110R 可以具有与目标面部图像110T相比的相同或不同分辨率。如果目标面部图像110T为低分辨 率,则一般基准面部图像110R将具有较高分辨率。面部识别系统100执行分析以生成度量 150,以指示目标面部图像110T中的个体是否与基准面部图像110R中的个体相同。面部识别 系统100可以具有用于不同个体的基准面部图像110R的大数据库,并且可以将目标面部图 像110T与很多不同的基准面部图像110R进行比较,以关于目标面部图像110T标识个体。 [0029] 面部识别系统100包括面部合成器模块120、分析模块130和处理器140。面部识别 系统100可以还包括关键点检测模块(未示出),其从面部合成器模块120的输出检测面部关 键点。这些模块中的每一个可以实施为硬件、软件、固件或其组合。同时,这些模块执行面部 识别并且确定两个面部图像110中的主体相同与否。
[0030] 面部合成器模块120接收低分辨率的目标面部图像110T作为输入,并且生成较高 分辨率图像(g卩,超分辨率图像)作为输出。在一种方法中,面部合成器模块120被实现为双 通道卷积神经网络(BCNN),以推断较高分辨率图像。在一个方面中,BCNN的一个通道被训 练,以获得目标面部图像110T的中间超分辨率面部图像,并且BCNN的另一通道被训练,以获 得系数。BCNN基于系数而自适应地组合目标面部图像110T和中间超分辨率面部图像,以产 生较高分辨率图像作为输出。
[0031] 分析模块130确定基准面部图像110R中的主体和目标面部图像110T中的主体是否 匹配。分析模块130从面部合成器模块120获得较高分辨率面部图像。对于先前可用的面部 图像,可以预先执行面部超分辨率,在此情况下,分析模块130可以从数据库检索超分辨率 图像。此外,分析模块130可以基于面部图像110或超分辨率图像的表示而生成关于面部图 像110是否属于同一主体(人)的度量150。度量150可以用于执行面部识别。
[0032] 处理器140运行指令以在面部识别系统100上执行面部识别。处理器140从存储器 (未示出)或外部电路接收指令。指令也可以完全地或至少部分地驻留在处理器140内(例如 处理器的缓存存储器内)。根据指令,处理器140变换或选择面部图像110的部分,以提供给 面部合成器模块120。此外,处理器140根据指令来操作面部合成器模块120和分析模块130, 以执行面部识别的核函数。
[0033] 面部超分辨率
[0034]图2是示例面部合成器模块120的示图。面部合成器模块120接收低分辨率下的输 入面部图像205,并且执行面部超分辨率,以生成较高分辨率下的输出面部图像245。对于给 定的低分辨率(LR)输入面部图像2051,面部合成器模块120生成高分辨率(HR)输出面部图 像245/_'(\W'j,其优选地接近基本真实(ground truth)'%。在一种方法中,完成该操作以使得 误差最小化,
[0035] (1)
[0036]其中,W表示面部合成器模块120的参数,并且f()表示面部合成器模块120的函数。 [0037]在该示例中,面部合成器模块120训练CNN的多个层,以获得精确的较高分辨率的 输出面部图像245。在一个实现方式中,面部合成器模块120包括至少两个通道的CNN。也就 是说,其包括双通道CNN(BCNN)。组合来自通道中的每一个的信息,以产生较高分辨率的输 出面部图像245。
[0038]在示例性实施例中,面部合成器模块120包括上采样器模块210、特征提取器模块 220、图像超分辨率器模块230(在此又称为面部超分辨率器模块或面部超分辨率器)、系数 估计器模块240以及面部组合器模块250。同时,这些模块形成至少两个通道的CNN,以生成 输出面部图像245。例如,特征提取器模块220和图像超分辨率器模块230形成一个CNN通道, 以生成中间超分辨率面部图像235。此外,特征提取器模块220和系数估计器模块240形成另 一 CNN通道,以生成系数a。面部组合器模块250进行中间超分辨率面部图像235与输入面部 图像的上采样版本215的线性组合,以产生输出面部图像245。通过系数a来确定相对加权。 这些组件中的每一个可以实施为硬件、软件、固件或其组合。
[0039]特征提取器模块220生成输入面部图像205的面部表示225。在一种方法中,特征提 取器模块220被实现为CNNXNN被训练以从输入面部图像205提取特征。在一种方法中,出于 面部超分辨率的目的,特征提取器模块220训练网络,以标识输入面部图像205的鲁棒全局 结构。例如,特征提取器模块220提取特征(例如转角、边沿、梯度、眼睛、鼻子和嘴)。所提取 的特征用于生成输入面部图像205的表示225。
[0040]图像超分辨率器模块230从特征提取器模块220接收面部表示225,并且生成中间 超分辨率面部图像235。优选地,通过全连接神经网络来实现图像超分辨率器模块230。图像 超分辨率器模块230和特征提取器模块220形成第一 CNN通道。中间超分辨率面部图像235具 有比输入面部图像205更高的分辨率。
[0041]特别是如果输入面部图像205是糟糕质量的(例如非常低的分辨率或模糊的),则 中间超分辨率面部图像235可以包括比输入面部图像205更多的低等级细节(例如图像中的 高频率或尖锐过渡)。然而,如果输入面部图像205具有良好的质量,则特征提取器模块220 可以过滤掉低等级细节,以标识输入面部图像205的鲁棒全局结构。因此,在此情况下,中间 超分辨率面部图像235可以具有比输入面部图像205更少的低等级细节。
[0042]为了补偿中间超分辨率面部图像235的可能瑕疵,面部合成器模块120计算系数a, 以根据下式来合成与原始输入面部图像205和中间超分辨率面部图像235都有关的信息,以 产生最终输出面部图像245:
[0043] /..(V.f) = ?.仏 H'i ??.?)『知吟 (2)
[0044] 在此,4表示低分辨率输入面部图像205,W表示面部合成器模块120中(例如模块 220、230和240中)的神经网络的参数。此外,?'('/,,声〇表示第一 CNN通道从输入产生的中间超 分辨率图像235,丨表示上采样,从而表示输入图像的上采样版本215。第二CNN通道产生 系数a。
[0045]系数估计器模块240从特征提取器模块220接收面部表示225,并且生成系数a,以 补偿中间超分辨率面部图像235的任何瑕疵(或利用初始输入面部图像中的附加有用信 息)。优选地,系数估计器模块240被实现为全连接神经网络。系数估计器模块240和特征提 取器模块形成第二CNN通道。系数a用于更智能地组合中间超分辨率面部图像235中所生成 的高等级特征与可以存在于输入面部图像205中的低等级细节。
[0046]关于输入面部图像205和中间超分辨率面部图像235的正确整合,因为中间超分辨 率面部图像235具有比输入面部图像205更高的分辨率,所以上采样器模块210对输入面部 图像205进行上采样。优选地,上采样器模块210对输入面部图像205进行上采样,从而中间 超分辨率面部图像235的分辨率匹配上采样的输入面部图像205的分辨率。在一个实现方式 中,双三次插值用于生成上采样版本。
[0047]面部组合器模块250组合中间超分辨率面部图像235与输入面部图像的上采样版 本215,以产生输出面部图像245。在一种方法中,面部组合器模块250生成输出面部图像245 作为中间超分辨率面部图像235和输入面部图像的上采样版本215的线性组合。优选地,系 数a确定线性组合。替代地,面部组合器模块250可以通过非线性方式组合中间超分辨率面 部图像235与输入面部图像的上采样版本215。替代地并且附加地,面部组合器模块250可以 组合通过CNN的多个通道所获得的图像或信息。
[0048] 图3是示出面部合成器模块120中所实现的BCNN的示图。如图3所示,特征提取器模 块220和图像超分辨率器模块230形成BCNN的第一通道,特征提取器模块220和系数估计器 模块240形成BCNN的第二通道。同时,这些组件实现神经网络的多个层,以用于生成系数a和 中间超分辨率面部图像235。
[0049] 为了精确地生成输出面部图像2 4 5,对于给定的训练集合
[0051 ]通过使得公式3中的误差函数最小化来确定参数W。
[0052]在一种方法中,特征提取器模块220包括具有从较低等级特征进展到较高等级特 征的级联的两个或更多个CNN层的CNN。优选地,CNN包括三个CNN层300 (1 )、300 (2)和300 (3) (通常在此称为CNN层300)。例如,第一 CNN层300(1)可以检测低等级特征(例如转角、边沿和 梯度)。第二CNN层300(2)可以组合这些低等级特征,以提取较高等级特征(例如形状)。第三 CNN层300(3)可以提取更复杂的结构(例如眼睛、鼻子和嘴)。
[0053]在一个示例实施例中,每个CNN层300包括卷积滤波器310、非线性激活运算器320 以及下采样层330(例如最大池)。每个CNN层300根据目标函数而被训练。在其它实施例中, 每个CNN层300可以包括不同的或附加的元件。此外,功能可以通过与在此所描述的不同的 方式分布在各兀件之间。
[0054]在每个CNN层i中,通过将线性滤波器产与先前特征进行卷积并且在卷积滤 波器310中加入偏置项来获得特征映射/巧。然后,特征映射在非线性激活运算器320中通 过非线性函数(例如tanh)传输,并且通过最大池层330被下采样。m表示层i中的特征映射 的数量,每个特征映射的大小是s lXSl。滤波器大小是^撕,并且池层在每个2x2非重叠子区 域上选取最大值。运算通过公式4而得以公式化,其中,M表示最大池算子。
[0055] # = M tanh f? + b!j] ) .(4)
[0056] 图像超分辨率器模块230和系数估计器模块240的每个包括全连接神经网络。因 此,图像超分辨率器模块230中的神经网络形成一个群组,并且系数估计器模块240中的神 经网络形成另一群组。例如,图像超分辨率器模块230中的两个神经网络层340和350形成第 一群组,系数估计器模块240中的两个神经网络层360和370形成第二群组。第一群组和第二 群组中的神经网络分别生成超分辨率图像I hal和系数a。群组j中的层i的大小表示为pf# 式5和公式6示出用于每个群组的输出,其中,和W'f表示群组i中的加权度量。
[0059] 在一种方法中,BCNN通过公式11中的系数a将上采样的图像Hin和超分辨率图像 Ihai线性地组合,其为系统的输出。
[0060] I〇ut = atlin+(l-a)Ihai (7)
[0061] 系数a可以自适应地被训练,以接收具有不同质量的输入面部图像205。例如,随着 a接近1,输出面部图像2451_近似为上采样的面部图像215(即输入面部图像的上采样版 本),这意味着输入面部图像205具有高质量并且可以支持足够的细节。与之对比,当a接近0 时,输出近似为中间超分辨率面部图像235,这意味着输入面部图像205具有低质量并且不 能提供有用的纹理。因此,系数a指示输入面部图像205的质量。
[0062] 表1提供示例BCNN中的网络架构的概要。卷积层i的输出大小表示为mxsixsi,滤波 器大小为ni-ixruxwixwi。群组j中的完全连接的层i的大小是,》丨 x 1,并且对应加权矩阵是
[0063]表1.网络中的示例实现方式细节

[0066]在一个实施例中,输出面部图像包含输入面部图像中的像素数量的至少四倍(即 每个线性维度中的上采样的两倍)。优选地,输入面部图像小于50x50像素,并且输出面部图 像是至少100x100像素。也可以使用更小的输入面部图像(例如20x20)。
[0067]通过在面部合成器模块120中实现BCNN,两个通道的信息得以结合,以生成精确的 输出面部图像。BCNN合并输入图像的高等级特征和低等级细节二者,以实现鲁棒性和精度。 利用高等级特征允许面部合成器模块120对于大的外表变化或模糊是鲁棒的。利用低等级 细节使得面部合成器模块120能够整合图像中的具有高频率或尖锐过渡的局部细节。通过 训练神经网络,两个通道的信息得以自适应地融合。
[0068] 面部识别的运算
[0069] 图4示出根据一个实施例的使用面部识别系统100来执行面部识别的方法的流程 图。对面部识别系统100呈现(410)面部图像。执行(420)面部超分辨率,以从较低分辨率输 入面部图像205生成较高分辨率输出面部图像245。然后使用较高分辨率输出面部图像245 来执行(430)面部识别。
[0070] 图5示出执行面部超分辨率420的方法的流程图。面部合成器模块120接收(510)输 入面部图像205。生成(520)输入面部图像205的面部表示225。优选地,使用卷积神经网络 (CNN)来生成(520)输入面部图像205的面部表示225。从输入面部图像205的面部表示生成 (530)中间超分辨率面部图像235。此外,从面部表示225生成(535)系数a。此外,输入面部图 像被上采样(540)。优选地,输入面部图像205被上采样(540 ),从而上采样的面部图像215的 分辨率匹配中间超分辨率面部图像235的分辨率。此外,中间超分辨率面部图像235与上采 样的面部图像215组合(550),以生成输出面部图像245。在一种方法中,生成输出超分辨率 面部图像245作为中间超分辨率面部图像235和上采样的面部图像215的线性组合,其中,系 数确定线性组合的加权。
[0071]仿真结果
[0072]进行实验以验证使用BCNN的面部超分辨率的性能。关于实验,大量图像被模糊,以 获得低分辨率输入面部图像。
[0073]使用以下方法获得低分辨率输入面部图像205。设IL和IH表示低分辨率(LR)输入图 像205和高分辨率(HR)输出面部图像245。从LR输入图像205获得模糊的图像可以被建模为:
[0074] = ⑶
[0075] 在此,G是模糊内核,?表示卷积运算,丨表示下采样。
[0076] 在各种类型的模糊内核当中,高斯模糊和运动模糊是用于对图像中的模糊进行建 模的两个有效内核。例如,高斯模糊广泛地出现在图像中(例如成像系统中的失焦效果或像 差)。高斯模糊可以定义为:
[0078] 其中,〇x,〇y是水平方向和垂直方向上的方差参数,Sg是归一化常数。
[0079] 运动模糊是对归因于对象中的运动产生的模糊进行建模的另一常用内核。模糊在 单个方向上行进,并且内核受控于分别表示模糊方向和移动距离的两个参数9,1,。以常数 Sm,对模糊的图像进行归一化:
[0081] 图6绘制用于不同的高斯模糊量〇 = 〇x = 〇y的系数a的概率密度函数。30,000个图像 选自具有不同高斯内核的测试集合。模糊的面部图像的一些示例示出于条带610、615和620 中。图6以灰度级示出概率密度。白色表示高概率,黑色表示低概率。图6示出系数a与高斯方 差相关。随着方差增加(例如,〇 = 4),输入面部图像610变得更模糊,并且用于系数a的概率 密度函数转变为a的较低值。因此,系数a指示输入面部图像610具有低质量并且无法提供有 用的纹理。另一方面,随着方差减少(例如,〇〈0.5),输入面部图像620变得更干净,并且用于 系数a的概率密度函数朝向更大值转变。因此,系数a指示输入面部图像620具有较高质量并 且可以支持足够的细节。在示例BCNN中,当输入面部图像620实质上不包含模糊(即高斯方 差实质上等于〇)时,系数a的概率密度函数在0.5而非1左右出现峰值。这是因为,甚至在没 有高斯模糊的情况下,输入面部图像205的大小也限制图像质量。
[0082] 图7示出具有不同的高斯模糊和运动模糊的输入面部图像上的各种面部超分辨率 的定性比较。为了比较,通过对测试图像执行高斯模糊或运动模糊来获得低分辨率输入面 部图像。顶部两行示出高斯模糊的面部图像上的各种类型的面部超分辨率的性能。底部两 行示出运动模糊的面部图像上的各种类型的面部超分辨率的性能。此外,低分辨率面部图 像被下采样为40乘40像素,以模拟野外捕获的糟糕质量图像。通过比较PSNR和结构相似度 (SSHO来分析所重构的输出面部图像的质量。
[0083]图7中的各列如下。最左列"输入"是下采样的较低分辨率输入图像。最右列"基本 真实"是用于生成模糊的并且下采样的输入的高分辨率图像。中间四列是不同类型的面部 超分辨率。从左到右,"SR"是基于超解的。见Yang, J.,Wright, J.,Huang,T. S.,Ma,Y. : Image super-resolution via sparse representation.Image Processing,IEEE Transactions on 19(11)(2010)2861-2873;and Yang,J.,ffright,J.,Huang,T.,Ma,Y.:Image superresolution as sparse representation of raw image patches.In:Computer Vision and Pattern Recognition,2008.CVPR 2008.IEEE Conference on,IEEE(2008)l_8."SFH" is based on another state of the art face hallucination approach.See Yang, C.Y.,Liu,S.,Yang,M.H.:Structured face hallucination.In:Computer Vision and Pattern Recognition(CVPR),2013 IEEE Conference 〇11,比££(2013)1099-1106。"〇顺"是 基于纯卷积神经网络的。"BCNN"是上述双通道卷积神经网络方法。
[0084]在图7中,当输入面部图像区别性地被模糊时,传统面部超分辨率方法(SR和SFH) 失败。基于片块的方法SR方法无法重构干净的图像,因为图像中的片块受污染,并且该方法 并不从输入学习高等级结构。因为在模糊的图像上无法获得精确的关键点,所以基于关键 点的方法SFH方法也无法重构干净的图像。
[0085] 表2包含测试集合上的PSNR和SS頂的平均结果。表2示出使用BCNN所执行的面部超 分辨率胜过其它方法。
[0086]表2.使用各种方法的面部超分辨率的定性比较
[0089] 使用BCNN的面部超分辨率可以实现为预处理函数,其显著地改进以下面部应用的 性能。例如,超分辨率面部图像可以用在面部关键点检测或面部识别中。
[0090] 图8示出关于对低分辨率输入面部图像和高分辨率输出面部图像执行的关键点检 测的示例。该图包含12个不同的面部。行810包含使用高斯模糊所获得的低分辨率输入面部 图像。行810中的标记是基于低分辨率图像而检测的关键点。每个低分辨率图像810直接之 下是对应超分辨率图像820。标记示出对高分辨率输出面部图像执行的关键点检测。对低分 辨率图像810执行的关键点检测无法定位内部面部分量(例如眉毛、眼睛、鼻子和嘴)的精确 位置。然而,对高分辨率图像820执行的关键点检测精确地定位内部面部分量(例如眉毛、眼 睛、鼻子和嘴)。因此,使用BCNN的面部超分辨率改进面部关键点检测的性能。
[0091] 图9A和图9B进一步证实使用BCNN的面部关键点检测的改进的性能。图9A绘制具有 高斯模糊的原始输入面部图像和超分辨率输出面部图像上的关键点检测的归一化误差。相 似地,图9B绘制具有运动模糊的原始输入面部图像和超分辨率输出面部图像上的关键点检 测的归一化误差。在图9A和图9B中,两个不同分辨率(15乘15、30乘30)的图像被测试。当关 键点检测器预测关键点位置时,计算根均方误差(RMSE),然后通过眼角之间的距离对RMSE 进行归一化。在该示例中,关键点检测器描述于Asthana,A.,Zafeiriou,S.,Cheng,S., Pantic,M.:Robust discriminative response map fitting with constrained local models.In:Computer Vision and Pattern Recognition(CVPR),2013IEEE Conference 〇n,IEEE(2013)3444-3451中,但可以使用很多不同类型的关键点检测器。
[0092]在图9A中,在每个低分辨率图像上加入具有不同标准差〇 = 1.0、2.0、……、5.0的 标准高斯滤波器(〇x=〇y = 〇),然后关键点检测器基于使用BCNN的面部超分辨率而直接应用 于低分辨率模糊图像LR和所重构的图像HR。尤其当图像在大模糊效果(〇 = 5.0)下或具有非 常低的分辨率(15乘15像素)时,与低分辨率模糊图像LR上的关键点检测相比,使用BCNN的 所重构的图像HR上的关键点检测显著改进关键点检测器的性能。因此,使用BCNN的面部超 分辨率对于处理大的分辨率和模糊的变化是鲁棒的。
[0093]在图9B中,使用运动模糊而非高斯模糊来执行相似的测试。在该测试中,相同的方 向0应用于不同的移动距离1。然后,以两个不同的分辨率来缩放共享同一内核的每个图像。 如图9B所示,通过使用BCNN执行面部超分辨率来减少归一化的RMSE。在高斯内核或运动内 核下的所重构的图像HR上的RMSE是接近的,这指示使用BCNN的面部超分辨率对抗模糊是鲁 棒的。
[0094]图10A和图10B示出使用BCNN的面部识别中的改进。图10A是用于比较具有高斯模 糊的原始输入图像和超分辨率面部图像上的面部识别的性能的柱状图。相似地,图10B是用 于比较具有运动模糊的原始输入图像和超分辨率面部图像上的面部识别的性能的柱状图。 在这些不例中,面部识别算法描述于Yi,D.,Lei,Z.,Li,S.Z.:Towards pose robust face recognition.In:Computer Vision and Pattern Recognition(CVPR),2013IEEE Conference on, IEEE(2013)3539-3545中,但可以使用很多不同类型的面部识别。
[0095] 在图10A中,在每个低分辨率图像上加入具有不同标准差〇 = 1.0、2.0、……、5.0的 标准高斯滤波器(〇x=〇y = 〇),然后基于使用BCNN的面部超分辨率而对低分辨率模糊图像和 所重构的图像执行面部识别。对于每个方差,存在两个条形。左条形1010是用于低分辨率模 糊图像的精度,右条形1020是超分辨率的较高分辨率图像的精度。如图10A所示,所重构的 面部图像上的面部识别的精度1020比低分辨率模糊图像上的面部识别的精度1010更高。因 此,使用BCNN的面部超分辨率对于处理大的分辨率和模糊的变化是鲁棒的。
[0096]在图10B中,使用运动模糊而非高斯模糊来执行相似的测试。在该测试中,相同的 方向0应用于变化的移动距离1。左条形1030是用于低分辨率模糊图像的精度,右条形1040 是超分辨率的较高分辨率图像的精度。如图10B所示,所重构的面部图像上的面部识别的精 度1040比低分辨率模糊图像上的面部识别的精度1030更高。因此,通过使用BCNN执行面部 超分辨率改进面部识别的精度。
[0097]使用BCNN的面部超分辨率改进关键点检测和面部识别的性能。因此,使用BCNN的 面部超分辨率可以实现为预处理模块,其显著地改进以下面部应用的性能。
[0098]虽然【具体实施方式】包含很多特例,但它们不应理解为限制本发明的范围,而仅理 解为示出本发明的不同示例和方面。应理解,本发明的范围包括以上未详细讨论的其它实 施例。例如,应理解,可以使用不同的架构。卷积层的数量、滤波器大小、通道的数量的特定 选取、非线性度的选取、下采样的选取、关键点的表示等将取决于应用而变化。在不脱离所 附权利要求中所限定的本发明的精神和范围的情况下,可以在本发明的方法和装置的布 置、操作和细节方面进行将对于本领域技术人员清楚的各种其它修改、改变和变形。因此, 本发明的范围应由所附权利要求及其法律等同物确定。
[0099]在替选实施例中,在计算机硬件、固件、软件和/或其组合中实现本发明。可以在机 器可读存储设备中有形地实施的计算机程序产品中实现本发明的装置,以用于由可编程处 理器运行;并且运行指令的程序的可编程处理器可以执行本发明的方法步骤,以通过对输 入数据进行操作并且生成输出来执行本发明的功能。本发明可以有利地实现于可在包括耦 合为从数据存储系统、至少一个输入设备以及至少一个输出设备接收数据和指令并且将数 据和指令发送至其的至少一个可编程处理器的可编程系统上运行的一个或多个计算机程 序中。可以通过高级过程编程语言或面向对象的编程语言或根据期望通过汇编或机器语言 来实现每个计算机程序;并且在任何情况下,语言可以是编译语言或解释语言。通过示例的 方式,合适的处理器包括通用微处理器和专用微处理器。通常,处理器将从只读存储器和/ 或随机存取存储器接收指令和数据。通常,计算机将还包括用于存储数据文件的一个或多 个海量存储设备;这些设备包括磁盘(例如内部硬盘和可拆卸盘)、磁光盘以及光盘。适合于 有形地实施计算机程序指令和数据的存储设备包括所有形式的非易失性存储器,通过示例 的方式包括半导体存储器设备(例如EPROM、EEPROM和闪存设备);磁盘(例如内部硬盘和可 拆卸盘);磁光盘;以及⑶-ROM盘。任何前述方面可以由ASIC(专用集成电路)和其它形式的 硬件补充或合并在其中。
[0100]术语"模块"并非意图受限于特定物理形式。取决于具体应用,模块可以实现为硬 件、固件、软件和/或其组合。此外,不同的模块可以共享公共组件或甚至由相同组件实现。 不同模块之间可以存在或不存在清楚的界限。
【主权项】
1. 一种用于从输入面部图像生成较高分辨率输出面部图像的系统,所述系统包括: 卷积神经网络(CNN),其生成输入面部图像的面部表示,所述CNN包括卷积层、非线性化 层和下采样层; 面部超分辨率器,其从所述面部表示生成超分辨率面部图像,所述超分辨率面部图像 具有比所述输入面部图像更高的分辨率;以及 面部组合器,其将所述超分辨率面部图像与所述输入面部图像的上采样版本组合,以 产生输出面部图像。2. 如权利要求1所述的系统,其中,所述面部表示是所述输入面部图像中的特征的表 示,并且所述CNN从所述输入面部图像提取所述特征。3. 如权利要求2所述的系统,其中,所述CNN包括从较低等级特征进展到较高等级特征 的级联的两个或更多个CNN层。4. 如权利要求1所述的系统,其中,所述面部超分辨率器是从所述面部表示生成所述超 分辨率面部图像的神经网络。5. 如权利要求4所述的系统,其中,所述面部超分辨率器是全连接神经网络。6. 如权利要求1所述的系统,还包括: 系数估计器,其从所述面部表示生成系数,其中,所述面部组合器生成所述输出面部图 像作为所述超分辨率面部图像和所述输入面部图像的上采样版本的线性组合,并且所述系 数确定所述线性组合。7. 如权利要求6所述的系统,其中,所述系数估计器是从所述面部表示生成所述系数的 神经网络。8. 如权利要求7所述的系统,其中,所述系数估计器是全连接神经网络。9. 如权利要求1所述的系统,其中,所述上采样是基于双三次插值的。10. 如权利要求1所述的系统,其中,所述输出面部图像包含所述输入面部图像中的像 素数量的至少四倍。11. 如权利要求1所述的系统,其中,所述输出面部图像是至少100x100像素。12. 如权利要求1所述的系统,其中,所述输入面部图像不多于50x50像素。13. 如权利要求1所述的系统,其中,所述输出图像具有比所述超分辨率图像更多的纹 理。14. 如权利要求1所述的系统,其中,所述输出图像补偿所述输入图像中的高斯模糊。15. 如权利要求1所述的系统,其中,所述输出图像补偿所述输入图像中的运动模糊。16. 如权利要求1所述的系统,还包括: 关键点检测模块,其从所述输出图像检测面部关键点。17. 如权利要求1所述的系统,还包括:系数估计器,其从所述面部表示生成系数,其中: 所述系数估计器是全连接神经网络; 所述面部组合器生成所述输出面部图像作为所述超分辨率面部图像和所述输入面部 图像的上采样版本的线性组合,并且所述系数确定所述线性组合;以及 所述面部超分辨率器是从所述面部表示生成所述超分辨率面部图像的全连接神经网 络。18. 如权利要求17所述的系统,其中,所述输出面部图像包含所述输入面部图像中的像 素数量的至少四倍。19. 一种用于从输入面部图像生成较高分辨率输出面部图像的方法,所述方法包括: 生成输入面部图像的面部表示; 从所述面部表示生成超分辨率面部图像,所述超分辨率面部图像具有比所述输入面部 图像更高的分辨率; 对所述输入面部图像进行上采样;以及 将所述超分辨率面部图像与所述上采样的输入面部图像组合,以产生输出面部图像, 其中,所述方法是通过一个或多个处理器执行的。20. -种非瞬时计算机可读介质,被配置为存储程序代码,所述程序代码包括用于从输 入面部图像生成较高分辨率输出面部图像的指令,所述指令当由处理器运行时使得所述处 理器: 生成输入面部图像的面部表示; 从所述面部表示生成超分辨率面部图像,所述超分辨率面部图像具有比所述输入面部 图像更高的分辨率; 对所述输入面部图像进行上采样;以及 将所述超分辨率面部图像与所述上采样的输入面部图像组合,以产生输出面部图像。
【文档编号】G06T5/00GK105960657SQ201480074939
【公开日】2016年9月21日
【申请日】2014年6月17日
【发明人】印奇, 曹志敏, 周而进
【申请人】北京旷视科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1