CN112907569B - 头部图像区域的分割方法、装置、电子设备和存储介质 - Google Patents
头部图像区域的分割方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112907569B CN112907569B CN202110314025.9A CN202110314025A CN112907569B CN 112907569 B CN112907569 B CN 112907569B CN 202110314025 A CN202110314025 A CN 202110314025A CN 112907569 B CN112907569 B CN 112907569B
- Authority
- CN
- China
- Prior art keywords
- image
- head
- target image
- segmentation
- target
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 153
- 230000011218 segmentation Effects 0.000 title claims abstract description 141
- 238000003709 image segmentation Methods 0.000 claims abstract description 14
- 238000004422 calculation algorithm Methods 0.000 claims description 59
- 230000001815 facial effect Effects 0.000 claims description 43
- 238000000605 extraction Methods 0.000 claims description 21
- 238000010276 construction Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 abstract description 27
- 210000003128 head Anatomy 0.000 description 211
- 230000000875 corresponding effect Effects 0.000 description 44
- 230000006870 function Effects 0.000 description 32
- 239000000284 extract Substances 0.000 description 14
- 239000011159 matrix material Substances 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 9
- 238000012549 training Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 238000013519 translation Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000002146 bilateral effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 210000004709 eyebrow Anatomy 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 210000000216 zygoma Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0012—Biomedical image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
- G06T7/337—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
- G06V40/171—Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Quality & Reliability (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Medical Informatics (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本公开实施例公开了一种头部图像区域的分割方法、装置、电子设备和存储介质,一种点云配准方法、装置、电子设备和存储介质,以及一种人脸建模方法、装置、电子设备和存储介质。该头部图像区域的分割方法包括:从已获取的目标图像中,确定目标图像中的身体部分所在的图像区域;基于所确定的图像区域,计算目标图像中的身体部分的宽度值;基于目标图像中的身体部分的宽度值,确定目标图像中躯干对象与头部对象的分割位置;在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。本公开实施例可以基于目标图像中的身体部分的宽度值得到头部图像区域,由此提高了头部图像区域的分割准确度、简化了分割过程。
Description
技术领域
本公开涉及图像处理技术,尤其是一种头部图像区域的分割方法、装置、电子设备和存储介质,一种点云配准方法、装置、电子设备和存储介质,以及一种人脸建模方法、装置、电子设备和存储介质。
背景技术
图像处理技术是利用计算机对图像信息进行处理的技术。通常用以进行图像处理的图像包括彩色图像、深度图像等等。
近年来,随着网络技术的高速发展和大力推广,通过网络进行交流已经成为了人们日常生活中的一部分,三维建模技术可以为网络通信提供更加丰富的更加直接的交互方式,这种可视化的方式会让使用者有面对面交流的快感。例如,实时的三维人脸建模可以应用在视频通话中,让交流双方都有更真实的更直观的感受。
实践中,三维人脸建模涉及头部图像区域的分割,三维点云数据配准等步骤。然而,现有技术中,头部图像区域的分割准确度较低、过程较为复杂,由此使得三维点云数据配准的精度较低、速度较慢,导致最终构建的三维人脸模型准确性较低、构建速度慢的问题。
发明内容
本公开实施例提供一种头部图像区域的分割方法、装置、电子设备和存储介质,以提高头部图像区域的分割准确度、简化分割过程。
此外,本公开实施例提还供一种点云配准方法、装置、电子设备和存储介质,以提高三维点云数据配准的精度和速度。
另外,本公开实施例提还供一种人脸建模方法、装置、电子设备和存储介质,以提高三维人脸模型的准确性、构建速度。
根据本公开实施例的第一个方面,提供的一种头部图像区域的分割方法,包括:
从已获取的目标图像中,确定所述目标图像中的身体部分所在的图像区域;
基于所确定的图像区域,计算所述目标图像中的身体部分的宽度值;
基于所述目标图像中的身体部分的宽度值,确定所述目标图像中躯干对象与头部对象的分割位置;
在所述分割位置对所述目标图像中的前景图像区域进行图像分割,得到头部图像区域。
可选地,在本公开任一实施例的方法中,所述从已获取的目标图像中,确定所述目标图像中的身体部分所在的图像区域,包括:
从已获取的目标图像中确定前景图像区域;
从所述前景图像区域中确定所述目标图像中的身体部分所在的图像区域;以及
所述基于所述目标图像中的身体部分的宽度值,确定所述目标图像中躯干对象与头部对象的分割位置,包括:
基于所述目标图像中的身体部分的宽度值,确定所述前景图像区域中颈部对象的位置;
基于所述颈部对象的位置,确定所述目标图像中躯干对象与头部对象的分割位置。
可选地,在本公开任一实施例的方法中,所述从已获取的目标图像中确定前景图像区域,包括:
对所述目标图像进行特征点检测,确定鼻尖特征点的位置;
将所述鼻尖特征点作为种子点,采用扫描线种子填充算法,确定所述种子点的最大连通域,将所述最大连通域作为前景图像区域。
可选地,在本公开任一实施例的方法中,所述目标图像包括深度图像;以及
所述对所述目标图像进行特征点检测,确定鼻尖特征点的位置,包括:
对所述深度图像进行特征点检测,确定至少两个面部特征点;
基于所述至少两个面部特征点中的各个面部特征点的深度值,确定鼻尖特征点的位置。
可选地,在本公开任一实施例的方法中,所述至少两个面部特征点包括至少一对面部对称特征点;以及
所述基于所述颈部对象的位置,确定所述目标图像中躯干对象与头部对象的分割位置,包括:
基于所述至少一对面部对称特征点中的每对面部对称特征点的连线,确定所述目标图像中躯干对象与头部对象的分割位置。
可选地,在本公开任一实施例的方法中,所述目标图像为经过摆正处理的图像;以及
所述基于所述颈部对象的位置,确定所述目标图像中躯干对象与头部对象的分割位置,包括:
基于所述颈部对象的位置,确定所述目标图像中躯干对象与头部对象的水平分割线位置。
可选地,在本公开任一实施例的方法中,身体部分经由对所述目标图像中的前景图像区域进行水平分割得到;以及
所述从已获取的目标图像中,确定所述目标图像中的身体部分所在的图像区域,包括:
从已获取的目标图像中,确定所述目标图像中的各个身体部分所在的图像区域;以及
所述基于所述目标图像中的身体部分的宽度值,确定所述目标图像中躯干对象与头部对象的分割位置,包括:
从所述目标图像的各个身体部分中,确定目标身体部分,其中,所述目标身体部分的图像区域的宽度值小于其相邻两身体部分的图像区域的宽度值;
将所述目标身体部分所在的位置,确定为所述目标图像中躯干对象与头部对象的分割位置。
根据本公开实施例的第二个方面,提供的一种点云配准方法,包括:
从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域按照如上述第一方面任一实施例中的头部图像区域的分割方法进行提取;
对所述各个头部图像区域对应的点云数据进行配准。
可选地,在本公开任一实施例的方法中,所述对所述各个头部图像区域对应的点云数据进行配准,包括:
以K维树的数据结构表示所提取的每个头部图像区域对应的点云数据,采用迭代重复加权最小平方算法和最近迭代算法对所述点云数据进行配准。
可选地,在本公开任一实施例的方法中,所述最近迭代算法的初值基于加速稳健特征算法确定。
根据本公开实施例的第三个方面,提供的一种人脸建模方法,包括:
从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域按照如上述第一方面所述的头部图像区域的分割方法进行提取;基于所述各个头部图像区域,构建三维人脸模型;或者
对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准,其中,点云数据按照如上述第二方面所述的点云配准方法进行配准;基于配准后的点云数据,构建三维人脸模型。
可选地,在本公开任一实施例的方法中,
在所述方法包括基于所述各个头部图像区域,构建三维人脸模型的情况下,所述基于所述各个头部图像区域,构建三维人脸模型,包括:基于所提取的头部图像区域对应的点云数据,通过泊松方程重建泊松曲面;基于所述泊松曲面,构建三维人脸模型;
在所述方法包括基于配准后的点云数据,构建三维人脸模型的情况下,所述基于配准后的点云数据,构建三维人脸模型,包括:基于配准后的点云数据,通过泊松方程重建泊松曲面;基于所述泊松曲面,构建三维人脸模型。
根据本公开实施例的第四个方面,提供的一种头部图像区域的分割装置,包括:
第一确定单元,被配置成从已获取的目标图像中,确定所述目标图像中的身体部分所在的图像区域;
计算单元,被配置成基于所确定的图像区域,计算所述目标图像中的身体部分的宽度值;
第二确定单元,被配置成基于所述目标图像中的身体部分的宽度值,确定所述目标图像中躯干对象与头部对象的分割位置;
分割单元,被配置成在所述分割位置对所述目标图像中的前景图像区域进行图像分割,得到头部图像区域。
可选地,在本公开任一实施例的装置中,所述第一确定单元包括:
第一确定子单元,被配置成从已获取的目标图像中确定所述目标图像中的身体部分所在的图像区域;以及
所述第二确定单元包括:
第二确定子单元,被配置成基于所述目标图像中的身体部分的宽度值,确定所述前景图像区域中颈部对象的位置;
第三确定子单元,被配置成基于所述颈部对象的位置,确定所述目标图像中躯干对象与头部对象的分割位置。
可选地,在本公开任一实施例的装置中,所述第一确定子单元包括:
第一确定模块,被配置成对所述目标图像进行特征点检测,确定鼻尖特征点的位置;
第二确定模块,被配置成将所述鼻尖特征点作为种子点,采用扫描线种子填充算法,确定所述种子点的最大连通域,将所述最大连通域作为前景图像区域。
可选地,在本公开任一实施例的装置中,所述目标图像包括深度图像;以及
所述第一确定模块包括:
第一确定子模块,被配置成对所述深度图像进行特征点检测,确定至少两个面部特征点;
第二确定子模块,被配置成基于所述至少两个面部特征点中的各个面部特征点的深度值,确定鼻尖特征点的位置。
可选地,在本公开任一实施例的装置中,所述至少两个面部特征点包括至少一对面部对称特征点;以及
所述第二确定单元包括:
第四确定子单元,被配置成基于所述至少一对面部对称特征点中的每对面部对称特征点的连线,确定所述目标图像中躯干对象与头部对象的分割位置。
可选地,在本公开任一实施例的装置中,所述目标图像为经过摆正处理的图像;以及
所述第二确定单元包括:
第五确定子单元,被配置成基于所述颈部对象的位置,确定所述目标图像中躯干对象与头部对象的水平分割线位置。
可选地,在本公开任一实施例的装置中,身体部分经由对所述目标图像中的前景图像区域进行水平分割得到;以及
所述第一确定单元包括:
第六确定子单元,被配置成从已获取的目标图像中,确定所述目标图像中的各个身体部分所在的图像区域;以及
所述第二确定单元包括:
第七确定子单元,被配置成从所述目标图像的各个身体部分中,确定目标身体部分,其中,所述目标身体部分的图像区域的宽度值小于其相邻两身体部分的图像区域的宽度值;
第八确定子单元,被配置成将所述目标身体部分所在的位置,确定为所述目标图像中躯干对象与头部对象的分割位置。
根据本公开实施例的第五个方面,提供的一种点云配准装置,包括:
第一提取单元,被配置成从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由上述第四方面任一实施例中的头部图像区域的分割装置进行提取;
配准单元,被配置成对所述各个头部图像区域对应的点云数据进行配准。
可选地,在本公开任一实施例的装置中,所述配准单元包括:
配准子单元,被配置成以K维树的数据结构表示所提取的每个头部图像区域对应的点云数据,采用迭代重复加权最小平方算法和最近迭代算法对所述点云数据进行配准。
可选地,在本公开任一实施例的装置中,所述最近迭代算法的初值基于加速稳健特征算法确定。
根据本公开实施例的第六个方面,提供的一种人脸建模装置,包括:
第二提取单元,被配置成从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由上述第四方面任一实施例中的头部图像区域的分割装置进行提取;第一构建单元,被配置成基于所述各个头部图像区域,构建三维人脸模型;或者
第三提取单元,被配置成对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准,其中,点云数据由上述第五方面任一实施例中的点云配准装置进行配准;第二构建单元,被配置成基于配准后的点云数据,构建三维人脸模型。
可选地,在本公开任一实施例的装置中,
在所述装置包括第一构建单元的情况下,所述第一构建单元包括:第一重建子单元,被配置成基于所提取的头部图像区域对应的点云数据,通过泊松方程重建泊松曲面;第一构建子单元,被配置成基于所述泊松曲面,构建三维人脸模型;
在所述装置包括第二构建单元的情况下,所述第二构建单元包括:第二重建子单元,被配置成基于配准后的点云数据,通过泊松方程重建泊松曲面;第二构建子单元,被配置成基于所述泊松曲面,构建三维人脸模型。
根据本公开实施例的第七个方面,提供的一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现本公开上述任一实施例所述的方法。
根据本公开实施例的第八个方面,提供的一种计算机可读介质,该计算机程序被处理器执行时,实现如上述第一方面的头部图像区域的分割方法中任一实施例的方法。
基于本公开上述实施例提供的头部图像区域的分割方法、装置、电子设备和存储介质,可以从已获取的目标图像中确定颈部对象的位置,然后,基于颈部对象的位置,确定目标图像中躯干对象与头部对象的分割位置,最后,在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。这样可以基于目标图像中的身体部分的宽度值确定目标图像中躯干对象与头部对象的分割位置,进而得到头部图像区域,由此提高了头部图像区域的分割准确度、简化了分割过程。
基于本公开上述实施例提供的点云配准方法、装置、电子设备和存储介质,可以从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域按照如上述第一方面任一实施例的头部图像区域的分割方法进行提取,然后,对各个头部图像区域对应的点云数据进行配准。这样可以通过提高头部图像区域的分割准确度、简化分割过程,来提高三维点云数据配准的精度和速度。
基于本公开上述实施例提供的人脸建模方法、装置、电子设备和存储介质,可以从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域按照如上述第一方面任一实施例所述的头部图像区域的分割方法进行提取,然后,基于各个头部图像区域,构建三维人脸模型。或者,可以对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准,其中,点云数据按照如上述第二方面中的任一项点云配准方法进行配准,之后,基于配准后的点云数据,构建三维人脸模型。这样,可以通过提高头部图像区域的分割准确度、简化分割过程,来提高三维人脸模型的准确性、构建速度。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同描述一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1为本公开头部图像区域的分割方法的第一个实施例的流程图。
图2为本公开头部图像区域的分割方法的第二个实施例的流程图。
图3为本公开点云配准方法的一个实施例的流程图。
图4为本公开点云配准方法的一个实施例中的KDTree划分结果示意图。
图5A或图5B为本公开人脸建模方法的一个实施例的流程图。
图6为本公开头部图像区域的分割装置的一个实施例的结构示意图。
图7为本公开点云配准装置的一个实施例的结构示意图。
图8A或图8B为本公开人脸建模装置的一个实施例的结构示意图。
图9是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本公开实施例可以应用于终端设备、计算机系统和服务器中的至少一种电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统和服务器中的至少一种电子设备一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
终端设备、计算机系统和服务器中的至少一种电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
请参考图1,示出了根据本公开的头部图像区域的分割方法的第一个实施例的流程100。该头部图像区域的分割方法,包括:
101,从已获取的目标图像中,确定目标图像中的身体部分所在的图像区域。
在本实施例中,头部图像区域的分割方法的执行主体(例如服务器、终端设备等)或者与该执行主体通信连接的电子设备可以通过有线连接方式或者无线连接方式从其他电子设备或者本地,获取目标图像。然后,上述执行主体可以从已获取的目标图像中,确定该目标图像中的身体部分所在的图像区域。
其中,目标图像可以是包含部分或全部人体的图像。上述身体部分可以包括但不限于以下至少一项:头部对象、颈部对象、肩部对象等等。例如,如果目标图像中包括头部对象、颈部对象和肩部对象。那么,上述执行主体可以分别确定出头部对象所在的图像区域、颈部对象所在的图像区域和肩部对象所在的图像区域。作为示例,这里,可以基于关键点检测算法计算目标图像中各个身体部分所在的图像区域。
102,基于所确定的图像区域,计算目标图像中的身体部分的宽度值。
在本实施例中,上述执行主体可以基于所确定的图像区域,计算目标图像中的部分或全部身体部分的宽度值。
作为示例,对于每个身体部分所在的图像区域,可以将该图像区域的最小外接矩形的宽度值作为该身体部分的宽度值。可选的,也可以将该图像区域的任一行像素的像素数量或者各行像素的像素数量的平均值作为该身体部分的宽度值。
103,基于目标图像中的身体部分的宽度值,确定目标图像中躯干对象与头部对象的分割位置。
在本实施例中,上述执行主体可以基于目标图像中的身体部分的宽度值,确定目标图像中躯干对象与头部对象的分割位置。
在这里,上述分割位置可以为折线、曲线也可以是直线。
作为第一种示例,上述执行主体可以根据各个身体部分的宽度值之间的比例,从上述各个身体部分中确定出头部对象所在的位置,然后,将头部对象的下端作为目标图像中躯干对象与头部对象的分割位置。
作为第二种示例,上述执行主体可以从上述各个身体部分中确定出颈部对象所在的位置,然后,将颈部对象的上端作为目标图像中躯干对象与头部对象的分割位置。
这里,在目标图像经由上述执行主体获取的情况下,上述执行主体可以直接从目标图像中确定颈部对象的位置;在目标图像由与该执行主体通信连接的电子设备获取的情况下,获取目标图像的电子设备可以首先将目标图像发送至上述执行主体,之后,上述执行主体再从目标图像中确定颈部对象的位置。
其中,上述目标图像可以是包括人脸对象的图像。例如,目标图像可以是用户使用手机等个人终端设备的摄像头拍摄的包括人脸对象的图像,也可以是采用Kinect的深度摄像头和彩色摄像头获取到的包括人脸对象的图像。此外,上述目标图像中可以包括颈部对象。
在这里,上述执行主体可以采用多种方式从已获取的目标图像中确定颈部对象的位置。
作为示例,上述执行主体可以将上述目标图像输入至预先确定的颈部定位模型,得到目标图像中颈部对象的位置。其中,上述颈部定位模型可以用于确定图像中颈部对象的位置。该颈部定位模型可以是采用机器学习算法,基于训练样本集训练得到的卷积神经网络等模型。上述训练样本集中的训练样本可以包括包含颈部对象的图像,以及图像中颈部对象的位置信息。
在本实施例的一些可选的实现方式中,上述执行主体还可以采用如下方式确定目标图像中颈部对象的位置:
首先,计算目标图像中各个身体部分的宽度值。
例如,如果目标图像中包括头部对象、颈部对象和肩部对象。那么,上述执行主体可以分别计算头部对象的宽度值、颈部对象的宽度值和肩部对象的宽度值。这里,可以基于关键点检测算法计算目标图像中各个身体部分的宽度值。
然后,将宽度值小于其相邻两身体部分的身体部分的图像区域所在的位置,确定为颈部对象的位置。
可以理解,上述可选的实现方式中,将宽度值小于其相邻两身体部分的身体部分的图像区域所在的位置,确定为颈部对象的位置,提高了颈部对象位置确定的速度和准确度。
可选的,上述执行主体还可以根据各个身体部分的宽度值之间的比例,从上述各个身体部分中确定出颈部对象所在的位置。
作为第三种示例,上述执行主体可以首先确定出颈部对象(属于身体部分的一种)的宽度值,然后,上述执行主体可以将颈部对象与头部对象相邻侧的曲线,或者,将颈部对象与躯干对象相邻侧的曲线,作为分割位置。
在上述可选的实现方式的一些应用场景下,每个身体部分可以经由对目标图像中的前景图像区域进行水平分割得到。在此基础上,上述执行主体可以采用如下方式执行上述101:从已获取的目标图像中,确定目标图像中的各个身体部分所在的图像区域。
进一步地,上述执行主体可以采用如下方式执行上述103:
首先,从目标图像的各个身体部分中,确定目标身体部分。其中,目标身体部分的图像区域的宽度值小于其相邻两身体部分的图像区域的宽度值。
这里,可以将目标身体部分作为颈部对象。
然后,将目标身体部分所在的位置,确定为目标图像中躯干对象与头部对象的分割位置。
可以理解,通常宽度值小于其相邻两身体部分的图像区域的宽度值的身体部分即为颈部对象,由此,可以颈部对象所在的位置,确定为目标图像中躯干对象与头部对象的分割位置,进而可以提高确定颈部对象的位置的速度。
104,在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。
在本实施例中,上述执行主体可以在上述分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。其中,上述前景图像区域往往为人体图像区域。例如,前景图像区域中可以包含头部对象、颈部对象、肩部对象等。
这里,上述执行主体可以采用多种方式提取目标图像中的前景图像区域。
作为示例,上述执行主体可以将目标图像输入至预先训练的前景图像提取模型,得到该目标图像中的前景图像区域。其中,上述前景图像提取模型可以用于提取图像中的前景图像区域。作为示例,该前景图像提取模型可以是采用机器学习算法基于训练样本集训练得到的卷积神经网络模型。
在本实施例的一些可选的实现方式中,上述执行主体还可以采用如下方式提取目标图像中的前景图像区域:
首先,对目标图像进行特征点检测,确定鼻尖特征点的位置。其中,鼻尖特征点可以是目标图像中的一个像素点。
然后,将鼻尖特征点作为种子点,采用扫描线种子填充算法,确定种子点的最大连通域,将最大连通域作为前景图像区域。
可以理解,上述可选的实现方式通过描线种子填充算法确定目标图像中的前景图像区域,由此可以提高前景图像区域的提取速度和准确度。
本公开的上述实施例提供的头部图像区域的分割方法,可以从已获取的目标图像中确定颈部对象的位置,然后,基于颈部对象的位置,确定目标图像中躯干对象与头部对象的分割位置,最后,在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。这样可以基于目标图像中的身体部分的宽度值确定目标图像中躯干对象与头部对象的分割位置,进而得到头部图像区域,由此提高了头部图像区域的分割准确度、简化了分割过程。
进一步参考图2,图2是本公开的头部图像区域的分割方法的第二个实施例的流程图。该头部图像区域的分割方法的流程200,包括:
201,从已获取的目标图像中确定前景图像区域。
在本实施例中,头部图像区域的分割方法的执行主体(例如服务器、终端设备等)或者与该执行主体通信连接的电子设备,可以通过有线连接方式或者无线连接方式从其他电子设备或者本地,获取目标图像。然后,上述电子设备可以从已获取的目标图像中确定前景图像区域。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下步骤执行201:
第一步,对目标图像进行特征点检测,确定鼻尖特征点的位置。
第二步,将鼻尖特征点作为种子点,采用扫描线种子填充算法,确定种子点的最大连通域,将最大连通域作为前景图像区域。
可以理解,上述可选的实现方式通过描线种子填充算法确定目标图像中的前景图像区域,由此可以提高前景图像的提取速度和准确度。
在上述可选的实现方式的一些应用场景下,目标图像包括深度图像。由此,上述执行主体可以采用如下方式执行上述第一步:
首先,对深度图像进行特征点检测,确定至少两个面部特征点。其中,面部特征点可以是预先确定的。例如,面部特征点可以包括:眼角、眉梢、颧骨、嘴角等。
然后,基于至少两个面部特征点中的各个面部特征点的深度值,确定鼻尖特征点的位置。
作为示例,上述执行主体可以将各个面部特征点中,深度值最小的面部特征点所在的位置,确定鼻尖特征点的位置。
作为又一示例,如果上述各个面部特征点中包含至少一对面部对称特征点,那么,上述执行主体可以首先确定上述面部对称特征点对的深度值的平均值,然后将深度值为该平均值的面部特征点所在的位置,确定鼻尖特征点的位置。作为示例,面部对称特征点可以为深度图像中的左眼和右眼。
可以理解,上述应用场景基于深度图中的各个面部特征点的深度值,确定鼻尖特征点的位置,由此,提高了确定鼻尖特征点的位置的速度和准确度。
202,从前景图像区域中确定目标图像中的身体部分所在的图像区域。
在本实施例中,上述执行主体可以从前景图像区域中确定出目标图像中的身体部分所在的图像区域。
作为示例,上述执行主体可以将前景图像区域输入预先训练的身体部分定位模型,得到前景图像区域中身体部分的位置。其中,上述身体部分定位模型可以用于确定所输入的图像区域中身体部分的位置。该身体部分定位模型可以是采用机器学习算法,基于训练样本集训练得到的卷积神经网络等模型。上述训练样本集中的训练样本可以包括包含身体部分的图像区域,以及图像区域中身体部分的位置信息。
203,基于所确定的图像区域,计算目标图像中的身体部分的宽度值。
在本实施例中,上述执行主体可以基于所确定的图像区域,计算目标图像中的身体部分的宽度值。
在本实施例中,上述203可以与图1对应的实施例中的102基本一致,这里不再赘述。
204,基于目标图像中的身体部分的宽度值,确定前景图像区域中颈部对象的位置。
在本实施例中,上述执行主体可以基于目标图像中的身体部分的宽度值,确定前景图像区域中颈部对象的位置。
作为示例,上述执行主体可以基于目标图像中的各个身体部分的宽度值的比值,确定出前景图像区域中颈部对象的位置。
在本实施例的一些可选的实现方式中,上述执行主体还可以采用如下方式确定目标图像中颈部对象的位置:
首先,计算目标图像的前景图像区域中各个身体部分的宽度值。其中,各个身体部分经由对前景图像区域进行水平分割得到。
例如,如果目标图像中包括头部对象、颈部对象和肩部对象。那么,上述执行主体可以分别计算前景图像区域中,头部对象的宽度值、颈部对象的宽度值和肩部对象的宽度值。这里,可以基于关键点检测算法计算前景图像区域中各个身体部分的宽度值。
然后,将前景图像区域中,宽度值小于其相邻两身体部分的身体部分的图像区域所在的位置,确定为颈部对象的位置。
可以理解,上述可选的实现方式中,将宽度值小于其相邻两身体部分的身体部分的图像区域所在的位置,确定为颈部对象的位置,提高了颈部对象位置确定的准确度。
205,基于颈部对象的位置,确定目标图像中躯干对象与头部对象的分割位置。
在本实施例中,上述执行主体可以基于颈部对象的位置,确定目标图像中躯干对象与头部对象的分割位置。
在上述应用场景的一些情况中,至少两个面部特征点包括至少一对面部对称特征点。由此,上述执行主体可以采用如下方式确定目标图像中躯干对象与头部对象的分割位置:
基于至少一对面部对称特征点中的每对面部对称特征点的连线,确定目标图像中躯干对象与头部对象的分割位置。作为示例,面部对称特征点可以为深度图像中的左眼和右眼。
作为示例,上述执行主体可以将面部对称特征点对的连线相平行的直线,确定为目标图像中躯干对象与头部对象的分割位置。
可以理解,上述情况中,基于面部对称特征点对的连线,确定目标图像中躯干对象与头部对象的分割位置,可以更为准确地确定出躯干对象与头部对象的分割位置,进而通过后续步骤可以得到更准确的头部图像区域。
在本实施例的一些可选的实现方式中,目标图像为经过摆正处理的图像。由此,上述执行主体可以通过如下方式执行上述205:
基于颈部对象的位置,确定目标图像中躯干对象与头部对象的水平分割线位置。
作为示例,上述执行主体可以将颈部对象所在区域内任一水平线段(例如位于该区域内中间位置的水平线段)所在的直线,作为分割位置,也即目标图像中躯干对象与头部对象的水平分割线位置。
可以理解,由于经过摆正处理,因而上述可选的实现方式中目标图像中的躯干对象与头部对象的分割位置可以是水平分割线。由此,可以提高确定目标图像中躯干对象与头部对象的分割位置的速度。
206,在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。
在本实施例中,步骤206与图1对应实施例中的步骤104基本一致,这里不再赘述。
作为一种示例,上述执行主体可以通过如下方式得到头部图像区域:
第一步骤,获取目标图像。
这里,可以采用Kinect的深度摄像头和彩色摄像头分别获取深度图像和彩色图像。将获得的深度图像作为目标图像。为了消除由于两个摄像头位置的不同而产生的图像中心不一致问题,可以首先将深度图像经过一定的坐标变换,使其与彩色图像对齐,然后计算空间点的横坐标和纵坐标,从而将相应的三维点云数据显示出来。
此外,在对齐之前,可以先对Kinect设备中的彩色摄像头和深度摄像头进行标定。作为示例,可以对多幅同一棋盘图像的不同角度进行标定,从而确定Kinect设备获得的深度图像和彩色图像间的坐标变换关系。进而可以将深度图像转换成三维点云数据,导出格式为PCD的文件。
第二步骤,将目标图像(即深度图像)分成前景图像区域和背景图像区域。其中,前景图像区域可以包括整个用户对象,背景图像区域可以包含除用户对象之外的其他部分,例如,环境等部分。
这里,可以将深度图像中的最大连通区域作为前景图像区域。也即,可以认为距离Kinect设备较近的一部分区域,即深度值较小的区域,为前景图像区域。
具体而言,可以首先通过Opencv中的特征点检测,确定面部特征点。将所确定的各个面部特征点中,深度值最小的面部特征点作为鼻尖特征点。将鼻尖特征点作为种子点,采用扫描线种子填充算法找到最大连通区域,将其作为前景图像区域。
可以理解,采用扫描线种子填充算法确定最大连通域,一定程度上避免了注入填充算法和边界填充算法需要通过多次迭代带来的较高的时间复杂度和空间复杂度的问题。扫描线种子填充算法不再采用递归的方式处理4联通和8联通的相邻点,而是采用沿水平的扫描线进行像素段填充,一段一段地来处理4联通和8联通的相邻点。该算法只需将每个水平的像素段起始点的位置压入一个栈,而不需要像递归算法一样将当前位置周围所有尚未处理的相邻点全都压入堆栈,这样可以有效节省堆栈空间。
第三步骤,从前景图像区域中确定颈部对象的位置,并基于颈部对象的位置,确定目标图像中躯干对象与头部对象的分割位置,在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。
为了确定头部对象在前景图像区域内的位置,可以将前景图像区域分成头部对象和躯干对象的水平分割线位置。为了完成这个任务,可以求解前景图像区域中的各个身体部分的宽度值。通过二分查找的方法找到中间的颈部对象的位置,颈部对象的宽度值是比上面(即头部对象)和下面(即躯干对象)宽度值都小的一部分区域,将该宽度最小的位置作为目标图像中躯干对象与头部对象的分割位置。通过此方法可以实现对头部图像区域的实时分割,而且二分查找时间复杂度低,适用于后续步骤进行实时建模。
需要说明的是,除上面所记载的内容外,本申请实施例还可以包括与图1对应的实施例相同或类似的特征、效果,在此不再赘述。
从图2中可以看出,本实施例中的头部图像区域的分割方法的流程200通过从目标图像的前景图像区域中确定颈部对象的位置,从而提高了确定颈部对象的位置的准确性,从而可以进一步提高头部图像区域的分割准确度。
请继续参考图3,图3是本公开的点云配准方法的一个实施例的流程图。该点云配准方法的流程300,包括:
301,从已获取的各个目标图像中分别提取头部图像区域。
在本实施例中,点云配准方法的执行主体(例如服务器或终端设备)或者与该执行主体通信连接的电子设备,可以通过有线连接方式或者无线连接方式从其他电子设备或者本地,获取目标图像。然后,上述执行主体可以从已获取的目标图像中分别提取头部图像区域。
这里,在目标图像经由上述执行主体获取的情况下,上述执行主体可以直接从各个目标图像中分别提取头部图像区域;在目标图像由与该执行主体通信连接的电子设备获取的情况下,获取目标图像的电子设备可以首先将目标图像发送至上述执行主体,之后,上述执行主体再从各个目标图像中分别提取头部图像区域。
其中,上述目标图像可以是包括人脸对象的图像。例如,目标图像可以是用户使用手机等个人终端设备的摄像头拍摄的包括人脸对象的图像,也可以是采用Kinect的深度摄像头和彩色摄像头获取到的包括人脸对象的图像。此外,上述目标图像中可以包括头部图像区域。
在这里,目标图像包括深度图像,头部图像区域按照如上述第一方面任一实施例所述的头部图像区域的分割方法进行提取。
需要说明的是,本实施例中头部图像区域可以按照如上述第一方面任一实施例所述的头部图像区域的分割方法进行提取。具体步骤可以参考图1或图2中的相关描述,在此不再赘述。
302,对各个头部图像区域对应的点云数据进行配准。
在本实施例中,上述执行主体可以对各个头部图像区域对应的点云数据进行配准。
在本实施例的一些可选的实现方式中,最近迭代算法的初值基于加速稳健特征(SURF,Speeded Up Robust Features)算法确定。
示例性的,可以将SURF特征点的粗配准算法应用于图像点云配准部分。SURF算法是一种粗略的配准方法。通常,基于Kinect设备采集深度图像和彩色图像的过程中,Kinect提取的深度图像中通常含有空洞并且只能提供一个角度的人脸图像,因此要获得完整的人脸图像需要进行人脸图像的配准。这里,可以采用一种改进的ICP算法(例如KDtree、IRLS和ICP相结合的算法)进行人脸点云数据配准。为了更好地完成人脸配准这一步骤,在改进的ICP算法配准之前,可以采用基于SURF特征点的粗配准,为改进的ICP算法提供一个初值,并且可以使两片点云初始位置更近,可以提高配准速度和质量。
此外,还需要说明的是,在得到头部图像区域后、进行配准前,可以对点云数据进行预处理。例如,可以通过深度图像双边滤波处理和图像对齐处理。将分割后的人脸图像进行双边滤波处理后传给对齐函数,对齐函数再通过得到处理的深度图像与彩色图像进行对齐操作。从而得到去除噪声的深度图像,以及得到深度图像与彩色图像有完整对应关系的两幅图像。
可以理解,上述可选的实现方式可以首先采用加速稳健特征来确定最近迭代算法的初值,进行点云数据的粗配准,由此可以提高配准速度和质量。
在本实施例的一些可选的实现方式中,上述执行主体可以采用如下方式对点云数据进行配准:
以K维树(K-dimensional tree,KDTree)的数据结构表示所提取的每个头部图像区域对应的点云数据,采用迭代重复加权最小平方(IRLS,iterative reweighted leastsquares)算法和最近迭代(ICP,(Iterative Closest Point)算法对点云数据进行配准。
这里,可以将KDTree应用在IRLS-ICP算法的最近点匹配部分,KDTree可以通过树形结构加快搜索速度,提高实时性。其中,KDTree是二叉索引树在维度上的一种推广,是一种高维索引树形的数据结构,常用于在大规模的高维数据空间进行最近邻查找(NearestNeighbor)和近似最近邻查找(Approximate Nearest Neighbor)。
具体而言,可以根据KDTree的算法原理,k代表领域点集中的点数,当k为l时,搜寻点与邻域点进而建立一一对应关系。此时,搜寻点与邻域点集中距离最小的点便是想要搜索的邻域点。
示例性的,上述KDTree的构建算法包括以下步骤:
第一步骤,对于一个n维数据集,首先寻找方差最大的维度,这里设这个维度是d,计算维度d中所有数据项的中位数m,根据中位数m来一分为二的划分数据集,然后,将两个数据子集分别记为Dl,Dr。建立树节点,存储这次划分的结果。
第二步骤,对Dl,Dr重复进行上述划分,将新生成的节点表示为上一次划分结果的左右孩子结点。
第三步骤,重复以上两个步骤,直到不能再进行划分为止(不能划分是指当前节点所包含的数据项数量小于预先设定的阈值),将对应的数据到最后的叶子节点中。
由此,可以构建完成KDTree。示例性的,构建完成的KDTree可以如图4所示。
在构建完一棵KDTree之后,可以利用KDTree进行近期邻点查找。具体可以包括以下步骤:
第一步,将查询数据Q从根结点开始,依照Q与各个结点的比较结果向下访问KDTree,直至达到叶子结点。Q与各结点的比较是将Q映射到结点中在k维度上的值与上文中的中位数m进行比较,若该值小于m,则访问左子树;若该值大于m,则访问右子树。访问到叶子结点时,则计算出Q与叶子结点数据之间的距离。标记出最小距离对应的数据点。将近期邻点记为Pcur,最小距离记为Dcur。
第二步,进行回溯操作,找到距离Q更近的近期邻点。
推测出未访问过的分支中是否仍然有离Q更近的点。它们之间的距离小于Dcur。
假设在其父结点未被访问过的分支中找到与Q之间的距离小于Dcur的结点,则认为该分支中存在距离Q更近的数据,于是进入该结点,进行第一步中的查找过程,如果找到更近的数据点,更新相应的Pcur、Dcur。
假设在其父结点未被访问过的分支中找到与Q之间的距离都是大于Dcur的结点,则说明该分支中不存在与Q更近的结点。回溯的推断过程自下而上的,直到回溯到根结点依旧不存在与Q更近的分支停止。
这里,基于KDTree和IRLS的改进ICP精配准算法处理点云数据,可以包括如下步骤:
在点云配准部分,主要是对图像点云进行更精确的配准。由于从Kinect采集深度图像数据基于一帧采集的数据,并且采集的深度图像存在有空的、数据丢失的问题,因此需要对深度图进行多帧提取配准融合。这里采用迭代重复加权最小平方来改进ICP算法,它可以最大限度的找到正确的对应点对,排除外点。这一算法是不断迭代重复最小二乘实现的。同时为了提高配准的速率,可以采用KDTree对最近点的寻找过程进行加速,以提高配置速度,提高后续建模的实时性。并且,简单的SURF配准并不能完成对点云数据的精确配准,误差非常大。因此,SURF算法一般都是作为粗配准的方式存在,可见,对点云图像的精配准是必不可少的。
这里,主要考虑三维点云R3的鲁棒配准。目标是找到一个刚体变换,它包括一个旋转矩阵R∈{R3×3|RTR=I,det(R)=+1}和一个拟合一组N个数据点的平移向量,到一系列X点模型,即所要解决的配准问题。使用稳健的判据函数对刚体变换进行稳健的M估计,其中ρ:R→[0,∞),通过求解/>可以得到。其中,/>d的定义为
鲁棒判据函数ρ的一个基本特性是减少了对估计有严重误差的数据的影响。这里对一组标准函数Q进行了形式化定义,Q具有收敛性。ρ的导数用ψ表示,即ψ(r)=ρ'(r),这是鲁棒统计中的标准符号。当且仅当满足以下所有条件时,标准函数ρ属于集合Q:ρ(r)是一个偶函数,在R上C-1是连续的,ρ(0)=0;ρ(r)在[0,∞)上单调递增;ψ(r)/r单调递减并且在(0,∞)上方有界。
由于函数ρ是偶数且连续可微,其零导数满足ψ(0)=0。二阶导数ρ”(0)=ψ'(0)总是在上面定义和界定。Q中的判据函数在[0,∞)上单调递增,因此对于所有大于或等于0的r,满足ψ(r)≥0。
权重函数w定义为:
从Q的定义可以得出,与ρ∈Q相关的权重函数w是一个偶函数和非负函数,它有上界,并且在[0,∞)上单调递减。w(r)的一个性质是对于所有r∈R,w(r)r=ψ(r)都成立。
此外,IRLS和ICP算法可以通过输入点集P和点集X,并且导入初始旋转矩阵R(0)和平移向量t(0),来输出旋转矩阵R(k)和平移向量t(k)。具体包括如下步骤:
第一步,首先为k赋值0,执行k后缀递增操作,将点集P进行的处理得到新的点集/>这里,/>中点的数量与pi中点的数量相等。
第二步,通过最近点的运算公式,找到点集到X点集中的最近点,此时执行得到X点集中最近点集合/>
第三步,执行权重函数,权重函数的结果受最近点距离影响,权重函数执行当wi>0时,执行以下第四步,否则执行下面第五步。
第四步,通过方程求解出未加权的R*,而此时的其中,/>此时可以得到新的通过坐标变换后的点集/>同时求出新的旋转矩阵R(k)=R*R(k-1)和新的平移向量t(k)=R*t(k-1)+t*,并进行/>判断,大于阈值或者在最大迭代次数范围内继续进行第一步,否则停止迭代,执行第六步。
第五步,此时证明已经是最近点的影响目标点集不变同时旋转矩阵不变R(k)=R(k-1)和平移向量不变t(k)=t(k-1),停止迭代,执行第六步。
第六步,最后返回最终的旋转矩阵R(k)和平移向量t(k)。
可以理解,这里可以使用标准函数Q来求解使用上述IRLS和ICP算法来解决相关权重函数w。它在每次迭代中都处于主要阶段。这些阶段是:找到最接近数据点的模型点,并找到刚体变换,使数据点适合最接近的模型点。需要初始刚体变换(R(0),t(0)),由于前文中使用了基于SURF算法进行粗配准,所以最近迭代算法的初值为粗配准得到的旋转矩阵R和平移向量t。这里可以使用符号C来表示最近点运算符。即/>中的X到变换数据点最接近的模型点/>最后判断目标函数是否在阈值设定的范围内,大于阈值则继续循环,否则退出循环。
可以理解,上述可选的实现方式基于KDTree、IRLS的改进ICP精配准算法处理点云数据,可以提高配准速度。
可选的,上述执行主体还可以采用正态分布变换(NDT,Normal DistributionsTransform)算法,对各个头部图像区域对应的点云数据进行配准。
从图3中可以看出,本实施例中的点云配准方法的流程300中,首先,从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域按照如上述第一方面任一实施例的头部图像区域的分割方法进行提取,然后,对各个头部图像区域对应的点云数据进行配准。这样可以通过提高头部图像区域的分割准确度、简化分割过程,从而提高三维点云数据配准的精度和速度。
请继续参考图5A和图5B,图5A或图5B可以作为本公开的人脸建模方法的一个实施例的流程图。
在图5A中,人脸建模方法的流程500,包括:
501,从已获取的各个目标图像中分别提取头部图像区域。
在本实施例中,上述执行主体或者与该执行主体通信连接的电子设备可以通过有线连接方式或者无线连接方式从其他电子设备或者本地,获取目标图像。然后,上述执行主体可以从已获取的各个目标图像中分别提取头部图像区域。
这里,在目标图像经由上述执行主体获取的情况下,上述执行主体可以直接从各个目标图像中分别提取头部图像区域;在目标图像由与该执行主体通信连接的电子设备获取的情况下,获取目标图像的电子设备可以首先将目标图像发送至上述执行主体,之后,上述执行主体再从各个目标图像中分别提取头部图像区域。
其中,上述目标图像可以是包括人脸对象的图像。例如,目标图像可以是用户使用手机等个人终端设备的摄像头拍摄的包括人脸对象的图像,也可以是采用Kinect的深度摄像头和彩色摄像头获取到的包括人脸对象的图像。此外,上述目标图像中可以包括头部图像区域。
在这里,目标图像包括深度图像,头部图像区域按照如上述第一方面任一实施例所述的头部图像区域的分割方法进行提取。
需要说明的是,本实施例中头部图像区域可以按照如上述第一方面任一实施例所述的头部图像区域的分割方法进行提取。具体步骤可以参考图1或图2中的相关描述,在此不再赘述。
502,基于各个头部图像区域,构建三维人脸模型。
在本实施例中,上述执行主体可以基于501获得的各个头部图像区域,构建三维人脸模型。
在本实施例的一些可选的实现方式中,上述执行主体可以采用如下方式构建三维模型:
首先,基于所提取的头部图像区域对应的点云数据,通过泊松方程重建泊松曲面。
在这里,上述执行主体还可以首先对所提取的头部图像区域对应的点云数据进行点云配准,从而基于配准后的点云数据,通过泊松方程重建泊松曲面。
作为示例,上述执行主体可以采用如上述第二方面任一实施例所述的配准方法进行点云配准。具体步骤可以参考图3中的相关描述,在此不再赘述。
然后,基于泊松曲面,构建三维人脸模型。
这里,泊松曲面重建基于泊松方程。通过梯度关系计算出采样点和指示函数之间的积分关系,根据得到的积分关系通过运用划分块的方式获得点集的向量场,然后不断的计算指示函数梯度场的逼近,通过以上操作构成泊松方程。依据泊松方程运用矩阵迭代的方法求出近似解,然后运用移动立方体的算法提取到需要的等值面,将被测数据点集经过重构操作形成被测物体的模型,泊松方程的优势在于在边界处的误差为零,因而重构得到的模型不会存在虚假的表面框。泊松曲面重建可以一次性的把所有的点都考虑进去,所以对噪声点有非常好的弹性。泊松曲面重构可以作为在层次结构中支持局部的基函数,对稀疏线性的情况非常的支持。因此这里将采用泊松曲面重建。
具体而言,上述泊松曲面重建过程可以包括如下步骤:
步骤一,建立八叉树空间。
可以通过使用样本点的位置定义八叉树O,然后附加一个函数F0给八叉树的每一个节点o∈O,选择八叉树和附加函数,使之满足下列条件:向量场可以被精确有效的表示为的线性求和;按照能够有效求解的方式来表示泊松方程的矩阵;以及,在模型表面附近精确有效地估计,并将其和作为指示函数。
空间函数为:
步骤二,创建向量场。
在均匀采样的情况下,假设划分的块是常量,通过向量场V逐步逼近指示函数的梯度,采用三次条样插值。
步骤三,求解泊松方程。
首先,计算指示函数:
然后,求解函数χ,他的梯度最近向量场:
最后,构造稀疏矩阵解泊松方程求解指示函数。
步骤四,提取等值面。
为了获得重建表面,首先需要选择一个等值,然后通过计算指示函数提取对应的等值面。选择等值使得提取的等值面近似逼近输入的样本点的位置。这里可以首先通过在样本点的位置估计,然后使用平均值来提取等值面:
由此,可以将得到的三维点云文件进行泊松重建,最终完成三维人脸建模。
从图5A中可以看出,本实施例中的人脸建模方法的流程500中,可以基于头部图像区域,构建三维人脸模型,其中,头部图像区域按照如上述第一方面中的任一项的头部图像区域的分割方法进行提取。这样,可以通过提高头部图像区域的分割准确度、简化分割过程,来提高三维人脸模型的准确性、构建速度。
在图5B中,人脸建模方法的流程510,包括:
511,对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准。
在本实施例中,上述执行主体或者与该执行主体通信连接的电子设备可以通过有线连接方式或者无线连接方式从其他电子设备或者本地,获取目标图像。然后,上述执行主体可以从已获取的各个目标图像中分别提取头部图像区域对应的点云数据进行配准。
需要说明的是,本实施例中点云数据可以按照如上述第二方面任一实施例所述的点云配准方法进行配准。具体步骤可以参考图3或图4中的相关描述,在此不再赘述。
512,基于配准后的点云数据,构建三维人脸模型。
在本实施例中,上述执行主体或者与该执行主体通信连接的电子设备可以基于配准后的点云数据,构建三维人脸模型。
在本实施例的一些可选的实现方式中,可以采用如下方式执行512:
首先,基于配准后的点云数据,通过泊松方程重建泊松曲面。
然后,基于泊松曲面,构建三维人脸模型。
在这里,基于配准后的点云数据,构建三维人脸模型的具体方式可以参考以上描述,在此不再赘述。
从图5B中可以看出,本实施例中的人脸建模方法的流程510中,可以基于配准后的点云数据,构建三维人脸模型,其中,点云数据按照如上述第二方面中任一项的点云配准方法进行配准。这样,可以通过提高点云数据配准的准确度,来提高三维人脸模型的准确性。
进一步参考图6,作为对上述各图所示方法的实现,本公开提供了一种头部图像区域的分割装置的一个实施例,该装置实施例与图1所示的方法实施例相对应,除下面所记载的特征外,该装置实施例还可以包括与图1所示的方法实施例相同或相应的特征,以及产生与图1所示的方法实施例相同或相应的效果。该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的头部图像区域的分割装置600包括:第一确定单元601,被配置成从已获取的目标图像中,确定目标图像中的身体部分所在的图像区域;计算单元602,被配置成基于所确定的图像区域,计算目标图像中的身体部分的宽度值;第二确定单元603,被配置成基于目标图像中的身体部分的宽度值,确定目标图像中躯干对象与头部对象的分割位置;分割单元604,被配置成在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。
在本实施例中,第一确定单元601可以从已获取的目标图像中,确定目标图像中的身体部分所在的图像区域。
在本实施例中,计算单元602可以基于所确定的图像区域,计算目标图像中的身体部分的宽度值。
在本实施例中,第二确定单元603可以基于目标图像中的身体部分的宽度值,确定目标图像中躯干对象与头部对象的分割位置。
在本实施例中,分割单元604可以在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。
在本实施例的一些可选的实现方式中,第一确定单元601包括:
第一确定子单元(图中未示出),被配置成从已获取的目标图像中确定目标图像中的身体部分所在的图像区域;以及
第二确定单元603包括:
第二确定子单元(图中未示出),被配置成基于目标图像中的身体部分的宽度值,确定前景图像区域中颈部对象的位置;
第三确定子单元(图中未示出),被配置成基于颈部对象的位置,确定目标图像中躯干对象与头部对象的分割位置。
在本实施例的一些可选的实现方式中,第一确定子单元包括:
第一确定模块(图中未示出),被配置成对目标图像进行特征点检测,确定鼻尖特征点的位置;
第二确定模块(图中未示出),被配置成将鼻尖特征点作为种子点,采用扫描线种子填充算法,确定种子点的最大连通域,将最大连通域作为前景图像区域。
在本实施例的一些可选的实现方式中,目标图像包括深度图像;以及
第一确定模块包括:
第一确定子模块(图中未示出),被配置成对深度图像进行特征点检测,确定至少两个面部特征点;
第二确定子模块(图中未示出),被配置成基于至少两个面部特征点中的各个面部特征点的深度值,确定鼻尖特征点的位置。
在本实施例的一些可选的实现方式中,至少两个面部特征点包括至少一对面部对称特征点;以及
第二确定单元602包括:
第四确定子单元(图中未示出),被配置成基于至少一对面部对称特征点中的每对面部对称特征点的连线,确定目标图像中躯干对象与头部对象的分割位置。
在本实施例的一些可选的实现方式中,目标图像为经过摆正处理的图像;以及
第二确定单元602包括:
第五确定子单元(图中未示出),被配置成基于颈部对象的位置,确定目标图像中躯干对象与头部对象的水平分割线位置。
在本实施例的一些可选的实现方式中,身体部分经由对目标图像中的前景图像区域进行水平分割得到;以及
第一确定单元601包括:
第六确定子单元(图中未示出),被配置成从已获取的目标图像中,确定目标图像中的各个身体部分所在的图像区域;以及
第二确定单元603包括:
第七确定子单元(图中未示出),被配置成从目标图像的各个身体部分中,确定目标身体部位,其中,目标身体部位的图像区域的宽度值小于其相邻两身体部分的图像区域的宽度值;
第八确定子单元(图中未示出),被配置成将目标身体部位所在的位置,确定为目标图像中躯干对象与头部对象的分割位置。
本公开的上述实施例提供的头部图像区域的分割装置中,第一确定单元601可以从已获取的目标图像中,确定目标图像中的身体部分所在的图像区域,之后,计算单元602可以基于所确定的图像区域,计算目标图像中的身体部分的宽度值,然后,第二确定单元603可以基于目标图像中的身体部分的宽度值,确定目标图像中躯干对象与头部对象的分割位置,最后,分割单元604可以在分割位置对目标图像中的前景图像区域进行图像分割,得到头部图像区域。这样可以基于目标图像中的身体部分的宽度值确定目标图像中躯干对象与头部对象的分割位置,进而得到头部图像区域,由此提高了头部图像区域的分割准确度、简化了分割过程。
下面请参考图7,作为对上述各图所示方法的实现,本公开提供了一种点云配准装置的一个实施例,该装置实施例与图3所示的方法实施例相对应,除下面所记载的特征外,该装置实施例还可以包括与图3所示的方法实施例相同或相应的特征,以及产生与图3所示的方法实施例相同或相应的效果。该装置具体可以应用于各种电子设备中。
如图7所示,本实施例的点云配准装置700包括:第一提取单元701,被配置成从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由上述任一实施例所描述的头部图像区域的分割装置进行提取;配准单元702,被配置成对各个头部图像区域对应的点云数据进行配准。
在本实施例中,第一提取单元701可以从已获取的各个目标图像中分别提取头部图像区域。其中,目标图像包括深度图像,头部图像区域由上述任一实施例所描述的头部图像区域的分割装置进行提取。
在本实施例中,配准单元702可以对各个头部图像区域对应的点云数据进行配准。
在本实施例的一些可选的实现方式中,配准单元702包括:
配准子单元(图中未示出),被配置成以K维树的数据结构表示所提取的每个头部图像区域对应的点云数据,采用迭代重复加权最小平方算法和最近迭代算法对点云数据进行配准。
在本实施例的一些可选的实现方式中,最近迭代算法的初值基于加速稳健特征算法确定。
本公开的上述实施例提供的点云配准装置中,第一提取单元701可以从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由上述任一实施例所描述的头部图像区域的分割装置进行提取,之后,配准单元702可以对各个头部图像区域对应的点云数据进行配准。这样可以通过提高头部图像区域的分割准确度、简化分割过程,来提高三维点云数据配准的精度和速度。
进一步参考图8A和图8B,作为对上述各图所示方法的实现,本公开提供了一种人脸建模装置的一个实施例,图8A所示的装置实施例与图5A所示的方法实施例相对应,图8B所示的装置实施例与图5B所示的方法实施例相对应,除下面所记载的特征外,该装置实施例还可以包括与图5A或图5B所示的方法实施例相同或相应的特征,以及产生与图5A或图5B所示的方法实施例相同或相应的效果。该装置具体可以应用于各种电子设备中。
如图8A所示,本实施例的人脸建模装置800包括:第二提取单元801,被配置成从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由上述任一实施例所描述的头部图像区域的分割装置进行提取,然后,第一构建单元802,被配置成基于各个头部图像区域,构建三维人脸模型。
在本实施例中,第二提取单元801可以从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由上述任一实施例所描述的头部图像区域的分割装置进行提取。
在本实施例中,第一构建单元802可以基于配准后的点云数据,构建三维人脸模型,其中,配准后的点云数据由上述任一实施例所描述的点云配准装置进行配准。
在本实施例的一些可选的实现方式中,第一构建单元802包括:
第一重建子单元(图中未示出),被配置成基于所提取的头部图像区域对应的点云数据,通过泊松方程重建泊松曲面;
第一构建子单元(图中未示出),被配置成基于泊松曲面,构建三维人脸模型。
本公开的上述实施例提供的人脸建模装置800中,第二提取单元801可以从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由上述任一实施例所描述的头部图像区域的分割装置进行提取,之后,第一构建单元802可以基于各个头部图像区域,构建三维人脸模型。这样,可以通过提高头部图像区域的分割准确度、简化分割过程,来提高三维人脸模型的准确性、构建速度。
如图8B所示,本实施例的人脸建模装置810包括:第三提取单元811,被配置成对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准,其中,点云数据按照如上述任一实施例所描述的点云配准装置进行配准,然后,第二构建单元812,被配置成基于配准后的点云数据,构建三维人脸模型。
在本实施例中,第三提取单元811可以对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准,其中,点云数据按照如上述任一实施例所描述的点云配准装置进行配准。
在本实施例中,第二构建单元812可以基于配准后的点云数据,构建三维人脸模型。
在本实施例的一些可选的实现方式中,第二构建单元812包括:
第二重建子单元(图中未示出),被配置成基于配准后的点云数据,通过泊松方程重建泊松曲面;
第二构建子单元(图中未示出),被配置成基于泊松曲面,构建三维人脸模型。
本公开的上述实施例提供的人脸建模装置810中,第三提取单元811可以对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准,其中,点云数据按照如上述任一实施例所描述的点云配准装置进行配准,之后,第二构建单元812可以基于配准后的点云数据,构建三维人脸模型。这样,可以通过提高点云数据配准的准确度,来提高三维人脸模型的准确性。
下面,参考图9来描述根据本公开实施例的电子设备。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
图9图示了根据本公开实施例的电子设备的框图。
如图9所示,电子设备9包括一个或多个处理器901和存储器902。
处理器901可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。
存储器902可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器901可以运行所述程序指令,以实现上文所述的本公开的各个实施例的头部图像区域的分割方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备还可以包括:输入装置903和输出装置904,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
例如,在该电子设备是第一设备或第二设备时,该输入装置903可以是上述的麦克风或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置903可以是通信网络连接器,用于从第一设备和第二设备接收所采集的输入信号。
此外,该输入装置903还可以包括例如键盘、鼠标等等。该输出装置904可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置904可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图9中仅示出了该电子设备中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备还可以包括任何其他适当的组件。
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的头部图像区域的分割方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的头部图像区域的分割方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。
Claims (8)
1.一种头部图像区域的分割方法,其特征在于,所述方法包括:
从已获取的目标图像中,确定所述目标图像中的身体部分所在的图像区域;
基于所确定的图像区域,计算所述目标图像中的身体部分的宽度值;
基于所述目标图像中的身体部分的宽度值,确定所述目标图像中躯干对象与头部对象的分割位置,其中,所述宽度值小于其相邻两身体部分的身体部分的图像区域所在的位置为颈部对象的位置,所述颈部对象的位置被用于确定所述目标图像中躯干对象与头部对象的分割位置;
在所述分割位置对所述目标图像中的前景图像区域进行图像分割,得到头部图像区域;
所述从已获取的目标图像中,确定所述目标图像中的身体部分所在的图像区域,包括:
从已获取的目标图像中确定前景图像区域;
从所述前景图像区域中确定所述目标图像中的身体部分所在的图像区域;
所述从已获取的目标图像中确定前景图像区域,包括:
对所述目标图像进行特征点检测,确定鼻尖特征点的位置,所述鼻尖特征点的位置为深度值最小的面部特征点所在的位置;
将所述鼻尖特征点作为种子点,采用扫描线种子填充算法,确定所述种子点的最大连通域,将所述最大连通域作为前景图像区域。
2.根据权利要求1所述的方法,其特征在于,所述目标图像包括深度图像;以及
所述对所述目标图像进行特征点检测,确定鼻尖特征点的位置,包括:
对所述深度图像进行特征点检测,确定至少两个面部特征点;
基于所述至少两个面部特征点中的各个面部特征点的深度值,确定鼻尖特征点的位置。
3.根据权利要求2所述的方法,其特征在于,所述至少两个面部特征点包括至少一对面部对称特征点;以及
所述基于所述颈部对象的位置,确定所述目标图像中躯干对象与头部对象的分割位置,包括:
基于所述至少一对面部对称特征点中的每对面部对称特征点的连线,确定所述目标图像中躯干对象与头部对象的分割位置。
4.一种点云配准方法,其特征在于,所述方法包括:
从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域按照如权利要求1-3任一项所述的头部图像区域的分割方法进行提取;
对所述头部图像区域对应的点云数据进行配准。
5.一种人脸建模方法,其特征在于,所述方法包括:
从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域按照如权利要求1-3任一项所述的头部图像区域的分割方法进行提取;基于所述头部图像区域,构建三维人脸模型;或者
对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准,其中,点云数据按照如权利要求4所述的点云配准方法进行配准;基于配准后的点云数据,构建三维人脸模型。
6.一种头部图像区域的分割装置,其特征在于,所述装置包括:
第一确定单元,被配置成从已获取的目标图像中,确定所述目标图像中的身体部分所在的图像区域;
计算单元,被配置成基于所确定的图像区域,计算所述目标图像中的身体部分的宽度值;
第二确定单元,被配置成基于所述目标图像中的身体部分的宽度值,确定所述目标图像中躯干对象与头部对象的分割位置,其中,所述宽度值小于其相邻两身体部分的身体部分的图像区域所在的位置为颈部对象的位置,所述颈部对象的位置被用于确定所述目标图像中躯干对象与头部对象的分割位置;
分割单元,被配置成在所述分割位置对所述目标图像中的前景图像区域进行图像分割,得到头部图像区域;
所述第一确定单元包括:
第一确定子单元,被配置成从已获取的目标图像中确定所述目标图像中的身体部分所在的图像区域;以及
第一确定子单元包括:
第一确定模块,被配置成对所述目标图像进行特征点检测,确定鼻尖特征点的位置,所述鼻尖特征点的位置为深度值最小的面部特征点所在的位置;
第二确定模块,被配置成将所述鼻尖特征点作为种子点,采用扫描线种子填充算法,确定种子点的最大连通域,将所述最大连通域作为前景图像区域。
7.一种点云配准装置,其特征在于,所述装置包括:
第一提取单元,被配置成从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由如权利要求6所述的头部图像区域的分割装置进行提取;
配准单元,被配置成对所述头部图像区域对应的点云数据进行配准。
8.一种人脸建模装置,其特征在于,所述装置包括:
第二提取单元,被配置成从已获取的各个目标图像中分别提取头部图像区域,其中,目标图像包括深度图像,头部图像区域由如权利要求6所述的头部图像区域的分割装置进行提取;第一构建单元,被配置成基于所述头部图像区域,构建三维人脸模型;或者
第三提取单元,被配置成对已获取的各个目标图像中分别提取的头部图像区域对应的点云数据进行配准,其中,点云数据由如权利要求7所述的点云配准装置进行配准;第二构建单元,被配置成基于配准后的点云数据,构建三维人脸模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110314025.9A CN112907569B (zh) | 2021-03-24 | 2021-03-24 | 头部图像区域的分割方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110314025.9A CN112907569B (zh) | 2021-03-24 | 2021-03-24 | 头部图像区域的分割方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112907569A CN112907569A (zh) | 2021-06-04 |
CN112907569B true CN112907569B (zh) | 2024-03-15 |
Family
ID=76106211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110314025.9A Active CN112907569B (zh) | 2021-03-24 | 2021-03-24 | 头部图像区域的分割方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112907569B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113538472B (zh) * | 2021-07-02 | 2022-07-08 | 华东师范大学 | 一种基于编码-解码网络的向量场引导精细化分割方法 |
CN114419065B (zh) * | 2022-01-13 | 2023-06-02 | 如你所视(北京)科技有限公司 | 建筑物涂刷方法和装置、计算机可读存储介质 |
CN115862115B (zh) * | 2022-12-23 | 2023-08-04 | 宁波星巡智能科技有限公司 | 基于视觉的婴幼儿呼吸检测区域定位方法、装置及设备 |
Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567998A (zh) * | 2012-01-06 | 2012-07-11 | 西安理工大学 | 基于双模板匹配和边缘细化的头肩序列图像分割方法 |
US8406519B1 (en) * | 2010-03-10 | 2013-03-26 | Hewlett-Packard Development Company, L.P. | Compositing head regions into target images |
CN103400110A (zh) * | 2013-07-10 | 2013-11-20 | 上海交通大学 | Atm取款机前的异常人脸检测方法 |
CN103810491A (zh) * | 2014-02-19 | 2014-05-21 | 北京工业大学 | 融合深度和灰度图像特征点的头姿估计兴趣点检测方法 |
CN105096291A (zh) * | 2014-04-25 | 2015-11-25 | 上海联影医疗科技有限公司 | 一种中心线的提取方法 |
CA2967496A1 (en) * | 2014-10-06 | 2016-04-14 | David Sai Wah HO | An adjustable pillow device and method |
CN106418847A (zh) * | 2015-08-04 | 2017-02-22 | 王廷金 | 一种基于计算机视觉技术的人体三维尺寸测量方法 |
CN106558040A (zh) * | 2015-09-23 | 2017-04-05 | 腾讯科技(深圳)有限公司 | 人物图像处理方法和装置 |
CN206560442U (zh) * | 2016-09-30 | 2017-10-17 | 美的集团股份有限公司 | 睡姿检测装置及枕头 |
CN107316333A (zh) * | 2017-07-07 | 2017-11-03 | 华南理工大学 | 一种自动生成日漫肖像的方法 |
JP2018023112A (ja) * | 2017-08-09 | 2018-02-08 | カシオ計算機株式会社 | 画像出力装置、画像出力方法及びプログラム |
CN107749062A (zh) * | 2017-09-18 | 2018-03-02 | 深圳市朗形网络科技有限公司 | 图像处理方法、及装置 |
CN107993238A (zh) * | 2017-12-19 | 2018-05-04 | 中科视拓(北京)科技有限公司 | 一种基于注意力模型的头肩部分图像分割方法及装置 |
CN108009577A (zh) * | 2017-11-29 | 2018-05-08 | 南京工业大学 | 一种虚拟试衣镜的实现方法 |
JP2018084966A (ja) * | 2016-11-24 | 2018-05-31 | 京セラドキュメントソリューションズ株式会社 | 情報処理装置および情報処理方法 |
CN109875568A (zh) * | 2019-03-08 | 2019-06-14 | 北京联合大学 | 一种用于疲劳驾驶检测的头部姿态检测方法 |
CN109934177A (zh) * | 2019-03-15 | 2019-06-25 | 艾特城信息科技有限公司 | 行人再识别方法、系统及计算机可读存储介质 |
CN110458010A (zh) * | 2019-07-05 | 2019-11-15 | 武汉迈格驷友科技有限公司 | 一种智能台灯、一种坐姿检测方法及一种电子设备 |
CN111091507A (zh) * | 2019-12-09 | 2020-05-01 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备以及存储介质 |
CN111932630A (zh) * | 2020-07-21 | 2020-11-13 | 清华大学 | 基于图像识别的面向人员送风的调控方法及装置 |
CN112085675A (zh) * | 2020-08-31 | 2020-12-15 | 四川大学 | 深度图像去噪方法、前景分割方法及人体运动监测方法 |
CN112287823A (zh) * | 2020-10-28 | 2021-01-29 | 怀化学院 | 一种基于视频监控的面部口罩识别方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9767586B2 (en) * | 2014-07-11 | 2017-09-19 | Microsoft Technology Licensing, Llc | Camera system and method for hair segmentation |
CN107958458B (zh) * | 2016-10-17 | 2021-01-22 | 京东方科技集团股份有限公司 | 图像分割方法、图像分割系统及包括其的设备 |
-
2021
- 2021-03-24 CN CN202110314025.9A patent/CN112907569B/zh active Active
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8406519B1 (en) * | 2010-03-10 | 2013-03-26 | Hewlett-Packard Development Company, L.P. | Compositing head regions into target images |
CN102567998A (zh) * | 2012-01-06 | 2012-07-11 | 西安理工大学 | 基于双模板匹配和边缘细化的头肩序列图像分割方法 |
CN103400110A (zh) * | 2013-07-10 | 2013-11-20 | 上海交通大学 | Atm取款机前的异常人脸检测方法 |
CN103810491A (zh) * | 2014-02-19 | 2014-05-21 | 北京工业大学 | 融合深度和灰度图像特征点的头姿估计兴趣点检测方法 |
CN105096291A (zh) * | 2014-04-25 | 2015-11-25 | 上海联影医疗科技有限公司 | 一种中心线的提取方法 |
CA2967496A1 (en) * | 2014-10-06 | 2016-04-14 | David Sai Wah HO | An adjustable pillow device and method |
CN106418847A (zh) * | 2015-08-04 | 2017-02-22 | 王廷金 | 一种基于计算机视觉技术的人体三维尺寸测量方法 |
CN106558040A (zh) * | 2015-09-23 | 2017-04-05 | 腾讯科技(深圳)有限公司 | 人物图像处理方法和装置 |
CN206560442U (zh) * | 2016-09-30 | 2017-10-17 | 美的集团股份有限公司 | 睡姿检测装置及枕头 |
JP2018084966A (ja) * | 2016-11-24 | 2018-05-31 | 京セラドキュメントソリューションズ株式会社 | 情報処理装置および情報処理方法 |
CN107316333A (zh) * | 2017-07-07 | 2017-11-03 | 华南理工大学 | 一种自动生成日漫肖像的方法 |
JP2018023112A (ja) * | 2017-08-09 | 2018-02-08 | カシオ計算機株式会社 | 画像出力装置、画像出力方法及びプログラム |
CN107749062A (zh) * | 2017-09-18 | 2018-03-02 | 深圳市朗形网络科技有限公司 | 图像处理方法、及装置 |
CN108009577A (zh) * | 2017-11-29 | 2018-05-08 | 南京工业大学 | 一种虚拟试衣镜的实现方法 |
CN107993238A (zh) * | 2017-12-19 | 2018-05-04 | 中科视拓(北京)科技有限公司 | 一种基于注意力模型的头肩部分图像分割方法及装置 |
CN109875568A (zh) * | 2019-03-08 | 2019-06-14 | 北京联合大学 | 一种用于疲劳驾驶检测的头部姿态检测方法 |
CN109934177A (zh) * | 2019-03-15 | 2019-06-25 | 艾特城信息科技有限公司 | 行人再识别方法、系统及计算机可读存储介质 |
CN110458010A (zh) * | 2019-07-05 | 2019-11-15 | 武汉迈格驷友科技有限公司 | 一种智能台灯、一种坐姿检测方法及一种电子设备 |
CN111091507A (zh) * | 2019-12-09 | 2020-05-01 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备以及存储介质 |
CN111932630A (zh) * | 2020-07-21 | 2020-11-13 | 清华大学 | 基于图像识别的面向人员送风的调控方法及装置 |
CN112085675A (zh) * | 2020-08-31 | 2020-12-15 | 四川大学 | 深度图像去噪方法、前景分割方法及人体运动监测方法 |
CN112287823A (zh) * | 2020-10-28 | 2021-01-29 | 怀化学院 | 一种基于视频监控的面部口罩识别方法 |
Non-Patent Citations (4)
Title |
---|
MICCAI 2019 : 基于头颈部CT图像的,不均衡的大小器官的,端到端分割神经网络;Jason金;《https://zhuanlan.zhihu.com/p/76702983》;20190813;全文 * |
Segmentation of Head and Neck Tumours Using Modified U-net;Baixiang Zhao;《2019 27th European Signal Processing Conference (EUSIPCO)》;20191118;全文 * |
基于点云数据的三维人体头部分割技术研究;晏义;《湖南工业大学学报》;全文 * |
运动人体的跟踪及头部定位系统的设计与实现;杨春丽;《中国优秀硕士论文全文数据库》;20091115;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112907569A (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112907569B (zh) | 头部图像区域的分割方法、装置、电子设备和存储介质 | |
CN108460338B (zh) | 人体姿态估计方法和装置、电子设备、存储介质、程序 | |
CN111325851B (zh) | 图像处理方法及装置、电子设备和计算机可读存储介质 | |
CN110348330B (zh) | 基于vae-acgan的人脸姿态虚拟视图生成方法 | |
Xie et al. | Shape matching and modeling using skeletal context | |
CN109684969B (zh) | 凝视位置估计方法、计算机设备及存储介质 | |
CN110659582A (zh) | 图像转换模型训练方法、异质人脸识别方法、装置及设备 | |
CN110516096A (zh) | 合成感知数字图像搜索 | |
US11282257B2 (en) | Pose selection and animation of characters using video data and training techniques | |
CN111008935B (zh) | 一种人脸图像增强方法、装置、系统及存储介质 | |
Berretti et al. | Face recognition by super-resolved 3D models from consumer depth cameras | |
CN113570684A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
Etezadifar et al. | A new sample consensus based on sparse coding for improved matching of SIFT features on remote sensing images | |
CN114298997B (zh) | 一种伪造图片检测方法、装置及存储介质 | |
CN111815768B (zh) | 三维人脸重建方法和装置 | |
CN111488810A (zh) | 人脸识别方法、装置、终端设备及计算机可读介质 | |
CN114627244A (zh) | 三维重建方法及装置、电子设备、计算机可读介质 | |
CN111353325A (zh) | 关键点检测模型训练方法及装置 | |
CN114972016A (zh) | 图像处理方法、装置、计算机设备、存储介质及程序产品 | |
CN117078790A (zh) | 图像生成方法、装置、计算机设备和存储介质 | |
CN117372604B (zh) | 一种3d人脸模型生成方法、装置、设备及可读存储介质 | |
Yin et al. | [Retracted] Virtual Reconstruction Method of Regional 3D Image Based on Visual Transmission Effect | |
CN112329662B (zh) | 基于无监督学习的多视角显著性估计方法 | |
Ming et al. | A unified 3D face authentication framework based on robust local mesh SIFT feature | |
US11361467B2 (en) | Pose selection and animation of characters using video data and training techniques |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20240219 Address after: Room 102, floor 1, building 1, No. 2, Chuangye Road, Haidian District, Beijing 100085 Applicant after: Seashell Housing (Beijing) Technology Co.,Ltd. Country or region after: China Address before: 101300 room 24, 62 Farm Road, Erjie village, Yangzhen Town, Shunyi District, Beijing Applicant before: Beijing fangjianghu Technology Co.,Ltd. Country or region before: China |
|
GR01 | Patent grant | ||
GR01 | Patent grant |