CN111738220B - 三维人体姿态估计方法、装置、设备及介质 - Google Patents

三维人体姿态估计方法、装置、设备及介质 Download PDF

Info

Publication number
CN111738220B
CN111738220B CN202010734364.8A CN202010734364A CN111738220B CN 111738220 B CN111738220 B CN 111738220B CN 202010734364 A CN202010734364 A CN 202010734364A CN 111738220 B CN111738220 B CN 111738220B
Authority
CN
China
Prior art keywords
view
human body
posture estimation
frame
estimation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010734364.8A
Other languages
English (en)
Other versions
CN111738220A (zh
Inventor
陈卫东
张维
康頔
暴林超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010734364.8A priority Critical patent/CN111738220B/zh
Publication of CN111738220A publication Critical patent/CN111738220A/zh
Priority to EP21849589.3A priority patent/EP4102400A4/en
Priority to PCT/CN2021/098627 priority patent/WO2022022063A1/zh
Priority to JP2022556105A priority patent/JP7503643B2/ja
Priority to US17/901,700 priority patent/US20220415076A1/en
Application granted granted Critical
Publication of CN111738220B publication Critical patent/CN111738220B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • G06V10/267Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/803Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of input or preprocessed data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/806Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects

Landscapes

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

Abstract

本申请公开了一种三维人体姿态估计方法、装置、设备及介质,涉及人工智能领域。该方法包括:获取n个视角的视频帧序列;基于神经网络模型提取所述n个视角中的单帧视频帧的初始化姿态估计;对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;对所述n个视角分别对应的所述单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计序列;对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计。

Description

三维人体姿态估计方法、装置、设备及介质
技术领域
本申请实施例涉及人工智能领域,特别涉及一种三维人体姿态估计方法、装置、设备及介质。
背景技术
三维人体姿态估计是从二维图像中识别出人体所做出的三维动作的技术。
相关技术中提供了一种三维人体姿态估计方法,向神经网络模型输入一张二维图像,基于图像二维关键点(2D Key point)的约束优化,输出一个采用三维模型来表示的三维人体姿态。
上述方法为基于单帧单视角的姿态估计方法,神经网络模型容易落入较差的局部极值,效果不够稳定。
发明内容
本申请实施例提供了一种三维人体的姿态估计方法、装置、设备及介质,可以提供一种采用多帧多视角的视频帧序列作为二维线索约束,来实现对人体进行稳定和准确的三维人体姿态估计。所述技术方案如下:
根据本申请的一个方面,提供了一种三维人体姿态估计方法,所述方法包括:
获取n个视角的视频帧序列,所述视频帧序列包括按照时间戳进行排序的多个视频帧,n为大于1的整数;
基于神经网络模型提取所述n个视角中的单帧视频帧的初始化姿态估计;
对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
对所述n个视角分别对应的所述单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计序列;
对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计。
根据本申请的另一方面,提供了一种三维人体姿态估计装置,所述装置包括:
获取模块,用于获取n个视角的视频帧序列,所述视频帧序列包括按照时间戳进行排序的多个视频帧,n为大于1的整数;
初始化模块,用于基于神经网络模型提取所述n个视角中的单帧视频帧的初始化姿态估计;
单视角估计模块,用于对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
多视角估计模块,用于对所述n个视角分别对应的所述单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计序列;
多帧估计模块,用于对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计。
根据本申请的另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上方面所述的三维人体姿态估计方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上方面所述的三维人体姿态估计方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过由神经网络模型提取的初始化姿态估计作为二维线索约束,采用基于优化的三维姿态估计方法进行多帧多视角的人体姿态估计,一方面能够利用神经网络模型的姿态估计的鲁棒性,另一方面能够利用基于优化的方法的准确性,提供了一种全新的多视角多帧的人体姿态估计方法,提高了人体姿态估计的准确性,利用多视角约束和时序约束,避免了单帧单视角的人体姿态估计容易陷入不好的局部极值的情况。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本申请一个示例性实施例提供的三维人体姿态估计方法的流程图;
图2是本申请一个示例性实施例提供的多视角采集图像时的实施示意图;
图3是本申请另一个示例性实施例提供的三维人体姿态估计方法的框架示意图;
图4是本申请另一个示例性实施例提供的三维人体姿态估计方法的流程图;
图5是本申请一个示例性实施例提供的三维人体姿态估计方法的应用场景图;
图6是本申请一个示例性实施例提供的三维人体姿态估计装置的框图;
图7是本申请一个示例性实施例提供的计算机设备的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先对本申请涉及的一些名词进行了简介:
人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision, CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
多视角:采用多个摄像头,从不同的视线角度同时采集同一个人的动作视频。
三维人体姿态估计:从二维图像中,估计出人体所做出的三维动作。通常,采用人体解刨学中的人体关节点来表达三维动作,或者,采用三维人体参数化模型来表达三维动作。
三维人体参数化模型:简称人体参数化模型,将人体的三维网格(mesh)表达成一些低维的向量集,一个新的人体就可以表达成这些向量基的线性组合。常用的人体参数化模型包括基于蒙皮的多人线性(Skinned Multi-Person Linear,SMPL)和富于表现的SMPL(Skinned Multi-Person Linear eXpressive ,SMPL_X)。其中,SMPL不能表达人的表情和手势,SMPL_X在SMPL基础上,扩展了表达人的表情和手势。
SMPL模型是德国马普所的研究人员提出的一种骨架驱动的参数化人体模型,相关文章发表在由国际图形图像协会发表的2015年SIGGRAPH 亚洲会议。SMPL模型简单易用,且已经被作者公开(仅用于研究),被广大科研工作者广泛应用。
SMPL_X模型在SMPL模型的基础上,具有10475个顶点和54个关节点。在54个关节点上包括用于脖子、下巴、眼球和手指的关节。SMPL-X由函数M(θ,β,ψ)定义,其中θ是姿态参数,β是体型参数(或称形状参数),ψ是面部表情参数。
OpenPose模型是一种人体姿态识别模型,是由美国卡耐基梅隆大学(CMU)基于卷积神经网络和监督学习开发的开源库。可以实现人体动作、面部表情、手指运动等姿态估计,以及输出二维人体关键点。OpenPose模型适用于单人和多人,具有极好的鲁棒性。OpenPose模型是世界上首个基于深度学习的实时多人二维姿态估计应用。
本申请实施例提供的方案涉及人工智能中的三维人体姿态估计技术。在本申请实施例中,基于人体参数化模型SMPLX,提供了一种采用多帧多视角的视频帧序列作为二维线索约束,来实现对人体进行稳定和准确的三维人体姿态估计。
图1示出了本申请一个示例性实施例提供的三维人体姿态估计方法的流程图。本实施例以该方法应用于计算机设备中来举例说明。该方法包括:
步骤110:获取n个视角的视频帧序列,视频帧序列包括按照时间戳进行排序的多个视频帧,n为大于1的整数;
视角是摄像机的视线与参考物的垂直方向所形成的夹角。以参考物是人为例,视角是摄像机的视线与位于人的正前方的垂直方向所形成的夹角。
n个视角是两个以上的视角,简称多视角。示意性的,n个视角中的任意两个视角均不同。在真实世界中设置n个摄像机,按照不同的视角对着人物进行视频采集,得到n个视角的视频帧序列(简称视频)。
结合参考图2,在某一个室内空间00中设置有三个摄像机,第一个摄像机采用第一视角采集人物的视频帧序列,第二个摄像机采用第二视角采集人物的视频帧序列,第三个摄像机采用第三视角采集人物的视频帧序列。需要说明的是,该n个摄像机是无需相机标定的摄像机。
可选地,n个视角的视频帧序列中的视频帧的数量相同,n个视角的视频帧序列中的帧率相同,比如均为每秒60帧。但不排除在一些实施例中,n个视角的视频帧序列中的视频帧数量存在少量不同,以及帧率不同(比如呈倍数或比例)的情形。对于n个视角中的视频帧数量不同的情形,可以对某些视角中的视频帧进行删除或丢弃,使得n个视角中的视频帧数量相同。对于n个视角中的帧率不同的情形,也可以成倍数或比例地对某些视角中的视频帧进行删除或丢弃,使得n个视角中的视频帧数量相同。
步骤120:基于神经网络模型提取n个视角中的单帧视频帧的初始化姿态估计;
示意性的,神经网络模型是具有提取单帧视频帧的二维线索的模型。神经网络模型为一个或多个。以二维线索包括:二维人体关键点、人体分割结果和单帧人体姿态估计为例,神经网络模型可包括:用于提取二维人体关键点的第一模型,用于提取人体分割结果的第二模型,以及提取单帧人体姿态估计的第三模型。示意性的,第一模型是Openpose模型,第二模型是图像语义分割网络模型或人体解析(Human Parising)网络;第三模型是卷积神经网络(CNN)。至少通过神经网络模型提取出n个视角中的每帧视频帧的初始化姿态估计。
基于神经网络模型,提取n个视角中的每帧视频帧的初始化姿态估计。在一个示例中,初始化姿态估计包括:单帧视频帧中的二维人体关键点、单帧视频帧中的人体分割结果、单帧视频帧中的人体姿态估计。
以n个视角包括三个视角:第一视角、第二视角、第三视角为例。分别提第一视角中的每个单帧视频帧的初始化姿态估计,第二视角中的每个单帧视频帧的初始化姿态估计,以及第三视角中的每个单帧视频帧的初始化姿态估计。
步骤130:对初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
对于n个视角中的每个单帧视频帧,以初始化姿态估计为初始化的输入,采用二维线索约束进行单帧单视角的人体姿态估计,得到该帧视频帧的单视角姿态估计。
对于n个视角中的每个视角,由于属于同一个视角中的单个视频帧序列的每个视频帧均对应有一个单视角人体姿态估计,因此能够得到与该视角对应的单视角姿态估计序列。
单个视角对应的单视角姿态估计序列包括:按照时间戳由前到后的顺序排列的多个单视角姿态估计。每个单视角姿态估计与该视角中的每帧视频帧存在一一对应关系。
步骤140:对n个视角分别对应的单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计序列;
N个视角对应的n个单视角姿态估计序列中,存在属于相同时间戳的n个单视角姿态估计。相同时间戳是指:完全相同的时间戳,或,时间差小于容差阈值的时间戳。比如帧率为每秒60帧时,时间差小于1/60或1/120的两个时间戳被认为是相同的时间戳。
对与n个视角分别对应且具有相同时间戳的n个单视角姿态估计进行单帧多视角的人体姿态估计,得到一个多视角姿态估计。按照时间戳由前到后的顺序,依次对与n个视角分别对应且具有相同时间戳的n个单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计序列。
可选地,多视角姿态估计序列包括:按照时间戳由前到后的顺序排列的多个多视角姿态估计,每个多视角姿态估计存在一一对应的时间戳,不同的多视角姿态估计对应不同的时间戳。
步骤150:对多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计。
可选地,该多视角多帧姿态估计采用SMPL_X模型中姿态参数θ表示。
结合参考图3,以n个视角为3个视角为例,存在第一视角的视频帧序列、第二视角的视频帧序列以及第三视角的视频帧序列。对第一视角的视频帧序列进行二维线索提取,得到第一视角中每个视频帧的二维线索12;对第二视角的视频帧序列进行二维线索提取,得到第二视角中每个视频帧的二维线索14;对第三视角的视频帧序列进行二维线索提取,得到第三视角中每个视频帧的二维线索16。
对第一视角中每个视频帧的二维线索12,采用二维线索约束进行单帧单视角估计,得到第一视角的单视角姿态估计序列22;对第二视角中每个视频帧的二维线索14,采用二维线索约束进行单帧单视角估计,得到第二视角的单视角姿态估计序列24;对第三视角中每个视频帧的二维线索16,采用二维线索约束进行单帧单视角估计,得到第三视角的单视角姿态估计序列26。
对第一视角的单视角姿态估计序列22、第二视角的单视角姿态估计序列24、第三视角的单视角姿态估计序列26中,属于相同时间戳的单视角姿态估计采用多视角约束进行单帧多视角估计,得到多视角姿态估计序列30。对多视角姿态估计序列30采用时序约束进行多帧多视角估计,得到多视角多帧姿态估计40。
综上所述,本实施例提供的方法,通过由神经网络模型提取的初始化姿态估计作为二维线索约束,采用基于优化的三维姿态估计方法进行多帧多视角的人体姿态估计,一方面能够利用神经网络模型的姿态估计的鲁棒性,另一方面能够利用基于优化的方法的准确性,提供了一种全新的多视角多帧的人体姿态估计方法,提高了人体姿态估计的准确性,利用多视角约束和时序约束,避免了单帧单视角的人体姿态估计容易陷入不好的局部极值的情况。
图4示出了本申请一个示例性实施例提供的三维人体的姿态估计方法的流程图。本实施例以该方法应用于计算机设备中来举例说明。该方法包括:
步骤122:提取n个视角中的单帧视频帧的二维人体关键点和人体分割结果;
二维人体关键点是位于二维图像上的人体关键点。示意性的,人体关键点采用骨骼解刨学中的人体关节点来进行表示。在一个示例中,人体关键点包括但不限于:头、颈、肩、肘、手、臀、膝、脚。在另一个示例中,人体关键点还包括人脸关键点,以便识别人体表情。在另一个示例中,人体关键点还包括人手关键点,以便识别手势动作。本实施例中,采用骨骼解刨中的人体关节点来作为人体关键点。
在一个示例中,本申请采用Openpose模型来提取二维人体关键点。Openpose模型是卡内基梅隆大学的开源项目,包含了人体关节点的定位、人脸关键点的定位和人手关键点的定位。Openpose模型不仅可以输出二维人体关键点,还可以输出每个二维人体关键点的置信度,置信度用于表示该二维人体关键点的准确性概率。
人体分割结果用于指示人体在二维图像中所处的图像区域。可选地,本申请还可以通过人体分割网络来实现对图像中的一个或多个人体的人体分割。人体分割网络是基于图像特征,或人体分割网络是基于二维人体关键点所指示的人体骨骼特征来进行人体分割的。当二维图像中存在多个人体时,人体分割结果包括多个人体的人体分割结果。人体分割模型是图像语义分割网络模型或Human Parising网络。
在一些实施例中,人体分割结果为可选内容。
步骤124:通过卷积神经网络提取单帧视频帧的人体姿态估计;
在一个示例中,将二维图像输入至CNN中,通过CNN提取到单帧视频帧的人体姿态估计。
步骤126:将二维人体关键点和人体姿态估计确定为二维线索,作为单帧视频帧的初始化姿态估计;
在一些实施例中,将二维人体关键点和人体姿态估计确定为二维线索,作为单帧视频帧的初始化姿态估计;在另一些实施例中,将二维人体关键点、人体分割结果和人体姿态估计确定为二维线索,作为单帧视频帧的初始化姿态估计。
步骤132:基于二维线索约束,对初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
示意性的,对于人体分割结果所指示的每个人体,基于二维人体关键点的约束,对初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列。
可选地,按照如下公式对初始化姿态估计进行单帧单视角的人体姿态估计:
其中,为第k个视角中的第i帧图像帧的损失函数,用于表示估计出的人体姿态估计和二维图像中的二维线索之间的差距。K代表视角,i代表帧数。β为人体参数化模型的体型(shape)系数,用于表征一个人的高矮胖瘦。/>为人体参数化模型的姿态(pose)系数,表征一个人的动作,其中/>表示第i帧图像帧对应的姿态系数。Jest,i,j表示从第i帧图像帧中估计出的第j个二维人体关键点,J(β)为人体参数化模型的关节点回归函数,用于基于人体的高矮胖瘦返回人体的关节点在三维空间中的位置。R(•)为旋转函数,用于通过姿态系数将三维的人体关节点旋转至正确位置。/>为投影函数,根据估计的摄像机参数K,将三维的人体关节点投影至图像空间中的二维点。Wj为距离函数,比如欧式空间距离或GMoF距离。wσ为软损失系数,作用在距离函数上,是关于距离的一个递增函数。r(j,k)为第k个视角中的第j个人体关键点的置信度的压缩函数,为非线性变换。
在一个示例中,r(j,k)=,其中,/>为第k个视角下的第j个人体关键点,由二维人体关键点检测模型(比如Openpose模型)所估计出的置信度。
在一个示例中,是时序平滑和差值补充后的时序上的第j个人体关键点。对视频帧序列上估计出的二维人体关键点采用平滑和插值操作。/>为置信度阈值,/>为权重,Confi为第j个人体关键点的置信度,linear_interp为线性插值函数。
在一个示例中,wσ和r(j,k)均为可选系数。
步骤142:基于软损失系数的多视角约束,对n个视角分别对应的单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计序列;
可选地,按照如下公式对具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计:
其中,E(•)为损失函数,为第k个视角中的第i帧图像帧的损失函数,frame i代表第i帧图像帧,view k代表第k个视角。λ代表预设的常数。∑为求和符号。/>为第k个视角下第i帧图像帧的正则项损失,用于表征估计出来的体型系数和姿态系数相对于平均值(mean)的偏离幅度,避免出现不合理的参数(比如过于肥胖或极度扭曲的姿态)。/>为平滑项,用于表征相邻帧之间的差别损失,避免相邻帧之间出现过大的姿态跳动。
一个示例中,上述初始化姿态估计包括:单帧视频帧中的二维人体关键点;
上述多视角约束包括:单帧视频帧对应的多视角姿态估计的重投影点和二维人体关键点之间的距离损失;重投影点是多视角姿态估计中的三维人体关键点重投影至单帧视频帧所在图像平面上的点。软损失系数wσ是作用于重投影点和二维人体关键点之间的距离上的容忍系数。
比如,wσ=w(d;σ)=。d为重投影点和二维人体关键点之间的距离。σ为容忍度系数。
步骤152:基于时序约束,对多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计;
可选地,按照如下公式对多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计:
其中,Mi为人体参数化模型在给定的体型系数和姿态系数下,按照一定的拓扑结构的顶点坐标集合。i-1代表第i帧的前一帧。λp、λm、λk为预设的系数。
在上述公式中,时序约束引入了三项约束;
第一,约束是相邻两帧之间的多视角姿态估计之间的姿态差别损失,用于保证相邻两帧之间的动作差别不能过大;
第二,约束是相邻两帧之间的多视角姿态估计之间的顶点差别损失,用于保证相邻两帧之间的人体全局位置的差别不能过大,人体全局位置包括人体朝向(global orientation)和人体位置(global translation)。
第三,约束是相邻两帧之间的多视角姿态估计之间的三维人体关节点的重投影差别损失,减少二维人体关节点的估计错误所导致的错误姿态。
也即,由于多视角多帧姿态估计采用人体参数化模型中的姿态参数表示,人体参数化模型具有多个定点形成的人体网格。时序约束包括:相邻两帧之间的姿态估计差别损失、相邻两帧之间的顶点差别损失、相邻两帧之间的重投影点差别损失中的至少一种,重投影点是多视角多帧姿态估计中的三维人体关键点重投影至单帧视频帧所在图像平面上的点。
综上所述,本实施例提供的方法,通过将二维人体关键点、人体分割结果和CNN预测的人体姿态估计确定为单帧视频帧的初始化姿态估计,能够充分利用CNN网络在二维人体姿态估计时的鲁棒性,提高本申请提供的姿态估计方案在实际应用时的鲁棒性。
另一方面,在多视角单帧的人体姿态估计中,需要依赖的前提假设为:多个视角中的人体共享同一副人体骨架(含多个人体关节点),同一副人体骨架在人体参数化模型中采用体型系数标识。但是发明人发现该多视角共享一组体型系数的假设,在基于Openpose模型所提取出的二维人体关键点上并不能很好的成立,特别是由于n个视角的摄像机并未标定和角度,在成像比例和成像角度等成像条件存在较大差别的情况下,Openpose模型所提取出的二维人体关键点会发生较大的偏移导致的,因此本实施例提供的方法中,发明人通过创新性地提出软损失系数,通过该软损失系数来允许多视角估计出的三维人体关键点与Openpose模型所提取出的二维人体关键点之间存在一定的容忍距离,实现了较好和较准确的人体姿态估计结果。
另一方面,在多视角多帧的人体姿态估计中,引入了三种不同的时序约束。其中,帧间姿态估计差别损失能够保证帧间差别不能过大、帧间顶点差别损失能够保证人体全局位置的差别不能过大、帧间重投影点差别损失能够保证减少二维人体关键点在估计错误时所导致的错误姿态。
另一方面,本实施例提供的方法,还通过引入系数r(j,k),r(j,k)为第k个视角中的第j个人体关键点的置信度的压缩函数,使得置信度较低的二维人体关键点的置信度被进一步压缩,从而采用非线性变换,对不可信的二维人体关键点进行压制,从而减少二维人体关键点估计时的误差对后续姿态估计过程的误差影响。
在一个示意性的应用例子中,上述三维人体姿态估计方法被应用于虚拟人项目。虚拟人也称IP虚拟人(IP Virual Human,IVH),是一种利用语音交互以及虚拟形成生成等虚拟角色。在生成虚拟人时,首先在动态摄影棚内架设多个视角的摄像机,由真人演员在动态摄影棚内进行肢体表演以及表情表演,多个视角的摄像机采集到真人演员的多个视频帧序列,由上述三维人体姿态估计方法估计出真人演员的三维人体姿态估计,该三维人体姿态估计采用人体参数化模型SMPL模型中的姿态系数进行表征。
然后,根据SMPL模型构建一个IP虚拟人,该IP虚拟人可以是卡通形象、动画角色、电影角色、公司虚拟代言人、虚拟新闻主播等。采用上述过程中估计得到的真人演员的三维人体姿态估计,驱动IP虚拟人做出媲美真人的肢体动作以及动态表情。
图6示出了本申请一个示意性实施例提供的三维人体姿态估计装置的框图。所述装置包括:
获取模块610,用于获取n个视角的视频帧序列,所述视频帧序列包括按照时间戳进行排序的多个视频帧,n为大于1的整数;
初始化模块620,用于基于神经网络模型提取所述n个视角中的单帧视频帧的初始化姿态估计;
单视角估计模块630,用于对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
多视角估计模块640,用于对所述n个视角分别对应的所述单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计序列;
多帧估计模块650,用于对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计。
在一个可选的实施例中,所述神经网络模型包括卷积神经网络,
所述初始化模块620,用于提取所述n个视角中的单帧视频帧的二维人体关键点和人体分割结果;通过所述卷积神经网络提取所述单帧视频帧的人体姿态估计;将所述二维人体关键点、所述人体分割结果和所述人体姿态估计,确定为所述单帧视频帧的初始化姿态估计。可选地,初始化模块620,用于通过Openpose模型提取n个视角中的单帧视频帧的二维人体关键点和人体分割结果。
在一个可选的实施例中,所述单视角估计模块630,用于基于所述二维线索的约束,对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
可选地,按照如下公式对初始化姿态估计进行单帧单视角的人体姿态估计:
其中,所述二维线索的约束包括:重投影点和所述二维人体关键点之间的距离损失以及置信度压缩系数;所述重投影点是所述单视角姿态估计中的三维人体关键点重投影至所述单帧视频帧所在图像平面上的点;
所述置信度压缩系数是作用于所述重投影点和所述二维人体关键点之间的距离上的压缩系数,所述置信度压缩系数与所述二维人体关键点的置信度呈负相关关系。
在一个可选的实施例中,所述多视角估计模块640,用于基于软损失系数的多视角约束,对所述n个视角分别对应的所述单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计;按照所述时间戳由前到后的顺序对所述多视角姿态估计进行排列,得到所述多时间姿态估计序列;
其中,所述软损失系数是用于容忍所述n个视角在共享使用同一组人体骨骼时存在的偏移误差的容忍系数。
可选地,按照如下公式对具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计:
在一个可选的实施例中,所述多视角约束包括:所述单帧视频帧对应的多视角姿态估计的重投影点和所述二维人体关键点之间的距离损失;所述重投影点是所述多视角姿态估计中的三维人体关键点重投影至所述单帧视频帧所在图像平面上的点;
所述软损失系数是作用于所述重投影点和所述二维人体关键点之间的距离上的容忍系数,所述软损失系数与所述距离呈正相关关系。
在一个可选的实施例中,所述多视角多帧姿态估计采用人体参数化模型中的姿态参数表示,所述人体参数化模型具有多个定点形成的人体网格;
所述多帧估计模块650,用于基于时序约束,对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计;
其中,所述时序约束包括:相邻两帧之间的姿态估计差别损失、相邻两帧之间的顶点差别损失、相邻两帧之间的重投影点差别损失中的至少一种,所述重投影点是所述多视角多帧姿态估计中的三维人体关键点重投影至所述单帧视频帧所在图像平面上的点。
可选地,按照如下公式对多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计:
综上所述,本实施例提供的装置,通过将二维人体关键点、人体分割结果和CNN预测的人体姿态估计确定为单帧视频帧的初始化姿态估计,能够充分利用CNN网络在二维人体姿态估计时的鲁棒性,提高本申请提供的姿态估计方案在实际应用时的鲁棒性。
另一方面,在多视角单帧的人体姿态估计中,需要依赖的前提假设为:多个视角中的人体共享同一副人体骨架(含多个人体关节点),同一副人体骨架在人体参数化模型中采用体型系数标识。但是发明人发现该多视角共享一组体型系数的假设,在基于Openpose模型所提取出的二维人体关键点上并不能很好的成立,特别是由于n个视角的摄像机并未标定和角度,在成像比例和成像角度等成像条件存在较大差别的情况下,Openpose模型所提取出的二维人体关键点会发生较大的偏移导致的,因此本实施例提供的方法中,发明人通过创新性地提出软损失系数,通过该软损失系数来允许多视角估计出的三维人体关键点与Openpose模型所提取出的二维人体关键点之间存在一定的容忍距离,实现了较好和较准确的人体姿态估计结果。
另一方面,在多视角多帧的人体姿态估计中,引入了三种不同的时序约束。其中,帧间姿态估计差别损失能够保证帧间差别不能过大、帧间顶点差别损失能够保证人体全局位置的差别不能过大、帧间重投影点差别损失能够保证减少二维人体关键点在估计错误时所导致的错误姿态。
另一方面,本实施例提供的装置,还通过引入系数r(j,k),r(j,k)为第k个视角中的第j个人体关键点的置信度的压缩函数,使得置信度较低的二维人体关键点的置信度被进一步压缩,从而采用非线性变换,对不可信的二维人体关键点进行压制,从而减少二维人体关键点估计时的误差对后续姿态估计过程的误差影响。
需要说明的是:上述实施例提供的三维人体姿态估计装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的三维人体姿态估计装置与三维人体姿态估计方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请还提供了一种计算机设备(终端或服务器),该计算机设备包括处理器和存储器,存储器中存储有至少一条指令,至少一条指令由处理器加载并执行以实现上述各个方法实施例提供的三维人体姿态估计方法。需要说明的是,该计算机设备可以是如下图7所提供的计算机设备。
图7示出了本申请一个示例性实施例提供的计算机设备700的结构框图。该计算机设备700可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group AudioLayer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts GroupAudio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。计算机设备700还可能被称为用户设备、便携式计算机设备、膝上型计算机设备、台式计算机设备等其他名称。
通常,计算机设备700包括有:处理器701和存储器702。
处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器701所执行以实现本申请中方法实施例提供的三维人体姿态估计方法。
在一些实施例中,计算机设备700还可选包括有:外围设备接口703和至少一个外围设备。处理器701、存储器702和外围设备接口703之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口703相连。具体地,外围设备包括:射频电路704、触摸显示屏705、摄像头706、音频电路707和电源709中的至少一种。
外围设备接口703可被用于将I/O(Input /Output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它计算机设备进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置计算机设备700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在计算机设备700的不同表面或呈折叠设计;在再一些实施例中,显示屏705可以是柔性显示屏,设置在计算机设备700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-EmittingDiode,有机发光二极管)等材质制备。
摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在计算机设备的前面板,后置摄像头设置在计算机设备的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在计算机设备700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。
电源709用于为计算机设备700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,计算机设备700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、光学传感器715以及接近传感器716。
加速度传感器711可以检测以计算机设备700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制触摸显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器712可以检测计算机设备700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对计算机设备700的3D动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器713可以设置在计算机设备700的侧边框和/或触摸显示屏705的下层。当压力传感器713设置在计算机设备700的侧边框时,可以检测用户对计算机设备700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在触摸显示屏705的下层时,由处理器701根据用户对触摸显示屏705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制触摸显示屏705的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏705的显示亮度;当环境光强度较低时,调低触摸显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。
接近传感器716,也称距离传感器,通常设置在计算机设备700的前面板。接近传感器716用于采集用户与计算机设备700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与计算机设备700的正面之间的距离逐渐变小时,由处理器701控制触摸显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与计算机设备700的正面之间的距离逐渐变大时,由处理器701控制触摸显示屏705从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图7中示出的结构并不构成对计算机设备700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本申请实施例提供的三维人体姿态估计方法。
本申请提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述各个方法实施例提供的三维人体姿态估计方法。
本申请还提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述各个方法实施例提供的三维人体姿态估计方法。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (8)

1.一种三维人体姿态估计方法,其特征在于,所述方法包括:
获取n个视角的视频帧序列,所述视频帧序列包括按照时间戳进行排序的多个视频帧,n为大于1的整数;
基于神经网络模型提取所述n个视角中的单帧视频帧的初始化姿态估计;
对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
基于软损失系数的多视角约束,对所述n个视角分别对应的所述单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计;
按照所述时间戳由前到后的顺序对所述多视角姿态估计进行排列,得到多时间姿态估计序列;
对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计;
其中,所述软损失系数是用于容忍所述n个视角在共享使用同一组人体骨骼时存在的偏移误差的容忍系数。
2.根据权利要求1所述的方法,其特征在于,所述初始化姿态估计包括:所述单帧视频帧中的二维人体关键点;
所述多视角约束包括:重投影点和所述二维人体关键点之间的距离损失;所述重投影点是所述多视角姿态估计中的三维人体关键点重投影至所述单帧视频帧所在图像平面上的点;
所述软损失系数是作用于所述重投影点和所述二维人体关键点之间的距离上的容忍系数,所述软损失系数与所述距离呈正相关关系。
3.根据权利要求1或2所述的方法,其特征在于,所述多视角多帧姿态估计采用人体参数化模型中的姿态参数表示,所述人体参数化模型具有多个定点形成的人体网格;
所述对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计,包括:
基于时序约束,对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计;
其中,所述时序约束包括:相邻两帧之间的姿态估计差别损失、相邻两帧之间的顶点差别损失、相邻两帧之间的重投影点差别损失中的至少一种,所述重投影点是所述多视角多帧姿态估计中的三维人体关键点重投影至所述单帧视频帧所在图像平面上的点。
4.根据权利要求1或2所述的方法,其特征在于,所述神经网络模型包括卷积神经网络,所述基于神经网络模型提取所述n个视角中的单帧视频帧的初始化姿态估计,包括:
提取所述n个视角中的单帧视频帧的二维人体关键点;
通过所述卷积神经网络提取所述单帧视频帧的人体姿态估计;
将所述二维人体关键点和所述人体姿态估计确定为所述单帧视频帧的二维线索,将所述二维线索作为所述单帧视频帧的初始化姿态估计。
5.根据权利要求4所述的方法,其特征在于,所述对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列,包括:
基于所述二维线索的约束,对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
其中,所述二维线索的约束包括:重投影点和所述二维人体关键点之间的距离损失以及置信度压缩系数;所述重投影点是所述单视角姿态估计中的三维人体关键点重投影至所述单帧视频帧所在图像平面上的点;
所述置信度压缩系数是作用于所述重投影点和所述二维人体关键点之间的距离上的压缩系数,所述置信度压缩系数与所述二维人体关键点的置信度呈负相关关系。
6.一种三维人体姿态估计装置,其特征在于,所述装置包括:
获取模块,用于获取n个视角的视频帧序列,所述视频帧序列包括按照时间戳进行排序的多个视频帧,n为大于1的整数;
初始化模块,用于基于神经网络模型提取所述n个视角中的单帧视频帧的初始化姿态估计;
单视角估计模块,用于对所述初始化姿态估计进行单帧单视角的人体姿态估计,得到n个视角分别对应的单视角姿态估计序列;
多视角估计模块,用于基于软损失系数的多视角约束,对所述n个视角分别对应的所述单视角姿态估计序列中具有相同时间戳的单视角姿态估计进行单帧多视角的人体姿态估计,得到多视角姿态估计;按照所述时间戳由前到后的顺序对所述多视角姿态估计进行排列,得到多时间姿态估计序列;
多帧估计模块,用于对所述多视角姿态估计进行多帧多视角的人体姿态估计,得到多视角多帧姿态估计;
其中,所述软损失系数是用于容忍所述n个视角在共享使用同一组人体骨骼时存在的偏移误差的容忍系数。
7.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一段程序,所述至少一段程序由所述处理器加载并执行以实现如权利要求1至5任一所述的三维人体姿态估计方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一段程序,所述至少一段程序由处理器加载并执行以实现如权利要求1至5任一所述的三维人体姿态估计方法。
CN202010734364.8A 2020-07-27 2020-07-27 三维人体姿态估计方法、装置、设备及介质 Active CN111738220B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202010734364.8A CN111738220B (zh) 2020-07-27 2020-07-27 三维人体姿态估计方法、装置、设备及介质
EP21849589.3A EP4102400A4 (en) 2020-07-27 2021-06-07 Three-dimensional human pose estimation method and related device
PCT/CN2021/098627 WO2022022063A1 (zh) 2020-07-27 2021-06-07 三维人体姿态估计方法和相关装置
JP2022556105A JP7503643B2 (ja) 2020-07-27 2021-06-07 3次元人体姿勢推定方法及びその装置、コンピュータデバイス、並びにコンピュータプログラム
US17/901,700 US20220415076A1 (en) 2020-07-27 2022-09-01 Three-dimensional human pose estimation method and related apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010734364.8A CN111738220B (zh) 2020-07-27 2020-07-27 三维人体姿态估计方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN111738220A CN111738220A (zh) 2020-10-02
CN111738220B true CN111738220B (zh) 2023-09-15

Family

ID=72656117

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010734364.8A Active CN111738220B (zh) 2020-07-27 2020-07-27 三维人体姿态估计方法、装置、设备及介质

Country Status (5)

Country Link
US (1) US20220415076A1 (zh)
EP (1) EP4102400A4 (zh)
JP (1) JP7503643B2 (zh)
CN (1) CN111738220B (zh)
WO (1) WO2022022063A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111738220B (zh) * 2020-07-27 2023-09-15 腾讯科技(深圳)有限公司 三维人体姿态估计方法、装置、设备及介质
CN112215160B (zh) * 2020-10-13 2023-11-24 厦门大学 一种利用长短期信息融合的视频三维人体姿态估计算法
CN112560757B (zh) * 2020-12-24 2022-08-09 中国科学院大学 端到端多视角三维人体姿态估计方法、系统及存储介质
CN112686123A (zh) * 2020-12-25 2021-04-20 科大讯飞股份有限公司 虚假视频检测方法和装置、电子设备及存储介质
CN112804444B (zh) * 2020-12-30 2022-08-23 影石创新科技股份有限公司 一种视频处理方法、装置、计算设备及存储介质
CN112767534B (zh) * 2020-12-31 2024-02-09 北京达佳互联信息技术有限公司 视频图像处理方法、装置、电子设备及存储介质
CN112819849B (zh) * 2021-01-14 2021-12-03 电子科技大学 一种基于三目的无标记点视觉运动捕捉方法
CN112926475B (zh) * 2021-03-08 2022-10-21 电子科技大学 一种人体三维关键点提取方法
CN114036969B (zh) * 2021-03-16 2023-07-25 上海大学 一种多视角情况下的3d人体动作识别算法
CN113763532B (zh) * 2021-04-19 2024-01-19 腾讯科技(深圳)有限公司 基于三维虚拟对象的人机交互方法、装置、设备及介质
CN113766119B (zh) * 2021-05-11 2023-12-05 腾讯科技(深圳)有限公司 虚拟形象显示方法、装置、终端及存储介质
CN113570699B (zh) * 2021-06-24 2024-06-14 清华大学 三维指纹重建的方法和装置
CN113569781B (zh) * 2021-08-03 2024-06-14 北京达佳互联信息技术有限公司 人体姿态的获取方法、装置、电子设备及存储介质
CN114299128A (zh) * 2021-12-30 2022-04-08 咪咕视讯科技有限公司 多视角定位检测方法及装置
CN114863325B (zh) * 2022-04-19 2024-06-07 上海人工智能创新中心 动作识别方法、装置、设备和计算机可读存储介质
CN115862149B (zh) * 2022-12-30 2024-03-22 广州紫为云科技有限公司 一种生成3d人体骨骼关键点数据集的方法及系统
CN116403275B (zh) * 2023-03-14 2024-05-24 南京航空航天大学 基于多目视觉检测封闭空间中人员行进姿态的方法及系统
CN116228867B (zh) * 2023-03-15 2024-04-05 北京百度网讯科技有限公司 位姿确定方法、装置、电子设备、介质
CN115984972B (zh) * 2023-03-20 2023-08-11 乐歌人体工学科技股份有限公司 基于运动视频驱动的人体姿态识别方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571024B1 (en) * 1999-06-18 2003-05-27 Sarnoff Corporation Method and apparatus for multi-view three dimensional estimation
CN105809664A (zh) * 2014-12-31 2016-07-27 北京三星通信技术研究有限公司 生成三维图像的方法和装置
CN106056089A (zh) * 2016-06-06 2016-10-26 中国科学院长春光学精密机械与物理研究所 一种三维姿态识别方法及系统
CN106971145A (zh) * 2017-03-03 2017-07-21 广东工业大学 一种基于极限学习机的多视角动作识别方法及装置
CN108629801A (zh) * 2018-05-14 2018-10-09 华南理工大学 一种视频序列的三维人体模型姿态与形状重构方法
CN109242950A (zh) * 2018-07-11 2019-01-18 天津大学 多人紧密交互场景下的多视角人体动态三维重建方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004094943A1 (ja) * 2003-04-22 2004-11-04 Hiroshi Arisawa モーションキャプチャ方法、モーションキャプチャ装置、及びモーションキャプチャ用マーカ
US8872899B2 (en) 2004-07-30 2014-10-28 Extreme Reality Ltd. Method circuit and system for human to machine interfacing by hand gestures
JP4148281B2 (ja) * 2006-06-19 2008-09-10 ソニー株式会社 モーションキャプチャ装置及びモーションキャプチャ方法、並びにモーションキャプチャプログラム
JP2008140101A (ja) * 2006-12-01 2008-06-19 Advanced Telecommunication Research Institute International 無制約、リアルタイム、かつマーカ不使用の手トラッキング装置
JP2017097577A (ja) * 2015-11-24 2017-06-01 キヤノン株式会社 姿勢推定方法及び姿勢推定装置
CN107239728B (zh) * 2017-01-04 2021-02-02 赛灵思电子科技(北京)有限公司 基于深度学习姿态估计的无人机交互装置与方法
JP6730204B2 (ja) * 2017-02-10 2020-07-29 日本電信電話株式会社 画像合成装置、画像合成方法及びコンピュータプログラム
CN107240124B (zh) * 2017-05-19 2020-07-17 清华大学 基于时空约束的跨镜头多目标跟踪方法及装置
JP6816058B2 (ja) * 2017-10-25 2021-01-20 日本電信電話株式会社 パラメータ最適化装置、パラメータ最適化方法、プログラム
CN108229332B (zh) * 2017-12-08 2020-02-14 华为技术有限公司 骨骼姿态确定方法、装置及计算机可读存储介质
CN109960986A (zh) 2017-12-25 2019-07-02 北京市商汤科技开发有限公司 人脸姿态分析方法、装置、设备、存储介质以及程序
CN108491880B (zh) * 2018-03-23 2021-09-03 西安电子科技大学 基于神经网络的物体分类和位姿估计方法
CN109829972B (zh) * 2019-01-19 2023-06-02 北京工业大学 一种面向连续帧点云的三维人体标准骨架提取方法
CN110020611B (zh) * 2019-03-17 2020-12-08 浙江大学 一种基于三维假设空间聚类的多人动作捕捉方法
CN110598590A (zh) * 2019-08-28 2019-12-20 清华大学 基于多视角相机的紧密交互人体姿态估计方法及装置
CN111738220B (zh) * 2020-07-27 2023-09-15 腾讯科技(深圳)有限公司 三维人体姿态估计方法、装置、设备及介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571024B1 (en) * 1999-06-18 2003-05-27 Sarnoff Corporation Method and apparatus for multi-view three dimensional estimation
CN105809664A (zh) * 2014-12-31 2016-07-27 北京三星通信技术研究有限公司 生成三维图像的方法和装置
CN106056089A (zh) * 2016-06-06 2016-10-26 中国科学院长春光学精密机械与物理研究所 一种三维姿态识别方法及系统
CN106971145A (zh) * 2017-03-03 2017-07-21 广东工业大学 一种基于极限学习机的多视角动作识别方法及装置
CN108629801A (zh) * 2018-05-14 2018-10-09 华南理工大学 一种视频序列的三维人体模型姿态与形状重构方法
CN109242950A (zh) * 2018-07-11 2019-01-18 天津大学 多人紧密交互场景下的多视角人体动态三维重建方法

Also Published As

Publication number Publication date
EP4102400A4 (en) 2023-06-28
JP2023521952A (ja) 2023-05-26
US20220415076A1 (en) 2022-12-29
EP4102400A1 (en) 2022-12-14
CN111738220A (zh) 2020-10-02
JP7503643B2 (ja) 2024-06-20
WO2022022063A1 (zh) 2022-02-03

Similar Documents

Publication Publication Date Title
CN111738220B (zh) 三维人体姿态估计方法、装置、设备及介质
CN110555883B (zh) 相机姿态追踪过程的重定位方法、装置及存储介质
CN110163048B (zh) 手部关键点的识别模型训练方法、识别方法及设备
CN109978989B (zh) 三维人脸模型生成方法、装置、计算机设备及存储介质
CN111652121B (zh) 一种表情迁移模型的训练方法、表情迁移的方法及装置
CN108615248B (zh) 相机姿态追踪过程的重定位方法、装置、设备及存储介质
CN108537845B (zh) 位姿确定方法、装置及存储介质
CN109308727B (zh) 虚拟形象模型生成方法、装置及存储介质
CN110544272B (zh) 脸部跟踪方法、装置、计算机设备及存储介质
WO2020224479A1 (zh) 目标的位置获取方法、装置、计算机设备及存储介质
CN111541907B (zh) 物品显示方法、装置、设备及存储介质
CN111726536A (zh) 视频生成方法、装置、存储介质及计算机设备
CN111476783B (zh) 基于人工智能的图像处理方法、装置、设备及存储介质
CN110135336B (zh) 行人生成模型的训练方法、装置及存储介质
CN113610750B (zh) 对象识别方法、装置、计算机设备及存储介质
CN110675412B (zh) 图像分割方法、图像分割模型的训练方法、装置及设备
CN112749613B (zh) 视频数据处理方法、装置、计算机设备及存储介质
CN111738914B (zh) 图像处理方法、装置、计算机设备及存储介质
CN112348937A (zh) 人脸图像处理方法及电子设备
CN113706678A (zh) 获取虚拟形象的方法、装置、设备及计算机可读存储介质
CN113705302A (zh) 图像生成模型的训练方法、装置、计算机设备及存储介质
CN110705438B (zh) 步态识别方法、装置、设备及存储介质
CN115578494B (zh) 中间帧的生成方法、装置、设备及存储介质
CN115223248A (zh) 手部姿态识别方法、手部姿态识别模型的训练方法及装置
CN113705292A (zh) 时序动作检测方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40030055

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant