CN105989625A - 数据处理的方法和装置 - Google Patents

数据处理的方法和装置 Download PDF

Info

Publication number
CN105989625A
CN105989625A CN201510059955.9A CN201510059955A CN105989625A CN 105989625 A CN105989625 A CN 105989625A CN 201510059955 A CN201510059955 A CN 201510059955A CN 105989625 A CN105989625 A CN 105989625A
Authority
CN
China
Prior art keywords
model
destination object
localized mass
reconstruction
reconstruction model
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.)
Withdrawn
Application number
CN201510059955.9A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510059955.9A priority Critical patent/CN105989625A/zh
Priority to PCT/CN2015/084335 priority patent/WO2016123913A1/zh
Priority to EP15880866.7A priority patent/EP3249613A1/en
Publication of CN105989625A publication Critical patent/CN105989625A/zh
Priority to US15/667,917 priority patent/US20170330375A1/en
Withdrawn legal-status Critical Current

Links

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
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • 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
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2215/00Indexing scheme for image rendering
    • G06T2215/16Using real world measurements to influence rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

本发明实施例提供一种数据处理的方法和装置,该方法包括:获取目标对象的第一重建模型;将第一重建模型划分为M个局部块;获取N个目标对象样本对齐模型,每个目标对象样本对齐模型与第一重建模型对应的姿势参数相同,且每个目标对象样本对齐模型包括M个局部块,每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的同一个部位,每个目标对象样本对齐模型的第i个局部块与第一重建模型的第i个局部块对齐,i为1,…,M;使用N个目标对象样本对齐模型来逼近第一重建模型,从而确定该目标对象的包括M个局部块的第二重建模型。本发明实施例提供的数据处理的方法和装置,能够有效提高模型的准确性。

Description

数据处理的方法和装置
技术领域
本发明实施例涉及数据处理领域,并且更具体地,涉及一种数据处理的方法和装置。
背景技术
人体建模在计算机图形学和计算机视觉领域有很多应用,比如电影特效,3D游戏,虚拟现实和人机交互等等。
在当前的人体建模系统中,人体点云中存在的强噪声或漏洞被引入到重建的人体模型中,导致人体模型的准确性较低,目前,还没有较为有效的方法来解决上述问题。
发明内容
本发明实施例提供一种数据处理的方法和装置,能够有效提高模型的准确性。
第一方面提供了一种数据处理的方法,该方法包括:
获取目标对象的第一重建模型;
将该第一重建模型划分为M个局部块,该第一重建模型的M个局部块中不同的局部块对应于该目标对象不同的部位,该不同部位用不同的部位名称表示,M为大于1的正整数;
获取N个目标对象样本对齐模型,每个目标对象样本对齐模型的姿势对应的姿势参数与该第一重建模型的姿势对应的姿势参数相同,且该每个目标对象样本对齐模型包括M个局部块,其中,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称所表示的部位,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对齐,N为正整数,i为1,…,M;
使用该N个目标对象样本对齐模型来逼近该第一重建模型,从而确定该目标对象的包括M个局部块的第二重建模型,该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,i为1,…,M。
结合第一方面,在第一方面的第一种可能的实现方式中,使用该N个目标对象样本对齐模型来逼近该第一重建模型,从而确定该目标对象的包括M个局部块的第二重建模型,包括:
根据以下公式,获取该第二重建模型:
Ki=Bicii(i=1,...,M)
其中,Ki为该第二重建模型的M个局部块中的第i个局部块,Bi为由该N个目标对象样本对齐模型的第i个局部块组成的基,μi为该N个目标对象样本对齐模型的第i个局部块的顶点坐标的平均值,ci是Bi的系数向量,其中,获得ci的公式包括:
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 ) ,
s.t. ci>0(i=1,...,M)
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 + λ Σ i = 1 M | | c i | | 1 ) ;
s.t. ci>0(i=1,...,M)
其中,Vi为该第一重建模型的第i个局部块,Γ为该每个目标对象样本对齐模型的M个局部块中相邻的局部块的集合,(i,j)∈Γ表示该每个目标对象样本对齐模型的第j个局部块为与该每个目标对象样本对齐模型的第i个局部块相邻的局部块,Bj为由该每个目标对象样本对齐模型的第j个局部块组成的基,Bij用于表达该每个目标对象样本对齐模型的第i个局部块与第j个局部块在彼此连接处的边界顶点,且Bij为Bi的子集,μij为Bij的平均值,Bji用于表达该每个目标对象样本对齐模型的第j个局部块与第i个局部块在彼此连接处的边界顶点,Bji为Bj的子集,μji为Bji的平均值,β为权重,λ为权重,||||1为L1范式,||||2为L2范式。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,该第一重建模型的M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
结合第一方面或第一方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,获取目标对象的第一重建模型,包括:
获取该目标对象的目标对象点云数据;
获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定该目标对象点云数据与该模板模型的点对应关系;
基于骨架驱动变形技术以及该点对应关系,估计该目标对象点云数据相对于该模板模型的姿势变化参数;
利用该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的该第一重建模型。
结合第一方面或第一方面的第一种或第二种可能的实现方式,在第一方面的第四种可能的实现方式中,获取目标对象的第一重建模型,包括:
获取该目标对象的目标对象点云数据;
获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定该目标对象点云数据与该模板模型的点对应关系;
基于骨架驱动变形技术以及该点对应关系,估计该目标对象点云数据相对于该模板模型的姿势变化参数;
利用该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的骨架变形模型,使得该骨架变形模型与该目标对象点云数据对齐;
基于网格变形技术对该骨架变形模型进行变形,获得该第一重建模型,使得该第一重建模型与该目标对象点云数据的形状匹配。
结合第一方面和第一方面的第一种至第四种可能的实现方式中的任一种可能的实现方式,在第一方面的第五种可能的实现方式中,获取N个目标对象样本对齐模型,包括:
从预设的目标对象数据库中获取N个目标对象样本模型;
基于骨架驱动变形技术,根据该第一重建模型的姿势参数,将该N个目标对象样本模型变形为与该第一重建模型对应于相同的姿势参数的N个目标对象样本骨架变形模型;
将每个目标对象样本骨架变形模型划分为M个局部块,该每个目标对象样本骨架变形模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称表示的部位;
通过对该每个目标对象样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,从而获得该N个目标对象样本对齐模型,其中,每个目标对象样本对齐模型的第i个局部块在经过该旋转、平移和缩放中的至少一种变换后与该第一重建模型的第i个局部块对齐,i为1,2,…,M。
结合第一方面和第一方面的第一种至第五种可能的实现方式中的任一种可能的实现方式,在第一方面的第六种可能的实现方式中,该方法还包括:
对该第二重建模型进行平滑优化处理。
第二方面提供了一种数据处理的装置,该装置包括:
第一获取模块,用于获取目标对象的第一重建模型;
划分模块,用于将该获取模块获取的该第一重建模型划分为M个局部块,该第一重建模型的M个局部块中不同的局部块对应于该目标对象不同的部位,该不同部位用不同的部位名称表示,M为大于1的正整数;
第二获取模块,用于获取N个目标对象样本对齐模型,每个目标对象样本对齐模型的姿势对应的姿势参数与该第一获取模块获取的该第一重建模型的姿势对应的姿势参数相同,且该每个目标对象样本对齐模型包括M个局部块,其中,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称所表示的部位,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对齐,N为正整数,i为1,…,M;
确定模块,用于使用该第二获取模块获取的该N个目标对象样本对齐模型来逼近该第一获取模块获取的该第一重建模型,从而确定该目标对象的包括M个局部块的第二重建模型,该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,i为1,…,M。
结合第二方面,在第二方面的第一种可能的实现方式中,该确定模块具体用于,
根据以下公式,获取该第二重建模型:
Ki=Bicii(i=1,...,M)
其中,Ki为该第二重建模型的M个局部块中的第i个局部块,Bi为由该N个目标对象样本对齐模型的第i个局部块组成的基,μi为该N个目标对象样本对齐模型的第i个局部块的顶点坐标的平均值,ci是Bi的系数向量,其中,获得ci的公式包括:
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 ) ,
s.t. ci>0(i=1,...,M)
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 + λ Σ i = 1 M | | c i | | 1 ) ;
s.t. ci>0(i=1,...,M)
其中,Vi为该第一重建模型的第i个局部块,Γ为该每个目标对象样本对齐模型的M个局部块中相邻的局部块的集合,(i,j)∈Γ表示该每个目标对象样本对齐模型的第j个局部块为与该每个目标对象样本对齐模型的第i个局部块相邻的局部块,Bj为由该每个目标对象样本对齐模型的第j个局部块组成的基,Bij用于表达该每个目标对象样本对齐模型的第i个局部块与第j个局部块在彼此连接处的边界顶点,且Bij为Bi的子集,μij为Bij的平均值,Bji用于表达该每个目标对象样本对齐模型的第j个局部块与第i个局部块在彼此连接处的边界顶点,Bji为Bj的子集,μji为Bji的平均值,β为权重,λ为权重,||||1为L1范式,||||2L2范式。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,该第一获取模块获取的该第一重建模型的M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
结合第二方面或第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,该第一获取模块包括:
第一获取单元,用于获取该目标对象的目标对象点云数据;
第二获取单元,用于获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定单元,用于确定该第一获取单元获取的该目标对象点云数据与该第二获取单元获取的该模板模型的点对应关系;
估计单元,用于基于骨架驱动变形技术以及该确定单元确定的该点对应关系,估计该第一获取单元确定的该目标对象点云数据相对于该第二获取单元确定的该模板模型的姿势变化参数;
第一变形单元,利用该估计单元估计的该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的该第一重建模型。
结合第二方面或第二方面的第一种或第二种可能的实现方式,在第二方面的第四种可能的实现方式中,该第一获取模块包括:
第一获取单元,用于获取该目标对象的目标对象点云数据;
第二获取单元,用于获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定单元,用于确定该第一获取单元获取的该目标对象点云数据与该第二获取单元获取的该模板模型的点对应关系;
估计单元,用于基于骨架驱动变形技术以及该确定单元确定的该点对应关系,估计该第一获取单元确定的该目标对象点云数据相对于该第二获取单元确定的该模板模型的姿势变化参数;
第二变形单元,用于利用该估计单元估计的该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的骨架变形模型,使得该骨架变形模型与该目标对象点云数据对齐;
第三变形单元,用于基于网格变形技术对该第二变形单元得到的该骨架变形模型进行变形,获得该第一重建模型,使得该第一重建模型与该目标对象点云数据的形状匹配。
结合第二方面和第二方面的第一种至第四种可能的实现方式中的任一种可能的实现方式,在第二方面的第五种可能的实现方式中,该第二获取模块包括:
第三获取单元,用于从预设的目标对象数据库中获取N个目标对象样本模型;
第四变形单元,用于基于骨架驱动变形技术,根据该第一重建模型的姿势参数,将该第三获取单元获取的该N个目标对象样本模型变形为与该第一重建模型对应于相同的姿势参数的N个目标对象样本骨架变形模型;
划分单元,用于将该第四变形单元得到的每个目标对象样本骨架变形模型划分为M个局部块,该每个目标对象样本骨架变形模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称表示的部位;
第四获取单元,用于通过对该划分单元得到的该每个目标对象样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,从而获得该N个目标对象样本对齐模型,其中,每个目标对象样本对齐模型的第i个局部块在经过该旋转、平移和缩放中的至少一种变换后与该第一重建模型的第i个局部块对齐,i为1,2,…,M。
结合第二方面和第二方面的第一种至第五种可能的实现方式中的任一种可能的实现方式,在第二方面的第六种可能的实现方式中,该装置还包括:
优化模块,用于对该第二重建模型进行平滑优化处理。
基于上述技术方案,本发明实施例提供的数据处理的方法和装置,通过将目标对象的第一重建模型划分为M个局部块,并通过利用N个目标对象样本对齐模型来逼近该第一重建模型,来确定该目标对象的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例提供的数据处理的方法的示意性流程图。
图2示出了本发明实施例涉及的人体模型的示意图。
图3示出了本发明实施例提供的数据处理的方法的示意图。
图4示出了本发明实施例提供的数据处理的方法的另一示意图。
图5示出了本发明实施例提供的数据处理的装置的示意性框图。
图6示出了本发明实施例提供的数据处理的装置的另一示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提出一种数据处理的方法,具体地,一种确定目标对象的重建模型的方法,其中,该目标对象可以指人体,也可以指其他动物,或者其他动态物体。
以下,为了便于理解和说明,作为示例而非限定,以该目标对象为人体为例进行说明。
为了便于理解本发明实施例提供的数据处理的方案,首先介绍以下概念:
Kinect RGB-D相机
在大部分人体建模系统中,利用一系列的摄像机或者三维扫描技术(例如激光和结构光相机)采集深度图像数据。但是昂贵的设备,复杂而繁琐的用户交互接口,限制了这些建模系统的应用。自从微软推出Kinect RGB-D相机,因为其价格便宜和易操作的特性,Kinect RGB-D相机被广泛应用在人体建模系统中。
在本发明实施例提供的数据处理的方法中,采用Kinect RGB-D相机来采集人体的深度图像数据,进而获得该人体的人体点云数据。例如在人体附件固定一个或多个Kinect RGB-D相机,同时拍摄人体的深度图像数据序列。利用同一时刻采集的深度图像数据,建立该时刻(当前帧)的人体模型(对应于图1所示流程图中的第二重建模型),从而实现整个时间序列的动态人体建模。
可选地,在本发明实施例中,采用一个或多个Kinect RGB-D相机来采集人体的深度图像数据。
为了便于理解和描述,下文针对当前帧的人体建模过程进行描述。
图1示出了本发明实施例提供的数据处理的方法100的示意性流程图,该方法100包括:
S110,获取目标对象的第一重建模型;
具体地,该第一重建模型可以是基于人体的人体点云数据而重建的用于描述该人体点云数据的模型,其中该人体点云数据是从人体的深度图像数据中提取的数据点,下文将在S111中介绍该人体点云数据的提取过程。其中,该第一重建模型具体指的是预设的人体数据库中的人体样本模型对齐到该人体的人体点云数据以后所确定的模型,这里的对齐指的是该第一重建模型与人体点云数据具有点对齐关系,具体来说,该第一重建模型包括的每个顶点在该人体的人体点云数据中具有对应的点,每对对应点中的两个点为最邻近的点。
由于人体点云数据是基于照相机所拍摄的该人体的深度图像数据所采集的数据,因此该人体点云数据中通常包含有强噪音,因此,基于人体点云数据所得的该第一重建模型中也包含了噪音,模型精度较差,需要对其作进一步地处理,以提高模型的精度。
S120,将该第一重建模型划分为M个局部块,该第一重建模型的M个局部块中不同的局部块对应于该目标对象不同的部位,该不同部位用不同的部位名称表示,M为大于1的正整数;
具体地,假设该第一重建模型如图2(a)所示的人体模型,将该模型划分为16个局部块,其中每个局部块对应于人体不同的部位,且不同的部位用不同的部位名称来表示,如图2(a)所示,利用一组数字序列来表示不同的局部块。
S130,获取N个目标对象样本对齐模型,每个目标对象样本对齐模型的姿势对应的姿势参数与该第一重建模型的姿势对应的姿势参数相同,且该每个目标对象样本对齐模型包括M个局部块,其中,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称所表示的部位,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对齐,N为正整数,i为1,…,M,其中,i为1,…,M指的是,i的赋值依次为1,…,M。
具体地,以该目标对象为人体为例,该目标对象样本对齐模型即人体样本对齐模型,具体指的是预设的人体数据库中标准的人体样本模型经过一定处理后的模型。例如人体样本模型经过姿势变换,使得姿势变化后的人体样本模型(即该人体样本对齐模型)与该人体的第一重建模型对应的姿势参数相同,换句话说与第一重建模型具有一致的姿势。例如,如果该人体的第一重建模型的姿势为下蹲,该人体样本对齐模型也具有下蹲的姿势,这样有利于保证后续模型重建过程中的边界一致约束条件。
该每个人体样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该人体的用同一个部位名称所表示的部位,指的是,假设人体的第一重建模型如图2(a)所示的划分为16个局部块,该人体样本对齐模型也划分为如图2(a)所示的16个局部块,且该人体样本对齐模型的第i个局部块与第一重建模型的第i个局部块指示该人体的同一个部位,例如该人体样本对齐模型的第i个局部块与第一重建模型的第i个局部块均对应于如2(a)中所示的局部块3。
该每个人体样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对齐,其中对齐指的是,该每个人体样本对齐模型的第i个局部块与第一重建模型的第i个局部块之间无需经过刚性变换来使得彼此对齐,换句话说,每个人体样本对齐模型的第i个局部块与第一重建模型的第i个局部块处于相同的坐标体系中。
S140,使用该N个目标对象样本对齐模型来逼近该第一重建模型,从而确定该目标对象的包括M个局部块的第二重建模型,该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,i为1,…,M,其中,i为1,…,M指的是,i的赋值依次为1,…,M。
具体地,以该目标对象为人体为例,根据每个人体样本对齐模型的第i个局部块的线性组合来确定该第二重建模型的第i个局部块,其中,该每个人体样本对齐模型的第i个局部块的线性组合,是通过利用该N个人体样本对齐模型去逼近该第一重建模型的过程中确定的,下文将结合公式(3)~(6)进行详细说明。
因此,本发明实施例提供的数据处理的方法,通过将人体的第一重建模型划分为M个局部块,并通过利用N个人体样本对齐模型来逼近该第一重建模型,来确定该人体的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个人体样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
在本发明实施例提供的方法中,基于N个人体样本对齐模型的组合,来确定该人体的第二重建模型,其中该N个人体样本对齐模型的组合是通过利用该N个人体样本对齐模型来逼近该第一重建模型的途径所确定的。这样得到的该第二重建模型,不仅较高相似度地还原该人体的第一重建模型,而且保持了人体样本模型的光滑度和准确度,从而能够较大程度地消除该第一重建模型可能包含的噪音。因此,根据本发明实施例提供的数据处理的方法,能够有效提高模型的准确度。
应理解,单个人体部位相对于整个人体来说,姿势变化空间相对较小,而在本发明实施例中,是根据每个人体样本对齐模型的第i个局部块来确定该第二重建模型的第i个局部块的,在本发明实施例中,能够基于较小规模的人体样本数据库,获取与该第一重建模型较大程度逼近的该第二重建模型。因此,本发明实施例提供的数据处理的方法,能够有效提高模型的准确度,同时也能够降低对人体样本数据库中模型数量和姿态变化的要求,具有更加广阔的应用前景。
可选地,在本发明实施例中,S110获取目标对象的第一重建模型,包括:
S111,获取该目标对象的目标对象点云数据;
以该目标对象为人体为例,具体地,分为采集人体的深度图像和提取人体点云数据两个步骤:
1)采集人体的深度图像。
下面以两个RGB-D相机为例而非限定进行描述。
两个RGB-D相机分别固定在被拍摄人体的前面和后面,使得两个相机能够拍到整个人体,例如位于前面和后面的相机各自距离人体大约2.5m至3m,本发明实施例对此不作限定。
可以使两个相机同步采集数据,具体地,可以通过标准流程标定RGB-D相机的内部参数和两个RGB-D相机之间的外部参数,以达到两个相机实现同步采集数据的目的。相机标定之后,可以将两个相机在同一时刻采集的两个深度图像对齐到同一个坐标系下。
在深度图像采集过程中,被拍摄人体可以摆出不同的姿势。
两个相机连续拍摄一段时间后,采集到人体动态变化的两个深度图像同步序列。
应理解,还可以采用三个RGB-D相机采集深度图像数据,例如两个相机拍摄人体上部分和下部分,另外一个从相反方向拍摄中间部分,每个Kinect的视角没有重叠区域,避免相互红外干扰数据丢失。
2)提取人体点云数据
(1)通过平面检测的方法,将地面检测出来,把深度图像中的地面部分删除;
(2)定义一个三维包围盒,能包含整个人体,将深度图像中除该三维包围盒之外的其他部分删除;
(3)使用统计方法将地面剩余的点删除;
(4)利用上一帧的人体点云数据提取结果作为先验知识,确定当前帧中人体的像素范围,将多余的点删除,获取到当前帧最终的人体点云数据。
应理解,在第一帧的人体点云数据的提取过程中,没有上述步骤(4)。
S112,获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型。
以该目标对象为人体为例,该预设的标准姿势指的是,标准人体站立姿势,具体地,该预设的标准人体站立姿势指的是人体数据库中规定的标准站立姿势。
首先获取该人体在该预设的标准人体站立姿势下的标准人体点云数据;然后将人体数据库中的任一个人体样本模型对齐到该人体的标准人体点云数据,该人体样本模型经过对齐步骤之后所得的模型即为该人体的模板模型。该模板模型的每个顶点在该标准人体点云数据中均具有对应的点,且每一对对应点中的两个点为最近邻的点。
换句话说,该模板模型是由人体数据库中的人体样本模型通过对齐到该人体的标准人体点云数据,而变形得到的模型。获取该模板模型主要分为以下两个步骤:
第一步,稀疏的点对应
获取该人体在该预设的标准人体站立姿势下的标准人体点云数据;假设将人体数据库中的样本模型A作为该模板模型的基础模型。
向下采样样本模型A和该人体的标准人体点云数据。例如采用文献“Coherent Point Drift(Point Set Registration:Coherent Point Drift.AndriyMyronenko,etc.PAMI 2010.”提出的对齐方法,将样本模型A初始对齐到该标准人体点云数据。具体地,例如将标准人体点云数据或样本模型A经过平移、旋转以及缩放中的至少一种的变化,最终使得标准人体点云数据中尽量多的数据点与样本模型A的顶点对齐,并尽量重合。
根据初始对齐的样本模型A和标准人体点云数据,确定二者之间的对应点。例如,针对与该标准人体点云数据对齐之后的样本模型A的顶点a1,基于三维距离在整个人体点云上找一个距离最近点,作为顶点a1在标准人体点云数据中的对应点p1。
基于这些稀疏的点对应,例如(a1,p1),将样本模型A初始对齐到该标准人体点云数据,具体地,将样本模型A经过平移、旋转以及缩放中的至少一种的变化,使之初步地对齐到该标准人体点云数据。为了便于理解和描述,将通过上述初始对齐而变形的样本模型A记为样本模型A’。
第二步,稠密的点对应
根据样本模型A’和标准人体点云数据,利用最近邻找对应点的方法,在样本模型A’和标准人体点云数据之间,建立稠密的对应点。基于该稠密的对应点,将该样本模型A’进一步对齐到该标准人体点云数据,具体地,将样本模型A’经过平移、旋转以及缩放中的至少一种的变化,使之进一步对齐到标准人体点云数据。
将样本模型A’经过上述二次对齐之后的变形模型确定为该人体的模板模型,即该模板模型较为准确地描述了该人体在标准站立姿势下的标准人体点云数据。
应理解,在最近邻方法建立对应点时,如果两个点之间的法向量角度小于90度并且距离小于0.1m,我们认为最近邻方法找到的这个对应点是合理的。使用法向量之间角度的判断条件,为避免表面前面的点和表面后面的点之间错误的匹配。
应理解,通过以上两步的点对应步骤,获得了与该具有标准站立姿势的标准人体点云数据具有点对应关系的模板模型。
应理解,上述确定模板模型的过程,可以看作为:人体数据库中的样本模型A,向着标准站立姿势的标准人体点云数据,不断变形以尽量与该标准人体点云数据对齐的过程,最终生成一个与标准站立姿势的人体点云相吻合的人体模型,即该模板模型。
S113,确定该目标对象点云数据与该模板模型的点对应关系;
具体地,可以采用采用文献“Coherent Point Drift(Point Set Registration:Coherent Point Drift.Andriy Myronenko,etc.PAMI 2010.”提出的对齐方法,确定该人体点云数据与该模板模型的点对应关系。例如将该模板模型的顶点a2在该人体点云数据中的对应点为p2,该对对应点(a2,p2)为最邻近点。
例如还可以参考上一帧的第一重建模型来建立该模板模型与当前帧的人体点云数据之间的点对应关系。
应理解,还可以采用其他的对齐方法,确定该人体点云数据与该模板模型的点对应关系,本发明实施例对此不作限定。
S114,基于骨架驱动变形技术以及该点对应关系,估计该目标对象点云数据相对于该模板模型的姿势变化参数;
S115,利用该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的该第一重建模型。
具体地,该骨架驱动技术采用一个骨架运动模型(Skeletal Motion Model)表示人体的运动,基于人体每一个小部分近似刚性运动的特性,通过皮肤权重(Skinning Weight)和线性融合技术(Linear Blend Skinning)实现光滑的人体变形。其中,骨架运动模型由一个网格化的人体模型和植入模型的人体骨架组成。人体骨架包含一些节点(Joint)和骨块(Bone)。节点之间的连接是有序的,可以用树结构来表示。每个节点定义一个旋转轴,连接该节点的骨块可以绕着这个节点的旋转轴进行任意旋转,其中,骨块的运动受到由根节点到该骨块连接的节点的整个链条(Kinematic Chain)上所有节点的运动的影响。模板模型中的每个顶点的运动可以由人体骨架中所有骨块的刚性运动的线性组合表达。模板模型中的每个顶点的运动和人体骨架中每个骨块的运动之间的相关性用一个皮肤权重(Skinning Weight)来表示,具体方法请参见现有方法“Baran,etc,Automatic rigging and animation of 3d characters.SIGGRAPH 2007,page 72.”。
具体地,图2(b)示出了骨架运动模型的示意图。该骨架运动模型包括22个节点,每个节点定义一个节点角度θn,即骨块绕着节点旋转轴旋转的角度。骨架运动模型的整体刚性变换用参数表示,该骨架运动模型的骨架姿势可以由向量表示,该骨架姿势的自由度为22+6=28。
可选地,在本发明实施例中,根据如下公式,估计该目标对象点云数据相对于该模板模型的姿势变化参数以及与该目标对象点云数据具备相同姿势的该第一重建模型:
E ( χ ) = Min Σ ( q i , p i ) ∈ C | | q i ( χ ) - p i | | 2 - - - ( 2 )
其中,qi(χ)为该第一重建模型的第i个顶点,q′i为该模板模型的第i个顶点,R为该骨架驱动技术中采用的骨架模型包括的骨块的总个数,是该模板模型的第i个顶点关于骨块g的运动权重,jg是该骨架模型中影响骨块g运动的节点的个数,是影响骨块g的第j个节点在该骨架模型中的索引,是该第j个节点的刚性变化矩阵,C为该第一重建模型与该人体点云数据之间的对应点的集合,(vi,pi)为该第一重建模型与该人体点云数据之间的对应点的集合C中的一对对应点。
应理解,本发明实施例中的该人体点云数据相对于该模板模型的姿势变化参数对应于公式(1)和(2)中的骨架姿势向量
具体地,基于上述公式(1)和(2)的多次优化迭代,例如迭代优化8次,以使得模板模型变形后所得的第一重建模型与当前帧的人体点云数据具有较好的对齐关系。可选地,可以采用Levenberg-Marquardt算法进行优化迭代。
更具体地,在上述多次优化迭代中,可以将上一帧的骨架姿势χt-1和上一帧的第一重建模型和当前帧的人体点云数据之间的对应点作为初始迭代条件,最终得到当前帧的骨架姿势χt
综上所述,通过公式(1)和(2)的多次迭代,可以估计到该人体点云数据相对于该模板模型的姿势变化参数,即公式(1)和(2)中的骨架姿势向量χ。然后将该骨架姿势向量χ带到公式(1)里边,就可以计算得到该第一重建模型中的每个顶点的坐标(对应于公式(1)中的qi(χ)),从而获得该第一重建模型。
应理解,通过上述在S114估计的该人体点云数据相对于该模板模型的姿势变化参数(对应于公式(1)和(2)中的骨架姿势向量),可以确定该第一重建模型的姿势参数,具体地,将该姿势变化参数(对应于公式(1)和(2)中的骨架姿势向量)确定为该第一重建模型的姿势参数,即该第一重建模型的姿势参数描述了该第一重建模型相对于该模板模型的姿势变化。
为了更好地体现人体细节的变形,比如肢体的局部变形和细节变形,可以在基于骨架驱动变形的基础上,进一步实现细节化的变形,使得所得的第一重建模型更加接近真实的人体。
可选地,在本发明实施例中,S110获取目标对象的第一重建模型,包括:
S111,获取该目标对象的目标对象点云数据;
具体过程同上文,为了简洁,这里不再赘述。
S112,获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
具体过程同上文,为了简洁,这里不再赘述。
S113,确定该目标对象点云数据与该模板模型的点对应关系;
具体过程同上文,为了简洁,这里不再赘述。
S114,基于骨架驱动变形技术以及该点对应关系,估计该目标对象点云数据相对于该模板模型的姿势变化参数;
S115A,利用该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的骨架变形模型,使得该骨架变形模型与该目标对象点云数据对齐;
具体地,利用上述公式(1)和(2)的多次迭代,估计估计该人体点云数据相对于该模板模型的姿势变化参数(对应于公式(1)和(2)中的骨架姿势向量)。将公式(1)中的qi(χ)看作该骨架变形模型的第i个顶点。
然后将该骨架姿势向量χ带到公式(1)里边,就可以计算得到该第一重建模型中的每个顶点的坐标(对应于公式(1)中的qi(χ)),从而获得该骨架变形模型的每个顶点的坐标(对应于公式(1)中的qi(χ)),从而获得该骨架变形模型。
S115B,基于网格变形技术对该骨架变形模型进行变形,获得该第一重建模型,使得该第一重建模型与该目标对象点云数据的形状匹配。
具体地,为骨架变形模型的每一个顶点分配一个仿射变换Xi,将骨架变形模型的每一个顶点变形到该顶点在人体点云中的对应点。所有顶点的变换整合在一起,得到一个4n*3的矩阵,变形的能量函数如下,
E ( X ) = | | W ( DX - U ) | | F 2 + α Σ i , j ∈ ϵ | | X i - X j | | F 2 - - - ( 3 )
其中,X为每个顶点的变换组成的矩阵;D是每个顶点变形之前坐标组成的矩阵;U是人体点云的对应点坐标矩阵;W是每个对应点的权重值构成的权重矩阵,ε为该骨架变形模型的所有边的集合,i,j是骨架变形模型上的一条边(骨架变形模型中任意两个相邻顶点之间的连接称为一条边)的两个顶点的索引;α为光滑项权重。
式(3)中的第一项是数据项,表示骨架变形模型上的顶点经过变形后和人体点云数据的对应点之间的距离尽量小,式(3)中的第二项是光滑项,表示一条边上的两个顶点的变换需要相似,使得整体的变形光滑。
上述细节化变形过程中,光滑项权重开始设为一个较大的值,随着迭代次数逐步减小,通过这种方式尽量减小输入数据中的强噪音给变形带来的影响。
具体地,公式(3)所示的能量函数通过最小二乘方法求解。
在本发明实施例中,当前帧的第一重建模型是该人体的模板模型依次经过骨架驱动变形和细节化变形得到的,能够更好地体现人体细节的变形,比如肢体的局部变形和细节变形,使得所得的第一重建模型更加接近真实的人体。
在本发明实施例中,还可以采用当前现有的点对齐和变形方法,例如通过现有的骨骼对齐、粗对齐和精对齐,获取人体点云数据的第一重建模型;或者,基于骨骼驱动变形的方法,将上一帧的第一重建模型与当前帧的人体点云数据对齐,然后采用Laplacian变形实现细节变形,得到当前帧的第一重建模型。
在S120中,将该第一重建模型划分为M个局部块,该第一重建模型的M个局部块中不同的局部块对应于该目标对象不同的部位,该不同部位用不同的部位名称表示,M为大于1的正整数。
具体地,例如图2(a)所示,假设该第一重建模型为图2(a)所示的人体模型,根据人体骨骼和运动特性,将第一重建模型分成了18局部块,且相邻的局部块在彼此连接处具有的共享的边界顶点,例如右手掌9和右小臂7是共享该右手掌和右小臂的连接处的边界顶点。这样能够避免后续模型重建过程中的相邻块之间边界不一致。可选地,该第一重建模型可以根据骨架模型中骨块的情况划分M个局部。
可选地,在本发明实施例中,该第一重建模型的M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
具体地,假设该第一重建模型为图2(a)所示的人体模型,假设M个局部块中的第i个局部块(例如右手掌9)和第j个局部块(例如右小臂7)是相邻的局部块,则右手掌9与右小臂7的连接处(例如右手腕)的一圈边界顶点,既属于第i个局部块(右手掌9)的顶点,也属于第j个局部块(右小臂7)的顶点。即第i个局部块(右手掌9)和第j个局部块(右小臂7)在彼此连接处具有共享的边界顶点(即右手腕上的顶点)。
将第一重建模型划分为M个局部块,且其中相邻的局部块在彼此连接处具有共享的边界顶点,这有利于后续在局部块的重建步骤中保持边界一致性,以进一步提高模型的准确度。
在S130中,获取N个目标对象样本对齐模型,每个目标对象样本对齐模型的姿势对应的姿势参数与该第一重建模型的姿势对应的姿势参数相同,且该每个目标对象样本对齐模型包括M个局部块,其中,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称所表示的部位,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对齐,N为正整数,i为1,…,M,其中,i为1,…,M指的是,i的赋值依次为1,…,M。
其中,该人体样本对齐模型可以是系统预设置好的,也可以是实时地根据人体数据库中的标准人体样本模型进行相关处理操作所得到,下文将详细进行描述。
可选地,在本发明实施例中,S130获取N个人体样本对齐模型,包括:
S131,从预设的目标对象数据库中获取N个目标对象样本模型;
具体地,本发明实施例涉及到的人体标准数据库,可以为包括190(即,N等于190)个标准站立姿势的人体模型,其中,每个人体模型包括9999个顶点和19994个三角面片。
S132,基于骨架驱动变形技术,根据该第一重建模型的姿势参数,将该N个目标对象样本模型变形为与该第一重建模型对应于相同的姿势参数的N个目标对象样本骨架变形模型;
具体地,利用在骨架驱动变形过程中确定的当前帧的姿势变换参数(对应于式(1)和(2)中确定的骨架姿势χ),将该N个人体样本模型变形为N个人体样本骨架变形模型,该人体样本骨架变形模型与该第一重建模型(或者人体点云数据)具有一致的姿势。
S133,将每个目标对象样本骨架变形模型划分为M个局部块,该每个目标对象样本骨架变形模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称表示的部位;
具体地,将经过姿势变化的N个人体样本骨架变形模型均划分为M个局部块,该M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
S134,通过对该每个目标对象样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,从而获得该N个目标对象样本对齐模型,其中,每个目标对象样本对齐模型的第i个局部块在经过该旋转、平移和缩放中的至少一种变换后与该第一重建模型的第i个局部块对齐,i为1,2,…,M。
具体地,采用现有的Procrustes analysis方法(例如,“D.G.Kendall,“Asurvey of the statistical theory of shape,”Statistical Science,vol.4,no.2,pp.87–99,1989.”),估计N个人体样本骨架变形模型中的每个人体样本骨架变形模型的M个局部块中的第i个局部块到第一重建模型的第i个局部块的刚性变换参数,根据该刚性变换参数,通过对该N个人体样本骨架变形模型中的每个人体样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,将每个人体样本骨架变形模型的第i个局部块对齐到第一重建模型的第i个局部块,从而获得该N个人体样本对齐模型。上述S134的步骤也可记为局部块对齐步骤。
应理解,通过S134所述的局部块对齐步骤所获取的N个人体样本对齐模型,较大程度低消除了与第一重建模型之间的刚性变换。从而,在S140中,人体样本对齐模型能够很好地表达第一重建模型。
在S140中,使用该N个目标对象样本对齐模型来逼近该第一重建模型,从而确定该目标对象的包括M个局部块的第二重建模型,该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,i为1,…,M,具体过程如下:
根据以下公式,获取该第二重建模型:
Ki=Bicii(i=1,...,M) (4)
其中,Ki为该第二重建模型的M个局部块中的第i个局部块,Bi为由该N个目标对象样本对齐模型的第i个局部块组成的基,μi为该N个目标对象样本对齐模型的第i个局部块的顶点坐标的平均值,ci是Bi的系数向量,其中,获得ci的公式包括:
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 ) , - - - ( 5 )
s.t. ci>0(i=1,...,M)
或,
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 + λ Σ i = 1 M | | c i | | 1 ) ; - - - ( 6 )
s.t. ci>0(i=1,...,M)
其中,Vi为该第一重建模型的第i个局部块,Γ为该每个目标对象样本对齐模型的M个局部块中相邻的局部块的集合,(i,j)∈Γ表示该每个目标对象样本对齐模型的第j个局部块为与该每个目标对象样本对齐模型的第i个局部块相邻的局部块,Bj为由该每个目标对象样本对齐模型的第j个局部块组成的基,Bij用于表达该每个目标对象样本对齐模型的第i个局部块与第j个局部块在彼此连接处的边界顶点,且Bij为Bi的子集,μij为Bij的平均值,Bji用于表达该每个目标对象样本对齐模型的第j个局部块与第i个局部块在彼此连接处的边界顶点,Bji为Bj的子集,μji为Bji的平均值,β为权重,λ为权重,||||1为L1范式,||||2为L2范式。
上述可知,式(5)中第一项表示每个人体样本对齐模型的每个局部块的线性表达与第一重建模型的对应局部块相似,换句话说,即每个人体样本对齐模型的第i个局部块的线性组合与该第一重建模型的第i个局部块的接近程度满足一定的预设条件,具体地,可以根据对模型的精确度要求指标来确定该预设条件。
应理解,单个人体部位相对于整个人体来说,姿势变化空间相对较小,因此,可以利用较小规模的人体样本数据库,就能实现较为准确地线性表达第一重建模型中每个局部块,从而本发明实施例能够降低对人体样本数据库中人体模型数量和姿态变化的要求,具有更加广阔的应用前景。
式(5)中第二项是边界约束,表示相邻的两个局部块共享的边界顶点分别在该两个局部块中的表达结果相近。
具体地,假设人体样本骨架变形模型Model1包括的M个局部块中第i个与第j个局部块为相邻的局部块,即第i个与第j个局部块在彼此连接处具有共享的边界顶点G,换句话说这些共享的边界顶点G分别在第i个与第j个局部块中的坐标(或者位置表达参数)是相同的。通过上述S134的局部块对齐步骤,即该人体样本骨架变形模型Model1的每个局部块通过旋转、平移和缩放中的至少一种变换,对齐到第一重建模型的对应局部块,记经过该局部块对齐步骤后的模型为人体样本对齐模型Model2。则在人体样本对齐模型Model2中,其包括的M个局部块中的第i个与第j个局部块可能由于上述旋转、平移和缩放中的至少一种变换,彼此不连接了,例如彼此断裂开了,则原本共享的边界顶点G在第i个局部块中为边界顶点G1、在第j个局部块中为边界顶点G2,且边界顶点G1在第i个局部块中的坐标(或者位置表达参数)与在第j个局部块中的坐标(或者位置表达参数)是不同的,类似的,边界顶点G2在第i个局部块中的坐标(或者位置表达参数)与在第j个局部块中的坐标(或者位置表达参数)也不同。该情况不利于局部块重建过程中的边界一致性。
公式(5)中的第二项就是为了解决上述问题的,公式(5)中的第二项是边界约束,表示相邻的两个局部块共享的边界顶点在分别该两个相邻局部块中的表达结果相近,换句话说,让相邻的两个局部块共享的边界顶点在分别该两个相邻局部块中的表达结果满足一定预设条件,其中该预设条件可以根据具体的模型精度要求具体确定。
即通过公式(5)中的第二项所表示的约束条件,有效弥补了在上述局部块对齐过程中所产生的边界不一致的问题。
从公式(5)还可知,Bi的系数向量ci均大于零(即系数向量ci的每一个元素都是正的),即符合系数正约束的条件,能够提高对强噪音的鲁棒性。
在本发明实施例中,结合公式(4)和公式(5),通过M个局部块的线性表达来确定该第一重建模型的第二重建模型,能够有效提高模型的准确性,同时,也能够降低对人体样本数据库的模型数量和模型姿势的要求,具有更加广阔的应用前景。
除了利用公式(5)确定Bi的系数向量ci之外,还可以根据公式(6)来确定Bi的系数向量ci
与公式(5)类似,式(6)中第一项表示每个人体样本对齐模型的每个局部块的线性表达和第一重建模型的对应局部块相似;第二项是边界约束,表示相邻的两个局部块共享的边界顶点分别在该两个局部块中的表达结果相近;Bi的系数向量ci均大于零,即符合系数正约束的条件。与公式(5)不同的是,式(6)还包括第三项,该第三项表示线性表达系数稀疏约束的条件(即系数向量ci的元素等于零的尽量多)。应理解系数正约束和系数稀疏约束,能够提高对强噪音的鲁棒性。
这部分为基于sparse coding的基本思想的基于局部块的全局重建算法。sparse coding问题可以用如下公式表示:
Min c i | | Ac - b | | 2 2 + λ | | c i | | 1 , s . t . c > 0 C = ( c 1 T , c 2 T , . . . , c M T ) T - - - ( 7 )
可以采用L1-minimization方法求解公式(5)
通常提取的人体点云数据包含有噪音,因此,对应的第一重建模型中也包含噪音。本发明实施例提供的基于局部块的人体建模方法,通过局部块的线性表达、边界一致性条件、系数正约束条件以及系数稀疏约束条件,能够有效降低引入到人体模型中的噪音,模型的准确性较高。
因此,本发明实施例提供的数据处理的方法,通过将人体的第一重建模型划分为M个局部块,并通过利用N个人体样本对齐模型来逼近该第一重建模型,来确定该人体的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个人体样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
可选地,在本发明实施例中,所有的模型的分块策略可以是基于同一个策略。例如根据相同的分块策略将第一重建模型划分为M个局部块,并将目标对象样本对齐模型划分为M个局部块。
可选地,在本发明实施例中,S120根据分块策略,将第一重建模型划分为M个局部块,其中M也可以等于1,则获取第二重建模型的过程可以为:通过N个人体样本对齐模型中每个人体样本对齐模型在整个人体空间上的线性组合来表达该第一重建模型,当N个人体样本对齐模型的线性组合与该第一重建模型的接近程度满足预设条件时,将对应的N个人体样本对齐模型的线性组合确定为该第一重建模型的重建模型。通过上述线性组合表达,也能够在一定程度上提高重建模型的准确度。
可选地,在本发明实施例中,该方法还包括:
S150,对该第二重建模型进行平滑优化处理。
具体地,例如采用文献“Kangkan Wang,etc.A Two-Stage Framework for 3DFace Reconstruction from RGBD Images.PAMI 2014.Volume:36,Issue:8,Pages 1493-1504.”提到的表面优化算法,对S140获取的第二重建模型进一步光滑优化处理。
具体步骤如下:
第二重建模型的每个三角面片的三个顶点和垂直三角面片上的一个点,在变形前后,可以决定一个仿射变换。第四点的坐标可以由三个顶点的坐标通过以下公式计算:
V 4 = V 1 + ( V 2 - V 1 ) × ( V 3 - V 1 ) / | ( V 2 - V 1 ) × ( V 3 - V 1 ) | - - - ( 8 )
其中,V1,V2,V3为三角面片上的三个顶点。
三角面片的仿射变换可以写为:
Tv i + d = v ~ i , i ∈ 1 , . . . 4 - - - ( 9 )
其中,是变形之后的点。通过变形可以得到:
T = Q ~ · Q - 1 - - - ( 10 )
其中, q = v 2 - v 1 v 3 - v 1 v 4 - v 1 Q ~ = v ~ 2 - v ~ 1 v ~ 3 - v ~ 1 v ~ 4 - v ~ 1
以上公式表明,三角面片的仿射变换可以通过变换之后的顶点坐标线性表示。
表面优化的能量函数:
{ v ~ k } k - 1 n = Min v 1 , v 2 , . . . , v n w 1 Σ i = 1 | T | Σ j ∈ adj ( i ) | | T i - T j | | F 2 + w 2 Σ i = 1 | T | | | v i - c j | | 2 - - - ( 11 )
其中,|T|是模板模型上的三角面片个数,adj(i)是第i个三角面片的相邻三角面片集合,ci是模板模型第i个顶点在第二重建模型上的对应顶点。第一项是光滑项,表示相邻三角面片的变换需要相近。第二项是数据项,表示模板模型顶点变形之后,需要和第二重建模型上的对应点坐标对齐。该能量函数是一个最小二乘问题,可用标准方法求解。
因此,本发明实施例提供的数据处理的方法,通过将人体的第一重建模型划分为M个局部块,并通过利用N个人体样本对齐模型来逼近该第一重建模型,来确定该人体的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个人体样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
应理解,上文都是针对当前帧的人体点云的第二重建模型进行描述,当整个时间序列上的人体点云数据都经过S110至S150的处理,即得到整个时间序列上的经过平滑处理的第二重建模型后,还可以对整个时间序列上的第二重建模型经过时序光滑处理。
可选地,在本发明实施例中,该方法100还包括:
S160,对整个时间序列上的第二重建模型进行光滑优化处理,获取到所有帧的全局优化模型。
具体地,当所有帧的人体模型都重建之后,即,所有帧的第二重建模型都经过平滑处理后,对整个时间序列上的经过平滑处理之后的第二重建模型进行光滑处理,获取到所有帧的全局优化模型,上述过程也可称之为时序光滑(Temporal Filtering)处理。目前,时序光滑的算法比较多,可以采用Hodrick-Prescott filtering算法。
应理解,通过对整个时间序列上作光滑优化处理,能够有效地消除了整个序列上可能存在的抖动。
应理解,在本发明实施例中,基于人体是articulated的假设。
人体三维建模具有深远的研究意义和广泛的商业应用价值,RGB-D相机操作简单和价格便宜,动态人体的重建算法可应用于视频会议系统中的增强现实展示,可实时采集并传输待展示的动态人体三维模型。本发明中基于局部块的全局建模算法将人体的三维姿态用低维的sparse coding解来表示,可以应用到三维人体的编码传输中:将信息量巨大的人体的模型库提前放置于接收端,发送端只需传送sparse coding解。
图3示出了针对一个或多个RGB-D相机同时拍摄的人体的深度数据序列,根据本发明实施例提供的数据处理的方法的处理结果。
如图3(a)所示,采用前后放置的两个RGB-D相机同时拍摄人体的深度数据序列,具体地,图3(a)示出的是两个姿势深度图像,每一行是同一个姿势的前后两个RGB-D相机拍摄的深度图。
以图3(a)所示的两个姿势的深度图作为处理对象,根据本发明实施例提供的数据处理的方法,处理结果如图3(b)所示,图3(b)示出了两个姿势下的重建模型,并从两个角度显示。
从图3中可知,根据本发明实施例提供的数据处理的方法,都能重建出真实而且光滑的人体模型。
图4示出采用本发明实施例提供的数据处理的方法所得的人体建模结果。
测试的序列一共有321帧,得到了一个动态的人体模型序列,图4只示出其中第40、140、180和280帧的建模结果。其中图4(a)为彩色图像;图4(b)为深度图像;图4(c)示出了采用本发明实施例提供的数据处理的方法所得的建模结果;图4(d)示出了采用本发明实施例提供的数据处理的方法所得的建模结果另一个角度显示的结果。
从图4中可知,在人体姿势变化很大的情况下,根据本发明实施例提供的数据处理的方法,都能重建出真实而且光滑的人体模型。
因此,本发明实施例提供的数据处理的方法,通过基于局部块的全局人体重建方法,可以在输入的深度图中有强噪声和漏洞的情形下,较为准确地重建人体的动态三维模型,同时,在建模过程中,只需使用一个数量少、标准姿态的人体数据库,就可重建出人体形状和姿态各种变化的人体模型,建模过程相对简单,具有更加广阔的应用前景。
应理解,在本发明实施例中,采用数量越多的Kinect RGB-D相机采集人体深度数据,最终得到的第二重建模型的准确性越高。但是本发明实施例并不严格限制Kinect RGB-D相机的数量,例如,在本发明实施例中,通过一个Kinect RGB-D相机采集深度图像数据,也可以基于局部块的方法得到较为准确的人体模型。即本发明实施例提供的数据处理的方法对Kinect RGB-D相机的数量没有严格的限制,建模过程的成本较低,具有较广的应用场景。
因此,本发明实施例提供的数据处理的方法,通过将人体的第一重建模型划分为M个局部块,并通过利用N个人体样本对齐模型来逼近该第一重建模型,来确定该人体的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个人体样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。同时,在本发明实施例中,能够基于较小规模的人体样本数据库,获取与该第一重建模型较大程度逼近的该第二重建模型。因此,本发明实施例提供的数据处理的方法,同时也能够降低对人体样本数据库中模型数量和姿态变化的要求,具有更加广阔的应用前景。本发明实施例提出的数据处理的方法,还可以应用到计算机图形学和视觉领域其他动态物体的建模中。
上文中以目标对象为人体示例,描述了本发明实施例提供的基于局部块的模型重建的方法,应理解,该目标对象也可以动物或者其他动态物体。本领域技术人员根据上文给出的基于人体建模的例子,显然可以进行各种等价的修改或变化,以获取到动物或者动态物体的建模方案,这样的修改或变化也落入本发明实施例的范围内。
基于上述技术方案,本发明实施例提供的数据处理的方法,通过将目标对象的第一重建模型划分为M个局部块,并通过利用N个目标对象样本对齐模型来逼近该第一重建模型,来确定该目标对象的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
上文中结合图1至图4,描述了根据本发明实施例的数据处理的方法,下面将结合图5和图6,描述根据本发明实施例的数据处理的装置。
图5示出了根据本发明实施例的数据处理的装置200的示意性框图。如图5所示,该装置200包括:
第一获取模块210,用于获取目标对象的第一重建模型;
具体地,该第一重建模型可以是基于该人体的人体点云数据而重建的用于描述该人体点云数据的模型。其中,该第一重建模型具体指的是预设的人体数据库中的人体样本模型对齐到该人体的人体点云数据以后所确定的模型,这里的对齐指的是该第一重建模型与人体点云数据具有点对齐关系,具体来说,该第一重建模型包括的每个顶点在该人体的人体点云数据中具有对应的点,每对对应点中的两个点为最邻近的点。
由于人体点云数据是基于照相机所拍摄的该人体的深度图像数据所采集的数据,因此该人体点云数据中通常包含有强噪音,因此,基于人体点云数据所得的该第一重建模型中也包含了噪音,模型精度较差,需要对其作进一步地处理,以提高模型的精度。
划分模块220,用于将该获取模块获取的该第一重建模型划分为M个局部块,该第一重建模型的M个局部块中不同的局部块对应于该目标对象不同的部位,该不同部位用不同的部位名称表示,M为大于1的正整数;
具体地,假设该第一重建模型如图2(a)所示的人体模型,将该模型划分为16个局部块,其中每个局部块对应于人体不同的部位,且不同的部位用不同的部位名称来表示,如图2(a)所示,利用一组数字序列来表示不同的局部块。
第二获取模块230,用于获取N个目标对象样本对齐模型,每个目标对象样本对齐模型的姿势对应的姿势参数与该第一获取模块获取的该第一重建模型的姿势对应的姿势参数相同,且该每个目标对象样本对齐模型包括M个局部块,其中,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称所表示的部位,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对齐,N为正整数,i为1,…,M,其中,i为1,…,M指的是,i的赋值依次为1,…,M;
具体地,该人体样本对齐模型指的是预设的人体数据库中标准的人体样本模型经过一定处理后的模型。例如人体样本模型经过姿势变换,使得姿势变化后的人体样本模型(即该人体样本对齐模型)与该人体的第一重建模型对应的姿势参数相同,换句话说与第一重建模型具有一致的姿势。例如,如果该人体的第一重建模型的姿势为下蹲,该人体样本对齐模型也具有下蹲的姿势,这样有利于保证后续模型重建过程中的边界一致约束条件。
该每个人体样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该人体的用同一个部位名称所表示的部位,指的是,假设人体的第一重建模型如图2(a)所示的划分为16个局部块,该人体样本对齐模型也划分为如图2(a)所示的16个局部块,且该人体样本对齐模型的第i个局部块与第一重建模型的第i个局部块指示该人体的同一个部位,例如该人体样本对齐模型的第i个局部块与第一重建模型的第i个局部块均对应于如2(a)中所示的局部块3。
该每个人体样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对齐,其中对齐指的是,该每个人体样本对齐模型的第i个局部块与第一重建模型的第i个局部块之间无需经过刚性变换来使得彼此对齐,换句话说,每个人体样本对齐模型的第i个局部块与第一重建模型的第i个局部块处于相同的坐标体系中。
确定模块240,用于使用该第二获取模块获取的该N个目标对象样本对齐模型来逼近该第一获取模块获取的该第一重建模型,从而确定该目标对象的包括M个局部块的第二重建模型,该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,i为1,…,M,其中,i为1,…,M指的是,i的赋值依次为1,…,M。
具体地,例如,根据每个人体样本对齐模型的第i个局部块的线性组合来确定该第二重建模型的第i个局部块,其中,该每个人体样本对齐模型的第i个局部块的线性组合,是通过利用该N个人体样本对齐模型去逼近该第一重建模型的过程中确定的。
因此,本发明实施例提供的数据处理的装置,通过将人体的第一重建模型划分为M个局部块,并通过利用N个人体样本对齐模型来逼近该第一重建模型,来确定该人体的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个人体样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
可选地,在本发明实施例中,该第一获取模块获取的该第一重建模型的M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
具体地,例如,假设M个局部块中的第i个局部块(例如右手掌)和第j个局部块(例如右小臂)是相邻的局部块,则右手掌与右小臂的连接处(例如右手腕)的一圈边界顶点,既属于第i个局部块(右手掌)的顶点,也属于第j个局部块(右小臂)的顶点。即第i个局部块(右手掌)和第j个局部块(右小臂)在彼此连接处具有共享的边界顶点(即右手腕上的顶点)。
该划分模块220根据分块策略,将第一重建模型划分为M个局部块,且其中相邻的局部块在彼此连接处具有共享的边界顶点,这有利于后续在局部块的重建步骤中保持边界一致性,以进一步提高模型的准确度。
可选地,在本发明实施例中,该确定模块具体用于,
根据以下公式,获取该第二重建模型:
Ki=Bicii(i=1,...,M) (4)
其中,Ki为该第二重建模型的M个局部块中的第i个局部块,Bi为由该N个目标对象样本对齐模型的第i个局部块组成的基,μi为该N个目标对象样本对齐模型的第i个局部块的顶点坐标的平均值,ci是Bi的系数向量,其中,获得ci的公式包括:
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 ) , - - - ( 5 )
s.t. ci>0(i=1,...,M)
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 + λ Σ i = 1 M | | c i | | 1 ) ; - - - ( 6 )
s.t. ci>0(i=1,...,M)
其中,Vi为该第一重建模型的第i个局部块,Γ为该每个目标对象样本对齐模型的M个局部块中相邻的局部块的集合,(i,j)∈Γ表示该每个目标对象样本对齐模型的第j个局部块为与该每个目标对象样本对齐模型的第i个局部块相邻的局部块,Bj为由该每个目标对象样本对齐模型的第j个局部块组成的基,Bij用于表达该每个目标对象样本对齐模型的第i个局部块与第j个局部块在彼此连接处的边界顶点,且Bij为Bi的子集,μij为Bij的平均值,Bji用于表达该每个目标对象样本对齐模型的第j个局部块与第i个局部块在彼此连接处的边界顶点,Bji为Bj的子集,μji为Bji的平均值,β为权重,λ为权重,||||1为L1范式,||||2L2范式。
上述可知,式(5)中第一项表示每个人体样本对齐模型的每个局部块的线性表达与第一重建模型的对应局部块相似,换句话说,即每个人体样本对齐模型的第i个局部块的线性组合与该第一重建模型的第i个局部块的接近程度满足一定的预设条件,具体地,可以根据对模型的精确度要求指标来确定该预设条件。
应理解,单个人体部位相对于整个人体来说,姿势变化空间相对较小,因此,可以利用较小规模的人体样本数据库,就能实现较为准确地线性表达第一重建模型中每个局部块,从而本发明实施例能够降低对人体样本数据库中人体模型数量和姿态变化的要求,具有更加广阔的应用前景。
式(5)中第二项是边界约束,表示相邻的两个局部块共享的边界顶点分别在该两个局部块中的表达结果相近。
具体地,假设人体样本骨架变形模型Model1包括的M个局部块中第i个与第j个局部块为相邻的局部块,即第i个与第j个局部块在彼此连接处具有共享的边界顶点G,换句话说这些共享的边界顶点G分别在第i个与第j个局部块中的坐标(或者位置表达参数)是相同的。通过上述S134的局部块对齐步骤,即该人体样本骨架变形模型Model1的每个局部块通过旋转、平移和缩放中的至少一种变换,对齐到第一重建模型的对应局部块,记经过该局部块对齐步骤后的模型为人体样本对齐模型Model2。则在人体样本对齐模型Model2中,其包括的M个局部块中的第i个与第j个局部块可能由于上述旋转、平移和缩放中的至少一种变换,彼此不连接了,例如彼此断裂开了,则原本共享的边界顶点G在第i个局部块中为边界顶点G1、在第j个局部块中为边界顶点G2,且边界顶点G1在第i个局部块中的坐标(或者位置表达参数)与在第j个局部块中的坐标(或者位置表达参数)是不同的,类似的,边界顶点G2在第i个局部块中的坐标(或者位置表达参数)与在第j个局部块中的坐标(或者位置表达参数)也不同。该情况不利于局部块重建过程中的边界一致性。
公式(5)中的第二项就是为了解决上述问题的,公式(5)中的第二项是边界约束,表示相邻的两个局部块共享的边界顶点在分别该两个相邻局部块中的表达结果相近,换句话说,让相邻的两个局部块共享的边界顶点在分别该两个相邻局部块中的表达结果满足一定预设条件,其中该预设条件可以根据具体的模型精度要求具体确定。
即通过公式(5)中的第二项所表示的约束条件,有效弥补了在上述局部块对齐过程中所产生的边界不一致的问题。
从公式(5)还可知,Bi的系数向量ci均大于零(即系数向量ci的每一个元素都是正的),即符合系数正约束的条件,能够提高对强噪音的鲁棒性。
在本发明实施例中,结合公式(4)和公式(5),通过M个局部块的线性表达来确定该第一重建模型的第二重建模型,能够有效提高模型的准确性,同时,也能够降低对人体样本数据库的模型数量和模型姿势的要求,具有更加广阔的应用前景。
除了利用公式(5)确定Bi的系数向量ci之外,还可以根据公式(6)来确定Bi的系数向量ci
与公式(5)类似,式(6)中第一项表示每个人体样本对齐模型的每个局部块的线性表达和第一重建模型的对应局部块相似;第二项是边界约束,表示相邻的两个局部块共享的边界顶点分别在该两个局部块中的表达结果相近;Bi的系数向量ci均大于零,即符合系数正约束的条件。与公式(5)不同的是,式(6)还包括第三项,该第三项表示线性表达系数稀疏约束的条件(即系数向量ci的元素等于零的尽量多)。应理解系数正约束和系数稀疏约束,能够提高对强噪音的鲁棒性。
这部分为基于sparse coding的基本思想的基于局部块的全局重建算法。sparse coding问题可以用如下公式表示:
Min c i | | Ac - b | | 2 2 + λ | | c i | | 1 , s . t . c > 0 C = ( c 1 T , c 2 T , . . . , c M T ) T - - - ( 7 )
可以采用L1-minimization方法求解公式(5)
通常提取的人体点云数据包含有噪音,因此,对应的第一重建模型中也包含噪音。本发明实施例提供的基于局部块的人体建模方法,通过局部块的线性表达、边界一致性条件、系数正约束条件以及系数稀疏约束条件,能够有效降低引入到人体模型中的噪音,模型的准确性较高。
可选地,在本发明实施例中,该第一获取模块210包括:
第一获取单元211,用于获取该目标对象的目标对象点云数据;
具体地,分为采集人体的深度图像和提取人体点云数据两个步骤:
采集人体的深度图像;2)提取人体点云数据。具体步骤同上述方法侧相关描述,为了简洁,这里不再赘述。
第二获取单元212,用于获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
具体地,该预设的标准人体站立姿势指的是人体数据库中规定的标准站立姿势。首先获取该人体在该预设的标准人体站立姿势下的标准人体点云数据,然后将人体数据库中的任一个人体样本模型对齐到该人体的标准人体点云数据,该人体样本模型经过对齐之后所得的模型即为该人体的模板模型。该模板模型的每个顶点在该标准人体点云数据中均具有对应的点,且每一对对应点中的两个点为最近邻的点。
换句话说,该模板模型是由人体数据库中的人体样本模型通过对齐该人体的标准人体点云数据,而变形得到的模型。获取该模板模型主要分为以下两个步骤:
第一步,稀疏的点对应
确定人体数据库中的一个样本模型A,作为将要变形为模板模型的基础。
向下采样样本模型A和该人体在标准站立姿势下的标准人体点云数据。例如采用文献“Coherent Point Drift(Point Set Registration:Coherent Point Drift.Andriy Myronenko,etc.PAMI 2010.”提出的对齐方法,将样本模型A初始对齐到该标准人体点云数据。具体地,例如将标准人体点云数据或样本模型A经过平移、旋转以及缩放中的至少一种的变化,最终使得标准人体点云数据中尽量多的数据点与样本模型A的顶点对齐,并尽量重合。
根据初始对齐的样本模型A和标准人体点云数据,确定二者之间的对应点。例如,针对与该标准人体点云数据对齐之后的样本模型A的顶点a1,基于三维距离在整个人体点云上找一个距离最近点,作为顶点a1在标准人体点云数据中的对应点p1。
基于这些稀疏的点对应,例如(a1,p1),将样本模型A初始对齐到该标准人体点云数据,具体地,将样本模型A经过平移、旋转以及缩放中的至少一种的变化,使之初步地对齐到该标准人体点云数据。为了便于理解和描述,将通过上述初始对齐而变形的样本模型A记为样本模型A’。
第二步,稠密的点对应
根据样本模型A’和标准人体点云数据,利用最近邻找对应点的方法,在样本模型A’和标准人体点云数据之间,建立稠密的对应点。基于该稠密的对应点,将该样本模型A’进一步对齐到该标准人体点云数据,具体地,将样本模型A’经过平移、旋转以及缩放中的至少一种的变化,使之进一步对齐到标准人体点云数据。
将样本模型A’经过上述二次对齐之后的变形模型确定为该人体的模板模型,即该模板模型较为准确地描述了该人体在标准站立姿势下的标准人体点云数据。
应理解,在最近邻方法建立对应点时,如果两个点之间的法向量角度小于90度并且距离小于0.1m,我们认为最近邻方法找到的这个对应点是合理的。使用法向量之间角度的判断条件,为避免表面前面的点和表面后面的点之间错误的匹配。
应理解,通过以上两步的点对应步骤,获得了与该具有标准站立姿势的标准人体点云数据具有点对应关系的模板模型。
确定单元213,用于确定该第一获取单元获取的该目标对象点云数据与该第二获取单元获取的该模板模型的点对应关系;
具体地,可以采用采用文献“Coherent Point Drift(Point Set Registration:Coherent Point Drift.Andriy Myronenko,etc.PAMI 2010.”提出的对齐方法,确定该人体点云数据与该模板模型的点对应关系。例如将该模板模型的顶点a2在该人体点云数据中的对应点为p2,该对对应点(a2,p2)为最邻近点。
例如还可以参考上一帧的第一重建模型来建立该模板模型与当前帧的人体点云数据之间的点对应关系。
应理解,还可以采用其他的对齐方法,确定该人体点云数据与该模板模型的点对应关系,本发明实施例对此不作限定。
估计单元214,用于基于骨架驱动变形技术以及该确定单元确定的该点对应关系,估计该第一获取单元确定的该目标对象点云数据相对于该第二获取单元确定的该模板模型的姿势变化参数;
第一变形单元215,利用该估计单元估计的该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的该第一重建模型。
具体地,该骨架驱动技术采用一个骨架运动模型(Skeletal Motion Model)表示人体的运动,基于人体每一个小部分近似刚性运动的特性,通过皮肤权重(Skinning Weight)和线性融合技术(Linear Blend Skinning)实现光滑的人体变形。其中,骨架运动模型由一个网格化的人体模型和植入模型的人体骨架组成。人体骨架包含一些节点(Joint)和骨块(Bone)。节点之间的连接是有序的,可以用树结构来表示。每个节点定义一个旋转轴,连接该节点的骨块可以绕着这个节点的旋转轴进行任意旋转,其中,骨块的运动受到由根节点到该骨块连接的节点的整个链条(Kinematic Chain)上所有节点的运动的影响。模板模型中的每个顶点的运动可以由人体骨架中所有骨块的刚性运动的线性组合表达。模板模型中的每个顶点的运动和人体骨架中每个骨块的运动之间的相关性用一个皮肤权重(Skinning Weight)来表示,具体方法请参见现有方法“Baran,etc,Automatic rigging and animation of 3d characters.SIGGRAPH 2007,page 72.”。
具体地,图2(b)示出了骨架运动模型的示意图。该骨架运动模型包括22个节点,每个节点定义一个节点角度θn,即骨块绕着节点旋转轴旋转的角度。骨架运动模型的整体刚性变换用参数表示,该骨架运动模型的骨架姿势可以由向量表示,该骨架姿势的自由度为22+6=28。
可选地,在本发明实施例中,根据如下公式,确定该第一获取单元确定的该目标对象点云数据相对于该第二获取单元确定的该模板模型的姿势变化参数以及与该目标对象点云数据具备相同姿势的该第一重建模型:
E ( χ ) = Min Σ ( q i , p i ) ∈ C | | q i ( χ ) - p i | | 2 - - - ( 2 )
其中,qi(χ)为该第一重建模型的第i个顶点,q′i为该模板模型的第i个顶点,R为该骨架驱动技术中采用的骨架模型包括的骨块的总个数,是该模板模型的第i个顶点关于骨块g的运动权重,jg是该骨架模型中影响骨块g运动的节点的个数,是影响骨块g的第j个节点在该骨架模型中的索引,是该第j个节点的刚性变化矩阵,C为该第一重建模型与该人体点云数据之间的对应点的集合,(vi,pi)为该第一重建模型与该人体点云数据之间的对应点的集合C中的一对对应点。
应理解,本发明实施例中的该人体点云数据相对于该模板模型的姿势变化参数对应于公式(1)和(2)中的骨架姿势向量
具体地,基于上述公式(1)和(2)的多次优化迭代,例如迭代优化8次,以使得模板模型变形后所得的第一重建模型与当前帧的人体点云数据具有较好的对齐关系。可选地,可以采用Levenberg-Marquardt算法进行优化迭代。
更具体地,在上述多次优化迭代中,可以将上一帧的骨架姿势χt-1和上一帧的第一重建模型和当前帧的人体点云数据之间的对应点作为初始迭代条件,最终得到当前帧的骨架姿势χt
综上所述,通过公式(1)和(2)的多次迭代,可以估计到该人体点云数据相对于该模板模型的姿势变化参数,即公式(1)和(2)中的骨架姿势向量χ。然后将该骨架姿势向量χ带到公式(1)里边,就可以计算得到该第一重建模型中的每个顶点的坐标(对应于公式(1)中的qi(χ)),从而获得该第一重建模型。
应理解,通过上述在S114估计的该人体点云数据相对于该模板模型的姿势变化参数(对应于公式(1)和(2)中的骨架姿势向量),可以确定该第一重建模型的姿势参数,具体地,将该姿势变化参数(对应于公式(1)和(2)中的骨架姿势向量)确定为该第一重建模型的姿势参数,即该第一重建模型的姿势参数描述了该第一重建模型相对于该模板模型的姿势变化。
了更好地体现人体细节的变形,比如肢体的局部变形和细节变形,可以在基于骨架驱动变形的基础上,进一步实现细节化的变形,使得所得的第一重建模型更加接近真实的人体。
可选地,在本发明实施例中,该第一获取模块210包括:
第一获取单元211,用于获取该目标对象的目标对象点云数据;
第二获取单元212,用于获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定单元213,用于确定该第一获取单元获取的该目标对象点云数据与该第二获取单元获取的该模板模型的点对应关系;
估计单元214,用于基于骨架驱动变形技术以及该确定单元确定的该点对应关系,估计该第一获取单元确定的该目标对象点云数据相对于该第二获取单元确定的该模板模型的姿势变化参数;
第一获取单元211、第二获取单元212、确定单元213和估计单元214的具体描述请参见上文,为了简洁,这里不再赘述。
第二变形单元215A,用于利用该估计单元估计的该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的骨架变形模型,使得该骨架变形模型与该目标对象点云数据对齐;
第三变形单元215B,用于基于网格变形技术对该第二变形单元得到的该骨架变形模型进行变形,获得该第一重建模型,使得该第一重建模型与该目标对象点云数据的形状匹配。
具体地,为骨架变形模型的每一个顶点分配一个仿射变换Xi,将骨架变形模型的每一个顶点变形到该顶点在人体点云中的对应点。所有顶点的变换整合在一起,得到一个4n*3的矩阵,变形的能量函数如下,
E ( X ) = | | W ( DX - U ) | | F 2 + α Σ i , j ∈ ϵ | | X i - X j | | F 2 - - - ( 3 )
其中,X为每个顶点的变换组成的矩阵;D是每个顶点变形之前坐标组成的矩阵;U是人体点云的对应点坐标矩阵;W是每个对应点的权重值构成的权重矩阵,ε为该骨架变形模型的所有边的集合,i,j是骨架变形模型上的一条边(骨架变形模型中任意两个相邻顶点之间的连接称为一条边)的两个顶点的索引;α为光滑项权重。
式(3)中的第一项是数据项,表示骨架变形模型上的顶点经过变形后和人体点云数据的对应点之间的距离尽量小,式(3)中的第二项是光滑项,表示一条边上的两个顶点的变换需要相似,使得整体的变形光滑。
上述细节化变形过程中,光滑项权重开始设为一个较大的值,随着迭代次数逐步减小,通过这种方式尽量减小输入数据中的强噪音给变形带来的影响。
具体地,公式(3)所示的能量函数通过最小二乘方法求解。
在本发明实施例中,当前帧的第一重建模型是该人体的模板模型依次经过骨架驱动变形和细节化变形得到的,能够更好地体现人体细节的变形,比如肢体的局部变形和细节变形,使得所得的第一重建模型更加接近真实的人体。
在本发明实施例中,还可以采用当前现有的点对齐和变形方法,例如通过现有的骨骼对齐、粗对齐和精对齐,获取人体点云数据的第一重建模型;或者,基于骨骼驱动变形的方法,将上一帧的第一重建模型与当前帧的人体点云数据对齐,然后采用Laplacian变形实现细节变形,得到当前帧的第一重建模型。
可选地,在本发明实施例中,该第二获取模块230包括:
第三获取单元231,用于从预设的目标对象数据库中获取N个目标对象样本模型;
具体地,本发明实施例涉及到的人体标准数据库,可以为包括190个标准站立姿势的人体模型。即该第二获取模块获取人体标准数据库中的190(即,N等于190)个具有标准站姿的人体模型。
第四变形单元232,用于基于骨架驱动变形技术,根据该第一重建模型的姿势参数,将该第三获取单元获取的该N个目标对象样本模型变形为与该第一重建模型对应于相同的姿势参数的N个目标对象样本骨架变形模型;
具体地,利用在骨架驱动变形过程中确定的当前帧的姿势变换参数(对应于式(1)和(2)中确定的骨架姿势χ),将该N个人体样本模型变形为N个人体样本骨架变形模型,该人体样本骨架变形模型与该第一重建模型(或者人体点云数据)具有一致的姿势。
划分单元233,用于将该第四变形单元得到的每个目标对象样本骨架变形模型划分为M个局部块,该每个目标对象样本骨架变形模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称表示的部位;
具体地,将经过姿势变化的N个人体样本骨架变形模型均划分为M个局部块,该M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
第四获取单元234,用于通过对该划分单元得到的该每个目标对象样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,从而获得该N个目标对象样本对齐模型,其中,每个目标对象样本对齐模型的第i个局部块在经过该旋转、平移和缩放中的至少一种变换后与该第一重建模型的第i个局部块对齐,i为1,2,…,M。
具体地,采用现有的Procrustes analysis方法(例如,“D.G.Kendall,“Asurvey of the statistical theory of shape,”Statistical Science,vol.4,no.2,pp.87–99,1989.”),估计N个人体样本骨架变形模型中的每个人体样本骨架变形模型的M个局部块中的第i个局部块到第一重建模型的第i个局部块的刚性变换参数,根据该刚性变换参数,通过对该N个人体样本骨架变形模型中的每个人体样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,将每个人体样本骨架变形模型的第i个局部块对齐到第一重建模型的第i个局部块,从而获得该N个人体样本对齐模型。上述S134的步骤也可记为局部块对齐步骤。
应理解,通过S134所述的局部块对齐步骤所获取的N个人体样本对齐模型,较大程度低消除了与第一重建模型之间的刚性变换。从而,在S140中,人体样本对齐模型能够很好地表达第一重建模型。
可选地,在本发明实施例中,该装置还包括:
优化模块250,用于对该第二重建模型进行平滑优化处理。
具体地,该优化模块250用于,例如采用文献“Kangkan Wang,etc.ATwo-Stage Framework for 3D Face Reconstruction from RGBD Images.PAMI2014.Volume:36,Issue:8,Pages 1493-1504.”提到的表面优化算法,对S140获取的第二重建模型进一步光滑优化处理。
应理解,上文都是针对当前帧的人体点云的第二重建模型进行描述,当整个时间序列上的人体点云数据都经过第一获取模块210、划分模块220、第二获取模块230、确定模块240以及优化模块250的处理,即得到整个时间序列上的经过平滑处理的第二重建模型后,还可以对整个时间序列上的第二重建模型经过时序光滑处理。
可选地,在本发明实施例中,该装置200还包括:
全局优化模块260,用于对整个时间序列上的第二重建模型进行光滑优化处理,获取到所有帧的全局优化模型。
具体地,当优化模块250对所有帧的第二重建模型都经过平滑处理后,该全局优化模块260用于,对整个时间序列上的经过平滑处理之后的第二重建模型进行光滑处理,获取到所有帧的全局优化模型,上述过程也可称之为时序光滑(Temporal Filtering)处理。目前,时序光滑的算法比较多,该全局优化模块260可以采用Hodrick-Prescott filtering算法。
应理解,通过对整个时间序列上作光滑优化处理,能够有效地消除了整个序列上可能存在的抖动。
因此,本发明实施例提供的数据处理的装置,通过将人体的第一重建模型划分为M个局部块,并通过利用N个人体样本对齐模型来逼近该第一重建模型,来确定该人体的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个人体样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
应理解,根据本发明实施例的数据处理的装置200中的各个模块的上述和其它操作和/或功能分别为了实现图1至图4中的各个方法的相应流程,为了简洁,在此不再赘述。
上文结合图5以目标对象为人体示例,描述了本发明实施例提供的数据处理的装置,应理解,该目标对象也可以动物或者其他动态物体。本领域技术人员根据上文给出的基于人体建模的例子,显然可以进行各种等价的修改或变化,以获取到动物或者动态物体的建模方案,这样的修改或变化也落入本发明实施例的范围内。
基于上述技术方案,本发明实施例提供的数据处理的装置,通过将目标对象的第一重建模型划分为M个局部块,并通过利用N个目标对象样本对齐模型来逼近该第一重建模型,来确定该目标对象的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
如图6所示,本发明实施例还提供了一种数据处理的装置300,该装置300包括处理器310、存储器320、总线系统330。其中,处理器310和存储器320通过总线系统330相连,该存储器320用于存储指令,该处理器310用于执行该存储器320存储的指令,用于:
获取目标对象的第一重建模型;
将该第一重建模型划分为M个局部块,该第一重建模型的M个局部块中不同的局部块对应于该目标对象不同的部位,该不同部位用不同的部位名称表示,M为大于1的正整数;
获取N个目标对象样本对齐模型,每个目标对象样本对齐模型的姿势对应的姿势参数与该第一重建模型的姿势对应的姿势参数相同,且该每个目标对象样本对齐模型包括M个局部块,其中,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称所表示的部位,该每个目标对象样本对齐模型的第i个局部块与该第一重建模型的第i个局部块对齐,N为正整数,i为1,…,M,其中,i为1,…,M指的是,i的赋值依次为1,…,M;
使用该N个目标对象样本对齐模型来逼近该第一重建模型,从而确定该目标对象的包括M个局部块的第二重建模型,该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,i为1,…,M,其中,i为1,…,M指的是,i的赋值依次为1,…,M。
因此,本发明实施例提供的数据处理的装置,通过将人体的第一重建模型划分为M个局部块,并通过利用N个人体样本对齐模型来逼近该第一重建模型,来确定该人体的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个人体样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
可选地,作为一个实施例,该第一重建模型的M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
可选地,作为一个实施例,该处理器310具体用于,根据以下公式,获取该第二重建模型:
Ki=Bicii(i=1,...,M)
其中,Ki为该第二重建模型的M个局部块中的第i个局部块,Bi为由该N个目标对象样本对齐模型的第i个局部块组成的基,μi为该N个目标对象样本对齐模型的第i个局部块的顶点坐标的平均值,ci是Bi的系数向量,其中,获得ci的公式包括:
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 ) ,
s.t. ci>0(i=1,...,M)
C = Δ arg min c ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 + λ Σ i = 1 M | | c i | | 1 ) ;
s.t. ci>0(i=1,...,M)
其中,Vi为该第一重建模型的第i个局部块,Γ为该每个目标对象样本对齐模型的M个局部块中相邻的局部块的集合,(i,j)∈Γ表示该每个目标对象样本对齐模型的第j个局部块为与该每个目标对象样本对齐模型的第i个局部块相邻的局部块,Bj为由该每个目标对象样本对齐模型的第j个局部块组成的基,Bij用于表达该每个目标对象样本对齐模型的第i个局部块与第j个局部块在彼此连接处的边界顶点,且Bij为Bi的子集,μij为Bij的平均值,Bji用于表达该每个目标对象样本对齐模型的第j个局部块与第i个局部块在彼此连接处的边界顶点,Bji为Bj的子集,μji为Bji的平均值,β为权重,λ为权重,||||1为L1范式,||||2为L2范式。
可选地,作为一个实施例,该处理器310具体用于,
获取该目标对象的目标对象点云数据;
获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定该目标对象点云数据与该模板模型的点对应关系;
基于骨架驱动变形技术以及该点对应关系,估计该目标对象点云数据相对于该模板模型的姿势变化参数;
利用该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的该第一重建模型。
可选地,作为一个实施例,该处理器310具体用于,
获取该目标对象的目标对象点云数据;
获取该目标对象的模板模型,该模板模型为描述该目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定该目标对象点云数据与该模板模型的点对应关系;
基于骨架驱动变形技术以及该点对应关系,估计该目标对象点云数据相对于该模板模型的姿势变化参数;
利用该目标对象点云数据相对于该模板模型的姿势变化参数,将该模板模型变形为与该目标对象点云数据具备相同姿势的骨架变形模型,使得该骨架变形模型与该目标对象点云数据对齐;
基于网格变形技术对该骨架变形模型进行变形,获得该第一重建模型,使得该第一重建模型与该目标对象点云数据的形状匹配。
可选地,作为一个实施例,该处理器310具体用于,
从预设的目标对象数据库中获取N个目标对象样本模型;
基于骨架驱动变形技术,根据该第一重建模型的姿势参数,将该N个目标对象样本模型变形为与该第一重建模型对应于相同的姿势参数的N个目标对象样本骨架变形模型;
将每个目标对象样本骨架变形模型划分为M个局部块,该每个目标对象样本骨架变形模型的第i个局部块与该第一重建模型的第i个局部块对应于该目标对象的用同一个部位名称表示的部位;
通过对该每个目标对象样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,从而获得该N个目标对象样本对齐模型,其中,每个目标对象样本对齐模型的第i个局部块在经过该旋转、平移和缩放中的至少一种变换后与该第一重建模型的第i个局部块对齐,i为1,2,…,M。
可选地,作为一个实施例,该处理器310还用于,对该第二重建模型进行平滑优化处理。
应理解,上文都是针对当前帧的人体点云的第二重建模型进行描述,当获取了整个时间序列上的第二重建模型后,可选地,作为一个实施例,该处理器310还用于,对整个时间序列上的第二重建模型进行光滑优化处理,获取到所有帧的全局优化模型。
应理解,在本发明实施例中,该处理器310可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器310还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器320可以包括只读存储器和随机存取存储器,并向处理器310提供指令和数据。存储器320的一部分还可以包括非易失性随机存取存储器。例如,存储器320还可以存储设备类型的信息。
该总线系统330除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统330。
在实现过程中,上述方法的各步骤可以通过处理器310中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器320,处理器310读取存储器320中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
因此,本发明实施例提供的数据处理的装置,通过将人体的第一重建模型划分为M个局部块,并通过利用N个人体样本对齐模型来逼近该第一重建模型,来确定该人体的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个人体样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
应理解,根据本发明实施例的装置300可对应于本发明实施例的数据处理的装置200,并且装置300中的各个模块的上述和其它操作和/或功能分别为了实现图1至图4中的各个方法的相应流程,为了简洁,在此不再赘述。
基于上述技术方案,本发明实施例提供的数据处理的装置,通过将目标对象的第一重建模型划分为M个局部块,并通过利用N个目标对象样本对齐模型来逼近该第一重建模型,来确定该目标对象的包括M个局部块的第二重建模型,其中该第二重建模型的第i个局部块是由该每个目标对象样本对齐模型的第i个局部块确定得到的,通过本发明实施例提供的方法,能够有效提高模型的准确度。
应理解,本文中涉及的第i个、第一、第二、第三、第四以及各种数字编号仅为描述方便进行的区分,并不用来限制本发明实施例的范围。例如第i个局部块只是局部块的一个命名,并不用来限制本发明实施例的范围。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (14)

1.一种数据处理的方法,其特征在于,包括:
获取目标对象的第一重建模型;
将所述第一重建模型划分为M个局部块,所述第一重建模型的M个局部块中不同的局部块对应于所述目标对象不同的部位,所述不同部位用不同的部位名称表示,M为大于1的正整数;
获取N个目标对象样本对齐模型,每个目标对象样本对齐模型的姿势对应的姿势参数与所述第一重建模型的姿势对应的姿势参数相同,且所述每个目标对象样本对齐模型包括M个局部块,其中,所述每个目标对象样本对齐模型的第i个局部块与所述第一重建模型的第i个局部块对应于所述目标对象的用同一个部位名称所表示的部位,所述每个目标对象样本对齐模型的第i个局部块与所述第一重建模型的第i个局部块对齐,N为正整数,i为1,…,M;
使用所述N个目标对象样本对齐模型来逼近所述第一重建模型,从而确定所述目标对象的包括M个局部块的第二重建模型,所述第二重建模型的第i个局部块是由所述每个目标对象样本对齐模型的第i个局部块确定得到的。
2.根据权利要求1所述的方法,其特征在于,所述使用所述N个目标对象样本对齐模型来逼近所述第一重建模型,从而确定所述目标对象的包括M个局部块的第二重建模型,包括:
根据以下公式,获取所述第二重建模型:
Ki=Bicii(i=1,...,M)
其中,Ki为所述第二重建模型的M个局部块中的第i个局部块,Bi为由所述N个目标对象样本对齐模型的第i个局部块组成的基,μi为所述N个目标对象样本对齐模型的第i个局部块的顶点坐标的平均值,ci是Bi的系数向量,其中,获得ci的公式包括:
C = Δ arg min C ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ∈ Γ ) | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 ) ,
s.t.ci>0(i=1,...,M)
C = Δ arg min C ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 + λ Σ i = 1 M | | c i | | 1 ) ;
s.t.ci>0(i=1,...,M)
其中,C=[c1,c2,...,cM]T,Vi为所述第一重建模型的第i个局部块,Γ为所述每个目标对象样本对齐模型的M个局部块中相邻的局部块的集合,(i,j)∈Γ表示所述每个目标对象样本对齐模型的第j个局部块为与所述每个目标对象样本对齐模型的第i个局部块相邻的局部块,Bj为由所述每个目标对象样本对齐模型的第j个局部块组成的基,Bij用于表达所述每个目标对象样本对齐模型的第i个局部块与第j个局部块在彼此连接处的边界顶点,且Bij为Bi的子集,μij为Bij的平均值,Bji用于表达所述每个目标对象样本对齐模型的第j个局部块与第i个局部块在彼此连接处的边界顶点,Bji为Bj的子集,μji为Bji的平均值,β为权重,λ为权重,|| ||1为L1范式,|| ||2为L2范式。
3.根据权利要求1或2所述的方法,其特征在于,所述第一重建模型的M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述获取目标对象的第一重建模型,包括:
获取所述目标对象的目标对象点云数据;
获取所述目标对象的模板模型,所述模板模型为描述所述目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定所述目标对象点云数据与所述模板模型的点对应关系;
基于骨架驱动变形技术以及所述点对应关系,估计所述目标对象点云数据相对于所述模板模型的姿势变化参数;
利用所述目标对象点云数据相对于所述模板模型的姿势变化参数,将所述模板模型变形为与所述目标对象点云数据具备相同姿势的所述第一重建模型。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述获取目标对象的第一重建模型,包括:
获取所述目标对象的目标对象点云数据;
获取所述目标对象的模板模型,所述模板模型为描述所述目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定所述目标对象点云数据与所述模板模型的点对应关系;
基于骨架驱动变形技术以及所述点对应关系,估计所述目标对象点云数据相对于所述模板模型的姿势变化参数;
利用所述目标对象点云数据相对于所述模板模型的姿势变化参数,将所述模板模型变形为与所述目标对象点云数据具备相同姿势的骨架变形模型,使得所述骨架变形模型与所述目标对象点云数据对齐;
基于网格变形技术对所述骨架变形模型进行变形,获得所述第一重建模型,使得所述第一重建模型与所述目标对象点云数据的形状匹配。
6.根据权利要求1至5所述的方法,其特征在于,所述获取N个目标对象样本对齐模型,包括:
从预设的目标对象数据库中获取N个目标对象样本模型;
基于骨架驱动变形技术,根据所述第一重建模型的姿势参数,将所述N个目标对象样本模型变形为与所述第一重建模型对应于相同的姿势参数的N个目标对象样本骨架变形模型;
将每个目标对象样本骨架变形模型划分为M个局部块,所述每个目标对象样本骨架变形模型的第i个局部块与所述第一重建模型的第i个局部块对应于所述目标对象的用同一个部位名称表示的部位;
通过对所述每个目标对象样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,从而获得所述N个目标对象样本对齐模型,其中,每个目标对象样本对齐模型的第i个局部块在经过所述旋转、平移和缩放中的至少一种变换后与所述第一重建模型的第i个局部块对齐,i为1,2,…,M。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
对所述第二重建模型进行平滑优化处理。
8.一种数据处理的装置,其特征在于,包括:
第一获取模块,用于获取目标对象的第一重建模型;
划分模块,用于将所述获取模块获取的所述第一重建模型划分为M个局部块,所述第一重建模型的M个局部块中不同的局部块对应于所述目标对象不同的部位,所述不同部位用不同的部位名称表示,M为大于1的正整数;
第二获取模块,用于获取N个目标对象样本对齐模型,每个目标对象样本对齐模型的姿势对应的姿势参数与所述第一获取模块获取的所述第一重建模型的姿势对应的姿势参数相同,且所述每个目标对象样本对齐模型包括M个局部块,其中,所述每个目标对象样本对齐模型的第i个局部块与所述第一重建模型的第i个局部块对应于所述目标对象的用同一个部位名称所表示的部位,所述每个目标对象样本对齐模型的第i个局部块与所述第一重建模型的第i个局部块对齐,N为正整数,i为1,…,M;
确定模块,用于使用所述第二获取模块获取的所述N个目标对象样本对齐模型来逼近所述第一获取模块获取的所述第一重建模型,从而确定所述目标对象的包括M个局部块的第二重建模型,所述第二重建模型的第i个局部块是由所述每个目标对象样本对齐模型的第i个局部块确定得到的。
9.根据权利要求8所述的装置,其特征在于,所述确定模块具体用于,
根据以下公式,获取所述第二重建模型:
Ki=Bicii(i=1,...,M)
其中,Ki为所述第二重建模型的M个局部块中的第i个局部块,Bi为由所述N个目标对象样本对齐模型的第i个局部块组成的基,μi为所述N个目标对象样本对齐模型的第i个局部块的顶点坐标的平均值,ci是Bi的系数向量,其中,获得ci的公式包括:
C = Δ arg min C ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ∈ Γ ) | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 ) ,
s.t.ci>0(i=1,...,M)
C = Δ arg min C ( Σ i = 1 M | | B i c i + μ i - V i | | 2 2 + β Σ ( i , j ) ∈ Γ | | B ij c i + μ ij - B ji c j - μ ji | | 2 2 + λ Σ i = 1 M | | c i | | 1 ) ;
s.t.ci>0(i=1,...,M)
其中,Vi为所述第一重建模型的第i个局部块,Γ为所述每个目标对象样本对齐模型的M个局部块中相邻的局部块的集合,(i,j)∈Γ表示所述每个目标对象样本对齐模型的第j个局部块为与所述每个目标对象样本对齐模型的第i个局部块相邻的局部块,Bj为由所述每个目标对象样本对齐模型的第j个局部块组成的基,Bij用于表达所述每个目标对象样本对齐模型的第i个局部块与第j个局部块在彼此连接处的边界顶点,且Bij为Bi的子集,μij为Bij的平均值,Bji用于表达所述每个目标对象样本对齐模型的第j个局部块与第i个局部块在彼此连接处的边界顶点,Bji为Bj的子集,μji为Bji的平均值,β为权重,λ为权重,|| ||1为L1范式,|| ||2L2范式。
10.根据权利要求8或9所述的装置,其特征在于,所述第一获取模块获取的所述第一重建模型的M个局部块中相邻的局部块在彼此连接处具有共享的边界顶点。
11.根据权利要求8至10中任一项所述的装置,其特征在于,所述第一获取模块包括:
第一获取单元,用于获取所述目标对象的目标对象点云数据;
第二获取单元,用于获取所述目标对象的模板模型,所述模板模型为描述所述目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定单元,用于确定所述第一获取单元获取的所述目标对象点云数据与所述第二获取单元获取的所述模板模型的点对应关系;
估计单元,用于基于骨架驱动变形技术以及所述确定单元确定的所述点对应关系,估计所述第一获取单元确定的所述目标对象点云数据相对于所述第二获取单元确定的所述模板模型的姿势变化参数;
第一变形单元,利用所述估计单元估计的所述目标对象点云数据相对于所述模板模型的姿势变化参数,将所述模板模型变形为与所述目标对象点云数据具备相同姿势的所述第一重建模型。
12.根据权利要求8至10中任一项所述的装置,其特征在于,所述第一获取模块包括:
第一获取单元,用于获取所述目标对象的目标对象点云数据;
第二获取单元,用于获取所述目标对象的模板模型,所述模板模型为描述所述目标对象在预设的标准姿势下的标准目标对象点云数据的模型;
确定单元,用于确定所述第一获取单元获取的所述目标对象点云数据与所述第二获取单元获取的所述模板模型的点对应关系;
估计单元,用于基于骨架驱动变形技术以及所述确定单元确定的所述点对应关系,估计所述第一获取单元确定的所述目标对象点云数据相对于所述第二获取单元确定的所述模板模型的姿势变化参数;
第二变形单元,用于利用所述估计单元估计的所述目标对象点云数据相对于所述模板模型的姿势变化参数,将所述模板模型变形为与所述目标对象点云数据具备相同姿势的骨架变形模型,使得所述骨架变形模型与所述目标对象点云数据对齐;
第三变形单元,用于基于网格变形技术对所述第二变形单元得到的所述骨架变形模型进行变形,获得所述第一重建模型,使得所述第一重建模型与所述目标对象点云数据的形状匹配。
13.根据权利要求8至12所述的装置,其特征在于,所述第二获取模块包括:
第三获取单元,用于从预设的目标对象数据库中获取N个目标对象样本模型;
第四变形单元,用于基于骨架驱动变形技术,根据所述第一重建模型的姿势参数,将所述第三获取单元获取的所述N个目标对象样本模型变形为与所述第一重建模型对应于相同的姿势参数的N个目标对象样本骨架变形模型;
划分单元,用于将所述第四变形单元得到的每个目标对象样本骨架变形模型划分为M个局部块,所述每个目标对象样本骨架变形模型的第i个局部块与所述第一重建模型的第i个局部块对应于所述目标对象的用同一个部位名称表示的部位;
第四获取单元,用于通过对所述划分单元得到的所述每个目标对象样本骨架变形模型的第i个局部块进行旋转、平移和缩放中的至少一种变换,从而获得所述N个目标对象样本对齐模型,其中,每个目标对象样本对齐模型的第i个局部块在经过所述旋转、平移和缩放中的至少一种变换后与所述第一重建模型的第i个局部块对齐,i为1,2,…,M。
14.根据权利要求8至13中任一项所述的装置,其特征在于,所述装置还包括:
优化模块,用于对所述第二重建模型进行平滑优化处理。
CN201510059955.9A 2015-02-04 2015-02-04 数据处理的方法和装置 Withdrawn CN105989625A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201510059955.9A CN105989625A (zh) 2015-02-04 2015-02-04 数据处理的方法和装置
PCT/CN2015/084335 WO2016123913A1 (zh) 2015-02-04 2015-07-17 数据处理的方法和装置
EP15880866.7A EP3249613A1 (en) 2015-02-04 2015-07-17 Data processing method and apparatus
US15/667,917 US20170330375A1 (en) 2015-02-04 2017-08-03 Data Processing Method and Apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510059955.9A CN105989625A (zh) 2015-02-04 2015-02-04 数据处理的方法和装置

Publications (1)

Publication Number Publication Date
CN105989625A true CN105989625A (zh) 2016-10-05

Family

ID=56563382

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510059955.9A Withdrawn CN105989625A (zh) 2015-02-04 2015-02-04 数据处理的方法和装置

Country Status (4)

Country Link
US (1) US20170330375A1 (zh)
EP (1) EP3249613A1 (zh)
CN (1) CN105989625A (zh)
WO (1) WO2016123913A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997457A (zh) * 2017-03-09 2017-08-01 广东欧珀移动通信有限公司 人物肢体识别方法、人物肢体识别装置及电子装置
CN108122281A (zh) * 2017-12-22 2018-06-05 洛阳中科众创空间科技有限公司 一种大范围实时人体三维重建方法
CN111327833A (zh) * 2020-03-31 2020-06-23 厦门美图之家科技有限公司 辅助拍摄方法、装置、电子设备和可读存储介质

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017040905A1 (en) * 2015-09-03 2017-03-09 Stc.Unm Accelerated precomputation of reduced deformable models
KR102577472B1 (ko) * 2018-03-20 2023-09-12 한국전자통신연구원 동작 인식을 위한 가상 학습 데이터를 생성하는 방법 및 장치
CN108665537B (zh) * 2018-05-15 2020-09-25 清华大学 联合优化人体体态与外观模型的三维重建方法及系统
CN110766607A (zh) * 2018-07-25 2020-02-07 北京市商汤科技开发有限公司 一种图像处理方法、装置和计算机存储介质
US11182954B2 (en) * 2018-09-07 2021-11-23 Hivemapper Inc. Generating three-dimensional geo-registered maps from image data
CN111083212B (zh) * 2019-12-09 2022-09-02 荏原电产(青岛)科技有限公司 一种高速采集数据自动计算的方法
CN113345069A (zh) * 2020-03-02 2021-09-03 京东方科技集团股份有限公司 三维人体模型的建模方法、装置、系统及存储介质
US11954139B2 (en) * 2020-11-19 2024-04-09 Accenture Global Solutions Limited Deep document processing with self-supervised learning
TWI769602B (zh) * 2020-11-30 2022-07-01 群邁通訊股份有限公司 利用毫米波雷達的人體姿態識別方法及電腦可讀存儲介質
CN112365589B (zh) * 2020-12-01 2024-04-26 东方梦幻虚拟现实科技有限公司 一种虚拟三维场景展示方法、装置及系统
CN112446919B (zh) * 2020-12-01 2024-05-28 平安科技(深圳)有限公司 物体位姿估计方法、装置、电子设备及计算机存储介质
CN113610992B (zh) * 2021-08-04 2022-05-20 北京百度网讯科技有限公司 骨骼驱动系数确定方法、装置、电子设备及可读存储介质
CN114596426B (zh) * 2022-03-14 2024-04-02 深圳市凌云视迅科技有限责任公司 基于点线面几何特征的数模对齐方法及装置
CN114913305A (zh) * 2022-05-16 2022-08-16 腾讯科技(深圳)有限公司 模型处理方法、装置、设备、存储介质及计算机程序产品

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7313504B2 (en) * 2001-10-15 2007-12-25 Solidworks Corporation Model management technology using grouping of features
CN101866497A (zh) * 2010-06-18 2010-10-20 北京交通大学 基于双目立体视觉的智能三维人脸重建方法及系统
CN102208117A (zh) * 2011-05-04 2011-10-05 西安电子科技大学 脊椎的三维几何与有限元混合模型的构建方法
CN102262783B (zh) * 2011-08-16 2013-06-05 清华大学 一种三维手势运动重建方法和系统
CN103559735B (zh) * 2013-11-05 2017-03-01 重庆安钻理科技股份有限公司 一种三维重建方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997457A (zh) * 2017-03-09 2017-08-01 广东欧珀移动通信有限公司 人物肢体识别方法、人物肢体识别装置及电子装置
CN108122281A (zh) * 2017-12-22 2018-06-05 洛阳中科众创空间科技有限公司 一种大范围实时人体三维重建方法
CN108122281B (zh) * 2017-12-22 2021-08-24 洛阳中科众创空间科技有限公司 一种大范围实时人体三维重建方法
CN111327833A (zh) * 2020-03-31 2020-06-23 厦门美图之家科技有限公司 辅助拍摄方法、装置、电子设备和可读存储介质
CN111327833B (zh) * 2020-03-31 2021-06-01 厦门美图之家科技有限公司 辅助拍摄方法、装置、电子设备和可读存储介质

Also Published As

Publication number Publication date
WO2016123913A1 (zh) 2016-08-11
US20170330375A1 (en) 2017-11-16
EP3249613A1 (en) 2017-11-29

Similar Documents

Publication Publication Date Title
CN105989625A (zh) 数据处理的方法和装置
CN108489482B (zh) 视觉惯性里程计的实现方法及系统
CN109636831B (zh) 一种估计三维人体姿态及手部信息的方法
CN104376596B (zh) 一种基于单幅图像的三维场景结构建模与注册方法
CN108537876A (zh) 基于深度相机的三维重建方法、装置、设备及存储介质
CN104933755B (zh) 一种静态物体重建方法和系统
CN100543775C (zh) 基于多目相机的三维人体运动跟踪的方法
CN105184861B (zh) 一种自动人体三维重建系统
CN109544677A (zh) 基于深度图像关键帧的室内场景主结构重建方法及系统
CN108269302B (zh) 一种基于简易测量服的三维人体快速重建方法
CN109712172A (zh) 一种初始位姿测量结合目标追踪的位姿测量方法
CN106826833A (zh) 基于3d立体感知技术的自主导航机器人系统
CN110189399A (zh) 一种室内三维布局重建的方法及系统
CN110378349A (zh) Android移动端室内场景三维重建及语义分割方法
CN104794722A (zh) 利用单个Kinect计算着装人体三维净体模型的方法
CN109242954A (zh) 基于模板变形的多视角三维人体重建方法
CN105045496B (zh) 一种基于关节点变换的手势交互方法
CN111862299A (zh) 人体三维模型构建方法、装置、机器人和存储介质
WO2007102537A1 (ja) 姿勢推定装置および方法
CN108154104A (zh) 一种基于深度图像超像素联合特征的人体姿态估计方法
CN109425348A (zh) 一种同时定位与建图的方法和装置
CN113674400A (zh) 基于重定位技术的光谱三维重建方法、系统及存储介质
CN107871338A (zh) 基于场景装饰的实时交互渲染方法
CN115151944A (zh) 从单目相机的全骨骼3d姿态恢复
CN116248920A (zh) 虚拟角色直播处理方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20161005

WW01 Invention patent application withdrawn after publication