CN111557022A - 二维图像处理方法及执行所述方法的设备 - Google Patents

二维图像处理方法及执行所述方法的设备 Download PDF

Info

Publication number
CN111557022A
CN111557022A CN201980006687.0A CN201980006687A CN111557022A CN 111557022 A CN111557022 A CN 111557022A CN 201980006687 A CN201980006687 A CN 201980006687A CN 111557022 A CN111557022 A CN 111557022A
Authority
CN
China
Prior art keywords
dimensional image
face
face model
image
parameter
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
Application number
CN201980006687.0A
Other languages
English (en)
Other versions
CN111557022B (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Priority claimed from PCT/KR2019/017240 external-priority patent/WO2020122513A1/ko
Publication of CN111557022A publication Critical patent/CN111557022A/zh
Application granted granted Critical
Publication of CN111557022B publication Critical patent/CN111557022B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • 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/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
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • 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
    • 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
    • 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/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Accounting & Taxation (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Game Theory and Decision Science (AREA)
  • Evolutionary Biology (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)

Abstract

提供了一种二维图像处理方法,所述方法包括以下步骤:获得二维图像;通过使用经训练的卷积神经网络(CNN)处理所获得的二维图像,以从二维图像获得至少一个相机参数和至少一个面部模型参数;并基于所获得的至少一个相机参数和至少一个面部模型参数来生成三维面部模型。

Description

二维图像处理方法及执行所述方法的设备
技术领域
本公开涉及二维(2D)图像处理方法和用于执行该方法的设备。更具体地,本公开涉及在2D图像上生成面部的三维(3D)模型的方法和用于执行该方法的设备。
背景技术
通过从二维(2D)图像中提取面部来生成三维(3D)面部模型的技术被用于各种领域。
然而,因为算法的复杂性而需要高性能的硬件,所以通过仅使用移动设备而无附加硬件支持来实现以上技术可能并不容易。
实施例描述
问题的解决方案
根据本公开的一方面,一种二维(2D)图像处理方法包括:获得2D图像;通过使用经训练的卷积神经网络(CNN)处理所获得的2D图像,以从2D图像获得至少一个相机参数和至少一个面部模型参数;并基于所获得的至少一个相机参数和至少一个面部模型参数来生成三维(3D)面部模型。
附图说明
图1是根据本公开实施例的二维(2D)图像处理设备的框图。
图2是根据本公开实施例的2D图像处理方法的流程图。
图3是根据本公开实施例的通过使用经训练的卷积神经网络(CNN)执行的用于处理2D图像的数据处理方法的流程图。
图4a是根据本公开实施例的经训练的CNN的数据处理方法的流程图。
图4b示出了根据本公开实施例的所使用的CNN的结构。
图4c示出了根据本公开实施例的所使用的CNN的另一结构。
图5示出了根据本公开实施例的2D图像处理方法与现有方法之间的差异的示例。
图6是根据本公开实施例的CNN训练方法的流程图。
图7是根据本公开实施例的附加地获得情绪参数的方法的流程图。
图8示出了根据本公开实施例的基于2D图像生成三维(3D)化身的示例。
图9示出了根据本公开实施例的2D图像处理设备从捕捉的路人图像获得情绪参数并提供适当的广告的示例。
图10示出了根据本公开实施例的机器人宠物通过从捕捉的用户图像获得情绪参数来与用户交流的示例。
图11示出了根据本公开实施例的基于所生成的3D面部模型来校正透视畸变的示例。
最佳实施方式
根据本公开的一方面,一种二维(2D)图像处理方法包括:获得2D图像;通过使用经训练的卷积神经网络(CNN)处理所获得的2D图像,以从2D图像获得至少一个相机参数和至少一个面部模型参数;并基于所获得的至少一个相机参数和至少一个面部模型参数来生成三维(3D)面部模型。
通过使用经训练的CNN来处理2D图像可以包括:调整2D图像的尺寸;从尺寸经调整的2D图像中检测面部;用边界框指示包括检测到的面部的面部区域;从2D图像中切割出由边界框指示的面部区域的图像;通过调整面部区域的切割图像的尺寸来生成第二图像;在第二图像上标记面部的至少一个界标;以及获得与至少一个界标最匹配的至少一个相机参数和至少一个面部模型参数。
可以通过使用非线性优化来获得至少一个相机参数,并且可以通过使用线性优化来获得至少一个面部模型参数。
可以以各种方式训练CNN。
可以通过将至少一个相机参数和至少一个面部模型参数应用于3D形态面部模型来生成3D面部模型。
2D图像处理方法还可以包括将所生成的3D面部模型覆盖在2D图像的面部区域上。
可以使用针孔相机模型执行覆盖。
2D图像处理方法还可以包括:通过使用经训练的CNN处理所获得的2D图像,以从2D图像获得至少一个情绪参数。
根据本公开的另一方面,一种二维(2D)图像处理设备包括:存储器,其存储一个或多个指令;以及处理器,被配置为执行一个或多个指令,其中,处理器被配置为:获得2D图像;通过使用经训练的卷积神经网络(CNN)处理所获得的2D图像,以从2D图像获得至少一个相机参数和至少一个面部模型参数;并基于所获得的至少一个相机参数和至少一个面部模型参数来生成三维(3D)面部模型。
处理器还被配置为通过以下操作来使用经训练的CNN处理2D图像:调整2D图像的尺寸;从尺寸经调整的2D图像中检测面部;用边界框指示包括检测到的面部的面部区域;从2D图像中切割出由边界框指示的面部区域的图像;通过调整面部区域的切割图像的尺寸来生成第二图像;在第二图像上标记面部的至少一个界标;以及获得与至少一个界标最匹配的至少一个相机参数和至少一个面部模型参数。
可以通过使用非线性优化来获得至少一个相机参数,并且可以通过使用线性优化来获得至少一个面部模型参数。
可以以各种方式训练CNN。
可以通过将至少一个相机参数和至少一个面部模型参数应用于3D形态面部模型来生成3D面部模型。
处理器可以将所生成的3D面部模型覆盖在2D图像的面部区域上。
可以使用针孔相机模型执行覆盖。
处理器可以通过使用经训练的CNN处理所获得的2D图像,以从2D图像获得至少一个情绪参数。
根据本公开的另一方面,提供了一种计算机程序产品,用于在被执行时使计算机执行方法。
根据本公开的另一方面,提供了一种其上记录有计算机程序产品的计算机可读记录介质。
具体实施方式
通过参考下面的详细描述和附图,可以更容易地理解本公开的一个或多个实施例及其实现方法。然而,本公开可以以许多不同形式体现,且不应被解释为受限于本文中所阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并且将本公开的构思充分传达给本领域技术人员,本公开仅由所附权利要求来限定。
尽管在下面的描述中使用的术语是在考虑到根据实施例所获得的功能的同时尽可能多地选自当前广泛使用的通用术语,但是这些术语可以基于本领域技术人员的意图、常规手段、新技术的兴起等而由其他术语代替。在特定情况下,可以使用由申请人任意选择的术语,并且在这种情况下,可以在本公开的相关部分中描述这些术语的含义。因此,应注意,本文中使用的术语是基于其实际含义和本说明书的全部内容来解释的,而不是仅基于术语的名称来解释。
应理解,当在本文中使用术语“包括”、“包含”和/或“含有”时,表明存在所述元素,但是不排除存在或添加一个或多个其他元素。如本文所使用的,术语“单元”表示软件元素或诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC)之类的硬件元素,并且执行特定功能。然而,术语“单元”不限于软件或硬件。可以将“单元”形成为位于可寻址存储介质中,或者可以将“单元”形成为操作一个或多个处理器。因此,例如,术语“单元”可以包括元素(例如,软件元素、面向对象的软件元素、类元素和任务元素)、处理、功能、属性、过程、子例程、程序代码段、驱动器、固件、微代码、电路、数据、数据库、数据结构、表、数组或变量。由元素和“单元”提供的功能可以被组合为较少数量的元素和“单元”,或者可以被划分为附加的元素和“单元”。
在下文中,将通过参考附图解释本公开的实施例来详细描述本公开。在附图中,为了进行清楚解释,未示出与本公开的实施例无关的部分。
图1是根据本公开实施例的二维(2D)图像处理设备100的框图。
根据本公开的实施例的2D图像处理设备100可以包括处理器110和存储器130。
处理器110可以获得2D图像,并通过使用经训练的卷积神经网络(CNN)来处理所获得的2D图像,以从所述2D图像获得至少一个相机参数和至少一个面部模型参数。
2D图像可以是由用户的移动计算设备的相机实时捕捉的视频流的一部分,或者是先前存储的视频流的一部分。
在一些实施例中,2D图像处理设备100还可以包括用于捕捉视频流的拍摄单元,例如,相机。
在本公开中,CNN是一种深度神经网络(DNN),其是在输入层和输出层之间包括多个隐含层的人工神经网络,并且可以是包括一个或多个卷积层和池化层以及全连接层的神经网络。
CNN具有适合于学习诸如图像的2D数据的结构,并且可以使用反向传播算法进行训练。CNN是广泛用于各种应用领域(例如,对来自图像的对象进行分类和检测)的DNN的代表性模型之一。在本公开中,可以使用以各种方式训练的CNN。
下面将参考图3等详细描述由处理器110执行的从2D图像获得至少一个相机参数和至少一个面部模型参数的方法。
处理器110可以基于所获得的至少一个相机参数和至少一个面部模型参数来生成三维(3D)面部模型。
存储器130可以存储例如要由处理器110执行的程序指令。存储器130可以存储可由处理器110读取和执行的指令,使得处理器110可以执行指令以执行2D图像处理方法中包括的操作。
在实施例中,存储器130可以存储经训练的CNN。
在本公开的一些实施例中,2D图像设备100可以包括多个存储器。
尽管在当前实施例中将处理器110和存储器130描述为分离的元件,但是在本公开的一些实施例中,处理器110和存储器130可以组合并实现为单个元件。
另外,尽管在当前实施例中处理器110和存储器130被彼此相邻地位于2D图像处理设备100中,但是用于执行处理器110和存储器130的功能的实体可能并不总是在物理上彼此相邻,因此,根据另一实施例,处理器110和存储器130可以以分布式方式定位。
2D图像处理设备100不限于物理设备,因此2D图像处理设备100的一些功能可以通过软件而不是硬件来实现。
根据本公开的一些实施例,2D图像处理设备100还可以包括输出器、通信接口、拍摄单元等。
本文指定的每个元件可以包括一个或多个组件,并且元件的名称可以根据设备的类型而不同。在各种实施例中,设备可以包括本文指定的元件中的至少一个元件,并且可以省略一些元件或者可以添加新的元件。另外,根据各种实施例的设备的一些元件可以被组合成能够等同地执行组合之前这些元件的功能的单个实体。
设备100可以包括在图1中未示出的其他元件,例如,智能手机、平板PC、虚拟现实眼镜、增强现实眼镜、PC、膝上型计算机和智能手表。
在另一个实施例中,用户计算设备可以包括分离的硬件单元。在这种实施例中,每个硬件单元可以负责根据本公开的方法的每个操作或子操作。
图2是根据本公开实施例的2D图像处理方法的流程图。
在操作S210中,设备100可以获得2D图像。2D图像可以是由用户的移动计算设备的相机实时捕捉的视频流的一部分,或者是先前存储的视频流的一部分。备选地,2D图像可以是包括在从诸如互联网或云网络的网络下载的图像序列中的一个或多个图像。
在操作S230中,设备100可以通过使用预训练的CNN处理所获得的2D图像,以获得至少一个相机参数和至少一个面部模型参数。
CNN可以具有如图4b或图4c所示的结构。CNN可以被配置为推断相机参数和面部模型参数。具体地,CNN可以检测到面部,并基于检测到的面部来推断和获得上述参数。
提供具有从图像检测面部的附加能力的CNN使得能够避免用于面部检测的资源密集过程。与现有技术相比,根据本公开的通过使用CNN来从图像中检测面部是资源较不密集的。
在操作S250中,设备100可以基于所获得的至少一个相机参数和至少一个面部模型参数来生成3D面部模型。
在实施例中,设备100可以通过将至少一个相机参数和至少一个面部模型参数应用于3D形态面部模型来生成3D面部模型。
在本公开中,形态面部模型可以指代统计面部主成分分析(PCA)模型。
该模型可以由M=N+B表示,其中N表示中性模型,被称为默认3D面部模型,e表示面部形状参数,B表示形状基础。该模型还可以由多维正态分布表示,该多维正态分布的中心位于点N,且协方差矩阵是一组唯一的向量B。每个向量矩阵B的列可以对应于负责该向量的信息重要性的特征值eigeni
为了解释情绪反映模型,可以将上述公式M修改为
Figure BDA0002548165630000073
在该公式中,A表示情绪基础,α表示情绪参数向量。
在一些实施例中,方法还可以包括设备100将所生成的3D面部模型覆盖在2D图像的面部区域上的操作。在该覆盖过程中,可以使用简化的针孔相机模型。
在本公开中,针孔相机模型是3D空间中的坐标之间的数学关系到图像全息图的投影。
这可以由Y=<tx,ty,tz,α,β,γ,f)表示,其中(tx,ty,tz)表示每个轴上的平移,(α,β,γ)表示旋转角度,f表示焦距。
投影可以导出为
Figure BDA0002548165630000071
其中x表示原始坐标点,
Figure BDA0002548165630000072
表示投影后的坐标点,f表示焦距,且R(α,β,γ)表示旋转矩阵。
当形态面部模型的参数∈和简化针孔相机模型的参数具有固定值时,将从3D空间R(α,β,γ)M(∈)+t导出一系列点,且这些点将被称为3D面部模型。
图3是根据本公开实施例的通过使用经训练的CNN执行的用于处理2D图像的数据处理方法的流程图。
在操作S310中,CNN可以调整在图2的操作S210中获得的2D图像的尺寸。CNN可以增加或减小2D图像的尺寸。
在操作S320中,CNN可以从尺寸经调整的2D图像中检测面部。在操作S330中,CNN可以用边界框指示包括检测到的面部的面部区域。针对每个检测到的面部的边界框可以被暗含用于确定图像空间中的面部位置。在一些实施例中,边界框可以是尺寸略大于或略小于面部的框。
在操作S340中,CNN对由边界框指示的面部区域的图像进行切割。尽管在当前实施例中基于边界框对面部区域的图像进行切割,但是可以以不同的方式执行操作S340。
在操作S350中,CNN可以通过调整面部区域的切割图像的尺寸来生成第二图像。CNN可以通过增加或减小面部区域的切割图像的尺寸来生成第二图像。
在一个实施例中,CNN可以通过将面部区域的切割图像的尺寸减小到n×n的某个尺寸(例如512×512、256×256、128×128或另一尺寸)来生成第二图像。
在操作S360中,CNN可以在第二图像上标记面部的至少一个界标。界标指代面部特征,例如,眼角或嘴角、鼻尖和沿面部、鼻子、眼睛和嘴的边沿的点。然而,界标不限于此。
在实施例中,可以手动标记界标。在另一实施例中,可以通过使用例如主动形状模型算法、级联算法或神经网络方法来自动标记界标。然而,用于自动标记界标的算法不限于上述示例。
在另一实施例中,操作S360可以与操作S320和/或操作S330组合。这是因为可以通过标记的面部界标暗含检测到面部区域和生成边界框。
在操作S370中,CNN可以获得与至少一个界标最匹配的至少一个相机参数和至少一个面部模型参数。
在操作S370中,CNN可以通过非线性优化来获得至少一个相机参数。非线性优化可以使用Gauss-Newton算法、Levenberg-Marquardt算法或梯度下降算法,但不限于此。
另外,CNN可以通过线性优化来获得至少一个面部模型参数。至少一个面部模型参数可以包括形状参数。CNN可以通过使用线性优化获得至少一个面部模型参数来减少所需的硬件资源。因此,根据本公开的实施例的2D图像处理设备100可以在移动设备中生成3D面部模型而无需使用附加的硬件。下面将参考图7提供其详细描述。
在另一实施例中,方法还可以包括CNN生成与面部界标最匹配的3D面部模型的操作。
图4a是根据本公开实施例的经训练的CNN的数据处理方法的流程图。
图4a是图3的流程图的简化版本,图4b示出了根据本公开的实施例的图4a的操作S420中的CNN的结构,且图4c示出了根据本公开的实施例的图4a的操作S440中的CNN的结构。
在图4a的实施例中,CNN可以接收多个2D图像并执行操作S410、S420和S430。在这种情况下,可以在操作S440中输入多个图像及它们的边界框。
在图4b的实施例中,CNN可以包括输入层450、卷积层460和全连接层470。
CNN可以将尺寸为96×96的图像输入到输入层450。
卷积层460可以被设计为导出2D图像的特征。
CNN可以自主添加新层。因为当添加新层时可以改善CNN的面部检测能力,所以可以在不使用其他算法的情况下实现面部检测。
在图4c中,CNN可以包括输入层450、卷积层460和全连接层470。
CNN可以将尺寸为128×128的图像输入到输入层450。
另外,CNN可以附加地将边界框输入到倒数第二个全连接层470,如图4c所示。输入边界框可以与全连接层470的倒数第二个输入数据并置。卷积层460可以被设计为导出2D图像的特征。然而,它们可能无法设计为与诸如边界框的宏功能一起使用。
在当前实施例中,将边界框输入到全连接层470,但是不限于此。
在另一个实施例中,当全连接层470的数量增加并因此增加非线性度时,由该CNN结构实现的功能的多样性可能增加。
为了执行输入,可以将至少一个新的全连接层470添加到CNN结构,以向CNN提供使用边界框参数的能力,CNN可以更准确地推断相机参数Y=(tx,ty,tz,α,β,γ,f)。
设备100可以通过使用图4b和图4c所示的CNN来从2D图像获得例如面部的位置、面部的方向以及面部界标的位置。
图5示出了根据本公开实施例的2D图像处理方法与现有方法之间的差异的示例。
(a)示出了现有的面部对准优化算法,且(b)示出了根据本公开实施例的面部对准优化算法。
相比于将通过投影3D形态面部模型而生成的2D模型与从2D图像中检测到的界标进行比较的(a),在(b)中,将在没有投影的情况下从2D图像中直接检测到的界标与3D形态面部模型进行比较。
设备100可以通过使用(b)的方法来增加执行优化算法的速度。
图6是根据本公开实施例的CNN训练方法的流程图。
可以以各种方式训练CNN。
在实施例中,可以基于例如3D形态面部模型、一系列图像和与该一系列图像相对应的边界框的训练数据以及与界标最匹配的相机参数和模型参数来对CNN进行训练。
在这种情况下,通过为CNN提供输入2D图像的能力,可以从输入的2D图像中提取至少一个相机参数和至少一个模型参数作为实际测量数据(610)。
另外,基于图2和图3的方法,设备100可以通过执行CNN来从2D图像获得至少一个相机参数和至少一个模型参数(630)。
当实际测量的数据610与由CNN基于算法所获得的数据(630)之间的差异较大时,可以在CNN学习操作中附加地使用损失函数。
通过使用L2标准中的差异,可以经由将基于与由于CNN训练而输入的若干面部图像中的每一个的界标最匹配的至少一个相机参数和至少一个模型参数生成的3D面部模型与基于由CNN从每个图像获得的至少一个相机参数和至少一个模型参数生成的3D面部模型进行比较,来执行确定实际测量的数据与由CNN基于算法获得的数据之间的差异是否较大。
在另一实施例中,可以使用用于面部界标的投影之间的差异的标准作为损失函数来训练CNN。
在另一实施例中,可以通过使用Adam优化算法来附加地训练CNN。
备选地,可以通过使用针对相机参数的差异的L2标准和针对模型参数的差异的L2标准来训练CNN。在这种情况下,可以添加L2标准作为与教导的宏参数相对应的权重的差异。
图7是根据本公开实施例的附加地获得情绪参数的方法的流程图。
在操作S710中,设备100可以通过使用非线性优化来获得至少一个相机参数。
在操作S730中,设备100可以通过使用线性优化来获得至少一个面部模型参数。
用于获得模型参数的线性优化可以由等式1表示,如以下函数中所示。
Figure BDA0002548165630000111
Figure BDA0002548165630000112
在该函数中,
Figure BDA0002548165630000113
表示L2标准,pi=(px,py)T表示由M=N+B解释的模型的第I个点,其中N表示中性3D面部模型,B表示形状基础,∈表示面部形状参数,且
Figure BDA0002548165630000114
表示相机参数。
另外,R表示具有参数(α,β,γ)的旋转矩阵,tx,y,z表示平移,且f表示焦距。
不同于常规非线性优化问题,用于查找模型参数的线性优化问题的解尤其可以减少对执行现有方法所需的系统资源的要求。
模型参数是用于生成模型的线性组合系数∈。为了求解该问题,将相机参数视为常数。
为了求解优化问题,使用等式1的线性方程组的配置和通过使用最小二乘法的该问题的解是必不可少的。线性方程组的解将用作优化问题的解。
在一个实施例中,还可以执行形态面部模型优选参数的正则化。可以基于以下公式来执行正则化。
Figure BDA0002548165630000121
在该公式中,∈i表示要优化的第i个参数,且cigcni表示第i个基向量的特征值。然后,完整的优化公式(公式1)可以如下所示。
Figure BDA0002548165630000122
在另一个实施例中,可以在多个图像而不是单个图像中建立处理视频流和形态面部模型的参数的现有方法。
在这种情况下,等式1可以写成如下所示的形式。
Figure BDA0002548165630000123
其中k表示图像编号。
在操作S750中,设备100可以通过使用线性优化来获得至少一个情绪参数。
可以通过使用以下所示的等式2求解线性优化问题,来执行基于与界标最匹配的相机参数、形态面部模型参数和情绪参数生成3D面部模型。
Figure BDA0002548165630000124
Figure BDA0002548165630000125
在该等式中,
Figure BDA0002548165630000126
表示L2标准,pi=(px,py)T表示第i个界标,且Mi(∈,α)=(Mx,My,Mz)T表示由公式
Figure BDA0002548165630000127
解释的情绪反映模型的第i个点(其中N表示中性的2D面部模型,B表示面部模型,∈表示面部模型参数,
Figure BDA0002548165630000128
A表示情绪基础,且α表示情绪参数向量)。
模型参数是情绪基础向量的线性组合系数∈,并且用于生成模型。为了求解该问题,将相机参数和面部模型参数视为常数。
为了求解优化问题,基于等式2的线性方程组的配置和解是必不可少的。线性方程组的解将用作优化问题的解。
图8示出了根据本公开实施例的基于2D图像生成3D化身的示例。
设备100可以获得2D图像(810),并从所获得的2D图像中检测界标(820)。设备100可以通过使用以上参考图2和图3描述的方法来生成3D面部模型(830)。
此外,设备100可以基于所生成的3D面部模型来生成与从2D图像中检测到的面部相似的3D化身(840)。
在一些实施例中,所生成的3D化身可以模仿用户的习惯、运动等。在一些实施例中,设备100可以控制所生成的3D化身以检测用户的运动并与检测到的用户的运动相似地移动。
在另一个实施例中,设备100可以在安全和认证系统中使用关于用户的习惯、运动、面部表情等的数据。例如,安全系统可以将关于用户的独特习惯、运动、面部表情等的数据用于门禁安全、文件安全、移动设备安全等。
图9示出了根据本公开实施例的2D图像处理设备100从捕捉的路人图像获得情绪参数并提供适当的广告的示例。
设备100可以通过使用嵌入式拍摄单元或外部摄影设备来获得用户的图像。
在实施例中,设备100可以通过对所获得的2D图像执行根据图2等的实施例的方法来获得关于用户的面部910的附加信息,并基于所获得的附加信息提供产品或服务的广告。
例如,设备100可以通过对所获得的2D图像执行根据图2和图7的实施例的方法来获得用户的情绪参数。
设备100可以通过使用所获得的情绪参数来确定用户的感觉,并且基于所确定的用户的感觉来提供产品或服务的广告。
作为另一示例,设备100可以通过对所获得的2D图像执行根据图2和图7的实施例的方法来获得用户的附加信息,例如,近似年龄、肤色、肤质、面部特征和面部尺寸。
设备100可以基于所获得的附加信息来提供用户定制的产品或服务的广告。
可以使用设备100内部的显示器或使用设备100外部的显示器来提供广告。
图10示出了根据本公开实施例的机器人宠物1010通过从捕捉的用户图像获得情绪参数来与用户交流的示例。
在另一实施例中,除了机器人宠物1010之外,设备100可以是诸如无绳吸尘器、无人机或电子秘书的设备,或者是连接到该设备的单独设备。
设备100可以通过使用嵌入式拍摄单元或外部摄影设备来获得用户的图像。
在一个实施例中,设备100可以通过对所获得的2D图像执行根据图2和图7的实施例的方法来获得用户的情绪参数。
设备100可以通过使用所获得的情绪参数来确定用户的感觉,并基于所确定的用户的感觉,通过执行某个功能来与用户交流。
例如,当用户感到不适时,可以控制机器人宠物1010做出安慰的姿势。
图11示出了根据本公开实施例的基于所生成的3D面部模型来校正透视畸变的示例。
在当前实施例中,设备100可以通过对所获得的2D图像执行根据图2和图3的实施例的方法来生成用户的3D面部模型。
设备100可以通过将所生成的3D面部模型覆盖在2D图像的面部区域上来获得对原始2D图像1110的透视畸变进行校正的2D图像1130。
可以使用针孔相机模型来执行3D面部模型在2D图像的面部区域上的覆盖。
在实施例中,透视畸变的校正可以用于美容应用、数字镜、数字化妆等。
本公开的方法可以由处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或片上系统(SoC)执行。所公开的方法可以由存储介质执行,该存储介质存储可由计算机执行的指令,并且所述指令当由计算机的处理器执行时能够执行本公开的方法。
机器可读存储介质可以以非暂时性存储介质的形式提供。当存储介质是“非暂时性”时,其仅意味着存储介质不包括信号(例如,电磁波),且其不限制数据被半永久地或临时地存储在存储介质中。例如,“非暂时性存储介质”可以包括临时存储数据的缓冲器。
根据实施例,本文公开的方法可以被包括并设置在计算机程序产品中。该计算机程序产品可以作为商业产品在卖方和买方之间进行交易。计算机程序产品可以以机器可读存储介质(例如,光盘只读存储器(CD-ROM))的形式分发,或者通过应用商店(例如,GooglePlayTM)在线分发(例如,下载或上传),或者直接在两个用户设备(例如,智能电话)之间分发。对于在线分发,计算机程序产品(例如,可下载的应用)的至少一部分可以至少临时存储在机器可读存储介质中,例如,制造商的服务器的存储器、应用商店的服务器或中继服务器,或是临时创建的。
虽然已经参考本公开的实施例特别示出和描述了本公开,但本领域普通技术人员应理解,在不脱离本公开的精神和范围的情况下,可以进行形式和细节上的多种改变。因此,应当理解,上述实施例在所有方面是说明性的,并且不限制本公开。例如,被描述为单个元素的每个元素可以以分布式的方式来实现,同样地,被描述为分布式元素的元素可以以组合的方式来实现。
应当理解,本公开的范围由所附权利要求书而不是实施例的以上描述限定,并且从权利要求及其等同物得出的所有修改和替代均落入本公开的范围内。

Claims (15)

1.一种二维图像处理方法,包括:
获得二维图像;
通过使用经训练的卷积神经网络CNN来处理所获得的二维图像,以从所述二维图像获得至少一个相机参数和至少一个面部模型参数;以及
基于所获得的至少一个相机参数和至少一个面部模型参数来生成三维面部模型。
2.根据权利要求1所述的二维图像处理方法,其中,通过使用经训练的CNN来处理所述二维图像包括:
调整所述二维图像的尺寸;
从尺寸经调整的二维图像中检测面部;
用边界框指示包括检测到的面部的面部区域;
从所述二维图像中切割出由所述边界框指示的所述面部区域的图像;
通过调整所述面部区域的切割图像的尺寸来生成第二图像;
在所述第二图像上标记所述面部的至少一个界标;以及
获得与所述至少一个界标最匹配的至少一个相机参数和至少一个面部模型参数。
3.根据权利要求1所述的二维图像处理方法,其中,通过使用非线性优化来获得所述至少一个相机参数,以及通过使用线性优化来获得所述至少一个面部模型参数。
4.根据权利要求1所述的二维图像处理方法,其中,所述CNN是经各种方式训练的。
5.根据权利要求1所述的二维图像处理方法,其中,通过将所述至少一个相机参数和所述至少一个面部模型参数应用于三维形态面部模型来生成所述三维面部模型。
6.根据权利要求1所述的二维图像处理方法,还包括:将所生成的三维面部模型覆盖在所述二维图像的面部区域上。
7.根据权利要求6所述的二维图像处理方法,其中,使用针孔相机模型来执行所述覆盖。
8.根据权利要求1所述的二维图像处理方法,还包括:通过使用经训练的CNN处理所获得的二维图像,以从所述二维图像获得至少一个情绪参数。
9.一种二维图像处理设备,包括:
存储器,存储一个或多个指令;以及
处理器,被配置为执行所述一个或多个指令,
其中,所述处理器被配置为:获得二维图像;通过使用经训练的卷积神经网络CNN处理所获得的二维图像,以从所述二维图像获得至少一个相机参数和至少一个面部模型参数;并基于所获得的至少一个相机参数和至少一个面部模型参数来生成三维面部模型。
10.根据权利要求9所述的二维图像处理设备,其中所述处理器还被配置为通过以下操作来使用经训练的CNN处理二维图像:调整二维图像的尺寸;从尺寸经调整的二维图像中检测面部;用边界框指示包括检测到的面部的面部区域;从二维图像中切割出由边界框指示的面部区域的图像;通过调整面部区域的切割图像的尺寸来生成第二图像;在第二图像上标记面部的至少一个界标;以及获得与所述至少一个界标最匹配的至少一个相机参数和至少一个面部模型参数。
11.根据权利要求9所述的二维图像处理设备,其中,通过使用非线性优化来获得所述至少一个相机参数,以及通过使用线性优化来获得所述至少一个面部模型参数。
12.根据权利要求9所述的二维图像处理设备,其中,所述CNN是经各种方式训练的。
13.根据权利要求9所述的二维图像处理设备,其中,通过将所述至少一个相机参数和所述至少一个面部模型参数应用于三维形态面部模型来生成所述三维面部模型。
14.根据权利要求9所述的二维图像处理设备,其中,将所生成的三维面部模型覆盖在所述二维图像的面部区域上。
15.一种计算机可读记录介质,其上记录有用于执行根据权利要求1至8中任一权利要求所述的方法的计算机程序。
CN201980006687.0A 2018-12-10 2019-12-06 二维图像处理方法及执行所述方法的设备 Active CN111557022B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
RU2018143561A RU2703327C1 (ru) 2018-12-10 2018-12-10 Способ обработки двухмерного изображения и реализующее его вычислительное устройство пользователя
RU2018143561 2018-12-10
KR10-2019-0154559 2019-11-27
KR1020190154559A KR20200071008A (ko) 2018-12-10 2019-11-27 2차원 이미지 처리 방법 및 이 방법을 실행하는 디바이스
PCT/KR2019/017240 WO2020122513A1 (ko) 2018-12-10 2019-12-06 2차원 이미지 처리 방법 및 이 방법을 실행하는 디바이스

Publications (2)

Publication Number Publication Date
CN111557022A true CN111557022A (zh) 2020-08-18
CN111557022B CN111557022B (zh) 2024-05-14

Family

ID=68280072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980006687.0A Active CN111557022B (zh) 2018-12-10 2019-12-06 二维图像处理方法及执行所述方法的设备

Country Status (4)

Country Link
EP (1) EP3872768A4 (zh)
KR (1) KR20200071008A (zh)
CN (1) CN111557022B (zh)
RU (1) RU2703327C1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112991147B (zh) 2019-12-18 2023-10-27 抖音视界有限公司 图像处理方法、装置、电子设备及计算机可读存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105631861A (zh) * 2015-12-21 2016-06-01 浙江大学 结合高度图从无标记单目图像中恢复三维人体姿态的方法
CN106600667A (zh) * 2016-12-12 2017-04-26 南京大学 一种基于卷积神经网络的视频驱动人脸动画方法
CN107680155A (zh) * 2017-10-27 2018-02-09 深圳市唯特视科技有限公司 一种基于三维变形模型的面部拟合方法
CN107680158A (zh) * 2017-11-01 2018-02-09 长沙学院 一种基于卷积神经网络模型的三维人脸重建方法
CN108257139A (zh) * 2018-02-26 2018-07-06 中国科学院大学 基于深度学习的rgb-d三维物体检测方法
CN108537191A (zh) * 2018-04-17 2018-09-14 广州云从信息科技有限公司 一种基于结构光摄像头的三维人脸识别方法
CN108764024A (zh) * 2018-04-09 2018-11-06 平安科技(深圳)有限公司 人脸识别模型的生成装置、方法及计算机可读存储介质
CN108960001A (zh) * 2017-05-17 2018-12-07 富士通株式会社 训练用于人脸识别的图像处理装置的方法和装置
CN108961410A (zh) * 2018-06-27 2018-12-07 中国科学院深圳先进技术研究院 一种基于图像的三维线框建模方法及装置
US10970520B1 (en) * 2017-03-24 2021-04-06 Jlk Inspection Apparatus and method for image analysis using virtual three-dimensional deep neural network

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657083B2 (en) * 2000-03-08 2010-02-02 Cyberextruder.Com, Inc. System, method, and apparatus for generating a three-dimensional representation from one or more two-dimensional images
US20040223631A1 (en) * 2003-05-07 2004-11-11 Roman Waupotitsch Face recognition based on obtaining two dimensional information from three-dimensional face shapes
JP6754619B2 (ja) * 2015-06-24 2020-09-16 三星電子株式会社Samsung Electronics Co.,Ltd. 顔認識方法及び装置
US10083347B2 (en) * 2016-07-29 2018-09-25 NTech lab LLC Face identification using artificial neural network
RU2671990C1 (ru) * 2017-11-14 2018-11-08 Евгений Борисович Югай Способ отображения трехмерного лица объекта и устройство для него

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105631861A (zh) * 2015-12-21 2016-06-01 浙江大学 结合高度图从无标记单目图像中恢复三维人体姿态的方法
CN106600667A (zh) * 2016-12-12 2017-04-26 南京大学 一种基于卷积神经网络的视频驱动人脸动画方法
US10970520B1 (en) * 2017-03-24 2021-04-06 Jlk Inspection Apparatus and method for image analysis using virtual three-dimensional deep neural network
CN108960001A (zh) * 2017-05-17 2018-12-07 富士通株式会社 训练用于人脸识别的图像处理装置的方法和装置
CN107680155A (zh) * 2017-10-27 2018-02-09 深圳市唯特视科技有限公司 一种基于三维变形模型的面部拟合方法
CN107680158A (zh) * 2017-11-01 2018-02-09 长沙学院 一种基于卷积神经网络模型的三维人脸重建方法
CN108257139A (zh) * 2018-02-26 2018-07-06 中国科学院大学 基于深度学习的rgb-d三维物体检测方法
CN108764024A (zh) * 2018-04-09 2018-11-06 平安科技(深圳)有限公司 人脸识别模型的生成装置、方法及计算机可读存储介质
CN108537191A (zh) * 2018-04-17 2018-09-14 广州云从信息科技有限公司 一种基于结构光摄像头的三维人脸识别方法
CN108961410A (zh) * 2018-06-27 2018-12-07 中国科学院深圳先进技术研究院 一种基于图像的三维线框建模方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YUDONG GUO等: "Self-supervised CNN for Unconstrained 3D Facial Performance Capture from an RGB-D Camera", pages 2 *

Also Published As

Publication number Publication date
RU2703327C1 (ru) 2019-10-16
EP3872768A4 (en) 2021-12-29
CN111557022B (zh) 2024-05-14
KR20200071008A (ko) 2020-06-18
EP3872768A1 (en) 2021-09-01

Similar Documents

Publication Publication Date Title
Kartynnik et al. Real-time facial surface geometry from monocular video on mobile GPUs
CN111328396B (zh) 用于图像中的对象的姿态估计和模型检索
Li et al. Monocular real-time volumetric performance capture
US10832039B2 (en) Facial expression detection method, device and system, facial expression driving method, device and system, and storage medium
US10860838B1 (en) Universal facial expression translation and character rendering system
CN109727303B (zh) 视频展示方法、系统、计算机设备、存储介质和终端
CN109859305B (zh) 基于多角度二维人脸的三维人脸建模、识别方法及装置
EP3992919B1 (en) Three-dimensional facial model generation method and apparatus, device, and medium
US11069151B2 (en) Methods and devices for replacing expression, and computer readable storage media
US10121273B2 (en) Real-time reconstruction of the human body and automated avatar synthesis
TWI573093B (zh) 建立虛擬彩妝資料的方法、具備建立虛擬彩妝資料之方法的電子裝置以及其非暫態電腦可讀取記錄媒體
CN107358648A (zh) 基于单张人脸图像的实时全自动高质量三维人脸重建方法
JP7327140B2 (ja) 画像処理方法及び情報処理装置
JP6207210B2 (ja) 情報処理装置およびその方法
US11748913B2 (en) Modeling objects from monocular camera outputs
CN111553284A (zh) 人脸图像处理方法、装置、计算机设备和存储介质
WO2023066120A1 (zh) 图像处理方法、装置、电子设备及存储介质
US10559116B2 (en) Interactive caricature generation from a digital image
US11893681B2 (en) Method for processing two-dimensional image and device for executing method
CN111557022B (zh) 二维图像处理方法及执行所述方法的设备
Purps et al. Reconstructing facial expressions of hmd users for avatars in vr
Amamra Smooth head tracking for virtual reality applications
US20230079478A1 (en) Face mesh deformation with detailed wrinkles
US11769263B2 (en) Three-dimensional scan registration with deformable models
Paulsen et al. Creating ultra dense point correspondence over the entire human head

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