CN115546365A - 一种虚拟人驱动方法及系统 - Google Patents
一种虚拟人驱动方法及系统 Download PDFInfo
- Publication number
- CN115546365A CN115546365A CN202211294103.4A CN202211294103A CN115546365A CN 115546365 A CN115546365 A CN 115546365A CN 202211294103 A CN202211294103 A CN 202211294103A CN 115546365 A CN115546365 A CN 115546365A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- human
- virtual
- target person
- video frame
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000014509 gene expression Effects 0.000 claims abstract description 46
- 210000000746 body region Anatomy 0.000 claims abstract description 42
- 238000001914 filtration Methods 0.000 claims abstract description 24
- 238000001514 detection method Methods 0.000 claims description 33
- 210000004394 hip joint Anatomy 0.000 claims description 16
- 238000009877 rendering Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 210000000689 upper leg Anatomy 0.000 claims description 4
- 244000309466 calf Species 0.000 claims description 3
- 238000009499 grossing Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 230000033001 locomotion Effects 0.000 abstract description 16
- 230000008921 facial expression Effects 0.000 abstract description 10
- 210000003128 head Anatomy 0.000 description 37
- 210000002683 foot Anatomy 0.000 description 9
- 210000003414 extremity Anatomy 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 210000001624 hip Anatomy 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 210000003423 ankle Anatomy 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 210000002478 hand joint Anatomy 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 210000000697 sensory organ Anatomy 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009012 visual motion Effects 0.000 description 1
- 210000003857 wrist joint Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/174—Facial expression recognition
-
- 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/20—Movements or behaviour, e.g. gesture recognition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种虚拟人驱动方法及系统,涉及计算机视觉技术领域,包括以下步骤:获取当前视频帧中目标人物的三维人脸关键点,并根据三维人脸关键点计算目标人物的头部旋转角和其对应的虚拟人的重定向表情系数;对当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到目标人物各个关节点的三维坐标;对每个三维坐标进行滤波,并基于滤波后的三维坐标、头部旋转角和重定向表情系数对虚拟人进行混合驱动。本申请不仅实现了基于视觉的高精度脸部表情捕捉和重定向,还通过基于区域跟踪的二阶段肢体动作捕捉方法,解决了动捕系统的抖动及不合理的关节旋转的问题。
Description
技术领域
本申请涉及计算机视觉技术领域,尤其涉及一种虚拟人驱动方法及系统
背景技术
现有的视觉动捕虚拟人方案虽然具有对身体进行捕捉和驱动的能力,但却无法对脸部的精细表情进行捕捉,同时由于视觉捕捉中存在的噪声及关节遮挡等问题,也使得在驱动虚拟人过程中容易出现抖动、不正常的关节扭曲等情况。
发明内容
本申请提供的一种虚拟人驱动方法,旨在解决现有技术中视觉动捕方案存在的抖动及不正常的关节扭曲的问题。
为实现上述目的,本申请采用以下技术方案:
本申请的一种虚拟人驱动方法,包括以下步骤:
获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数;
对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标;
对每个所述三维坐标进行滤波,并基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动。
作为优选,所述获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数,包括:
获取当前视频帧中目标人物的正脸图像,并将所述正脸图像输入预先建立的人脸三维模型中进行三维人脸关键点预测;
基于预测的三维人脸关键点、所述人脸三维模型和标定的相机参数计算所述目标人物头部的旋转向量,并根据所述旋转向量计算其头部旋转角;
定义所述目标人物的基表情,并根据所述三维人脸关键点和所述基表情计算所述目标人物对应的虚拟人的重定向表情系数。
作为优选,所述获取当前视频帧中目标人物的正脸图像,包括:
训练人脸检测模型,利用所述人脸检测模型提取出当前视频帧中目标人物的二维人脸关键点,并基于所述二维人脸关键点将所述目标人物的脸部进行对齐以得到其正脸图像。
作为优选,所述对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标,包括:
将所述当前视频帧输入预先训练的人体区域检测网络中进行人体区域位置提取,若输出不为空,则根据输出的人体区域位置预测下一视频帧的人体区域位置,并从所述当前视频帧中裁剪出人体区域图像;
将所述人体区域图像输入二阶段姿态网络中进行三维姿态检测,得到所述目标人物各个关节点的三维坐标,所述二阶段姿态网络包含二维姿态检测网络和三维姿态提升网络。
作为优选,所述二维姿态检测网络为编码器-解码器结构,用于预测人体二维关键点热图和每个人体关键点的偏移量;
所述三维姿态提升网络为多个残差模块的堆叠结构,用于将所述二维姿态检测网络输出的二维姿态提升为三维姿态。
作为优选,所述对每个所述三维坐标进行滤波,包括:
根据式(1)对每个所述三维坐标进行滤波:
作为优选,所述基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动,包括:
将所述头部旋转角和所述重定向表情系数输入渲染引擎中以对所述虚拟人的头部和脸部进行与所述目标人物相同的姿态旋转和表情映射;
预先建立所述虚拟人关节点与人体姿态模型间的对应关系和以虚拟人的髋关节为原点的坐标系,并计算初始姿态下所述虚拟人每个关节点的三维坐标;
根据每个关节点滤波后的三维坐标和初始姿态下的三维坐标计算其第一偏移量,并根据所述第一偏移量对相应的关节点进行驱动。
作为优选,所述方法还包括:
将虚拟人的脚底纵坐标设为0,根据所述虚拟人的脚部位置和小腿、大腿的旋转关系以及长度,逆向求出所述髋关节的理论三维坐标;
计算所述髋关节的理论三维坐标与实际三维坐标的差值得到髋关节的第二偏移量,根据所述第二偏移量对所述虚拟人进行驱动。
一种虚拟人驱动系统,包括:
计算模块,用于获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数;
检测模块,用于对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标;
渲染模块,用于对每个所述三维坐标进行滤波,并基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动。
一种存储有计算机程序的计算机可读存储介质,所述计算机程序使计算机执行时实现如上述中任一项所述的一种虚拟人驱动方法。
本发明具有如下有益效果:
本申请使用单个摄像头实现了无穿戴、实时、高精度的脸部表情和身体动作捕捉与驱动,并据此构建出具有全身动捕功能的虚拟人系统,不仅实现了基于视觉的高精度脸部表情捕捉和重定向,还通过基于区域跟踪的二阶段肢体动作捕捉方法,解决了动捕系统的抖动及不合理的关节旋转的问题,同时该系统在驱动中还可以使虚拟人保持正常的物理特性,不会产生脚部悬空或者穿地等问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的一种虚拟人驱动方法的流程图;
图2是本申请提供的一种虚拟人驱动系统的示意图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的权利要求书和说明书的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序,应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式,此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他单元。
实施例
如图1所示,本申请提供一种虚拟人驱动方法,具体包括以下步骤:
S110、获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数;
S120、对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标;
S130、对每个所述三维坐标进行滤波,并基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动。
在本方法中,通过脸部表情特征捕捉、肢体动作捕捉以及基于头部与肢体的混合驱动即可实现对虚拟人的精准驱动。
进一步地,获取当前视频帧中目标人物的正脸图像,并将所述正脸图像输入预先建立的人脸三维模型中进行三维人脸关键点预测;
基于预测的三维人脸关键点、所述人脸三维模型和标定的相机参数计算所述目标人物头部的旋转向量,并根据所述旋转向量计算其头部旋转角;
定义所述目标人物的基表情,并根据所述三维人脸关键点和所述基表情计算所述目标人物对应的虚拟人的重定向表情系数。
该操作的目的是进行脸部表情捕捉,其具体可包括以下步骤:
(1)人脸表情特征提取:首先训练人脸检测模型和人脸三维模型,其中人脸检测模型用于提取视频帧中目标人物的人脸框位置和眼睛、鼻尖、嘴角、下巴等二维人脸关键点,然后基于上述二维人脸关键点将人脸进行对齐得到目标人物的正脸图像,将该正脸图像进行裁剪并缩放到固定尺寸后输入到人脸三维模型中,预测出密集的三维人脸关键点,即实现了精确的人脸表情特征提取,人脸检测模型和人脸三维模型的训练都属于现有技术,此处不做赘述。
(2)头部姿态估计:基于步骤(1)的人脸关键点以及人脸三维模型和标定的相机参数,通过DLT算法计算出目标人物头部的旋转向量,然后将旋转向量转化为欧拉角(头部旋转角),即可得到目标人物的头部姿态,其中将旋转向量转化为欧拉角可以是先利用旋转向量求解出旋转矩阵,再根据旋转矩阵计算欧拉角,也可以通过其它方法,此处不做限定。
(3)脸部表情重定向:重定向的过程是将步骤(1)中提取的三维人脸关键点描述的表情特征迁移到目标人物对应的虚拟人上,使该虚拟人能够展现与目标人物相同的表情。首先定义目标人物的一组基表情E={e1,e2,...,eM},及与之对应的虚拟人的混合形状P={p1,p2,...,pM},在t时刻,使用步骤(1)中提取出的对应的三维人脸关键点Kt即可求解出相应的重定向表情系数,公式如下:
其中i为大于等于1的整数,ω为重定向表情系数,类似的,根据上式也可以先对表演者的五官分别进行系数分解,再对表情系数进行合并,最终也可得到重定向表情系数。
本实施例实现了基于视觉的高精度脸部表情捕捉和表情重定向,提高了动捕方案的精度和准确度。
进一步地,将所述当前视频帧输入预先训练的人体区域检测网络中进行人体区域位置提取,若输出不为空,则根据输出的人体区域位置预测下一视频帧的人体区域位置,并从所述当前视频帧中裁剪出人体区域图像;
将所述人体区域图像输入二阶段姿态网络中进行三维姿态检测,得到所述目标人物各个关节点的三维坐标,所述二阶段姿态网络包含二维姿态检测网络和三维姿态提升网络。
此步骤主要是为了进行目标人物的肢体动作捕捉,运用的是基于区域跟踪的二阶段肢体动作捕捉方法,包括以下步骤:
(1)首先训练一个人体区域检测网络,该网络用于提取当前视频帧中的人体区域潜在位置矩形框,同时预测头部中点HFAD与髋关节中点HIP,通过这两个点旋转当前画面到正方向,保证头部在髋部的正上方,这样不仅可以根据人体比例提取出正确的人体区域位置,还可以保证人体的正确朝向以便于后续进行人体姿态检测,如果人体区域检测网络的输出为空,则表示当前视频帧中不存在目标人物,即不进行后续的姿态预测;如果不为空,则从中裁剪出人体区域位置,并送入到后续的二阶段姿态网络中进行预测,同时,如果上一视频帧中人体区域检测网络的输出不为空,则根据历史人体区域位置信息预测下一视频帧中的人体区域位置以保证跟踪的是同一个人,避免其他人员的干扰,其中预测方法可以是卡尔曼滤波或线性拟合等方法中的任意一种。
(2)二阶段姿态网络包括两个阶段网络:二维姿态检测网络和三维姿态提升网络,其中二维姿态检测网络为编码器-解码器结构,可以同时预测二维关键点热图和二维关键点的偏移量,三维姿态提升网络则为多个残差模块的堆叠结构,用于将二维姿态检测网络的输出提升为三维姿态,其中第三个维度z被限定在[-1,1]之间。为了对遮挡情况下的关节点进行预测,在训练过程中会对每个关节点加入各种颜色的矩形随机遮挡,并输出每个关节点遮挡概率,当遮挡概率大于设定阈值时,则使用前一视频帧中的关节点位置进行预测,同时在驱动过程中,在关节点被预测为遮挡的情况下,对关节点进行跟踪预测。
(3)最后,在输出每个关节点的三维坐标时,进行如下滤波操作:
其中,是滤波前t时刻第i个关节点的位置,是滤波后t时刻第i个关节点的位置,α是自适应平滑因子,Te是采样周期,τ是截止频率时间常数。经过以上滤波器能够降低低速运动中的关节抖动,同时保证高速运动的状态实时更新。
进一步地,将所述头部旋转角和所述重定向表情系数输入渲染引擎中以对所述虚拟人的头部和脸部进行与所述目标人物相同的姿态旋转和表情映射;
预先建立所述虚拟人关节点与人体姿态模型间的对应关系和以虚拟人的髋关节为原点的坐标系,并计算初始姿态下所述虚拟人每个关节点的三维坐标;
根据每个关节点滤波后的三维坐标和初始姿态下的三维坐标计算其第一偏移量,并根据所述第一偏移量对相应的关节点进行驱动。
此步实现了头部与肢体的混合驱动,具体包括以下步骤:
(1)脸部表情与头部姿态驱动:将计算出的重定向表情系数和头部旋转角输入到渲染引擎中,即可驱动虚拟人的头部和脸部完成与对应的目标人物相同的姿态旋转和表情展示。
(2)肢体关节驱动:首先将虚拟人骨骼模型与基于深度学习的人体姿态模型进行关联,建立骨骼关节点间的对应关系,在渲染引擎中,将虚拟人的髋关节作为原点,以Tpose或者A pose作为初始姿态,计算其他关节点相对于原点的四元数参数,并将其作为每个关节点的初始值,随后的每一视频帧,通过滤波后的三维坐标点和该初始值,即可计算出每个关节点相对于初始姿态的偏移量,根据该偏移量来驱动关节点进行运动。
进一步地,将虚拟人的脚底纵坐标设为0,根据所述虚拟人的脚部位置和小腿、大腿的旋转关系以及长度,逆向求出所述髋关节的理论三维坐标;
计算所述髋关节的理论三维坐标与实际三维坐标的差值得到髋关节的第二偏移量,根据所述第二偏移量对所述虚拟人进行驱动。
在驱动过程中,因为虚拟人关节点的长度和目标人物不一致,有可能会导致虚拟人脚部穿地或者悬空,为了解决该问题,本申请采用了逆向求解法,即根据二维图像,计算出目标人物脚踝关键点的纵坐标y的最大变化量dy,若dy 小于设定阈值Ty,则表示目标人物并未进行跳跃动作,因此在虚拟引擎中,需要先将对应虚拟人脚底位置的纵坐标y设为0,即令其脚部紧贴地面,再根据脚部位置和小腿、大腿的旋转关系以及长度,逆向求解出髋关节的理论三维坐标 (xh,yh,zh),然后将其理论三维坐标(xh,yh,zh)与此时虚拟人髋关节的实际三维坐标(xhg,yhg,zhg)进行差值计算得到偏移量delta=(xh,yh,zh)- (xhg,yhg,zhg),在其他每个关节点的实际三维坐标上也加上该偏移量,即可保证虚拟人的动作正确,且脚部不会悬空或者穿地。
对于手部关节,则需要以手腕关节为原点,通过限定手指上不同层级的关节运动自由度和运动范围来保证每个关节的运动合理性。
本实施例通过基于区域跟踪的二阶段肢体动作捕捉方法,解决了视觉身体动捕系统的抖动及不合理的关节旋转等问题,同时在驱动中还可以保证虚拟人的正常物理特性,使其脚部不会悬空或者穿地,并保证了手指运动的合理性。
如图2所示,本申请还提供一种虚拟人驱动系统,包括:
计算模块,用于获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数;
检测模块,用于对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标;
渲染模块,用于对每个所述三维坐标进行滤波,并基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动。
上述系统的一种实施方式可为:计算模块获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数,检测模块对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标,渲染模块对每个所述三维坐标进行滤波,并基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动。
本申请还提供一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现上述的一种虚拟人驱动方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的电子设备的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请还提供一种存储有计算机程序的计算机可读存储介质,所述计算机程序使计算机执行时实现如上述的一种虚拟人驱动方法。
示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器中,并由处理器执行,并由输入接口和输出接口完成数据的I/O接口传输,以完成本发明,一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在计算机设备中的执行过程。
计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可包括,但不仅限于,存储器、处理器,本领域技术人员可以理解,本实施例仅仅是计算机设备的示例,并不构成对计算机设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入器、网络接入设备、总线等。
处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器902(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可以是计算机设备的内部存储单元,例如计算机设备的硬盘或内存。存储器也可以是计算机设备的外部存储设备,例如计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD) 卡,闪存卡(Flash Card)等,进一步地,存储器还可以既包括计算机设备的内部存储单元也包括外部存储设备,存储器用于存储计算机程序以及计算机设备所需的其他程序和数据,存储器还可以用于暂时地存储在输出器,而前述的存储介质包括U盘、移动硬盘、只读存储器ROM、随机存储器RAM、碟盘或光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何在本发明揭露的技术范围内的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种虚拟人驱动方法,其特征在于,包括以下步骤:
获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数;
对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标;
对每个所述三维坐标进行滤波,并基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动。
2.根据权利要求1所述的一种虚拟人驱动方法,其特征在于,所述获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数,包括:
获取当前视频帧中目标人物的正脸图像,并将所述正脸图像输入预先建立的人脸三维模型中进行三维人脸关键点预测;
基于预测的三维人脸关键点、所述人脸三维模型和标定的相机参数计算所述目标人物头部的旋转向量,并根据所述旋转向量计算其头部旋转角;
定义所述目标人物的基表情,并根据所述三维人脸关键点和所述基表情计算所述目标人物对应的虚拟人的重定向表情系数。
3.根据权利要求2所述的一种虚拟人驱动方法,其特征在于,所述获取当前视频帧中目标人物的正脸图像,包括:
训练人脸检测模型,利用所述人脸检测模型提取出当前视频帧中目标人物的二维人脸关键点,并基于所述二维人脸关键点将所述目标人物的脸部进行对齐以得到其正脸图像。
4.根据权利要求1所述的一种虚拟人驱动方法,其特征在于,所述对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标,包括:
将所述当前视频帧输入预先训练的人体区域检测网络中进行人体区域位置提取,若输出不为空,则根据输出的人体区域位置预测下一视频帧的人体区域位置,并从所述当前视频帧中裁剪出人体区域图像;
将所述人体区域图像输入二阶段姿态网络中进行三维姿态检测,得到所述目标人物各个关节点的三维坐标,所述二阶段姿态网络包含二维姿态检测网络和三维姿态提升网络。
5.根据权利要求4所述的一种虚拟人驱动方法,其特征在于,所述二维姿态检测网络为编码器-解码器结构,用于预测人体二维关键点热图和每个人体关键点的偏移量;
所述三维姿态提升网络为多个残差模块的堆叠结构,用于将所述二维姿态检测网络输出的二维姿态提升为三维姿态。
7.根据权利要求1所述的一种虚拟人驱动方法,其特征在于,所述基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动,包括:
将所述头部旋转角和所述重定向表情系数输入渲染引擎中以对所述虚拟人的头部和脸部进行与所述目标人物相同的姿态旋转和表情映射;
预先建立所述虚拟人关节点与人体姿态模型间的对应关系和以虚拟人的髋关节为原点的坐标系,并计算初始姿态下所述虚拟人每个关节点的三维坐标;
根据每个关节点滤波后的三维坐标和初始姿态下的三维坐标计算其第一偏移量,并根据所述第一偏移量对相应的关节点进行驱动。
8.根据权利要求1所述的一种虚拟人驱动方法,其特征在于,所述方法还包括:
将虚拟人的脚底纵坐标设为0,根据所述虚拟人的脚部位置和小腿、大腿的旋转关系以及长度,逆向求出所述髋关节的理论三维坐标;
计算所述髋关节的理论三维坐标与实际三维坐标的差值得到髋关节的第二偏移量,根据所述第二偏移量对所述虚拟人进行驱动。
9.一种虚拟人驱动系统,其特征在于,包括:
计算模块,用于获取当前视频帧中目标人物的三维人脸关键点,并根据所述三维人脸关键点计算所述目标人物的头部旋转角和其对应的虚拟人的重定向表情系数;
检测模块,用于对所述当前视频帧进行人体区域位置提取,并根据提取出的人体区域位置进行三维姿态检测以得到所述目标人物各个关节点的三维坐标;
渲染模块,用于对每个所述三维坐标进行滤波,并基于滤波后的三维坐标、所述头部旋转角和所述重定向表情系数对所述虚拟人进行混合驱动。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序使计算机执行时实现如权利要求1~8中任一项所述的一种虚拟人驱动方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211294103.4A CN115546365A (zh) | 2022-10-21 | 2022-10-21 | 一种虚拟人驱动方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211294103.4A CN115546365A (zh) | 2022-10-21 | 2022-10-21 | 一种虚拟人驱动方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115546365A true CN115546365A (zh) | 2022-12-30 |
Family
ID=84736357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211294103.4A Pending CN115546365A (zh) | 2022-10-21 | 2022-10-21 | 一种虚拟人驱动方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115546365A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116452787A (zh) * | 2023-06-13 | 2023-07-18 | 北京中科闻歌科技股份有限公司 | 一种视觉驱动的虚拟角色处理系统 |
CN116612512A (zh) * | 2023-02-02 | 2023-08-18 | 北京甲板智慧科技有限公司 | 基于单目rgb相机的人脸表情图像处理方法和装置 |
CN116681809A (zh) * | 2023-06-28 | 2023-09-01 | 北京百度网讯科技有限公司 | 虚拟形象的驱动方法、装置、电子设备、介质 |
CN117152382A (zh) * | 2023-10-30 | 2023-12-01 | 海马云(天津)信息技术有限公司 | 虚拟数字人面部表情计算方法和装置 |
CN117893696A (zh) * | 2024-03-15 | 2024-04-16 | 之江实验室 | 一种三维人体数据生成方法、装置、存储介质及电子设备 |
CN118674875A (zh) * | 2024-08-26 | 2024-09-20 | 松立控股集团股份有限公司 | 一种基于视频三维重建的实时数字车场构建方法 |
-
2022
- 2022-10-21 CN CN202211294103.4A patent/CN115546365A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116612512A (zh) * | 2023-02-02 | 2023-08-18 | 北京甲板智慧科技有限公司 | 基于单目rgb相机的人脸表情图像处理方法和装置 |
CN116452787A (zh) * | 2023-06-13 | 2023-07-18 | 北京中科闻歌科技股份有限公司 | 一种视觉驱动的虚拟角色处理系统 |
CN116452787B (zh) * | 2023-06-13 | 2023-10-10 | 北京中科闻歌科技股份有限公司 | 一种视觉驱动的虚拟角色处理系统 |
CN116681809A (zh) * | 2023-06-28 | 2023-09-01 | 北京百度网讯科技有限公司 | 虚拟形象的驱动方法、装置、电子设备、介质 |
CN117152382A (zh) * | 2023-10-30 | 2023-12-01 | 海马云(天津)信息技术有限公司 | 虚拟数字人面部表情计算方法和装置 |
CN117893696A (zh) * | 2024-03-15 | 2024-04-16 | 之江实验室 | 一种三维人体数据生成方法、装置、存储介质及电子设备 |
CN117893696B (zh) * | 2024-03-15 | 2024-05-28 | 之江实验室 | 一种三维人体数据生成方法、装置、存储介质及电子设备 |
CN118674875A (zh) * | 2024-08-26 | 2024-09-20 | 松立控股集团股份有限公司 | 一种基于视频三维重建的实时数字车场构建方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115546365A (zh) | 一种虚拟人驱动方法及系统 | |
Memo et al. | Head-mounted gesture controlled interface for human-computer interaction | |
CN111460875B (zh) | 图像处理方法及装置、图像设备及存储介质 | |
CN113706699B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN105389539B (zh) | 一种基于深度数据的三维手势姿态估计方法及系统 | |
Ren et al. | Depth camera based hand gesture recognition and its applications in human-computer-interaction | |
CN111694429A (zh) | 虚拟对象驱动方法、装置、电子设备及可读存储 | |
CN111402290A (zh) | 一种基于骨骼关键点的动作还原方法以及装置 | |
US11940774B2 (en) | Action imitation method and robot and computer readable storage medium using the same | |
JP2019096113A (ja) | キーポイントデータに関する加工装置、方法及びプログラム | |
CN110942479B (zh) | 虚拟对象控制方法、存储介质及电子设备 | |
CN112950751B (zh) | 姿态动作的展示方法及装置、存储介质、系统 | |
US20200286286A1 (en) | Tracking rigged polygon-mesh models of articulated objects | |
US11850747B2 (en) | Action imitation method and robot and computer readable medium using the same | |
WO2022174594A1 (zh) | 基于多相机的裸手追踪显示方法、装置及系统 | |
CN111240476A (zh) | 基于增强现实的交互方法、装置、存储介质和计算机设备 | |
CN108305321A (zh) | 一种基于双目彩色成像系统的立体人手3d骨架模型实时重建方法和装置 | |
CN111433783A (zh) | 手部模型生成方法、装置、终端设备及手部动作捕捉方法 | |
CN114722913A (zh) | 姿态检测方法、装置、电子设备及计算机可读存储介质 | |
CN111354029A (zh) | 手势深度确定方法、装置、设备及存储介质 | |
US20230290101A1 (en) | Data processing method and apparatus, electronic device, and computer-readable storage medium | |
CN113496168B (zh) | 手语数据采集方法、设备、存储介质 | |
WO2023185241A1 (zh) | 数据处理方法、装置、设备以及介质 | |
CN115223240B (zh) | 基于动态时间规整算法的运动实时计数方法和系统 | |
CN109531578B (zh) | 仿人机械手臂体感控制方法及装置 |
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 |