CN110909581A - 数据处理方法及装置、电子设备及存储介质 - Google Patents
数据处理方法及装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110909581A CN110909581A CN201811090041.9A CN201811090041A CN110909581A CN 110909581 A CN110909581 A CN 110909581A CN 201811090041 A CN201811090041 A CN 201811090041A CN 110909581 A CN110909581 A CN 110909581A
- Authority
- CN
- China
- Prior art keywords
- coordinate
- image
- target
- determining
- depth value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- 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/10004—Still image; Photographic image
-
- 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]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例提供了一种数据处理方法及装置、电子设备及存储介质。所述数据处理方法包括:根据目标的3D图像,获得目标支架的3D特征,其中,所述3D图像包括:2D图像和深度图像;根据所述3D特征,确定所述目标支架的3D姿态;将所述3D姿态投影到2D成像平面内,获得第一2D坐标;基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化。
Description
技术领域
本发明涉及信息技术领域,尤其涉及一种数据处理方法及装置、电子设备及存储介质。
背景技术
在体感游戏等体感场景中,一般都需由人体佩戴体感设备,体感设备采集人体的3D姿态传输给受控设备,进行受控设备的控制。但是这种受控设备的控制,一方面需要使用到体感设备,硬件成本高及且用于一定需要佩戴对应的设备,对于用户的体验感受也不太好。在相关技术中,利用深度摄像头采集的深度图像来进行3D姿态的估计。但是相关技术中的3D姿态存在着精准度低的问题。
发明内容
有鉴于此,本发明实施例期望提供一种数据处理方法及装置、电子设备及存储介质。
一种数据处理方法,包括:
根据目标的3D图像,获得目标支架的3D特征,其中,所述3D图像包括:2D图像和深度图像;
根据所述3D特征,确定所述目标支架的3D姿态;
将所述3D姿态投影到2D成像平面内,获得第一2D坐标;
基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化。
基于上述方案,所述根据所述3D特征,确定所述目标支架的3D姿态,包括以下至少之一:
根据所述3D特征,确定所述目标支架内部不同支架体之间的自由度参量;
根据所述3D特征与标准支架的尺寸,确定目标支架与所述标准支架的比例参量;
根据所述3D特征,获取所述目标支架的基准点在3D空间内的坐标参量;
根据所述3D特征,获取所述基准点在所述3D空间内的角参量。
基于上述方案,所述方法还包括:
从所述深度图像中获得与所述第一2D坐标对应的第一深度值;
根据所述第一深度值及所述3D特征对应的第二深度值的差值,对所述3D姿态进行优化。
基于上述方案,所述方法还包括:
根据所述3D特征,确定是否存在两个关键点满足遮挡规则;
若存在两个关键点满足所述遮挡规则,根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值。
基于上述方案,所述根据所述3D特征,确定是否存在两个关键点满足遮挡规则,包括:
若第一差值阈值若两个所述关键点的2D坐标之差小于第一差值阈值,确定两个所述关键点满足所述遮挡规则。
基于上述方案,所述根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值,包括:
利用基于所述目标的尺寸参量及所述2D坐标,生成所述第二深度值。
基于上述方案,所述方法还包括:
根据两个所述关键点的深度值,确定满足所述遮挡规则的两个关键点之间的遮挡关系;
所述根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值,包括:
若所述遮挡关系表明了第一关键点遮挡了第二关键点,则根据所述3D特征确定所述第一关键点的第二深度值;根据所述第一关键点的所述第二深度值及所述第一关键点和所述第二关键点在目标内的几何关系,确定所述第二关键点的第二深度值。
基于上述方案,所述基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化,包括:
以所述第一2D坐标及所述第二2D坐标之间的差异最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化。
基于上述方案,所述以所述第一2D坐标及所述第二2D坐标之间的差异小于目标值或最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化,包括:
确定所述3D姿态的姿态参量的偏导;
基于所述3D姿态的偏导,以所述第一2D坐标及所述第二2D坐标之间的差异小于目标值或最小化为目标函数调整所述偏导对应的所述姿态参量。
基于上述方案,所述以所述第一2D坐标及所述第二2D坐标之间的差异小于目标值或最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化,包括:
若优化后的所述姿态参量位于预设范围之外,则调整所述目标函数中与所述姿态参量对应的惩罚项,继续对所述姿态参量进行优化。
一种数据处理装置,包括:
第一获得模块,用于根据目标的3D图像,获得目标支架的3D特征,其中,所述3D图像包括:2D图像和深度图像;
第一确定模块,用于根据所述3D特征,确定所述目标支架的3D姿态;
第二获得模块,用于将所述3D姿态投影到2D成像平面内,获得第一2D坐标;
优化模块,用于基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化。
基于上述方案,所述第一确定模块,具体用于执行以下至少之一:
根据所述3D特征,确定所述目标支架内部不同支架体之间的自由度参量;
根据所述3D特征与标准支架的尺寸,确定目标支架与所述标准支架的比例参量;
根据所述3D特征,获取所述目标支架的基准点在3D空间内的坐标参量;
根据所述3D特征,获取所述基准点在所述3D空间内的角参量。
基于上述方案,所述装置还包括:
第三获得模块,用于从所述深度图像中获得与所述第一2D坐标对应的第一深度值;
所述优化模块,具体用于根据所述第一深度值及所述3D特征对应的第二深度值的差值,对所述3D姿态进行优化。
基于上述方案,所述装置还包括:
第二确定模块,用于根据所述3D特征,确定是否存在两个关键点满足遮挡规则;
第一生成模块,用于若存在两个关键点满足所述遮挡规则,根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值。
基于上述方案,所述第二确定模块,具体用于
若第一差值阈值若两个所述关键点的2D坐标之差小于第一差值阈值,确定两个所述关键点满足所述遮挡规则。
基于上述方案,所述第一生成模块,具体用于利用基于所述目标的尺寸参量及所述2D坐标,生成所述第二深度值。
基于上述方案,所述装置还包括:
第三确定模块,用于根据两个所述关键点的深度值,确定满足所述遮挡规则的两个关键点之间的遮挡关系;
所述第一生成模块,具体用于若所述遮挡关系表明了第一关键点遮挡了第二关键点,则根据所述3D特征确定所述第一关键点的第二深度值;根据所述第一关键点的所述第二深度值及所述第一关键点和所述第二关键点在目标内的几何关系,确定所述第二关键点的第二深度值。
基于上述方案,所述优化模块,具体用于以所述第一2D坐标及所述第二2D坐标之间的差异最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化。
基于上述方案,所述优化模块,具体用于确定所述3D姿态的姿态参量的偏导;
基于所述3D姿态的偏导,以所述第一2D坐标及所述第二2D坐标之间的差异小于目标值或最小化为目标函数调整所述偏导对应的所述姿态参量。
基于上述方案,所述优化模块,具体用于若优化后的所述姿态参量位于预设范围之外,则调整所述目标函数中与所述姿态参量对应的惩罚项,继续对所述姿态参量进行优化。
一种计算机存储介质,所述计算机存储介质存储有计算机可执行代码;所述计算机可执行代码被执行后,能够实现一个或多个技术方案提供的数据处理方法。
一种电子设备,其特征在于,包括:
存储器,用于存储信息;
处理器,与所述存储器连接,用于通过执行存储在所述存储器上的计算机可执行指令,能够实现一个或多个技术方案提供的数据处理方法。
本发明实施例提供的技术方案,在计算得到3D姿态之后,将3D姿态投影回2D成像平面得到第一2D坐标,然后与直接基于3D图像中的2D图像得到的第二2D坐标进行比对,以缩小第一2D坐标和第二2D坐标之间的差异为目标进行3D姿态的优化,通过这种优化,可以获得更加精准的3D姿态,能够更加精确的反应被采集的目标在三维空间内的姿态。
附图说明
图1为本发明实施例提供的一种数据处理方法的流程示意图;
图2为本发明实施例提供的一种转动自由度的示意图;
图3为本发明实施例提供的另一种关键点的示意图;
图4为本发明实施例提供的另一种数据处理方法的流程示意图;
图5为本发明实施例提供的一种数据处理装置的结构示意图;
图6为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
以下结合说明书附图及具体实施例对本发明的技术方案做进一步的详细阐述。
如图1所示,本实施例提供一种数据处理方法,包括:
步骤S110:根据目标的3D图像,获得目标支架的3D特征,其中,所述3D图像包括:2D图像和深度图像;
步骤S120:根据所述3D特征,确定所述目标支架的3D姿态;
步骤S130:将所述3D姿态投影到2D成像平面内,获得第一2D坐标;
步骤S140:基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化。
本实施例中提供基于数据处理方法,该基于数据处理方法可以应用于一台或多台电子设备中。所述电子设备可包括:处理器,该处理器通过计算机程序等可执行指令的执行,可以实现基于数据处理方法中一个或多个步骤的执行。在一些实施例中,可以单一电子设备进行集中式的数据处理,也可以运用多台电子设备进行分布式的数据处理。
所述2D图像可为RGB图像或YUV图像等。所述深度图像可为利用深度采集模组采集的深度信息。所述深度信息的像素值为深度值。所述深度值可为:图像采集模组距离目标之间的距离。此处,本发明实施例中所述实际深度值就来自深度图像。
若所述目标为人或动物,则所述目标支架可为:人或动物的骨架。所述人或动物的骨架上的关键点,代表整个所述目标支架,从而,所述目标支架的3D特征可为所述目标支架的关键点的3D特征。所述3D特征包括:位于相机坐标系内的x方向和y方向上的坐标值,还包括:目标距离相机的深度值。
例如,所述关键点可为:表示头、颈、肘、腕、髋、膝及踝的坐标点。如此,根据这些关键点相对于基准点的相对位置,就知道当前人体前、后、左、右的平移距离,还可以根据人脸的关键点与基准点之间的相对位置,知道人脸朝向,从而知道人体头部的转动量和/或转动方向等转动参量;根据躯干的关键点与基准点之间的相对位置,可以知道躯干的转动量和/或转动方向等转动参量。所述人脸的关键点可取位于鼻子上的一个点,例如,鼻尖的坐标点。所述躯干的关键点可取胸部中心点坐标。当然以上仅是关键点举例,具体实现不局限于此。
在本实施例中会对于基于3D图像输出的3D坐标进行处理,得到3D姿态。在本实施例中,所述3D姿态可为各种表征采集对象在3D空间内的姿势或体态的参数,具体可用于位于三维空间坐标系内的3D特征来表示。
在一些实施例中,获取的3D姿态,可由其他深度学习模块从3D图像中提取的3D特征确定的。
在还一些实施例中,所述3D图像可包括:多帧,针对于首帧3D图像,则获取的3D姿态可为默认的3D姿态;针对于非首帧3D图像,则当前帧3D图像所对应的初始3D姿态可为前一帧3D图像被优化后的3D姿态。这种基于不同帧3D姿态的连续性来进行当前3D图像的3D姿态优化。
可选地,根据当前帧3D图像中3D特征与前一帧3D图像的3D特征的差异,若差异很小,则可以以前一帧3D图像所对应的优化后的3D姿态作为当前帧3D图像优化前的3D姿态。若差异过小,则可以将该3D特征作为一个深度学习模块的输入,则深度学习模块会输出一个3D姿态。当然在一些实施例中,也可以直接使用前一个帧3D图像优化后的3D姿态作为当前帧3D图像的优化前的3D姿态。
基于所述3D特征得到3D姿态之后,为了提升所述3D姿态的精准度。在本实施例中,会将3D姿态投影到2D成像平面内,获得第一2D坐标。
在本实施例中,将3D姿态投影到二维平面内,可包括:将表征3D姿态的3D特征投影到2D成像平面内,从而获得2D成像平面内的2D投影图像。
投影的方式有多种,以下提供两种可选方式:
可选方式一:根据所述3D姿势及投影矩阵,得到投影到2D成像平面内的2D坐标;例如,将3D姿势左乘投影矩阵,得到所述投影到2D成像平面内的坐标。此处的投影矩阵可以为根据相机参量和/或者投影的经验值确定的。
可选方式二:利用可以将3D姿势投影到2D成像平面内的投影模型,例如,投影神经网络,以所述3D姿势为输入,以投影到2D成像平面内的2D坐标为输出。
在步骤110中,所述3D特征获取同样是可以利用神经网络等深度学习模型获得。
在步骤S120中,所述3D姿态的获取是利用神经网络等深度学习模块获得的。例如,以所述3D特征为输入,得到所述3D姿态。
在步骤S120中的所述第二2D坐标可为直接所述3D特征,也可以是从另一个对2D图像进行图像处理得到的2D坐标。此处的2D坐标可为位于相机平面内的坐标。3D特征相对于2D坐标增加了目标距离相机的距离值。
若确定的3D特征投影到2D成像平面内的第一2D坐标与直接从2D图像中提取的第二2D坐标相差很大,说明此时3D姿态可能出现了比较大的误差。为了减小误差以提升3D姿态的精准度。在本实施例中,基于第一2D坐标和第二2D坐标之间的差异,进行3D姿态的优化;具体如,以最小化第一2D坐标和第二2D坐标的差异为优化目标,进行3D姿态的优化。此处的3D姿态的优化,可包括:通过调整3D姿态中的一个或多个姿态参量的方式,实现3D姿态的优化。通过3D姿态中一个或多个姿态参量的调整后,重新进行3D姿态到2D成像平面内的投影,通过多次迭代运算,以实现第一2D坐标和所述第二2D坐标之间的差异最小,或者,为了减少迭代次数,以实现第一2D坐标和所述第二2D坐标之间的差异小于目标差异值为目标,进行所述3D姿态优化的迭代运算。
在一些实施例中,所述第一2D坐标和所述第二2D坐标之间的差异,可以由所述第一2D坐标和所述第二2D坐标之间的欧式距离来表示。若,第一2D坐标和第二2D坐标都对应了多个坐标值,则以各组坐标值之间欧式距离的统计值最小化或小于目标差异值为目标,进行所述3D姿态的优化。
在一些实施例中,所述步骤S120可包括以下至少之一:
根据所述3D特征,确定所述目标支架内部不同支架体之间的自由度参量;
根据所述3D特征与标准支架的尺寸,确定目标支架与所述标准支架的比例参量;
根据所述3D特征,获取所述目标支架的基准点在3D空间内的坐标参量;
根据所述3D特征,获取所述基准点在所述3D空间内的角参量。
所述自由度参量可包括:目标支架内支架体之间的相对转动的转动参量。例如,所述转动参量可包括:绕点转动,或可包括:绕轴转动。
例如,以目标支架为人体骨架为例进行说明,所述人体骨架的不同支架体可为:两个关节之间连接的骨头。所述自由度参量可为:上肢绕肩部的转动的自由度参量。在本实施例中,若以一个轴的转动为一个自由度。若以肩部为例,人体的上肢在以肩部为轴,前后摆动、在体侧的两个垂直平面内的摆动。这些摆动都可以用转动来表示。故上肢以肩部为轴的转动,对应了三个自由度。三个自由度均有各自的自由度参量。所述自由度参量可以以转动末端的端点坐标到转动轴的轴心之间的向量表示,也可以用转动角度等参数表示。
根据所述3D特征与标准支架的尺寸,确定一个比例参数,来表征目标支架的尺寸。例如,所述标准支架的尺寸可以由标准支架的3D特征来表示,如此,通过两个3D特征可以计算出一个比例参数。再例如,将所述3D特征转换为尺寸,再与表示标准支架的尺寸值进行比较,得到所述比例参数。
以目标为人体进行说明,标准人体骨架的尺寸可用于表征人体的高度。
如此,不同的人,则可以由不同的比例参数来表示。若目标支架为人体骨架,显然不同的人,人体身高是不一致的。再例如,儿童的身高和成人的身高是有差异的。为了体现这种差异,可以由比例参数来表征。
在本实施例中,所述自由度参数表征的是目标内部的支架体之间的相对位置关系。为了进一步精准描述,还引入了目标支架的基准点在3D空间内的坐标参数。在本实施例中,该基准点在3D空间内的坐标参数,可以以相机平面的光心点为坐标原点。
以目标支架为如图2所示的人体骨架为例进行说明,则在图2中展示有17个3D关键点。一个关键点可对应于人体骨架的一个关节或可转动点。如此,所述自由度参量至少对应了17个关键点处两个相邻骨头或骨头群之间的转动。在图2中的数字表示的对应关键点的转动轴的个数。按照图2所示,则人体颈部有两个自由度,分别可对应于(上下点头及左右摆头等使得头部的关键点坐标有发生未知变化的自由度)。两个肩部都对应了3个自由度。腰部、胯部也均对应了三个自由度。肘部和膝盖位置处均对应了1个自由度。故参照图2所示,则所述自由度参量的个数可为21。
将3D姿态投影到2D成像平面内之后,可以仅投影部分3D关键点。例如,仅投影14个3D关键点,从而在2D成像平面内,可形成如图3所示的14个关键点。在图3中展示有14个关键点,编号分别是1开始并编号至14。一个关键点可对应于人体骨架的一个关节。如此,所述自由度参量至少对应了14个关节处两个相邻骨头之间的转动。所述自由度参量可为17个3D关键点的自由度参量,也可以为如图3所示的14个3D关键点的自由度参量。
在本实施例中,所述基准点的胯部的中心点。所述基准点在3D空间的3维直角坐标系上有3个坐标值。此外基准点的转动量,还可代表了目标支架的朝向等。故在,本实施例中还引入了基准点在3D空间内的角参考,表征目标支架在3D空间内的卷曲、转动等。在本实施例中,所述基准点在3D空间内的角参量可以由欧拉角来表示。欧拉角包括:章动角、旋进角和自转角构成,则基准点在3D空间内的角参量占用了三个参数。如此,在一些实施例中,所述3D姿态可包括:21个自由度参量、1个比例参数及3个基准点在3D空间内的坐标参数及3个基准点在3D空间内的角参量构成,一共28个参数。
在另一些实施例中,所述3D姿态可包括:21个自由度参量、及3个基准点在3D空间内的坐标参数及3个基准点在3D空间内的角参量构成,一共27个参数。
在还有一些实施例中,所述3D姿态可包括:21个自由度参量及1个比例参数构成,一个22个参数。
将该3D姿态投影回2D成像平面内,可以仅投影图3所示的14个关键点即可。
在本实施例中,为了进一步优化所述3D姿态,还会引入深度值进行优化。故如图4所示,所述方法还包括:
步骤S131:从所述深度图像中获得与所述第一2D坐标对应的第一深度值;
步骤S141:根据所述第一深度值及所述3D特征对应的第二深度值的差值,对所述3D姿态进行优化。
基于投影的第一2D坐标从深度图像中,获得与第一2D坐标对应的第一深度值;而3D姿态是基于3D特征生成,3D特征中也携带有深度值。在本实施例中,将这两种深度值进行比较,得到两个深度值的差值。
在本实施例中,会以第一深度值和第二深度值的差值最小化或小于目标差值为优化目标,对所述3D姿态进行优化。如此,在优化3D姿态时,实现了目标左右移动的姿态优化,还实现了目标前后移动的姿态优化,如此,获得的3D姿态更加精准。
值得注意的是,所述步骤S130及所述步骤S131的执行可以没有一定的先后关系,可以是步骤S130在步骤S131之前执行,也可以是步骤S131在步骤S130之前执行,还可是步骤S130及步骤S131同步执行。同理,步骤S140和步骤S141没有一定的先后关系。
在一些实施例中,所述方法还包括:
根据所述3D特征,确定是否存在两个关键点满足遮挡规则;
若存在两个关键点满足所述遮挡规则,即两个关键点之间存在遮挡情况,或关键点所指代的部位之间存在遮挡情况,根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值。
在一些实施例中,由于目标的运动(例如,人体的转动)会使得在深度值上存在着两个关键点相互遮挡的问题。例如,人体侧身转动,左右肩膀可能会相互遮挡。此时,实质上在后的肩部依然是离相机更远的。
此时,为了进一步提升3D姿态的精准度,会考虑这种遮挡问题。故在本实施例中,会确定关键点之间是否存在遮挡。
确定两个关键点之间是否满足遮挡规则的方式有多种,以下提供两种可选方式:
可选方式一:若两个所述关键点的2D坐标之差小于第一差值阈值,确定两个所述关键点满足所述遮挡规则;
可选方式二,若两个所述关键点的2D坐标之差小于第一差值阈值且这两个关键点的深度值之差小于第二差值阈值,确定这两个关键点满足遮挡规则。
在两个关键点之间的2D坐标之差小于若第一差值阈值,可能是2D坐标可能重叠或者差异很小。例如,用户侧身被采集的3D图像,则用户肩部上两个关键点之间的2D坐标相比用户正身被采集的3D图像,则肩部上两个关键点之间的2D坐标小很多。
在另一些实施例中,所述根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值,包括:
利用基于所述目标的尺寸参量及所述2D坐标,生成所述第二深度值。
例如,以两个关键点为肩部的关键点为例,可以以一个关键点的2D坐标查询深度图像的深度值,然后可基于查询的深度值及两个肩膀之间的距离,生成所述第二深度值。
在一些实施例中,可以利用各种神经网络等深度学习模型,以所述目标的尺寸参量及2D坐标,生成了第二深度值。
在一些实施例中,所述方法还包括:
根据两个所述关键点的深度值,确定满足所述遮挡规则的两个关键点之间的遮挡关系。
此处的遮挡关系可包括:两个关键点之间是哪一个关键点被遮挡,或者,哪一关键点遮挡另一个关键点。
例如,两个满足遮挡关系的关键点可包括:关键点A和关键点B;所述遮挡关系至少包括两种:第一种:关键点A在前,关键点B在后,使得关键点B被关键点A所遮挡;第二种:关键点A在后,关键点B在前,使得关键点A被关键点B所遮挡。
所述根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值,包括:
若所述遮挡关系表明了第一关键点遮挡了第二关键点,则根据所述3D特征确定所述第一关键点的第二深度值;根据所述第一关键点的所述第二深度值及所述第一关键点和所述第二关键点在目标内的几何关系,确定所述第二关键点的第二深度值。
在遮挡关系中,在前的关键点(即更靠近相机)的深度值,可以直接使用深度图像中的深度值。故在本实施例中,在本实施例中,第一关键点的第二深度值可以直接从深度图像中查询获得,第二关键点的第二深度值,可以根据第一关键点和第二关键点之间的目标支架的尺寸,就可以第一关键点的第二深度值计算得到所述第二关键点的第二深度值。
在另一些实施例中,所述基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化,包括:
以所述第一2D坐标及所述第二2D坐标之间的差异最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化。
在本实施例中,所述第一2D坐标和第二2D坐标之间的差异最小为目标函数,以梯度下降方式对以3D姿态中的一个或多个姿态参量进行调整,调整之后再次优化迭代,使得3D姿态进行优化。
例如,以最小二乘法进行梯度下降3D姿态优化迭代;再例如,以列文伯格-马夸尔特(Levenberg-Marquardt,LM)算法进行梯度下降3D姿态优化迭代。
在一些实施例中,所述以所述第一2D坐标及所述第二2D坐标之间的差异小于目标值或最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化,包括:
确定所述3D姿态的姿态参量的偏导;
基于所述3D姿态的偏导,以所述第一2D坐标及所述第二2D坐标之间的差异小于目标值或最小化为目标函数调整所述偏导对应的所述姿态参量。
在本实施例中首先对3D姿态中的某一个姿态参量求偏导,得到其偏导函数,以该偏导函数调整对应的姿态参数量,然后将调整后的3D姿态在投影到2D成像平面,在结合重新得到的第一2D坐标和第二2D坐标判断出是否达到了优化目的,若达到了优化目的,就对下一个姿态参量求偏导,再次执行上述过程。知道完成所有的3D姿态内的姿态参量的优化。
在一些实施例中,所述以所述第一2D坐标及所述第二2D坐标之间的差异小于目标值或最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化,包括:
若优化后的所述姿态参量位于预设范围之外,则调整所述目标函数中与所述姿态参量对应的惩罚项,继续对所述姿态参量进行优化。
若通过某一个姿态参量的优化,虽然第一2D坐标和第二2D坐标之间的差值满足了优化条件,但是调整后的姿态参量位于预设范围之外,表明当前3D姿态中的姿态参量是异常值,并非是位于预设范围内的正常值。例如,以目标支架为人体骨架为例进行说明,若比例参数过大,使得超过人体的对应的预设身高范围,可认为这种优化有异常。为了解决这种异常所带来的优化精准度的问题,在本实施例中会引入该姿态参量的惩罚项,利用惩罚项的增大,继续对姿态参量进行优化,使得3D姿态朝着靠近目标实际在空间中的姿态进行优化处理。
以目标的支架为人体的骨架为例进行说明,通过将获取的3D姿态投影回2D成像平面,再与从原始的2D图像中提取的关键点的2D坐标之间的差值,来迭代优化3D姿态。例如,2D图像中提取的14个关键点的2D坐标,然后将3D姿态投影回2D成像平面之后也会得到14个投影点的2D坐标;将这组14个2D坐标进行比较,可以根据比较的结果调整3D姿态中的一个或多个参量,使得调整后的3D姿态再次投影回2D成像平面得到的14个投影点的2D坐标与实际从2D图像中提取的14个关键点2D坐标更加接近,从而达到提升3D姿态精准度的优化效果。与此同时,为了减少遮挡导致的3D姿态的精确度低的问题,还会在判断出满足遮挡规则时,结合满足遮挡规则的两个关键点的检测的深度值进行调整,从而获得估算的深度值,该估算的深度值会比检测的深度值更加接近采集对象与图像采集模组之间的距离。若存在满足有遮挡规则的两个关键点时,不再是直接从深度图像中提取被遮挡的关键点的深度值,如此,而是集合两个满足遮挡规则的两个关键点之间的几何关系,确定出被遮挡的关键点的深度值,如此,可以根据精准的深度值进行所述3D姿态的优化,从而提升优化效果。
如图5所示,本实施例提供一种数据处理装置,包括:
第一获得模块110,用于根据目标的3D图像,获得目标支架的3D特征,其中,所述3D图像包括:2D图像和深度图像;
第一确定模块120,用于根据所述3D特征,确定所述目标支架的3D姿态;
第二获得模块130,用于将所述3D姿态投影到2D成像平面内,获得第一2D坐标;
优化模块140,用于基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化。
在一些实施例中,所述第一获得模块110、第一确定模块120、第二获得模块130及优化模块140可为程序模块,该程序模块被处理器执行上述3D特征、3D姿态的获得及3D姿态的优化。
在另一些实施例中,所述第一获得模块110、第一确定模块120、第二获得模块130及优化模块140还可为硬件模块及程序模块的组合,例如,复杂可编程阵列或者现场可编程阵列。
在还有一些实施例中,所述第一获得模块110、第一确定模块120、第二获得模块130及优化模块140可对应于硬件模块,例如,所述第一获得模块110、第一确定模块120、第二获得模块130及优化模块140可为专用集成电路。
在一些实施例中,所述第一确定模块120,具体用于执行以下至少之一:
根据所述3D特征,确定所述目标支架内部不同支架体之间的自由度参量;
根据所述3D特征与标准支架的尺寸,确定目标支架与所述标准支架的比例参量;
根据所述3D特征,获取所述目标支架的基准点在3D空间内的坐标参量;
根据所述3D特征,获取所述基准点在所述3D空间内的角参量。
在另一些实施例中,所述装置还包括:
第三获得模块,用于从所述深度图像中获得与所述第一2D坐标对应的第一深度值;
所述优化模块140,具体用于根据所述第一深度值及所述3D特征对应的第二深度值的差值,对所述3D姿态进行优化。
在还有一些实施例中,所述装置还包括:
第二确定模块,用于根据所述3D特征,确定是否存在两个关键点满足遮挡规则;
第一生成模块,用于若存在两个关键点满足所述遮挡规则,根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值。
在某些实施例中,所述第二确定模块,具体用于
若第一差值阈值若两个所述关键点的2D坐标之差小于第一差值阈值,确定两个所述关键点满足所述遮挡规则。
在还有些实施例中,所述第一生成模块,具体用于利用基于所述目标的尺寸参量及所述2D坐标,生成所述第二深度值。
在还有些实施例中,所述装置还包括:
第三确定模块,用于根据两个所述关键点的深度值,确定满足所述遮挡规则的两个关键点之间的遮挡关系;
所述第一生成模块,具体用于若所述遮挡关系表明了第一关键点遮挡了第二关键点,则根据所述3D特征确定所述第一关键点的第二深度值;根据所述第一关键点的所述第二深度值及所述第一关键点和所述第二关键点在目标内的几何关系,确定所述第二关键点的第二深度值。
在还有些实施例中,所述优化模块140,具体用于以所述第一2D坐标及所述第二2D坐标之间的差异最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化。
此外,所述优化模块140,具体用于确定所述3D姿态的姿态参量的偏导;
以所述第一2D坐标及所述第二2D坐标之间的差异小于目标值或最小化为目标函数,基于所述3D姿态的偏导调整所述偏导对应的所述姿态参量。
更进一步地,所述优化模块140,具体用于若优化后的所述姿态参量位于预设范围之外,则调整所述目标函数中与所述姿态参量对应的惩罚项,继续对所述姿态参量进行优化。
如图6所示,本申请实施例提供了一种电子设备,包括:
存储器,用于存储信息;
处理器,与所述存储器连接,用于通过执行存储在所述存储器上的计算机可执行指令,能够实现前述一个或多个技术方案提供的数据处理方法,例如,如图1及图4所示的方法中的一个或多个。
该存储器可为各种类型的存储器,可为随机存储器、只读存储器、闪存等。所述存储器可用于信息存储,例如,存储计算机可执行指令等。所述计算机可执行指令可为各种程序指令,例如,目标程序指令和/或源程序指令等。
所述处理器可为各种类型的处理器,例如,中央处理器、微处理器、数字信号处理器、可编程阵列、数字信号处理器、专用集成电路或图像处理器等。
所述处理器可以通过总线与所述存储器连接。所述总线可为集成电路总线等。
在一些实施例中,所述终端设备还可包括:通信接口,该通信接口可包括:网络接口、例如,局域网接口、收发天线等。所述通信接口同样与所述处理器连接,能够用于信息收发。
在一些实施例中,所述终端设备还包括人机交互接口,例如,所述人机交互接口可包括各种输入输出设备,例如,键盘、触摸屏等。
本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有计算机可执行代码;所述计算机可执行代码被执行后,能够实现前述一个或多个技术方案提供的数据处理方法,例如,例如,图1及图4所示的方法中的一个或多个。
所述存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。所述存储介质可为非瞬间存储介质。
本申请实施例提供一种计算机程序产品,所述程序产品包括计算机可执行指令;所述计算机可执行指令被执行后,能够实现前述任意实施提供的数据处理方法,例如,图1及图4所示的方法中的一个或多个。
以下结合上述实施例提供几个具体示例:
示例1:
本示例提供一种数据处理方法,包括:
对于每一帧3D图像,使用人体的二维关键点检测工具,得到图像上14点的关键点的坐标;
以第一步中得到的二维关键点坐标作为输入,3D关键点的提取网络,获得得到对于的三维人体骨架(17个关键点,其中骨盆处关键点位置固定为0)。
将得到的两个人体关键点模型进行对齐操作,使得每个关键点在物理意义上一致。
将3D姿态投影回2D成像平面,得到投影后的2D坐标,与前述提取出的2D坐标进行比对,进行3D姿态的优化;与此同时,基于投影后的3D特征的深度值及从2D图像中提取的深度值进行比对,进行3D姿态的进一步优化。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
根据目标的3D图像,获得目标支架的3D特征,其中,所述3D图像包括:2D图像和深度图像;
根据所述3D特征,确定所述目标支架的3D姿态;
将所述3D姿态投影到2D成像平面内,获得第一2D坐标;
基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化。
2.根据权利要求1所述的方法,其特征在于,
所述根据所述3D特征,确定所述目标支架的3D姿态,包括以下至少之一:
根据所述3D特征,确定所述目标支架内部不同支架体之间的自由度参量;
根据所述3D特征与标准支架的尺寸,确定目标支架与所述标准支架的比例参量;
根据所述3D特征,获取所述目标支架的基准点在3D空间内的坐标参量;
根据所述3D特征,获取所述基准点在所述3D空间内的角参量。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
从所述深度图像中获得与所述第一2D坐标对应的第一深度值;
根据所述第一深度值及所述3D特征对应的第二深度值的差值,对所述3D姿态进行优化。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
根据所述3D特征,确定是否存在两个关键点满足遮挡规则;
若存在两个关键点满足所述遮挡规则,根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值。
5.根据权利要求4所述的方法,其特征在于,
所述根据所述3D特征,确定是否存在两个关键点满足遮挡规则,包括:
若第一差值阈值若两个所述关键点的2D坐标之差小于第一差值阈值,确定两个所述关键点满足所述遮挡规则。
6.根据权利要求4或5所述的方法,其特征在于,
所述根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值,包括:
利用基于所述目标的尺寸参量及所述2D坐标,生成所述第二深度值。
7.根据权利要求4所述的方法,其特征在于,
所述方法还包括:
根据两个所述关键点的深度值,确定满足所述遮挡规则的两个关键点之间的遮挡关系;
所述根据满足所述遮挡规则的关键点的2D坐标,生成所述第二深度值,包括:
若所述遮挡关系表明了第一关键点遮挡了第二关键点,则根据所述3D特征确定所述第一关键点的第二深度值;根据所述第一关键点的所述第二深度值及所述第一关键点和所述第二关键点在目标内的几何关系,确定所述第二关键点的第二深度值。
8.根据权利要求1至7任一项所述的方法,其特征在于,
所述基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化,包括:
以所述第一2D坐标及所述第二2D坐标之间的差异最小化为目标函数,利用梯度下降方式对所述3D姿态进行优化。
9.一种数据处理装置,其特征在于,包括:
第一获得模块,用于根据目标的3D图像,获得目标支架的3D特征,其中,所述3D图像包括:2D图像和深度图像;
第一确定模块,用于根据所述3D特征,确定所述目标支架的3D姿态;
第二获得模块,用于将所述3D姿态投影到2D成像平面内,获得第一2D坐标;
优化模块,用于基于所述第一2D坐标及基于所述2D图像确定的第二2D坐标之间的差异,进行所述3D姿态的优化。
10.一种电子设备,其特征在于,包括:
存储器,用于存储信息;
处理器,与所述存储器连接,用于通过执行存储在所述存储器上的计算机可执行指令,能够实现权利要求1至8任一项提供的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811090041.9A CN110909581B (zh) | 2018-09-18 | 2018-09-18 | 数据处理方法及装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811090041.9A CN110909581B (zh) | 2018-09-18 | 2018-09-18 | 数据处理方法及装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110909581A true CN110909581A (zh) | 2020-03-24 |
CN110909581B CN110909581B (zh) | 2023-04-14 |
Family
ID=69812954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811090041.9A Active CN110909581B (zh) | 2018-09-18 | 2018-09-18 | 数据处理方法及装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110909581B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184541A (zh) * | 2011-05-04 | 2011-09-14 | 西安电子科技大学 | 多目标优化人体运动跟踪方法 |
CN102472609A (zh) * | 2009-07-28 | 2012-05-23 | 佳能株式会社 | 位置和姿势校准方法及设备 |
CN105930795A (zh) * | 2016-04-20 | 2016-09-07 | 东北大学 | 一种基于人体骨骼关节点间空间向量的行走状态识别方法 |
JP6116784B1 (ja) * | 2016-02-16 | 2017-04-19 | 楽天株式会社 | 3次元モデル生成システム、3次元モデル生成方法、及びプログラム |
US20180137644A1 (en) * | 2016-11-11 | 2018-05-17 | Qualcomm Incorporated | Methods and systems of performing object pose estimation |
-
2018
- 2018-09-18 CN CN201811090041.9A patent/CN110909581B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102472609A (zh) * | 2009-07-28 | 2012-05-23 | 佳能株式会社 | 位置和姿势校准方法及设备 |
CN102184541A (zh) * | 2011-05-04 | 2011-09-14 | 西安电子科技大学 | 多目标优化人体运动跟踪方法 |
JP6116784B1 (ja) * | 2016-02-16 | 2017-04-19 | 楽天株式会社 | 3次元モデル生成システム、3次元モデル生成方法、及びプログラム |
CN105930795A (zh) * | 2016-04-20 | 2016-09-07 | 东北大学 | 一种基于人体骨骼关节点间空间向量的行走状态识别方法 |
US20180137644A1 (en) * | 2016-11-11 | 2018-05-17 | Qualcomm Incorporated | Methods and systems of performing object pose estimation |
Non-Patent Citations (4)
Title |
---|
ZHENG XIAO等: "3D Human Postures Recognition Using Kinect", 《2012 4TH INTERNATIONAL CONFERENCE ON INTELLIGENT HUMAN-MACHINE SYSTEMS AND CYBERNETICS》 * |
洪炳镕等: "《虚拟现实及其应用》", 31 May 2005 * |
陈连: "《计算方法与优化技术——方法、程序及其工程应用》", 31 August 2002 * |
顾立平等: "《数据馆员的Python简明手册》", 31 July 2017 * |
Also Published As
Publication number | Publication date |
---|---|
CN110909581B (zh) | 2023-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11741629B2 (en) | Controlling display of model derived from captured image | |
CN108229332B (zh) | 骨骼姿态确定方法、装置及计算机可读存储介质 | |
CN110909580B (zh) | 数据处理方法及装置、电子设备及存储介质 | |
CN108475439B (zh) | 三维模型生成系统、三维模型生成方法和记录介质 | |
Wachter et al. | Tracking persons in monocular image sequences | |
US11948376B2 (en) | Method, system, and device of generating a reduced-size volumetric dataset | |
US9047507B2 (en) | Upper-body skeleton extraction from depth maps | |
US20220198834A1 (en) | Skeleton recognition method, storage medium, and information processing device | |
CN112581354A (zh) | 用于确定用于在整形外科手术中使用的三维模型的准确度的技术 | |
CN113146634A (zh) | 机器人姿态的控制方法、机器人及存储介质 | |
Jatesiktat et al. | Personalized markerless upper-body tracking with a depth camera and wrist-worn inertial measurement units | |
WO2019234293A1 (en) | Measuring surface distances on human bodies | |
CN111435550A (zh) | 图像处理方法及装置、图像设备及存储介质 | |
CN110909581B (zh) | 数据处理方法及装置、电子设备及存储介质 | |
Yoshimoto et al. | Vision-based real-time motion capture system using multiple cameras | |
Desai et al. | Combining skeletal poses for 3D human model generation using multiple Kinects | |
CN110852934A (zh) | 图像处理方法及装置、图像设备及存储介质 | |
JP2018128739A (ja) | 画像処理装置、画像処理方法、コンピュータプログラム、及び記憶媒体 | |
CN113158910A (zh) | 一种人体骨架识别方法、装置、计算机设备及存储介质 | |
WO2020026677A1 (ja) | 検出装置、処理装置、検出方法、及び処理プログラム | |
TW201510939A (zh) | 動態影像分析系統 | |
Zhou et al. | Tracking of Deformable Human Avatars through Fusion of Low-Dimensional 2D and 3D Kinematic Models | |
CN117275089A (zh) | 一种单目摄像头的人物识别方法、装置、设备及存储介质 | |
CN110942421A (zh) | 图像处理方法及装置、图像处理设备及存储介质 | |
KR20230043345A (ko) | 3d 모델링 제작 시스템을 기록한 기록매체 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |