一种生成虚拟形象动画的方法、装置、设备及存储介质与流程

    专利查询2024-06-08  76



    1.本技术涉及计算机图形动画领域,尤其涉及一种生成虚拟形象动画的方法、装置、设备及存储介质。


    背景技术:

    2.随着科技的发展,作为新兴产业的动画对人们日常生活的影响越来越大,应用的领域也越来越广泛,虚拟形象的动画制作正是顺应这一潮流而逐渐发展起来的,但现有虚拟形象的动画制作方法存在各种问题:一、逐帧绘制、编辑动画的工作量大、耗时长、制作效率低,且需要专业的动画技术,不适用于需要快速制作自己的动画的普通消费者;二、通过专业的动捕设备录制演员的姿态动作,再将其转化为虚拟形象的动画,虽效率较高,但演员需穿戴指定的服饰、手套,同时设备成本较高、不便于携带,且要较大的活动空间以满足演员在动捕活动中的身体活动;三、通过躯干骨骼识别将人体躯干活动转化为虚拟形象的躯干动画,仅能对躯干进行识别且捕获躯干活动时需要适合全身活动的空间。


    技术实现要素:

    3.本技术提供的一种生成虚拟形象动画的方法,利用机器学习对手部图像进行处理,从而将人体手部动作映射转换为虚拟形象的全身动作以生成动画,可以有效降低用户制作动画的专业性要求,并减小运动空间范围。
    4.为实现上述目的,本技术采用以下技术方案:
    5.本技术的一种生成虚拟形象动画的方法,包括以下步骤:
    6.获取图像捕获设备采集的目标图像;
    7.利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标;
    8.基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量;
    9.根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画。
    10.作为优选,所述利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标,包括:
    11.利用预先训练的第一神经网络模型对所述目标图像进行检测,得到手部位置的坐标;
    12.根据所述手部位置的坐标,对所述目标图像进行裁切,得到手部图像;
    13.将所述手部图像输入到预先训练的第二神经网络模型中进行三维骨骼关键点识别,得到手部主要关节点的三维坐标。
    14.作为优选,所述基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量,包括:
    15.基于标定的手指根部关节点的三维坐标集和所述主要关节点的三维坐标,计算最优旋转矩阵和最优位移向量,得到手部的位姿;
    16.根据所述主要关节点的三维坐标计算手指各关节的向量,并利用所述向量计算出手指每个关节的弯曲量。
    17.作为优选,所述根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画,包括:
    18.根据所述位姿和所述弯曲量计算目标旋转四元数和相机外参,基于所述目标旋转四元数、相机外参和预设的映射关系确定虚拟形象各部件的动作;
    19.或利用分类器对所述位姿和弯曲量进行手势理解并与预设手势库中的手势进行比对,根据比对结果触发相应手势绑定的虚拟形象动画。
    20.一种生成虚拟形象动画的装置,包括:
    21.获取模块,用于获取图像捕获设备采集的目标图像;
    22.识别模块,用于利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标;
    23.计算模块,用于基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量;
    24.转换模块,用于根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画。
    25.作为优选,所述识别模块,包括:
    26.检测单元,用于利用预先训练的第一神经网络模型对所述目标图像进行检测,得到手部位置的坐标;
    27.裁剪单元,用于根据所述手部位置的坐标,对所述目标图像进行裁切,得到手部图像;
    28.识别单元,用于将所述手部图像输入到预先训练的第二神经网络模型中进行三维骨骼关键点识别,得到手部主要关节点的三维坐标。
    29.作为优选,所述计算模块,包括:
    30.第一计算单元,用于基于标定的手指根部关节点的三维坐标集和所述主要关节点的三维坐标,计算最优旋转矩阵和最优位移向量,得到手部的位姿;
    31.第二计算单元,用于根据所述主要关节点的三维坐标计算手指各关节的向量,并利用所述向量计算出手指每个关节的弯曲量。
    32.作为优选,所述转换模块,包括:
    33.控制单元,用于根据所述位姿和所述弯曲量计算目标旋转四元数和相机外参,基于所述目标旋转四元数、相机外参和预设的映射关系确定虚拟形象各部件的动作;
    34.触发单元,用于或利用分类器对所述位姿和弯曲量进行手势理解并与预设手势库中的手势进行比对,根据比对结果触发相应手势绑定的虚拟形象动画。
    35.一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如上述中任一项所述的一种生成虚拟形象动画的方法。
    36.一种存储有计算机程序的计算机可读存储介质,所述计算机程序使计算机执行时
    实现如上述中任一项所述的一种生成虚拟形象动画的方法。
    37.本发明具有如下有益效果:
    38.本方案通过机器学习算法对任意摄像头拍摄的目标图像进行手部区域检测,识别出手部主要关节点的坐标,再根据建立的映射函数完成手指活动到虚拟形象全身范围动作的映射,实现了任意虚拟形象的实时动画生产;此外,本方案仅用一部手机就可以完成全部的动画制作过程,因此不需要目标用户掌握任何动画技术,也不需要准备专业动画/动捕设备,并可在小空间范围下正常工作。
    附图说明
    39.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
    40.图1是本技术实施例1的手部主要关节点示意图;
    41.图2是本技术实施例2实现一种生成虚拟形象动画的方法第一流程图;
    42.图3是本技术实施例3实现一种生成虚拟形象动画的方法第二流程图;
    43.图4是本技术实施例4实现一种生成虚拟形象动画的装置示意图;
    44.图5是本技术实施例5实现一种生成虚拟形象动画的装置的识别模块示意图;
    45.图6是本技术实施例6实现一种生成虚拟形象动画的装置的计算模块示意图;
    46.图7是本技术实施例7实现一种生成虚拟形象动画的装置的转换模块示意图;
    47.图8是本技术实施例8实现一种生成虚拟形象动画的方法的一种电子设备示意图。
    具体实施方式
    48.下面将结合附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
    49.本技术的权利要求书和说明书的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序,应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本技术的实施例中对相同属性的对象在描述时所采用的区分方式,此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他单元。
    50.实施例1
    51.如图1所示,一种生成虚拟形象动画的方法,包括以下步骤:
    52.s110、获取图像捕获设备采集的目标图像;
    53.s120、利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标;
    54.s130、基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计
    算所述手部的位姿和手指各关节的弯曲量;
    55.s140、根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画。
    56.根据实施例1可知,首先获取的是图像捕获设备采集的目标图像,这里的图像捕获设备可以是手机摄像头,也可以是普通电脑摄像头,目标图像既可以是实时视频流中的图像,也可以是预录制视频中的图像,只要求每张图像中至少有一只人手,其余都不做具体限制,用户可以根据自身实际需求进行选择,再将目标图像输入到预先训练好的第一神经网络模型中进行训练,得到手部位置的坐标,根据手部位置的坐标将获取的目标图像裁剪为只包含手部的图像,即将图像中的其他部分全部裁切掉,只保留手部这一部分,将手部图像输入到预先训练好的第二神经网络模型中进行三维骨骼关键点检测,得到手部21个主要关节点的三维坐标jj=(xj,yj,zj)其中j∈{1,2,3,

    ,21},如图1,这21个主要关节点分别为手腕点w0,大拇指骨a1,大拇指骨a2,大拇指骨a3,大拇指骨a4,食指骨b1,食指骨b2,食指骨b3,食指骨b4,中指骨c1,中指骨c2,中指骨c3,中指骨c4,无名指骨d1,无名指骨d2,无名指骨d3,无名指骨d4,小拇指骨e1,小拇指骨e2,小拇指骨e3,小拇指骨e4,然后标定一组手指根部关节点的坐标集,手指根部骨关节点指的是a1、b1、c1、d1和e1,并形成一个n
    ×
    3矩阵,其中n=5,为手指数目,并从检测得到的21个主要关节点的三维坐标中提取出相应关节点的三维坐标,也形成一个n
    ×
    3矩阵,计算出这两对矩阵的最优旋转矩阵和最优位移向量,得到手部整体的旋转量和位移量,同时计算手部五指各3个关节共15个关节的弯曲量,最后,根据应用场景,选择是根据手部位姿状态按比例实时映射还是根据既定手势触发对应动画来生成虚拟形象动画,即根据实际场景的情况,用户可以选择是通过计算的目标旋转四元数和相机外参以及预设的映射关系来控制虚拟形象动作还是通过对图像中的手部动作进行分类,根据分类结果直接触发该手势绑定的虚拟形象动画,其中,预设的映射关系是指预先确定好手指各主要关节动作与虚拟形象各部件动作的对应关系,比如大拇指运动对应虚拟形象的头部动作。本实施例中普通用户在手机摄像头或普通电脑摄像头前展示的手部和手指的各种运动,可实时转化为虚拟形象的全身动作,并在手机屏幕或电脑显示器上渲染出虚拟形象的动画,实现了高效地动画制作,且不需要用户准备专业动捕设备并具备动画制作技术,同时占用场地空间小,仅需手在普通摄像头前活动即可完成动画生产并实时渲染虚拟形象的动画,方便快速,实用性强。
    57.实施例2
    58.如图2所示,一种生成虚拟形象动画的方法,包括:
    59.s210、获取图像捕获设备采集的目标图像;
    60.s220、利用预先训练的第一神经网络模型对所述目标图像进行检测,得到手部位置的坐标;
    61.s230、根据所述手部位置的坐标,对所述目标图像进行裁切,得到手部图像;
    62.s240、将所述手部图像输入到预先训练的第二神经网络模型中进行三维骨骼关键点识别,得到手部主要关节点的三维坐标;
    63.s250、基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量;
    64.s260、根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述
    手部动作转换成虚拟形象对应的动画。
    65.根据实施例2可知,获取到目标图像后,会将该目标图像输入到预先训练的第一神经网络模型中进行手部检测,这里的第一神经网络模型是神经网络模型一,具体为单类别检测模型,基于yolov5s,整体进行轻量化改造,将主干网络替换为轻量的shufflenetv2结构,检测框回归目标函数则设为ciou结构,该模型的训练过程为:收集样本图像数据集i={i1,i2,

    ,in},样本图像是通过互联网下载和实际场景拍摄等手段收集来的目标图像,其中,每张图像至少拍摄到一只手,再通过人工标注的方式来获取手部信息,这里标注的手部信息为2d坐标,即det2di=(xi,yi,wi,hi),其中i为数据集中各只手,wi、hi分别代表了每只手所在矩形框的宽度和高度,使用该坐标可提取出仅包含手部的图像ihand;然后将手部图像ihand输入到预先训练好的第二模型中,这里的第二神经网络模型也就是神经网络模型二,具体为坐标点回归模型,该模型采用基于级联的多级卷积模块和batch归一化模块,网络激活函数为prelu,网络迭代优化器为adam,根据如下目标函数进行训练:
    [0066][0067]
    其中,jj为推理关节点三维坐标,为标注关节点三维坐标,j∈{1,2,3,

    ,21};最后再通过跨域映射函数将手部骨骼三维数据转换为虚拟形象的骨骼动画参数,以生成虚拟形象动画。本实施例中不同于传统的手套穿戴式的手部动作捕捉,使用了基于机器视觉的手部区域检测和三维骨骼关键点识别,可快速、准确地识别手部骨骼状态,提高虚拟形象动画制作的效率。
    [0068]
    实施例3
    [0069]
    如图3所示,一种生成虚拟形象动画的方法,包括:
    [0070]
    s310、获取图像捕获设备采集的目标图像;
    [0071]
    s320、利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标;
    [0072]
    s330、基于标定的手指根部关节点的三维坐标集和所述主要关节点的三维坐标,计算最优旋转矩阵和最优位移向量,得到手部的位姿;
    [0073]
    s340、根据所述主要关节点的三维坐标计算手指各关节的向量,并利用所述向量计算出手指每个关节的弯曲量;
    [0074]
    s350、根据所述位姿和所述弯曲量计算目标旋转四元数和相机外参,基于所述目标旋转四元数、相机外参和预设的映射关系确定虚拟形象各部件的动作;
    [0075]
    s360、或利用分类器对所述位姿和弯曲量进行手势理解并与预设手势库中的手势进行比对,根据比对结果触发相应手势绑定的虚拟形象动画。
    [0076]
    根据实施例3可知,在获取到手部主要关节点的三维坐标后,需要对该手部主要关节点的三维坐标进行处理以建立手部动作到虚拟形象肢体动作的映射关系,其具体过程为:首先定义跨域映射函数f(x),使得任意h满足v=f(h),其中h∈h,v∈v,h为人手三维骨骼点云域,v为虚拟形象骨骼位姿域,然后,计算手部整体旋转量和位移量:标定一组手指根部关节点的坐标集b,在运行时提取手指根部关节点的坐标集b

    ,两组坐标集可视为两个n
    ×
    3矩阵,其中n=5,为手指数目,则手部旋转量为两对矩阵的最优旋转矩阵,求解目标为最
    小化两者的均方根误差(rmsd),具体步骤为:
    [0077]
    a.求解两点集的去质心坐标:
    [0078][0079][0080]
    则此时和所建立的新点集质心存在于坐标零点;
    [0081]
    b.求解最优旋转矩阵:
    [0082][0083]
    c.求解最优位移向量:
    [0084][0085]
    根据最优旋转矩阵和最优位移向量即可得到手部整体的旋转量和位移量。
    [0086]
    再计算手部15个指关节的弯曲量:
    [0087]
    令手指关节坐标为hi,h∈{a,b,c,d,e},i∈{1,2,3},且令a0,b0,c0,d0,e0均等于w0,则关节坐标hi的一组相关向量为坐标的向量表示说明了两个相邻关节点之间的指向关系。通过以下映射函数计算该关节hi的弯曲量ai:
    [0088][0089]
    其中,clamp为值域钳制函数,c为角度常数,取57.3。
    [0090]
    然后,根据具体应用场景,选取下列方法一或方法二中的任意一种完成虚拟形象的动画制作。
    [0091]
    方法一为根据手部位姿状态按比例实时映射,具体过程为:
    [0092]
    该方法中,虚拟形象使用四元数和位移向量进行驱动,首先根据上述步骤得到的旋转姿态和手指关节的弯曲姿态以及实施例1得到的手部位置,建立rth-rtv映射函数,其中rth∈{人手骨骼位姿域},rtv∈{虚拟形象骨骼位姿域},rt表示旋转和位移,已知最优三维矩阵r
    *
    为:
    [0093][0094]
    目标旋转四元数q
    *
    =[q
    x
    ,qy,qz,qw]中各维度的表达式为:
    [0095][0096]
    其中,tr为矩阵r
    *
    的迹。该四元数q
    *
    可控制驱动虚拟形象身体整体运动的三自由度的朝向和旋转。需要说明的是,四元数是一种在动画领域广泛使用的描述三维旋转的方式,其使用4个分量来描述旋转。
    [0097]
    同时,已知各手指关节的弯曲量ai,可将其进行偏移映射后建立新四元数q
    *
    =[q
    x
    ,qy,qz,qw],控制其他虚拟形象部件:
    [0098]
    将弯曲量
    ai
    通过如下映射变化,得到a
    i’:
    [0099]a′i=a
    iai
    +bi,
    [0100]ai
    和bi为某一关节的映射参数,根据不同的虚拟形象独立调制。
    [0101]
    再通过如下计算可以将其转换为四元数q
    *
    ,其中,α,β,γ∈a
    ′i,新的四元数中各分量的表达式为:
    [0102][0103]
    典型用例为用从中指、无名指获取到的四元数控制虚拟形象的上肢,用从食指、小拇指获取到的四元数控制虚拟形象的下肢,大拇指运动控制虚拟形象的头部位姿。
    [0104]
    已知最优三维位移向量t
    *
    =[t
    x
    ,ty,tz]存在于相机坐标系,应用以下公式将其转化为渲染空间的虚拟世界坐标系t=[xw,yw,zw,1]:
    [0105][0106]
    其中,p
    [r|t]
    为相机外参,即应用于真实相机到虚拟渲染空间的变化参数,为3*4矩阵,实际使用时可根据虚拟场景设定和物理相机位姿进行标定后计算。该求解得到的三维向量t将控制驱动虚拟形象身体的根部骨骼(root)的三维移动,以实现绝对坐标(世界坐标)的运动。
    [0107]
    方法二为根据既定手势触发对应动画,具体实现方法为:
    [0108]
    将基于前述步骤得到的最优三维旋转矩阵r
    *
    、最优三维位移向量t
    *
    和求得的弯曲量集ai进行手部手势理解,即通过一对一多分类支持向量机(ovo svms)进行握拳、比心、竖
    大拇指、比数字一至五、手指上下左右和手面正反等手势的分类识别,原理是在捕获上述手势的数据集作为手势样本库后,在任意两类样本之间各设计一个支持向量机(svm),当对一个未知新样本进行分类时,先逐一使用所有的支持向量机对新样本进行识别,最后将得票最多的类别确定为该新样本的类别。在运行时,根据当前识别出的手部手势,触发其绑定的驱动虚拟形象运动的动画,实现整体动画制作。在此需要说明的是,上述可识别的手势种类仅针对当前用例场景设计,本一对一多分类支持向量机也可实现其他手部手势的识别,同时,本实施例中手势分类的方法并不局限于支持向量机,也可运用其他分类器,具体运用时可根据个人习惯选择。
    [0109]
    最后,本实施例可在实现手势实时检测、识别并映射为虚拟形象动画的同时完成动画渲染、录制和直播,用户可在智能手机等手持设备上实现本实施例的全部流程,即从手部视频图像捕获到实时虚拟形象动画的呈现,无需用户使用专业动捕设备和具备动画制作专业知识,实用性高。
    [0110]
    实施例4
    [0111]
    如图4所示,一种生成虚拟形象动画的装置,包括:
    [0112]
    获取模块10,用于获取图像捕获设备采集的目标图像;
    [0113]
    识别模块20,用于利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标;
    [0114]
    计算模块30,用于基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量;
    [0115]
    转换模块40,用于根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画。
    [0116]
    上述装置的一种实施方式可为:获取模块10获取图像捕获设备采集的目标图像;识别模块20利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标;计算模块30基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量;转换模块40根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画。
    [0117]
    实施例5
    [0118]
    如图5所示,一种生成虚拟形象动画的装置的识别模块20,包括:
    [0119]
    检测单元22,用于利用预先训练的第一神经网络模型对所述目标图像进行检测,得到手部位置的坐标;
    [0120]
    裁剪单元24,用于根据所述手部位置的坐标,对所述目标图像进行裁切,得到手部图像;
    [0121]
    识别单元26,用于将所述手部图像输入到预先训练的第二神经网络模型中进行三维骨骼关键点识别,得到手部主要关节点的三维坐标。
    [0122]
    上述装置的识别模块20的一种实施方式可为:检测单元22利用预先训练的第一神经网络模型对所述目标图像进行检测,得到手部位置的坐标;裁剪单元24根据所述手部位置的坐标,对所述目标图像进行裁切,得到手部图像;识别单元26将所述手部图像输入到预先训练的第二神经网络模型中进行三维骨骼关键点识别,得到手部主要关节点的三维坐
    标。
    [0123]
    实施例6
    [0124]
    如图6所示,一种生成虚拟形象动画的装置的计算模块30,包括:
    [0125]
    第一计算单元32,用于基于标定的手指根部关节点的三维坐标集和所述主要关节点的三维坐标,计算最优旋转矩阵和最优位移向量,得到手部的位姿;
    [0126]
    第二计算单元34,用于根据所述主要关节点的三维坐标计算手指各关节的向量,并利用所述向量计算出手指每个关节的弯曲量。
    [0127]
    上述装置的转换模块30的一种实施方式可为:第一计算单元32基于标定的手指根部关节点的三维坐标集和所述主要关节点的三维坐标,计算最优旋转矩阵和最优位移向量,得到手部的位姿;第二计算单元34根据所述主要关节点的三维坐标计算手指各关节的向量,并利用所述向量计算出手指每个关节的弯曲量。
    [0128]
    实施例7
    [0129]
    如图7所示,一种生成虚拟形象动画的装置的转换模块40,包括:
    [0130]
    控制单元42,用于根据所述位姿和所述弯曲量计算目标旋转四元数和相机外参,基于所述目标旋转四元数、相机外参和预设的映射关系确定虚拟形象各部件的动作;
    [0131]
    触发单元44,用于或利用分类器对所述位姿和弯曲量进行手势理解并与预设手势库中的手势进行比对,根据比对结果触发相应手势绑定的虚拟形象动画。
    [0132]
    上述装置的转换模块40的一种实施方式可为:控制单元42根据所述位姿和所述弯曲量计算目标旋转四元数和相机外参,基于所述目标旋转四元数、相机外参和预设的映射关系确定虚拟形象各部件的动作;触发单元44或利用分类器对所述位姿和弯曲量进行手势理解并与预设手势库中的手势进行比对,根据比对结果触发相应手势绑定的虚拟形象动画。
    [0133]
    实施例8
    [0134]
    如图8所示,一种电子设备,包括存储器801和处理器802,所述存储器801用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器802执行以实现上述的一种生成虚拟形象动画的方法。
    [0135]
    所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的电子设备的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
    [0136]
    一种存储有计算机程序的计算机可读存储介质,所述计算机程序使计算机执行时实现如上述的一种生成虚拟形象动画的方法。
    [0137]
    示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器801中,并由处理器802执行,并由输入接口805和输出接口806完成数据的i/o接口传输,以完成本发明,一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在计算机设备中的执行过程。
    [0138]
    计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可包括,但不仅限于,存储器801、处理器802,本领域技术人员可以理解,本实施例仅仅是计算机设备的示例,并不构成对计算机设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入器807、网络接入设备、总线等。
    [0139]
    处理器802可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器802、数字信号处理器802(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-program503mablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器802可以是微处理器802或者该处理器802也可以是任何常规的处理器802等。
    [0140]
    存储器801可以是计算机设备的内部存储单元,例如计算机设备的硬盘或内存。存储器801也可以是计算机设备的外部存储设备,例如计算机设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等,进一步地,存储器801还可以既包括计算机设备的内部存储单元也包括外部存储设备,存储器801用于存储计算机程序以及计算机设备所需的其他程序和数据,存储器801还可以用于暂时地存储在输出器808,而前述的存储介质包括u盘、移动硬盘、只读存储器rom803、随机存储器ram804、碟盘或光盘等各种可以存储程序代码的介质。
    [0141]
    以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何在本发明揭露的技术范围内的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

    技术特征:
    1.一种生成虚拟形象动画的方法,其特征在于,包括以下步骤:获取图像捕获设备采集的目标图像;利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标;基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量;根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画。2.根据权利要求1所述的一种生成虚拟形象动画的方法,其特征在于,所述利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标,包括:利用预先训练的第一神经网络模型对所述目标图像进行检测,得到手部位置的坐标;根据所述手部位置的坐标,对所述目标图像进行裁切,得到手部图像;将所述手部图像输入到预先训练的第二神经网络模型中进行三维骨骼关键点识别,得到手部主要关节点的三维坐标。3.根据权利要求1所述的一种生成虚拟形象动画的方法,其特征在于,所述基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量,包括:基于标定的手指根部关节点的三维坐标集和所述主要关节点的三维坐标,计算最优旋转矩阵和最优位移向量,得到手部的位姿;根据所述主要关节点的三维坐标计算手指各关节的向量,并利用所述向量计算出手指每个关节的弯曲量。4.根据权利要求1所述的一种生成虚拟形象动画的方法,其特征在于,所述根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画,包括:根据所述位姿和所述弯曲量计算目标旋转四元数和相机外参,基于所述目标旋转四元数、相机外参和预设的映射关系确定虚拟形象各部件的动作;或利用分类器对所述位姿和弯曲量进行手势理解并与预设手势库中的手势进行比对,根据比对结果触发相应手势绑定的虚拟形象动画。5.一种生成虚拟形象动画的装置,其特征在于,包括:获取模块,用于获取图像捕获设备采集的目标图像;识别模块,用于利用预先训练的神经网络模型对所述目标图像进行三维骨骼关键点检测,得到手部主要关节点的三维坐标;计算模块,用于基于所述主要关节点的三维坐标和标定的手部主要关节点的三维坐标,计算所述手部的位姿和手指各关节的弯曲量;转换模块,用于根据所述位姿和所述弯曲量确定手部动作,并利用预设的映射关系将所述手部动作转换成虚拟形象对应的动画。6.根据权利要求5所述的一种生成虚拟形象动画的装置,其特征在于,所述识别模块,包括:
    检测单元,用于利用预先训练的第一神经网络模型对所述目标图像进行检测,得到手部位置的坐标;裁剪单元,用于根据所述手部位置的坐标,对所述目标图像进行裁切,得到手部图像;识别单元,用于将所述手部图像输入到预先训练的第二神经网络模型中进行三维骨骼关键点识别,得到手部主要关节点的三维坐标。7.根据权利要求5所述的一种生成虚拟形象动画的装置,其特征在于,所述计算模块,包括:第一计算单元,用于基于标定的手指根部关节点的三维坐标集和所述主要关节点的三维坐标,计算最优旋转矩阵和最优位移向量,得到手部的位姿;第二计算单元,用于根据所述主要关节点的三维坐标计算手指各关节的向量,并利用所述向量计算出手指每个关节的弯曲量。8.根据权利要求5所述的一种生成虚拟形象动画的装置,其特征在于,所述转换模块,包括:控制单元,用于根据所述位姿和所述弯曲量计算目标旋转四元数和相机外参,基于所述目标旋转四元数、相机外参和预设的映射关系确定虚拟形象各部件的动作;触发单元,用于或利用分类器对所述位姿和弯曲量进行手势理解并与预设手势库中的手势进行比对,根据比对结果触发相应手势绑定的虚拟形象动画。9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如权利要求1~4中任一项所述的一种生成虚拟形象动画的方法。10.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序使计算机执行时实现如权利要求1~4中任一项所述的一种生成虚拟形象动画的方法。

    技术总结
    本申请公开了一种生成虚拟形象动画的方法、装置、设备及存储介质,涉及计算机图形动画领域,包括以下步骤:获取手部图像;利用三维骨骼关键点检测算法对手部图像进行检测,得到手部主要关节点的三维坐标;再标定手部主要关节点的三维坐标,计算手部的位姿和手指各关节的弯曲量;由位姿和弯曲量确定手部动作,最后利用预设的映射关系将手部动作转换成虚拟形象对应的动画。本方案通过机器学习算法识别出目标图像中手部主要关节点的坐标,再根据建立的映射关系完成手指活动到全身范围动作的映射,实现了虚拟形象的实时动画生产,且用一部手机就可以完成全部的动画制作过程,对用户的专业要求低。要求低。要求低。


    技术研发人员:龚陆凯 徐常亮
    受保护的技术使用者:新华智云科技有限公司
    技术研发日:2022.02.07
    技术公布日:2022/5/25
    转载请注明原文地址:https://tc.8miu.com/read-22770.html

    最新回复(0)