.618 智能系统学报 第12卷 DCNN的训练集通常需要进行大量的预处理工 2.1脸检测与特征点定位 作,包括图像反转、随机裁剪、多尺度、彩色渲染、标 人脸检测和人脸对齐已经成为独立的研究方 准化数据等。通过不同方式的预处理产生的结果 向,人脸特征提取的前提就需要对这些算法进行研 也是有很大偏差的,主要表现为人脸检测错误、特 究,其中必不可少的就是人脸检测。人脸对齐(校 征点定位错误、身份归类错误等,这些偏差会对训 准)或面部特征点定位主要是通过瞳孔、眉毛、嘴巴 练结果造成较大的影响。为了研究数据库准确性 等人脸上的面部特征点对人脸进行校准,以促进正 对DCNN训练的影响,本文提出了一种多角度评估 面特征提取,特别是对于局部关键特征提取。 数据清理方法,主要贡献总结包括:)从人脸检测、特 本节主要对香港中文大学DCNN Seetaface、中 征点定位和人脸相似性等方面对数据库进行了清理: 国科学院的面部检测算法和深圳先进学校MTCNN 2)验证清理图像数据库的有效性,以提高训练准确性。 算法[2通过比较分析实际面部检测表现,并针对接 2 多角度评价清理图像 下来的大规模脸数据集选择适当的人脸检测和关 键点检测算法,从不同角度对DCNN、Seetaface、 首先,采用当前主流的人脸检测和特征点定位 MTCNN这3种算法进行测试和分析,验证3种算法 算法对数据集进行清理。其次,利用公开的网络模 的性能。 型提取特征计算相似度,并使用相似度统计算法进 表3是3种算法在3个不同测试数据集上5个 行图像清理。如图2是数据清理的具体流程。 关键点的平均差、标准差和效率。从表3中可以看 人脸检测 原始数 清理未检 清理过后 流程1: 据集s 特征的 出,DCNN算法的标准差均小于Seetaface算法和 测到的 的数据集 定位 图像 MTCNN算法,MTCNN算法略好于Seetaface算法, 提取特征 在这3个小数据集的测试中DCNN算法的稳定性最 流程2: 清理后的 人脸对齐 数据集 归一化 计算相 似度 好,其次是MTCNN;从平均误差来说,表现最好的是 Seetaface算法,表明Seetaface算法可以适应更广泛 最终保留 根据缝法 统计图像 的数据集 清理图像 不相似的 的场景。 数量 通过比较人脸检测和特征点定位的时间效率 图2数据清理流程 可以看出,MTCNN检测的时间最短,DCNN算法检 Fig.2 Data cleansing process 测的时间最长。 表35个关键点的测试平均差、标准差和效率 Table 3 Five key points of the test mean difference,standard deviation and efficiency DCNN算法 Seetaface算法 MTCNN 算法 平均差 标准差 效率/f·s1 平均差 标准差 效率/f·s 平均差 标准差效率1·s HELEN 0.0432 0.0136 3.6 0.0362 0.0172 5.1 0.0421 0.0250 15.4 AFW 0.0680 0.0202 4.1 0.0555 0.0383 7.0 0.0629 0.0375 18.2 LFPW 0.0594 0.0156 3.9 0.0490 0.0226 6.5 0.0482 0.0182 17.5 在本文中训练深度卷积神经网络需要大规模 根据上述实际测试的数据,本文选择MTCNN 数据集预处理工作,因此需要考虑面部检测算法的 算法作为所有数据库的面部检测算法。 综合性能,主要包括效果和效率。表4进一步进行 2.2基于相似度统计的图像清理 了两次大规模数据集的测试,从表4可以看出, 基于相似度统计的图像清理算法的3个主要步 MTCNN算法对大数据的稳定性较好,CelebA共计 骤如下。 20多万图像,测试CelebA时MTCNN算法实际检测 1)人脸对齐 的面部图像为l82387张,Seetaface算法实际检测 所有的人脸区域都需要对齐到112×96的RGB 的脸部图像为1800O32张,MTCNN算法在大规模 图像,这里使用来自于文献[17]给出的对齐好的示例 数据集中具有较好的效果。 图像的5个关键点作为标准人脸模板,根据式(1)求 表4大规模数据集上5个特征点的比较 出5个关键点的平均值,:,其中,表示对应图 Table 4 Comparison of five feature points on large-scale data 像点的坐标,i=1,2,3,4,5分别表示这5个关键点, j表示第j张图像,n表示所有的示例图像。 评价指标 数据集 MTCNN Seetaface 平均误差 Lfpw_net 0.0492 0.0555 Lx/n CelebA 0.0488 0.0490 (1) 标准误差 Lfpw net 0.0251 0.0383 CelebA 0.0248 0.0326 j=iDCNN 的训练集通常需要进行大量的预处理工 作,包括图像反转、随机裁剪、多尺度、彩色渲染、标 准化数据等。 通过不同方式的预处理产生的结果 也是有很大偏差的,主要表现为人脸检测错误、特 征点定位错误、身份归类错误等,这些偏差会对训 练结果造成较大的影响。 为了研究数据库准确性 对 DCNN 训练的影响,本文提出了一种多角度评估 数据清理方法,主要贡献总结包括:1)从人脸检测、特 征点定位和人脸相似性等方面对数据库进行了清理; 2)验证清理图像数据库的有效性,以提高训练准确性。 2 多角度评价清理图像 首先,采用当前主流的人脸检测和特征点定位 算法对数据集进行清理。 其次,利用公开的网络模 型提取特征计算相似度,并使用相似度统计算法进 行图像清理。 如图 2 是数据清理的具体流程。 图 2 数据清理流程 Fig.2 Data cleansing process 2.1 脸检测与特征点定位 人脸检测和人脸对齐已经成为独立的研究方 向,人脸特征提取的前提就需要对这些算法进行研 究,其中必不可少的就是人脸检测。 人脸对齐(校 准)或面部特征点定位主要是通过瞳孔、眉毛、嘴巴 等人脸上的面部特征点对人脸进行校准,以促进正 面特征提取,特别是对于局部关键特征提取。 本节主要对香港中文大学 DCNN Seetaface、中 国科学院的面部检测算法和深圳先进学校 MTCNN 算法[27]通过比较分析实际面部检测表现,并针对接 下来的大规模脸数据集选择适当的人脸检测和关 键点 检 测 算 法, 从 不 同 角 度 对 DCNN、 Seetaface、 MTCNN 这 3 种算法进行测试和分析,验证 3 种算法 的性能。 表 3 是 3 种算法在 3 个不同测试数据集上 5 个 关键点的平均差、标准差和效率。 从表 3 中可以看 出,DCNN 算法的标准差均小于 Seetaface 算法和 MTCNN 算法,MTCNN 算法略好于 Seetaface 算法, 在这 3 个小数据集的测试中 DCNN 算法的稳定性最 好,其次是 MTCNN;从平均误差来说,表现最好的是 Seetaface 算法,表明 Seetaface 算法可以适应更广泛 的场景。 通过比较人脸检测和特征点定位的时间效率 可以看出,MTCNN 检测的时间最短,DCNN 算法检 测的时间最长。 表 3 5 个关键点的测试平均差、标准差和效率 Table 3 Five key points of the test mean difference, standard deviation and efficiency 算法 DCNN 算法 Seetaface 算法 MTCNN 平均差 标准差 效率/ f·s -1 平均差 标准差 效率/ f·s -1 平均差 标准差 效率/ f·s -1 HELEN 0.043 2 0.013 6 3.6 0.036 2 0.017 2 5.1 0.042 1 0.025 0 15.4 AFW 0.068 0 0.020 2 4.1 0.055 5 0.038 3 7.0 0.062 9 0.037 5 18.2 LFPW 0.059 4 0.015 6 3.9 0.049 0 0.022 6 6.5 0.048 2 0.018 2 17.5 在本文中训练深度卷积神经网络需要大规模 数据集预处理工作,因此需要考虑面部检测算法的 综合性能,主要包括效果和效率。 表 4 进一步进行 了两次大规模数据集的测试,从表 4 可以看出, MTCNN 算法对大数据的稳定性较好,CelebA 共计 20 多万图像,测试 CelebA 时 MTCNN 算法实际检测 的面部图像为 182 387 张,Seetaface 算法实际检测 的脸部图像为 180 032 张 , MTCNN 算法在大规模 数据集中具有较好的效果。 表 4 大规模数据集上 5 个特征点的比较 Table 4 Comparison of five feature points on large⁃scale data 评价指标 数据集 MTCNN Seetaface 平均误差 Lfpw_net 0.049 2 0.055 5 CelebA 0.048 8 0.049 0 标准误差 Lfpw_net 0.025 1 0.038 3 CelebA 0.024 8 0.032 6 根据上述实际测试的数据,本文选择 MTCNN 算法作为所有数据库的面部检测算法。 2.2 基于相似度统计的图像清理 基于相似度统计的图像清理算法的 3 个主要步 骤如下。 1)人脸对齐 所有的人脸区域都需要对齐到 112×96 的 RGB 图像,这里使用来自于文献[17]给出的对齐好的示例 图像的 5 个关键点作为标准人脸模板,根据式(1)求 出 5 个关键点的平均值 x - i、y - i, 其中, x j i、y j i 表示对应图 像点的坐标, i = 1,2,3,4,5 分别表示这 5 个关键点, j 表示第 j 张图像,n 表示所有的示例图像。 x - i = ∑ n j = 1 x j i / n y - i = ∑ n j = 1 y j i / n ì î í ï ï ï ï (1) ·618· 智 能 系 统 学 报 第 12 卷