CN109508678B - 人脸检测模型的训练方法、人脸关键点的检测方法和装置 - Google Patents

人脸检测模型的训练方法、人脸关键点的检测方法和装置 Download PDF

Info

Publication number
CN109508678B
CN109508678B CN201811367129.0A CN201811367129A CN109508678B CN 109508678 B CN109508678 B CN 109508678B CN 201811367129 A CN201811367129 A CN 201811367129A CN 109508678 B CN109508678 B CN 109508678B
Authority
CN
China
Prior art keywords
training
face
dimensional
model
face image
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.)
Active
Application number
CN201811367129.0A
Other languages
English (en)
Other versions
CN109508678A (zh
Inventor
陈德健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bigo Technology Pte Ltd
Original Assignee
Guangzhou Baiguoyuan Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN201811367129.0A priority Critical patent/CN109508678B/zh
Publication of CN109508678A publication Critical patent/CN109508678A/zh
Priority to PCT/CN2019/117945 priority patent/WO2020098686A1/zh
Priority to EP19883820.3A priority patent/EP3882808B1/en
Priority to RU2021115692A priority patent/RU2770752C1/ru
Priority to SG11202105115TA priority patent/SG11202105115TA/en
Priority to US17/294,664 priority patent/US11922707B2/en
Application granted granted Critical
Publication of CN109508678B publication Critical patent/CN109508678B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

本发明实施例公开了一种人脸检测模型的训练方法、人脸关键点的检测方法、装置、设备和存储介质,所述训练方法包括:获取训练人脸图像;基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型;根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图;采用所述训练人脸图像和所述训练UV坐标图对语义分割网络进行训练,获得人脸检测模型,本发明实施例无需对训练人脸图像和训练UV坐标图进行人工标注,解决了现有技术中训练数据需要人工预估标注导致训练数据不准确,造成CNN输出人脸关键点坐标不准确的问题,提高了人脸检测模型的性能,同时也提高了人脸关键点检测的准确性。

Description

人脸检测模型的训练方法、人脸关键点的检测方法和装置
技术领域
本发明实施例涉及数据处理技术领域,尤其涉及一种人脸检测模型的训练方法、一种人脸关键点的检测方法、一种人脸检测模型的训练装置、一种人脸关键点的检测装置、设备和存储介质。
背景技术
随着互联网技术的发展,出现了各种视频应用程序,通过视频应用程序人们可以更直观地进行交流。
在视频直播或者录制短视频的过程中,用户通常需求对视频进行一些特效处理,例如对视频中的人脸添加美颜、贴纸等特效,上述特效的添加依赖于人脸上的眼睛、嘴巴、鼻子等关键点,因此,检测人脸关键点的准确度对特效的处理尤其重要。在现有检测人脸关键点的方法中,一种方式是直接回归,通过把人脸图像输入CNN(卷积神经网络,Convolutional Neural Network)中,回归出各个关键点的坐标,另一种方式是层级法,通过多次预测关键点的坐标来提升精度,通过以前一次预测关键点的坐标为中心,裁剪出多个局部图片,再把多个局部图片输入CNN中,回归出关键点的最终坐标。
然而在训练CNN时,在训练样本中,当人脸图像中人脸角度较大时,人脸的某些部位受到遮挡,需要对受遮挡部分进行人工预估标注,导致得到训练数据不准确,从而造成CNN输出人脸关键点坐标不准确的问题。
发明内容
本发明实施例提供一种人脸检测模型的训练方法、一种人脸关键点的检测方法、一种人脸检测模型的训练装置、一种人脸关键点的检测装置、设备和存储介质,以解决现有人脸关键点的检测方法存在人脸关键点检测不准确的问题,以提高人脸关键点检测的准确性。
第一方面,本发明实施例提供了一种人脸检测模型的训练方法,包括:
获取训练人脸图像;
基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型;
根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图;
采用所述训练人脸图像和所述训练UV坐标图对语义分割网络进行训练,获得人脸检测模型,其中,所述人脸检测模型用于生成包含三维坐标的UV坐标图。
第二方面,本发明实施例提供了一种人脸关键点的检测方法,包括:
获取目标人脸图像;
将所述目标人脸图像输入预先训练的人脸检测模型中,以生成所述目标人脸图像的UV坐标图,所述UV坐标图中的每个像素点包含三维坐标;
获取UV模板图,所述UV模板图包含预先标注的人脸关键点;
在所述UV坐标图中确定所述人脸关键点对应的像素点,以检测所述人脸关键点的三维坐标。
第三方面,本发明实施例提供了一种人脸检测模型的训练装置,包括:
训练人脸图像获取模块,用于获取训练人脸图像;
三维重建模块,用于基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型;
训练UV坐标图生成模块,用于根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图;
训练模块,用于采用所述训练人脸图像和所述训练UV坐标图对语义分割网络进行训练,获得人脸检测模型,其中,所述人脸检测模型用于生成包含三维坐标的UV坐标图。
第四方面,本发明实施例提供了一种人脸关键点的检测装置,包括:
目标人脸图像获取模块,用于获取目标人脸图像;
UV坐标图生成模块,用于将所述目标人脸图像输入预先训练的人脸检测模型中,以生成所述目标人脸图像的UV坐标图,所述UV坐标图中的每个像素点包含三维坐标;
模板图获取模块,用于获取UV模板图,所述UV模板图包含预先标注的人脸关键点;
人脸关键点三维坐标检测模块,用于在所述UV坐标图中确定所述人脸关键点对应的像素点,以检测所述人脸关键点的三维坐标。
第五方面,本发明实施例提供了一种设备,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任一实施例所述的人脸检测模型的训练方法和/或人脸关键点的检测方法。
第六方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任一实施例所述的人脸检测模型的训练方法和/或人脸关键点的检测方法。
本发明实施例在获取训练人脸图像后,基于预设的三维人脸模型对训练人脸图像进行三维重建,得到训练三维人脸模型,并根据训练三维人脸模型生成包含训练三维人脸模型的三维坐标的训练UV坐标图;采用训练人脸图像和训练UV坐标图对语义分割网络进行训练,获得人脸检测模型。本发明通过对训练人脸图像进行三维重建以生成训练三维人脸模型,进一步生成训练UV坐标图,从而获得训练数据对语义分割网络进行训练获得到人脸检测模型,无需对训练人脸图像和训练UV坐标图进行人工标注,解决了现有技术中训练数据需要人工预估标注导致训练数据不准确,造成CNN输出人脸关键点坐标不准确的问题,提高了人脸检测模型的性能,同时也提高了人脸关键点检测的准确性。
进一步地,人脸检测模型可以生成包含三维坐标的UV坐标图,可以检测关键点的三维坐标,使得检测到的人脸关键点具有深度信息,丰富了关键点的应用场景。
附图说明
图1是本发明实施例一提供的一种人脸检测模型的训练方法的流程图;
图2A是本发明实施例二提供的一种人脸检测模型的训练方法的流程图;
图2B是本发明实施例二中三维人脸模型对齐的示意图;
图2C是本发明实施例二中通过三维重建生成训练三维人脸模型的示意图;
图3A是本发明实施例三提供的一种人脸关键点的检测方法的流程图;
图3B是本发明实施例三中人脸检测模型输出的UV坐标图的示意图;
图3C是本发明实施例三中UV模板图的示意图;
图4是本发明实施例四提供的一种人脸检测模型的训练装置的结构框图;
图5是本发明实施例五提供的一种人脸关键点的检测装置的结构框图;
图6是本发明实施例六提供的一种设备的结构框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种人脸检测模型的训练方法的流程图,本发明实施例可适用于训练人脸检测模型生成包含三维坐标的UV坐标图的情况,该方法可以由人脸检测模型的训练装置来执行,该装置可以通过软件和/或硬件的方式来实现,并集成在执行本方法的设备中,具体地,如图1所示,该方法可以包括如下步骤:
S101、获取训练人脸图像。
具体地,训练人脸图像可以是包含人脸的二维图像,该二维图像的存储格式可以是BMP、JPG、PNG、TIF等格式。其中,BMP(Bitmap)是Windows操作系统中的标准图像文件格式,BMP采用位映射存储格式,BMP文件的图像深度可选lbit、4bit、8bit及24bit;JPG即JPEG(Joint Photo graphic Experts Group),JPEG图片以24位颜色存储单个位图,JPEG是与平台无关的格式;PNG(Portable Network Graphic Format,可移植网络图形格式)是一种位图文件存储格式,PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据;TIF(Tag Image FileFormat,标签图像文件格式)是一种灵活的位图格式,主要用来存储包括照片和艺术图在内的图像。
在实际应用中,可以从本地存储的图像中选取出训练人脸图像,也可以是从网络上获取已公开的人脸图像作为训练人脸图像,还可以是从视频中截取人脸图像作为训练人脸图像。本发明实施例对训练人脸图像的存储格式不加以限制,对获取训练人脸图像的方式也不加以限制。
S102、基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型。
其中,预设的三维人脸模型可以是对真实人脸进行三维扫描,获得真实人脸的三维扫描数据,三维扫描数据即为三维人脸模型,通过对多个真实人脸进行三维扫描,可以获得多个不同的三维人脸模型以生成三维人脸模型库,当然,三维人脸模型也可以是已公开的三维人脸模型。
本发明实施例中,可以对大量预设的三维人脸模型进行分析,以获得三维人脸模型的主成分分量和特征值,通过主成分分量和拟合不同的特征值可以生成不同的三维人脸模型,因此,对于训练人脸图像,可以拟合不同的特征值进行三维重建,以生成训练人脸图像对应的训练三维人脸模型。通过获取多张训练人脸图像生成对应的三维人脸模型,可以解决对真实人脸进行三维扫描获取三维人脸模型代价高,以及,公开的三维人脸模型数据稀疏,无法为人脸检测模型训练提供足够训练数据的问题,提高了获取训练数据的效率和降低了获取训练数据的成本。
S103、根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图。
其中,UV是U,V纹理贴图坐标的简称,其中U是水平方向坐标,V是垂直方向坐标,通过二维的UV坐标图,可以将UV坐标系中图像上每一个点对应到三维人脸模型的表面,即三维人脸模型上的每个点在UV坐标图上具有唯一的一个点,通过UV坐标图可以还原出三维人脸模型。具体到本发明实施例中,UV坐标图可以是存储训练三维人脸模型的三维坐标的二维平面图,该UV坐标图可以由三维数组组成,如对于一个226×226×3的数组,前两维数据为UV坐标图上的像素点在UV坐标图上的位置,最后一维数据表示该像素点关联的三维坐标,该三维坐标为训练三维人脸模型上的点的三维坐标。
具体地,训练三维人脸模型可以是多个顶点的集合,每个顶点具有确定的三维坐标,可以根据三维人脸模型的顶点生成相应的训练UV坐标图,该训练UV坐标图中的每个像素点对应于训练三维人脸模型上的每个顶点,每个像素点关联有其对应的顶点的三维坐标。
S104、采用所述训练人脸图像和所述训练UV坐标图对语义分割网络进行训练,获得人脸检测模型,其中,所述人脸检测模型用于生成包含三维坐标的UV坐标图。
在具体实施方式中,人脸检测模型可以根据输入的人脸图像生成包含三维坐标的UV坐标图,在人脸检测模型训练时,可以将训练人脸图像作为训练数据,训练人脸图像对应的训练UV坐标图作为训练标签,将训练人脸图像输入语义分割网络中,预估训练人脸图像的各个像素点的三维坐标以及各个像素点在UV坐标图中的位置,以生成预测的UV坐标图,然后根据预测的UV坐标图和输入的训练人脸图像对应的训练UV坐标图计算损失率后调整网络参数,获得最终训练好的人脸检测模型。通过训练好的人脸检测模型,将新的人脸图像输入人脸检测模型后,可以获得该人脸图像对应的UV坐标图,该UV坐标图上的每个像素点与人脸图像上的像素点对应,并且每个像素点包含有三维坐标。
本发明实施例通过对训练人脸图像进行三维重建,以通过三维重建生成的训练三维人脸模型生成训练UV坐标图,从而获得训练数据对语义分割网络进行训练获得到人脸检测模型,无需对训练人脸图像和训练UV坐标图进行人工标注,解决了现有技术中训练数据需要人工预估标注导致训练数据不准确,造成CNN输出人脸关键点坐标不准确的问题,提高了人脸检测模型的性能,同时也提高了人脸关键点检测的准确性。
进一步地,人脸检测模型可以生成包含三维坐标的UV坐标图,可以检测关键点的三维坐标,使得检测到的人脸关键点具有深度信息,丰富了关键点的应用场景。
实施例二
图2A为本发明实施例二提供的一种人脸检测模型的训练方法的流程图,本发明实施例在实施例一的基础上,对三维重建和生成训练UV坐标图进行优化,具体地,如图2A所示,该方法可以包括如下步骤:
S201、获取训练人脸图像。
S202、选取M个三维人脸模型。
本发明实施例可以从预设的三维人脸模型库中选取M个三维人脸模型,并对选取的三维人脸模型进行预处理,采用光流法对预处理后的三维人脸模型进行对齐,得到对齐后的三维人脸模型。
三维人脸模型可是通过三维扫描生成的,不同的扫描仪成像原理不同,可能会存在三维人脸模型的某些区域存在缺失数据的情况,可以对缺失数据的三维人脸模型做补洞处理,或者为了消除或减少扫描过程中光照条件的细微变化造成三维人脸模型表面不光滑,可以对三维人脸模型做平滑处理,当然还可以对局部区域的顶点的三维坐标做坐标矫正处理等,本发明实施例对预处理的方式不加以限制。
另外,为避免不同三维人脸模型之间的差异导致经过预处理的三维人脸模型的顶点数量、面片的数量以及三维人脸模型数据结构不一致,可以采用光流法对三维人脸模型进行对齐,使得三维人脸模型具有相同的维数的向量,以及具有相同语义信息的顶点对应到相同的向量位置。
具体地,假设三维人脸模型上的顶点用圆柱坐标表示为
Figure BDA0001868869740000093
其中h表示顶点在圆柱坐标中的高度,
Figure BDA0001868869740000094
表示旋转角度。根据光流法的定义,顶点在微小移动的时候,其亮度保持不变,由此可以得到h和
Figure BDA0001868869740000095
的数学表达式:
Figure BDA0001868869740000091
其中,vh
Figure BDA0001868869740000096
表示光流,可用Δh和
Figure BDA0001868869740000097
近似替代,R表示以
Figure BDA0001868869740000098
为中心的5×5的临近区域,‖.‖2表示L2范数,对于每个顶点
Figure BDA0001868869740000099
要使得上述函数E尽可能小。
用Ih和
Figure BDA00018688697400000910
分别表示上述函数E中所求解得到的偏导数
Figure BDA00018688697400000911
Figure BDA00018688697400000912
则每个顶点
Figure BDA00018688697400000913
的新位置
Figure BDA00018688697400000914
如下:
Figure BDA0001868869740000092
如图2B所示,假设模板人脸为S0=(x1y1z1,x2y2z12,……,xkykzk),对于新的人脸对齐到模板人脸后为S=(x1y1z1,x2y2z12,……,xkykzk),即所有的三维人脸均有k维向量,对于具有相同语义信息的顶点对应到相同的向量位置,例如,对于S0和S中鼻子上的点存储在第k个向量位置中,以此使得三维人脸模型对齐。
S203、对所述M个三维人脸模型进行主成分分析,得到主成分分量矩阵和特征值矩阵。
主成分分析(Principal Component Analysis,PCA)是将多个变量通过线性变换以选出较少个数重要变量的一种多元统计分析方法,具体到本发明实施例中,可以对M个三维人脸模型进行主成分分析,以获取M个三维人脸模型的主成分分量矩阵和特征值矩阵。
具体地,对应每个三维人脸模型S1、S2、…、Sm,通过以下公式计算均值:
Figure BDA0001868869740000101
其中,
Figure BDA0001868869740000103
为三维人脸模型平均值,即平均脸模型,m为选取三维人脸模型的数量,Si为三维人脸模型。
然后求取每个三维人脸模型Si的偏差
Figure BDA0001868869740000104
可以得到偏差组成的矩阵A=(αi),则A的协方差矩阵如下:
Figure BDA0001868869740000102
通过对协方差矩阵进行特征值分解后,按特征值从大到小进行排序,得到前m个主成分分量矩阵s=(s1,s2,……,sm)和特征值α=(a1,a2,……,am)。则任意一个三维人脸模型Si可以近似地用主成分分量矩阵s和特征值α的线性来表示。
S204、针对每个训练人脸图像,采用所述主成分分量矩阵和所述特征值矩阵进行三维重建,得到训练三维人脸模型。
具体地,可以设置初始特征值矩阵和初始投影参数矩阵,并采用初始特征值矩阵和主成分分量矩阵构建初始三维人脸模型。
例如,设初始特征值矩阵α′=(a′1,a′2,……,a′n),通过初始特征值矩阵α′和主成分分量矩阵s构造出初始三维人脸模型S′=α′s=a′1s1+a′2s2+…+a′nsn
在构建初始三维人脸模型后,可以基于初始投影参数矩阵,获取初始三维人脸模型在二维空间的投影人脸图像。
具体地,初始三维人脸模型到二维空间的投影需要考虑人脸平移、人脸旋转、光照等问题,设平移坐标为(tx,ty,tz),人脸旋转参数为
Figure BDA0001868869740000113
,环境光照强度(ramb,gamb,bamb),有向光照强度(rdir,gdir,bambdir),以及光源方向
Figure BDA0001868869740000112
以上投影参数用矩阵ρ来表示。
设置初始投影参数矩阵ρ,将初始三维人脸模型S′投影至二维平面上,得到初始三维人脸模型的投影人脸图像Imodel=ρS′,并设训练人脸图像为Iinput,则投影人脸图像Imodel与训练人脸图像Iinput差异越小时,说明该初始三维人脸模型越接近训练人脸图像对应的真实人脸。
因此,可以计算投影人脸图像和训练人脸图像之间的差异值,并根据差异值,采用随机梯度下降法分别对初始特征值矩阵和初始投影参数矩阵进行迭代优化,获得差异值收敛时的特征值矩阵和投影参数矩阵,作为目标特征值矩阵和目标投影参数矩阵。
具体地,可以通过以下公式计算投影人脸图像Imodel与训练人脸图像Iinput的差异值:
Figure BDA0001868869740000111
其中,EI为差异值,Iinput(x,y)为训练人脸图像上的像素点,Imodel(x,y)为训练人脸图像上的像素点,‖.‖2表示L2范数。
如果上述EI大于预设阈值,则需要对设初始特征值矩阵α′和初始投影参数矩阵ρ进行优化,通过优化后的初始特征值矩阵α′和初始投影参数矩阵ρ重新构建三维人脸模型后进行投影,计算差异值EI,直至差异值EI收敛为止。
可选地,可以使用随机梯度下降算法(SGD)进行优化,具体地,针对前N轮迭代优化,在训练人脸图像和投影人脸图像中随机选取K个特征点,根据K个特征点计算投影人脸图像和训练人脸图像之间的差异值,并根据差异值,采用随机梯度下降法对初始特征值矩阵中的部分特征值和初始投影参数矩阵进行迭代优化,在N轮迭代优化后,采用随机梯度下降法对所有特征值和初始投影参数矩阵进行优化,获得差异值收敛时的特征值矩阵和投影参数矩阵,作为目标特征值矩阵和目标投影参数矩阵。
例如,在前N轮的每次迭代中,从训练人脸图像Iinput和投影人脸图像Imodel上选择K=40个随机特征点进行优化,特征点可以是人脸上眼睛、嘴巴或者脸型轮廓上的点,通过选择较少数量的特征点计算差异值优化初始特征值矩阵α′和初始投影参数矩阵ρ,可以避免每次迭代优化造成计算冗余,提高优化的速度。
同时,可以先对设初始特征值矩阵α′中特征值较大的n个特征值进行优化,避免在前N轮迭代时拟合较小的特征值造成过度拟合。因此在前N轮迭代,可以拟合重要性较高的特征值。例如,前100轮迭代中优化特征值较大的10个特征值和投影参数矩阵ρ,100轮迭代后优化所有的特征值和投影参数矩阵ρ,当差异值EI收敛时,得到目标特征值矩阵,则可以采用目标特征值矩阵和主成分分量矩阵生成训练三维人脸模型。
如图2C所示,训练三维人脸模型S通过主成分分量矩阵中的主成分分量和目标特征值矩阵中的特征值拟合而成,即基于预设的三维人脸模型可以对训练人脸图像进行三维重建,获得训练三维人脸模型,可以解决对人脸进行三维扫描获取三维人脸模型代价高,以及公开的三维人脸模型数据稀疏,无法为人脸检测模型训练提供足够训练数据的问题,提高了获取训练数据的效率和降低了获取训练数据的成本。
S205、获取所述训练三维人脸模型的顶点,所述顶点具有三维坐标。
在本发明实施例中,训练三维人脸模型可以是多个顶点的集合,每个顶点在训练三维人脸模型中具有确定的三维坐标,例如,训练三维人脸模型为S=(x1y1z1,x2y2z12,……,xkykzk),即训练三维人脸模型包括k个顶点。
S206、将所述顶点投影至预设球面上,得到顶点在所述球面上的投影点。
具体地,可以通过球面投影将顶点投影到预设半径的球面上,例如,对于三维人脸模型的每个顶点,将顶点与球心连线,则该连线在球面上的交点即为顶点在球面上的投影,训练三维人脸模型的顶点都进行投影后,可以把不规则的训练三维人脸模型投影到球面上。
S207、对包含所述投影点的球面进行展开处理,以生成包含所述投影点的训练UV坐标图;其中,所述训练UV坐标图中的每个投影点关联有所述顶点的三维坐标。
具体地,可以把球面展开成二维平面图得到UV坐标图,该UV坐标图存储了训练三维人脸模型的顶点的三维坐标,即UV坐标图中的每个像素点对应于训练三维人脸模型上的唯一一个顶点,通过UV坐标图中的像素点可以还原出训练三维人脸模型。
S208、采用所述训练人脸图像和所述训练UV坐标图对语义分割网络进行训练,获得人脸检测模型,其中,所述人脸检测模型用于生成包含三维坐标的UV坐标图。
本发明实施例中,可以采用训练人脸图像作为训练数据,训练人脸图像对应的训练UV坐标图作为训练标签对语义分割网络进行训练。
具体地,可以随机提取训练人脸图像,将训练人脸图像输入语义分割网络中提取预测UV坐标图,并采用预设损失函数和所述训练UV坐标图对预测UV坐标图计算损失率,采用损失率计算梯度,判断梯度是否满足预设的迭代条件;若是,则确定语义分割网络为人脸检测模型;若否,则采用梯度与预设的学习率对语义分割网络的网络参数进行梯度下降,返回提取训练人脸图像的步骤。
在实际应用中,语义分割网络可以是FCN、SegNet、U-Net等语义分割网络,本发明实施例可以通过随机梯度下降的方式训练语义分割网络。
具体到本发明实施例中,将训练人脸图像输入语义分割网络可以提取预测UV坐标图,可选地,该预测UV坐标图与输入的训练人脸图像的分辨率相同,例如分别率均为226×226,并且预测UV坐标图上每个像素点均关联有三维坐标,则可以获取训练人脸图像对应的训练UV坐标图,通过预测UV坐标图、训练UV坐标图和损失函数以及损失权重计算损失率。
可选地,损失函数如下:
Figure BDA0001868869740000141
其中,P(u,v)为训练UV坐标图,
Figure BDA0001868869740000142
为预测UV坐标图,W(u,v)为损失权重。对于训练UV坐标图P(u,v)和预测UV坐标图
Figure BDA0001868869740000143
可以分别提取位置相同的像素点关联的三维坐标以计算差值,则可以得到每个像素点的差值,如果该像素点在人脸关键点区域,如在眼睛、嘴巴、鼻子等关键点区域,可以增加损失权重,比如像素点(u,v)在眼睛、嘴巴、鼻子等关键区域,则设置W(u,v)为4,如果在其他区域,则设置W(u,v)为1,以提高准确性。
在计算损失率后,可以计算每个网络参数wt相对于损失函数Loss的偏导数以获得梯度:
Figure BDA0001868869740000151
其中,
Figure BDA0001868869740000152
为梯度,Loss为损失函数,wt为网络参数,
Figure BDA0001868869740000153
为求偏导数。
如果梯度未满足预设的迭代条件,如连续多个梯度之间的差异大于或等于预设的差异阈值,或者未到达迭代次数,则按照以下公式采用梯度与预设的学习率对语义分割网络的网络参数进行梯度下降:
Figure BDA0001868869740000154
其中,wt+1为更新后的网络参数,wt为更新前的网络参数,lr为学习率,
Figure BDA0001868869740000155
为梯度。
如果梯度满足预设的迭代条件,如连续多个梯度之间的差异小于或等于预设的差异阈值,或者到达迭代次数,则结束训练,输出网络参数wt,获得人脸检测模型。
本发明实施例通过对训练人脸图像进行三维重建以生成训练三维人脸模型,进一步生成训练UV坐标图,从而获得训练数据对语义分割网络进行训练获得到人脸检测模型,无需对训练人脸图像和训练UV坐标图进行人工标注,解决了现有技术中训练数据需要人工预估标注导致训练数据不准确,造成CNN输出人脸关键点坐标不准确的问题,提高了人脸检测模型的性能,同时也提高了人脸关键点检测的准确性。
进一步地,人脸检测模型可以生成包含三维坐标的UV坐标图,可以检测关键点的三维坐标,使得检测到的人脸关键点具有深度信息,丰富了关键点的应用场景。
实施例三
图3A为本发明实施例三提供的一种人脸关键点的检测方法的流程图,本发明实施例可适用于通过人脸图像检测人脸关键点的情况,该方法可以由人脸关键点的检测装置来执行,该装置可以通过软件和/或硬件的方式来实现,并集成在执行本方法的设备中,具体地,如图3A所示,该方法可以包括如下步骤:
S301、获取目标人脸图像。
在本发明实施例中,目标人脸图像可以是待添加视频特效的人脸图像。例如,可以是视频直播或者录制短视频过程中,用户选择美瞳、添加贴图、瘦脸等添加视频特效的操作时,视频直播APP检测到用户的操作,从摄像头采集到的视频帧中截取一帧包含人脸的图像作为目标人脸图像,目标人脸图像还可以是人脸认证时通过人脸认证装置采集到待认证人脸的人脸图像,还可以是用户对存储在本地的图像进行图像处理时的人脸图像,还可以是其它待检测人脸关键点的图像,本发明实施例对获取目标人脸图像的方式不加以限制。
S302、将所述目标人脸图像输入预先训练的人脸检测模型中,以生成所述目标人脸图像的UV坐标图,所述UV坐标图中的每个像素点包含三维坐标。
其中,在本发明实施例中人脸检测模型可以通过如下方式进行训练:
S3021,获取训练人脸图像;
S3021,基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型;
S3021,根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图;
S3021,采用所述训练人脸图像和所述训练UV坐标图对语义分割网络进行训练,获得人脸检测模型,其中,所述人脸检测模型用于生成包含三维坐标的UV坐标图。
对于人脸检测模型的训练方法可以参考实施例一和实施例二,在此不再详述。
如图3B所示,将目标人脸图像输入预先训练的人脸检测模型中后,可以生成如图3B所示的目标人脸图像的UV坐标图,该UV坐标图中的每个像素点包含三维坐标,可选地,输出的UV坐标图的分辨率与目标人脸图像的分辨率相同。
S303、获取UV模板图,所述UV模板图包含预先标注的人脸关键点。
其中,UV模板图可以是根据大量UV坐标图总结得到二维图,在UV模板图中标注有人脸关键点,并且所标注的人脸关键点适用于大部分人脸的关键点检测。
如图3C所示为本发明实施例的UV模板图的示意图,该UV模板图上预先标注有人脸关键点,例如,在UV模板图中标准眼睛、鼻子、嘴巴、人脸轮廓等人脸关键点。
S304、在所述UV坐标图中确定所述人脸关键点对应的像素点,以检测所述人脸关键点的三维坐标。
在本发明的可选实施例中,UV坐标图和UV模板图的分辨率相同,每个像素点一一对应,可以在UV坐标图中确定UV模板上预先标注的人脸关键点对应的像素点,以检测人脸关键点的三维坐标,可以提高人脸关键点检测的效率。
例如,在UV模板图中,可以根据不同的业务需求对预先标注的人脸关键点添加分类标识,以应对用户不同的业务需求,例如眼睛的关键点的分类标识为A,鼻子的关键点的分类标识为B,嘴巴的关键点的分类标识为C等等,当用户需要在直播视频中对眼睛添加特效时,UV模板图上分类标识为A的人脸关键点有效,则在UV坐标图中可以确定分类标识为A的人脸关键点对应的像素点,进而获取像素点关联的三维坐标,以实现人脸关键点的检测,以便后续根据人脸关键点的三维坐标进行特效处理。
本发明实施例将目标人脸图像输入预先训练的人脸检测模型中,以生成目标人脸图像的UV坐标图,获取包含预先标注的人脸关键点UV模板图,并在UV坐标图中确定人脸关键点对应的像素点,以检测人脸关键点的三维坐标,本发明实施例人脸检测模型无需对训练人脸图像和训练UV坐标图进行人工标注,解决了现有技术中训练数据需要人工预估标注导致训练数据不准确,造成CNN输出人脸关键点坐标不准确的问题,提高了人脸检测模型的性能,能够得到准确的人脸关键点。
进一步地,UV坐标图中的每个像素点包含三维坐标,可以检测关键点的三维坐标,使得检测到的人脸关键点具有深度信息,丰富了关键点的应用场景。
实施例四
图4为本发明实施例四提供的一种人脸检测模型的训练装置的结构示意图,如图4所示,该装置具体包括:
训练人脸图像获取模块401,用于获取训练人脸图像;
三维重建模块402,用于基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型;
训练UV坐标图生成模块403,用于根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图;
训练模块404,用于采用所述训练人脸图像和所述训练UV坐标图对语义分割网络进行训练,获得人脸检测模型,其中,所述人脸检测模型用于生成包含三维坐标的UV坐标图。
可选地,所述三维重建模块402包括:
三维人脸模型选取子模块,用于选取M个三维人脸模型;
主成分分析子模块,用于对所述M个三维人脸模型进行主成分分析,得到主成分分量矩阵和特征值矩阵;
三维重建子模块,用于针对每个训练人脸图像,采用所述主成分分量矩阵和所述特征值矩阵进行三维重建,得到训练三维人脸模型。
可选地,所述三维重建模块402还包括:
三维人脸模型预处理子模块,用于对选取的三维人脸模型进行预处理;
三维人脸模型对齐子模块,用于采用光流法对预处理后的三维人脸模型进行对齐,得到对齐后的三维人脸模型;
其中,所述预处理包括如下至少一种:平滑处理、补洞处理和坐标矫正。
可选地,所述三维重建子模块包括:
初始参数设置单元,用于设置初始特征值矩阵和初始投影参数矩阵;
初始三维人脸模型构建单元,用于采用所述初始特征值矩阵和所述主成分分量矩阵构建初始三维人脸模型;
初始三维人脸模型投影单元,用于基于所述初始投影参数矩阵,获取所述初始三维人脸模型在二维空间的投影人脸图像;
差异值计算单元,用于计算所述投影人脸图像与所述训练人脸图像之间的差异值;
优化单元,用于根据所述差异值,采用随机梯度下降法分别对所述初始特征值矩阵和所述初始投影参数矩阵进行迭代优化,获得所述差异值收敛时的特征值矩阵和投影参数矩阵,作为目标特征值矩阵和目标投影参数矩阵;
训练三维人脸模型生成单元,用于采用所述目标特征值矩阵和所述主成分分量矩阵生成训练三维人脸模型。
可选地,所述优化单元包括:
特征点选取子单元,用于针对前N轮迭代优化,在所述训练人脸图像和所述投影人脸图像中随机选取K个特征点;
差异值计算子单元,用于根据所述K个特征点计算所述投影人脸图像与训练人脸图像之间的差异值;
第一迭代优化子单元,用于根据所述差异值,采用随机梯度下降法对所述初始特征值矩阵中的部分特征值和所述初始投影参数矩阵进行迭代优化;
第二迭代优化子单元,用于在N轮迭代优化后,采用随机梯度下降法对所有特征值和所述初始投影参数矩阵进行优化,获得所述差异值收敛时的特征值矩阵和投影参数矩阵,作为目标特征值矩阵和目标投影参数矩阵。
可选地,所述训练UV坐标图生成模块403包括:
顶点获取子模块,用于获取所述训练三维人脸模型的顶点,所述顶点具有三维坐标;
投影子模块,用于将所述顶点投影至预设球面上,得到顶点在所述球面上的投影点;
训练UV坐标图生成子模块,用于对包含所述投影点的球面进行展开处理,以生成包含所述投影点的训练UV坐标图;其中,所述训练UV坐标图中的每个投影点关联有所述顶点的三维坐标。
可选地,所述训练模块404包括:
训练人脸图像提取子模块,用于提取训练人脸图像;
预测UV坐标图提取子模块,用于将所述训练人脸图像输入语义分割网络中提取预测UV坐标图;
损失率计算子模块,用于采用预设损失函数和所述训练UV坐标图对所述预测UV坐标图计算损失率;
梯度计算子模块,用于采用所述损失率计算梯度;
迭代条件判断子模块,用于判断所述梯度是否满足预设的迭代条件;
人脸检测模型确定子模块,用于确定所述语义分割网络为人脸检测模型;
网络参数调整子模块,用于采用所述梯度与预设的学习率对所述语义分割网络的网络参数进行梯度下降,返回提取训练人脸图像的步骤。
可选地,所述损失率计算子模块包括:
训练UV坐标图单元,用于获取所述训练人脸图像对应的训练UV坐标图;
损失率计算单元,用于采用所述训练UV坐标图、所述预测UV坐标图、预设损失函数以及预设损失权重计算损失率,其中,所述预设损失权重为预设特征点的权重。
本发明实施例所提供的人脸检测模型的训练装置可执行本发明任意实施例所提供的人脸检测模型的训练方法,具备执行方法相应的功能模块和有益效果。
图5为本发明实施例五提供的一种人脸关键点的检测装置的结构示意图,如图5所示,该装置具体包括:
目标人脸图像获取模块501,用于获取目标人脸图像;
UV坐标图生成模块502,用于将所述目标人脸图像输入预先训练的人脸检测模型中,以生成所述目标人脸图像的UV坐标图,所述UV坐标图中的每个像素点包含三维坐标;
模板图获取模块503,用于获取UV模板图,所述UV模板图包含预先标注的人脸关键点;
人脸关键点三维坐标检测模块504,用于在所述UV坐标图中确定所述人脸关键点对应的像素点,以检测所述人脸关键点的三维坐标。
本发明实施例所提供的人脸关键点的检测装置可执行本发明任意实施例所提供的人脸关键点的检测方法,具备执行方法相应的功能模块和有益效果。
实施例六
参照图6,示出了本发明一个示例中的一种设备的结构示意图。如图6所示,该设备具体可以包括:处理器60、存储器61、具有触摸功能的显示屏62、输入装置63、输出装置64以及通信装置65。该设备中处理器60的数量可以是一个或者多个,图6中以一个处理器60为例。该设备中存储器61的数量可以是一个或者多个,图6中以一个存储器61为例。该设备的处理器60、存储器61、显示屏62、输入装置63、输出装置64以及通信装置65可以通过总线或者其他方式连接,图6中以通过总线连接为例。
存储器61作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明任意实施例所述的人脸检测模型的训练方法对应的程序指令/模块(例如,上述人脸检测模型的训练装置中的训练人脸图像获取模块401、三维重建模块402、训练UV坐标图生成模块403和训练模块404),或如本发明任意实施例所述的人脸关键点的检测方法对应的程序指令/模块(例如,上述人脸关键点的检测装置中的目标人脸图像获取模块501、UV坐标图生成模块502、模板图获取模块503和人脸关键点三维坐标检测模块504)。存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器61可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器61可进一步包括相对于处理器60远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
显示屏62为具有触摸功能的显示屏62,其可以是电容屏、电磁屏或者红外屏。一般而言,显示屏62用于根据处理器60的指示显示数据,还用于接收作用于显示屏62的触摸操作,并将相应的信号发送至处理器60或其他装置。可选的,当显示屏62为红外屏时,其还包括红外触摸框,该红外触摸框设置在显示屏62的四周,其还可以用于接收红外信号,并将该红外信号发送至处理器50或者其他设备。
通信装置65,用于与其他设备建立通信连接,其可以是有线通信装置和/或无线通信装置。
输入装置63可用于接收输入的数字或者字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入,还可以是用于获取图像的摄像头以及获取音频数据的拾音设备。输出装置64可以包括扬声器等音频设备。需要说明的是,输入装置63和输出装置64的具体组成可以根据实际情况设定。
处理器60通过运行存储在存储器61中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述人脸检测模型的训练方法和/或人脸关键点的检测方法。
具体地,实施例中,处理器60执行存储器61中存储的一个或多个程序时,具体实现本发明实施例提供的人脸检测模型的训练方法和/或人脸关键点的检测方法的步骤。
本发明实施例还提供一种计算机可读存储介质,所述存储介质中的指令由设备的处理器执行时,使得设备能够执行如上述方法实施例所述的人脸检测模型的训练方法和/或人脸关键点的检测方法。
需要说明的是,对于装置、设备、存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是机器人,个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的人脸检测模型的训练方法和/或人脸关键点的检测方法。
值得注意的是,上述人脸检测模型的训练装置和人脸关键点的检测装置中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (11)

1.一种人脸检测模型的训练方法,其特征在于,包括:
获取训练人脸图像;
基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型;
根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图;
提取训练人脸图像;
将所述训练人脸图像输入语义分割网络中提取预测UV坐标图;
采用预设损失函数和所述训练UV坐标图对所述预测UV坐标图计算损失率;
采用所述损失率计算梯度;
判断所述梯度是否满足预设的迭代条件;
若是,则确定所述语义分割网络为人脸检测模型;
若否,采用所述梯度与预设的学习率对所述语义分割网络的网络参数进行梯度下降,返回提取训练人脸图像的步骤;
所述基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型,包括:
选取M个三维人脸模型;
对所述M个三维人脸模型进行主成分分析,得到主成分分量矩阵和特征值矩阵;
针对每个训练人脸图像,采用所述主成分分量矩阵和所述特征值矩阵进行三维重建,得到训练三维人脸模型。
2.如权利要求1所述的方法,其特征在于,在对所述M个三维人脸模型进行主成分分析,得到主成分分量矩阵和特征值矩阵之前,包括:
对选取的三维人脸模型进行预处理;
采用光流法对预处理后的三维人脸模型进行对齐,得到对齐后的三维人脸模型;
其中,所述预处理包括如下至少一种:平滑处理、补洞处理和坐标矫正。
3.如权利要求1或2所述的方法,其特征在于,所述针对每个训练人脸图像,采用所述主成分分量矩阵和所述特征值矩阵进行三维重建,得到训练三维人脸模型,包括:
设置初始特征值矩阵和初始投影参数矩阵;
采用所述初始特征值矩阵和所述主成分分量矩阵构建初始三维人脸模型;
基于所述初始投影参数矩阵,获取所述初始三维人脸模型在二维空间的投影人脸图像;
计算所述投影人脸图像与所述训练人脸图像之间的差异值;
根据所述差异值,采用随机梯度下降法分别对所述初始特征值矩阵和所述初始投影参数矩阵进行迭代优化,获得所述差异值收敛时的特征值矩阵和投影参数矩阵,作为目标特征值矩阵和目标投影参数矩阵;
采用所述目标特征值矩阵和所述主成分分量矩阵生成训练三维人脸模型。
4.如权利要求3所述的方法,其特征在于,所述根据所述差异值,采用随机梯度下降法分别对所述初始特征值矩阵和所述初始投影参数矩阵进行迭代优化,获得所述差异值收敛时的特征值矩阵和投影参数矩阵,作为目标特征值矩阵和目标投影参数矩阵,包括:
针对前N轮迭代优化,在所述训练人脸图像和所述投影人脸图像中随机选取K个特征点;
根据所述K个特征点计算所述投影人脸图像与训练人脸图像之间的差异值;
根据所述差异值,采用随机梯度下降法对所述初始特征值矩阵中的部分特征值和所述初始投影参数矩阵进行迭代优化;
在N轮迭代优化后,采用随机梯度下降法对所有特征值和所述初始投影参数矩阵进行优化,获得所述差异值收敛时的特征值矩阵和投影参数矩阵,作为目标特征值矩阵和目标投影参数矩阵。
5.如权利要求1-2任一项所述的方法,其特征在于,所述根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图,包括:
获取所述训练三维人脸模型的顶点,所述顶点具有三维坐标;
将所述顶点投影至预设球面上,得到顶点在所述球面上的投影点;
对包含所述投影点的球面进行展开处理,以生成包含所述投影点的训练UV坐标图;其中,所述训练UV坐标图中的每个投影点关联有所述顶点的三维坐标。
6.如权利要求1所述的方法,其特征在于,所述采用预设损失函数和所述训练UV坐标图对所述预测UV坐标图计算损失率,包括:
获取所述训练人脸图像对应的训练UV坐标图;
采用所述训练UV坐标图、所述预测UV坐标图、预设损失函数以及预设损失权重计算损失率,其中,所述预设损失权重为预设特征点的权重。
7.一种人脸关键点的检测方法,其特征在于,包括:
获取目标人脸图像;
将所述目标人脸图像输入预先训练的人脸检测模型中,以生成所述目标人脸图像的UV坐标图,所述UV坐标图中的每个像素点包含三维坐标;
获取UV模板图,所述UV模板图包含预先标注的人脸关键点;
在所述UV坐标图中确定所述人脸关键点对应的像素点,以检测所述人脸关键点的三维坐标;
其中,所述人脸检测模型通过权利要求1-6任一项所述的人脸检测模型训练方法所训练。
8.一种人脸检测模型的训练装置,其特征在于,包括:
训练人脸图像获取模块,用于获取训练人脸图像;
三维重建模块,用于基于预设的三维人脸模型对所述训练人脸图像进行三维重建,得到训练三维人脸模型;
训练UV坐标图生成模块,用于根据所述训练三维人脸模型,生成包含所述训练三维人脸模型的三维坐标的训练UV坐标图;
训练模块,用于采用所述训练人脸图像和所述训练UV坐标图对语义分割网络进行训练,获得人脸检测模型,其中,所述人脸检测模型用于生成包含三维坐标的UV坐标图;
所述训练模块包括:
训练人脸图像提取子模块,用于提取训练人脸图像;
预测UV坐标图提取子模块,用于将所述训练人脸图像输入语义分割网络中提取预测UV坐标图;
损失率计算子模块,用于采用预设损失函数和所述训练UV坐标图对所述预测UV坐标图计算损失率;
梯度计算子模块,用于采用所述损失率计算梯度;
迭代条件判断子模块,用于判断所述梯度是否满足预设的迭代条件;
人脸检测模型确定子模块,用于确定所述语义分割网络为人脸检测模型;
网络参数调整子模块,用于采用所述梯度与预设的学习率对所述语义分割网络的网络参数进行梯度下降,返回提取训练人脸图像的步骤;
所述三维重建模块包括:
三维人脸模型选取子模块,用于选取M个三维人脸模型;
主成分分析子模块,用于对所述M个三维人脸模型进行主成分分析,得到主成分分量矩阵和特征值矩阵;
三维重建子模块,用于针对每个训练人脸图像,采用所述主成分分量矩阵和所述特征值矩阵进行三维重建,得到训练三维人脸模型。
9.一种人脸关键点的检测装置,其特征在于,包括:
目标人脸图像获取模块,用于获取目标人脸图像;
UV坐标图生成模块,用于将所述目标人脸图像输入预先训练的人脸检测模型中,以生成所述目标人脸图像的UV坐标图,所述UV坐标图中的每个像素点包含三维坐标;
模板图获取模块,用于获取UV模板图,所述UV模板图包含预先标注的人脸关键点;
人脸关键点三维坐标检测模块,用于在所述UV坐标图中确定所述人脸关键点对应的像素点,以检测所述人脸关键点的三维坐标;
其中,所述人脸检测模型通过权利要求1-6任一项所述的人脸检测模型训练方法所训练。
10.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的人脸检测模型的训练方法和/或权利要求7所述的人脸关键点的检测方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的人脸检测模型的训练方法和/或权利要求7所述的人脸关键点的检测方法。
CN201811367129.0A 2018-11-16 2018-11-16 人脸检测模型的训练方法、人脸关键点的检测方法和装置 Active CN109508678B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201811367129.0A CN109508678B (zh) 2018-11-16 2018-11-16 人脸检测模型的训练方法、人脸关键点的检测方法和装置
PCT/CN2019/117945 WO2020098686A1 (zh) 2018-11-16 2019-11-13 人脸检测模型的训练方法、人脸关键点的检测方法和装置
EP19883820.3A EP3882808B1 (en) 2018-11-16 2019-11-13 Face detection model training method and apparatus, and face key point detection method and apparatus
RU2021115692A RU2770752C1 (ru) 2018-11-16 2019-11-13 Способ и устройство для обучения модели распознавания лица и устройство для определения ключевой точки лица
SG11202105115TA SG11202105115TA (en) 2018-11-16 2019-11-13 Face detection model training method and apparatus, and face key point detection method and apparatus
US17/294,664 US11922707B2 (en) 2018-11-16 2019-11-13 Method and apparatus for training face detection model, and apparatus for detecting face key point

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811367129.0A CN109508678B (zh) 2018-11-16 2018-11-16 人脸检测模型的训练方法、人脸关键点的检测方法和装置

Publications (2)

Publication Number Publication Date
CN109508678A CN109508678A (zh) 2019-03-22
CN109508678B true CN109508678B (zh) 2021-03-30

Family

ID=65748813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811367129.0A Active CN109508678B (zh) 2018-11-16 2018-11-16 人脸检测模型的训练方法、人脸关键点的检测方法和装置

Country Status (6)

Country Link
US (1) US11922707B2 (zh)
EP (1) EP3882808B1 (zh)
CN (1) CN109508678B (zh)
RU (1) RU2770752C1 (zh)
SG (1) SG11202105115TA (zh)
WO (1) WO2020098686A1 (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109508678B (zh) * 2018-11-16 2021-03-30 广州市百果园信息技术有限公司 人脸检测模型的训练方法、人脸关键点的检测方法和装置
CN110083243A (zh) * 2019-04-29 2019-08-02 深圳前海微众银行股份有限公司 基于摄像头的交互方法、装置、机器人及可读存储介质
US11580673B1 (en) * 2019-06-04 2023-02-14 Duke University Methods, systems, and computer readable media for mask embedding for realistic high-resolution image synthesis
CN110705352A (zh) * 2019-08-29 2020-01-17 杭州晟元数据安全技术股份有限公司 基于深度学习的指纹图像检测方法
CN110826395B (zh) * 2019-09-18 2023-10-31 平安科技(深圳)有限公司 人脸旋转模型的生成方法、装置、计算机设备及存储介质
CN110827342B (zh) * 2019-10-21 2023-06-02 中国科学院自动化研究所 三维人体模型重建方法及存储设备、控制设备
CN111062266B (zh) * 2019-11-28 2022-07-15 东华理工大学 基于圆柱坐标的人脸点云关键点定位方法
CN110942142B (zh) * 2019-11-29 2021-09-17 广州市百果园信息技术有限公司 神经网络的训练及人脸检测方法、装置、设备和存储介质
CN111027474B (zh) * 2019-12-09 2024-03-15 Oppo广东移动通信有限公司 人脸区域获取方法、装置、终端设备和存储介质
CN113129425A (zh) * 2019-12-31 2021-07-16 Tcl集团股份有限公司 一种人脸图像三维重建方法、存储介质及终端设备
CN111428579A (zh) * 2020-03-03 2020-07-17 平安科技(深圳)有限公司 人脸图像的获取方法与系统
CN111524226B (zh) * 2020-04-21 2023-04-18 中国科学技术大学 讽刺肖像画的关键点检测与三维重建方法
CN111507304B (zh) * 2020-04-29 2023-06-27 广州市百果园信息技术有限公司 自适应刚性先验模型训练方法、人脸跟踪方法及相关装置
CN111652082B (zh) * 2020-05-13 2021-12-28 北京的卢深视科技有限公司 人脸活体检测方法和装置
CN113743157A (zh) * 2020-05-28 2021-12-03 北京沃东天骏信息技术有限公司 关键点检测模型训练方法和装置、关键点检测方法和装置
CN111797745A (zh) * 2020-06-28 2020-10-20 北京百度网讯科技有限公司 一种物体检测模型的训练及预测方法、装置、设备及介质
CN111667403B (zh) * 2020-07-02 2023-04-18 北京爱笔科技有限公司 一种有遮挡的人脸图像的生成方法及装置
CN112001231B (zh) * 2020-07-09 2023-07-21 哈尔滨工业大学(深圳) 加权多任务稀疏表示的三维人脸识别方法、系统及介质
CN111832648B (zh) * 2020-07-10 2024-02-09 北京百度网讯科技有限公司 关键点标注方法、装置、电子设备及存储介质
CN112101105B (zh) * 2020-08-07 2024-04-09 深圳数联天下智能科技有限公司 人脸关键点检测模型的训练方法、装置以及存储介质
CN111918049B (zh) * 2020-08-14 2022-09-06 广东申义实业投资有限公司 三维成像的方法、装置、电子设备及存储介质
CN112869746B (zh) * 2020-11-10 2022-09-20 南方医科大学南方医院 一种检测提上睑肌肌力的方法及装置
CN112464809B (zh) * 2020-11-26 2023-06-06 北京奇艺世纪科技有限公司 一种人脸关键点检测方法、装置、电子设备及存储介质
CN113554737A (zh) * 2020-12-04 2021-10-26 腾讯科技(深圳)有限公司 目标对象的动作驱动方法、装置、设备及存储介质
CN112613357B (zh) * 2020-12-08 2024-04-09 深圳数联天下智能科技有限公司 人脸测量方法、装置、电子设备和介质
CN112530003B (zh) * 2020-12-11 2023-10-27 北京奇艺世纪科技有限公司 一种三维人手重建方法、装置及电子设备
CN112613374A (zh) * 2020-12-16 2021-04-06 厦门美图之家科技有限公司 人脸可见区域解析与分割方法、人脸上妆方法及移动终端
CN112733705A (zh) * 2021-01-07 2021-04-30 中科魔镜(深圳)科技发展有限公司 一种基于人体面部的3d智能分析系统
CN113112596B (zh) * 2021-05-12 2023-10-24 北京深尚科技有限公司 人脸几何模型提取、3d人脸重建方法、设备及存储介质
CN113313828B (zh) * 2021-05-19 2022-06-14 华南理工大学 基于单图片本征图像分解的三维重建方法与系统
CN113487575B (zh) * 2021-07-13 2024-01-16 中国信息通信研究院 用于训练医学影像检测模型的方法及装置、设备、可读存储介质
CN113628322B (zh) * 2021-07-26 2023-12-05 阿里巴巴(中国)有限公司 图像处理、ar显示与直播方法、设备及存储介质
CN113838134B (zh) * 2021-09-26 2024-03-12 广州博冠信息科技有限公司 图像关键点检测方法、装置、终端和存储介质
CN113808277B (zh) * 2021-11-05 2023-07-18 腾讯科技(深圳)有限公司 一种图像处理方法及相关装置
CN113870267B (zh) * 2021-12-03 2022-03-22 深圳市奥盛通科技有限公司 缺陷检测方法、装置、计算机设备及可读存储介质
CN114612971A (zh) * 2022-03-04 2022-06-10 北京百度网讯科技有限公司 人脸检测方法、模型训练方法、电子设备及程序产品
CN114648611B (zh) * 2022-04-12 2023-07-18 清华大学 局域轨道函数的三维重构方法及装置
CN115311407B (zh) * 2022-04-19 2023-09-12 北京和华瑞博医疗科技有限公司 一种特征点标记方法、装置、设备及存储介质
CN114565967B (zh) * 2022-04-28 2022-08-30 广州丰石科技有限公司 工牌人脸检测方法、终端以及存储介质
CN115209180B (zh) * 2022-06-02 2024-06-18 阿里巴巴(中国)有限公司 视频生成方法以及装置
CN115082995A (zh) * 2022-06-27 2022-09-20 平安银行股份有限公司 人脸活体检测方法、装置及电子设备
CN115082991A (zh) * 2022-06-27 2022-09-20 平安银行股份有限公司 人脸活体检测方法、装置及电子设备
CN117745990B (zh) * 2024-02-21 2024-05-07 虹软科技股份有限公司 一种虚拟试衣方法、装置和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107680158A (zh) * 2017-11-01 2018-02-09 长沙学院 一种基于卷积神经网络模型的三维人脸重建方法
CN107766851A (zh) * 2017-12-06 2018-03-06 北京搜狐新媒体信息技术有限公司 一种人脸关键点定位方法及定位装置
CN108805977A (zh) * 2018-06-06 2018-11-13 浙江大学 一种基于端到端卷积神经网络的人脸三维重建方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6975750B2 (en) 2000-12-01 2005-12-13 Microsoft Corp. System and method for face recognition using synthesized training images
KR102477190B1 (ko) 2015-08-10 2022-12-13 삼성전자주식회사 얼굴 인식 방법 및 장치
CN105354531B (zh) * 2015-09-22 2019-05-21 成都通甲优博科技有限责任公司 一种面部关键点的标注方法
RU2610682C1 (ru) * 2016-01-27 2017-02-14 Общество с ограниченной ответственностью "СТИЛСОФТ" Способ распознавания лиц
CN106485230B (zh) * 2016-10-18 2019-10-25 中国科学院重庆绿色智能技术研究院 基于神经网络的人脸检测模型的训练、人脸检测方法及系统
US10402690B2 (en) * 2016-11-07 2019-09-03 Nec Corporation System and method for learning random-walk label propagation for weakly-supervised semantic segmentation
US10474881B2 (en) * 2017-03-15 2019-11-12 Nec Corporation Video retrieval system based on larger pose face frontalization
CN108304765B (zh) * 2017-12-11 2020-08-11 中国科学院自动化研究所 用于人脸关键点定位与语义分割的多任务检测装置
CN108921926B (zh) * 2018-07-02 2020-10-09 云从科技集团股份有限公司 一种基于单张图像的端到端三维人脸重建方法
CN110866864A (zh) * 2018-08-27 2020-03-06 阿里巴巴集团控股有限公司 人脸姿态估计/三维人脸重构方法、装置及电子设备
CN109508678B (zh) 2018-11-16 2021-03-30 广州市百果园信息技术有限公司 人脸检测模型的训练方法、人脸关键点的检测方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107680158A (zh) * 2017-11-01 2018-02-09 长沙学院 一种基于卷积神经网络模型的三维人脸重建方法
CN107766851A (zh) * 2017-12-06 2018-03-06 北京搜狐新媒体信息技术有限公司 一种人脸关键点定位方法及定位装置
CN108805977A (zh) * 2018-06-06 2018-11-13 浙江大学 一种基于端到端卷积神经网络的人脸三维重建方法

Also Published As

Publication number Publication date
US20210406516A1 (en) 2021-12-30
RU2770752C1 (ru) 2022-04-21
CN109508678A (zh) 2019-03-22
EP3882808A4 (en) 2022-01-19
EP3882808A1 (en) 2021-09-22
WO2020098686A1 (zh) 2020-05-22
US11922707B2 (en) 2024-03-05
SG11202105115TA (en) 2021-06-29
EP3882808B1 (en) 2024-05-29

Similar Documents

Publication Publication Date Title
CN109508678B (zh) 人脸检测模型的训练方法、人脸关键点的检测方法和装置
CN109325437B (zh) 图像处理方法、装置和系统
CN108921782B (zh) 一种图像处理方法、装置及存储介质
CN110503703B (zh) 用于生成图像的方法和装置
US10269175B2 (en) Three dimensional content generating apparatus and three dimensional content generating method thereof
US11928800B2 (en) Image coordinate system transformation method and apparatus, device, and storage medium
CN109815843B (zh) 图像处理方法及相关产品
CN110378997B (zh) 一种基于orb-slam2的动态场景建图与定位方法
CN111507343A (zh) 语义分割网络的训练及其图像处理方法、装置
US20180357819A1 (en) Method for generating a set of annotated images
US20190057532A1 (en) Realistic augmentation of images and videos with graphics
CN111507134A (zh) 人形姿态检测方法、装置、计算机设备及存储介质
US20210012568A1 (en) Methods, devices and computer program products for gradient based depth reconstructions with robust statistics
CN112242002B (zh) 基于深度学习的物体识别和全景漫游方法
CN112116714A (zh) 基于二维图像生成房间结构模型的方法及装置
US20240161254A1 (en) Information processing apparatus, information processing method, and program
CN112785557A (zh) 皮带料流检测方法及装置、皮带料流检测系统
WO2023279799A1 (zh) 对象识别方法、装置和电子系统
CN116805356A (zh) 建筑模型的构建方法、设备及计算机可读存储介质
CN109285160B (zh) 一种抠像方法与系统
US11645800B2 (en) Advanced systems and methods for automatically generating an animatable object from various types of user input
CN116740261A (zh) 图像重建方法和装置、图像重建模型的训练方法和装置
CN111583417B (zh) 一种图像语义和场景几何联合约束的室内vr场景构建的方法、装置、电子设备和介质
Zhang et al. End-to-end learning of self-rectification and self-supervised disparity prediction for stereo vision
US11557074B1 (en) Systems and methods for rigging a point cloud for animation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211129

Address after: 31a, 15 / F, building 30, maple mall, bangrang Road, Brazil, Singapore

Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd.

Address before: 511442 23-39 / F, building B-1, Wanda Plaza North, Wanbo business district, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU BAIGUOYUAN INFORMATION TECHNOLOGY Co.,Ltd.