CN117576280A - 一种基于3d数字人的智能端云一体化生成方法及系统 - Google Patents

一种基于3d数字人的智能端云一体化生成方法及系统 Download PDF

Info

Publication number
CN117576280A
CN117576280A CN202311607044.6A CN202311607044A CN117576280A CN 117576280 A CN117576280 A CN 117576280A CN 202311607044 A CN202311607044 A CN 202311607044A CN 117576280 A CN117576280 A CN 117576280A
Authority
CN
China
Prior art keywords
model
grid
models
bone
cloud
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
Application number
CN202311607044.6A
Other languages
English (en)
Other versions
CN117576280B (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.)
Hangzhou Xuezhao Culture Technology Co ltd
Original Assignee
Hangzhou Xuezhao Culture Technology 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 Hangzhou Xuezhao Culture Technology Co ltd filed Critical Hangzhou Xuezhao Culture Technology Co ltd
Publication of CN117576280A publication Critical patent/CN117576280A/zh
Application granted granted Critical
Publication of CN117576280B publication Critical patent/CN117576280B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明涉及图像处理技术领域,更具体涉及一种基于3D数字人的智能端云一体化生成方法及系统,创建AI解构器,获取第一3D模型网格,使用AI解构器对第一3D模型网格进行拆解,并获取拆解后的模型部件,针对模型部件进行贴图,生成多种第二3D模型;基于智能化骨骼绑定技术,将模型部件重组,生成实时驱动的第三3D模型;再减面处理,获取达到第一阈值或第一要求实时驱动的第四3D模型,将实时驱动的第四3D模型进行实时渲染,获取第五3D模型。通过本发明解决了3D模型研发成本高、多样性和场景适配度不足的问题。

Description

一种基于3D数字人的智能端云一体化生成方法及系统
技术领域
本发明涉及图像处理技术领域,更具体涉及一种基于3D数字人的智能端云一体化生成方法及系统。
背景技术
伴随着苹果MR设备的发布,其技术作为未来数字体验的先锋,已经改变了我们看待和体验数字世界的方式。随着技术的不断发展,人们可以通过手机、平板等设备实时感知并与虚拟世界进行互动,这将给娱乐、工业、医疗、教育等多个领域带来创新的可能性。在整个技术应用中,3D模型是非常重要的一环。它们可以增强用户对虚拟现实世界的沉浸感,并提高用户对产品或服务的理解度。其中更有特点的是人偶模型的制作,通过高表现力的人偶模型加上AI技术的应用可以大幅度增加用户在MR场景里的切实体验。随着MR技术的普及和3D打印技术的发展,如何高质量、高效率的制作人偶模型就变得十分重要。
但近几年来,人偶3D模型的研发面临人工手动制作成本高、定制化程度高、多样性不足,实时3D渲染算力消耗巨大、对场景的适配度不足等问题。
为解决以上问题,本发明提供一种基于3D数字人的智能端云一体化生成方法及系统,解决3D数字人研发过程中的多样性问题,并且能够更合理的使用GPU算力,降低使用成本与使用门槛,提升系统表现力。
发明内容
为了更好的解决人偶3D模型研发人工手动制作成本高、多样性不足、实时3D渲染算力消耗大和场景适配度不足的问题,本发明提供一种基于3D数字人的智能端云一体化生成方法。
作为本发明的一种优选技术方案,所述方法包括如下步骤:
步骤S1:创建AI解构器,获取第一3D模型网格,使用所述AI解构器对所述第一3D模型网格进行拆解,并获取拆解后的模型部件,使用抗锯齿和平滑算法对所述模型部件重新计算,获取高质量的所述模型部件;
步骤S2:针对所述第一3D模型网络中的所述模型部件进行贴图,生成多种第二3D模型,并从多种所述第二3D模型中筛选符合第一要求的y个所述第二3D模型;
步骤S3:基于智能化骨骼绑定技术,将筛选出的所述第二3D模型上的所述模型部件重组,生成实时驱动的第三3D模型;
步骤S4:针对所述第三3D模型中的各个模型部件进行QEM或Edge Collapse减面处理,获取达到第一阈值或第二要求实时驱动的第四3D模型;
步骤S5:将实时驱动的所述第四3D模型进行实时渲染,获取第五3D模型。
作为本发明的一种优选技术方案,上述步骤S1中获取所述第一3D模型网格,包括如下步骤:
步骤S11:设定摄像机的移动速度和旋转速度,使用第一终端输入设备和第二终端输入设备联合控制所述摄像机的移动和旋转,对所述当前模型库中的3D模型进行全身多角度的照片采样,获取所述第一3D模型网格,并将所述第一3D模型网格保存在存储器中;
步骤S12:使用OpenCV将所述第一3D模型网格作为外部库导入Unity中,再使用插件和DLL文件对所述第一3D模型网格作预处理,获取更新后所述第一3D模型网格,对所述第一3D模型网格进行特征提取和匹配,获取场景中的关键点和相机姿态,使用所述关键点和所述相机姿态进行稀疏重建;
步骤S13:在所述Unity中使用编程语言调用OpenCV的StereoBM或StereoSGBM算法对所述第一3D模型网格进行深度估计,获取第一3D模型网格深度图,使用函数将所述第一3D模型网格深度图转换为所述第一3D模型网格三维深度图,对所述第一3D模型网格三维深度图进行稠密度重建,生成所述第一3D模型深度网格,并将所述第一3D模型深度网格保存到所述存储器中。
作为本发明的一种优选技术方案,上述步骤S2,还包括:
步骤S21:通过机器学习diffusion模型针对每个所述第一3D模型深度网格中的所述模型部件进行第一贴图,生成所述第二3D模型,使用稳定扩散模型方程,获取第二贴图,将第二贴图替换所述第二3D模型上的第一贴图,从而生成多种类型的所述第二3D模型;
步骤S22:从多种类型的所述第二3D模型中选择符合第一要求的y个所述第二3D模型,产生所述第二3D模型的数量表达式如下:
y=n^x
其中,x为配件个数,n为贴图数量,y为产生所述第二3D模型的数量。
作为本发明的一种优选技术方案,上述步骤S3中将所述第二3D模型上的所述模型部件重组,生成所述第三3D模型,包括如下步骤:
步骤S31:从所述第二3D模型上获取所述模型部件的骨骼信息和多个骨骼节点对象,通过反向动力学算法确定所述骨骼节点对象的根节点,计算所述根节点向量,基于所述骨骼节点计算末端效应器到根节点的向量;
步骤S32:使用数据优化或解析法,基于所述骨骼位置和人体朝向,计算出所述骨骼节点对应的雅克比矩阵,通过将所述骨骼位置的偏差分解到每个所述骨骼上,计算出每个所述骨骼节点的旋转角度;
步骤S33:如果获取的所述骨骼旋转角度不满足第一约束条件,重复所述步骤S32,重新计算所述雅克比矩阵和所述骨骼旋转角度,直至满足所述第一约束条件,生成实时驱动的所述第三3D模型。
作为本发明的一种优选技术方案,获取达到所述第一阈值或所述第二要求实时驱动的所述第四3D模型,包括:
步骤S41:基于实时驱动的所述第三3D模型,获取所述第三3D模型中所有顶点、所有三角形和所有子网格,计算各个顶点的QEM矩阵,使用Edge Collapse算法进行减面处理,获取所述第四3D模型;
步骤S42:重复所述步骤S41,直到所述第四3D模型质量达到所述第一阈值或所述第二要求。
作为本发明的一种优选技术方案,上述步骤S41中的所述减面处理,包括如下步骤:
步骤S411:基于所述第三3D模型,获取所述第三3D模型中的每条边,定义模型边,分别计算每条所述模型边收缩挤压后所述模型边的两个顶点之间的距离,定义为第一距离;
步骤S412:选择所述第一距离大于第二阈值的所述模型边,并在其中选取所述第一距离最小的所述模型边作为目标模型边,将所述目标模型边相邻的两个或两个以上三角形合并成一个四边形或三角形;
步骤S413:重新计算相邻边的两个顶点之间的距离,重复所述步骤S411和所述步骤S412,直到达到目标精度或无法再进行收缩挤压操作为止。
作为本发明的一种优选技术方案,获取所述第五3D模型,通过所述云端GPU集群进行渲染,将所述第四3D模型上传至所述云端,在所述云端为所述第四3D模型分配多个GPU节点,所述多个GPU节点同时渲染所述第四3D模型的不同部件,从而获取所述第五模型,所述云端通过云调度算法分配和回收计算资源。
作为本发明的一种优选技术方案,本发明还提供一种如上所述的基于3D数字人的智能端云一体化生成系统,所述系统包括如下模块:
拆解模块:创建AI解构器,获取第一3D模型网格,使用AI解构器对第一3D模型网格进行拆解,并获取拆解后的模型部件,使用抗锯齿和平滑算法对模型部件重新计算,获取高质量的模型部件;
筛选模块:用于针对第一3D模型网络中的模型部件进行贴图,生成多种第二3D模型,并从多种第二3D模型中筛选符合第一要求的y个第二3D模型;
重组模块:用于在智能化骨骼绑定技术的基础上,将筛选出的第二3D模型上的模型部件重组,生成实时驱动的第三3D模型;
优化模块:用于针对第三3D模型中的各个模型部件进行QEM或Edge Collapse减面处理,获取达到第一阈值或第二要求实时驱动的第四3D模型;
渲染模块:用于将实时驱动的第四3D模型进行实时渲染,获取第五3D模型。
本发明还提供一种计算设备,所述设备包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述所述的基于3D数字人的智能端云一体化生成方法。
本发明还提供一种存储介质,所述存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现上述所述的基于3D数字人的智能端云一体化生成方法。
与现有技术相比,本发明的有益效果至少如下所述:
1、本发明的技术方案通过创建AI解构器,获取第一3D模型网格,使用AI解构器对第一3D模型网格进行拆解,并获取拆解后的模型部件,使用抗锯齿和平滑算法对模型部件重新计算,获取高质量的模型部件;针对第一3D模型网络中的模型部件进行贴图,生成多种第二3D模型,并从多种第二3D模型中筛选符合第一要求的y个第二3D模型;基于智能化骨骼绑定技术,将筛选出的第二3D模型上的模型部件重组,生成实时驱动的第三3D模型;针对第三3D模型中的各个模型部件进行QEM或Edge Collapse减面处理,获取达到第一阈值或第二要求实时驱动的第四3D模型。实现自动拆解和组合人偶部件,提高3D模型多样性和适配度,并对3D建模的三角面进行智能优化,让其在额定的算力下有更好的实时渲染和离线渲染表现力。
2、本发明的技术方案通过客户端芯片算力对实时驱动的第四3D模型进行实时渲染,获取动态人偶高性能实时动画,通过云端GPU集群进行静态渲染,获取高质量渲染模型。实现自动化的模型渲染和算力的调度,能够达到原有系统不具备的渲染效果。
附图说明
图1为本发明一种基于3D数字人的智能端云一体化生成方法的步骤流程图;
图2为本发明一种基于3D数字人的智能端云一体化生成系统的组成结构图;
图2中所示:100、基于3D数字人的智能端云一体化生成系统;101、拆解模块;102、筛选模块;103、重组模块;104、优化模块;105、渲染模块。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些模块不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一xx脚本称为第二xx脚本,且类似地,可将第二xx脚本称为第一xx脚本。
因3D人偶模型研发遇到人工手动制作成本高、多样性不足、实时3D渲染算力消耗大和场景适配度不足的问题,为此解决3D人偶模型研发成本高、多样性和场景适配度不足,提高GPU算力显得尤其重要。
针对上述的技术问题,发明人提出如图1所示的一种基于3D数字人的智能端云一体化生成方法,包括如下步骤:
步骤S1:创建AI解构器,获取第一3D模型网格,使用AI解构器对第一3D模型网格进行拆解,并获取拆解后的模型部件,使用抗锯齿和平滑算法对模型部件重新计算,获取高质量的模型部件;
步骤S2:针对第一3D模型网络中的模型部件进行贴图,生成多种第二3D模型,并从多种第二3D模型中筛选符合第一要求的y个第二3D模型;
步骤S3:基于智能化骨骼绑定技术,将筛选出的第二3D模型上的模型部件重组,生成实时驱动的第三3D模型;
步骤S4:针对第三3D模型中的各个模型部件进行QEM或Edge Collapse减面处理,获取达到第一阈值或第二要求实时驱动的第四3D模型;
步骤S5:将实时驱动的第四3D模型进行实时渲染,获取第五3D模型。
具体的,通过上述技术方案实现三维数据重建,具体重建方法如下,首先进行数据采集,包括通过unity(游戏引擎)摄像机对当前模型库中的3D模型结构进行全身多角度的照片自动采样,获取第一3D模型网格,从第一3D模型网格中获取风格化特征数据,并对风格化特征数据进行分类,获得分类结果,基于风格化特征数据的分类结果训练AI解构器,AI解构器用于对第一3D模型网络中的模型部件进行拆解和组合。AI解构器对第一3D模型网络进行拆解后,获取拆解后的模型部件,由于第一模型部件质量较差,通过使用抗锯齿和平滑算法对模型部件进行处理,可以获取到更平滑的模型部件。
文中提到的所有第X3D模型都是指数字人,也就是人偶模型,第X指人偶模型在不同阶段的名称,所有模型部件指3D模型上的人偶部件。
对第一3D模型网络中的人偶部件进行贴图,不同的贴图可以获取到不同的人偶模型,从而可以生成多种第二3D模型,通过人工再从多种人偶模型中,选择符合第一要求的人偶模型,这里第一要求指自定义的要求或标准;此时的人偶模型还是静态的,不具备驱动能力,下面将通过智能化骨骼绑定技术对第二3D模型中的人偶部件进行重组,并对重组后的人偶模型进行拼接和极限运动测试,以达到满足要求的能实时驱动的人偶模型;进一步对实时驱动的人偶模型进行减面处理,以使实时驱动的人偶模型的质量更高;最后通过客户端芯片算力对人偶模型进行实时渲染,获取动态人偶高性能实时动画;对于高精度的人偶模型通过云端GPU集群进行静态渲染,从而获取高质量渲染图效。这里高质量的定义,是以实际应用为参数,如感知相似度、结构相似性、清晰度等;高性能指人偶模型在驱动时更灵活,更符合真实人物在运动时的特征,具体以实际应用为参数;高精度是指模型的位置、高度、形状、比例等几何精度的准确性和模型纹理的准确性、清晰度以及纹理与几何模型的一致性,具体以实际应用为参数。
进一步的,上述步骤S1中获取第一3D模型网格,包括如下步骤:
步骤S11:设定摄像机的移动速度和旋转速度,使用第一终端输入设备和第二终端输入设备联合控制摄像机的移动和旋转,对当前模型库中的3D模型进行全身多角度的照片采样,获取第一3D模型网格,并将第一3D模型网格保存在存储器中;
步骤S12:使用OpenCV将第一3D模型网格作为外部库导入Unity中,再使用插件和DLL文件对第一3D模型网格作预处理,获取更新后第一3D模型网格,对第一3D模型网格进行特征提取和匹配,获取场景中的关键点和相机姿态,使用关键点和相机姿态进行稀疏重建;
步骤S13:在Unity中使用编程语言调用OpenCV的StereoBM或StereoSGBM算法对第一3D模型网格进行深度估计,获取第一3D模型网格深度图,使用函数将第一3D模型网格深度图转换为第一3D模型网格三维深度图,对第一3D模型网格三维深度图进行稠密度重建,生成第一3D模型深度网格,并将第一3D模型深度网格保存到存储器中。
具体的,在基于3D数字人的智能端云一体化生成系统中设定摄像机的移动速度和旋转速度,上述第一和第二终端输入设备分别指键盘和鼠标,控制摄像机的移动和旋转,通过键盘上的按键调用自定义方法对3D游戏人物作品、艺术角色中的目标人偶进行全身多角度的照片采样,并将获取的多个第一3D模型网格保存在存储器中,这里第一3D模型网格指采样数据,目标人偶指从3D游戏人物作品或艺术角色中找到的符合自定义要求的部分3D模型。在Unity(实时3D互动内容创作和运营平台)中使用OpenCV(计算机视觉和机器学习软件库)需要将第一3D模型网格作为外部库导入,使用相关的插件和DLL(动态链接库)文件,并对第一3D模型网格进行预处理,例如去畸变、去噪声等,获取预处理完成的第一3D模型网格,对第一3D模型网格进行特征提取和匹配,以得到场景中的关键点和相机姿态,然后使用ORB特征检测器和描述符来提取关键点和特征点描述,在第一3D模型网格上绘制关键点,并将关键点转换为指定纹理的像素信息以便显示结果,最后我们可以使用特征点和相机姿态来进行稀疏重建。对于稀疏重建,主要利用SfM进行稀疏重建。SfM(Structure FromMotion,从运动中恢复结构),是一种从一组不同视角下拍摄的无序或有序影像中,恢复场景三维结构和相机姿态的技术,目的是得到场景中的相机姿态和表示场景结构的稀疏点云。文中提到的关键点是指如鼻子、左眼、右眼、左耳、右耳、左肩、右肩、左肘、右肘、左腕、右腕、左胯、右胯、左膝、右膝、左踝、右踝等。
使用OpenCV对第一3D模型网格进行深度估计,在Unity中使用C#语言调用OpenCV的StereoBM或StereoSGBM算法,调整相机的内参数矩阵、畸变系数和基线长度等相关参数,使用现有函数将第一3D模型网格的深度图转换为第一3D模型网格的三维点云,计算结果为第一3D模型网格三维深度图。现有函数,例如:OpenCV reprojectImageTo3D函数,该函数用于根据一组差异图像构建3D空间。然后将第一3D模型网格的深度图数据转换为数组格式,并创建第一对象进行稠密度重建,生成第一3D模型深度网格,可以设置等值面和是否使用GPU加速等参数,最后,我们将第一3D模型深度网格保存到第二对象中,以便在Unity场景中显示。第一对象和第二对象为系统开发时用户自定义对象,自定义对象用于调用自定义方法或通用方法,例如创建的PoissonSurfaceReconstruction对像和Mesh对象。
通过上述技术方案获取第一3D模型深度网格,再通过以下技术方案,对第一3D模型深度网络中的各个部件进行贴图,从而生成多种3D模型,具体实施方式下面将详细介绍。
进一步的,上述步骤S2,还包括:
步骤S21:通过机器学习diffusion模型针对每个第一3D模型深度网格中的模型部件进行第一贴图,生成第二3D模型,使用稳定扩散模型方程,获取第二贴图,将第二贴图替换第二3D模型上的第一贴图,从而生成多种类型的第二3D模型;
步骤S22:从多种类型的第二3D模型中选择符合第一要求的y个第二3D模型,产生第二3D模型的数量表达式如下:
y=n^x
其中,x为配件个数,n为贴图数量,y为产生第二3D模型的数量。
具体的,通过AI解构器中图像识别算法精细化的将一套高精度人偶模型进行多个部位的自动化拆解,获取多个人偶部件,人偶模型的具体部位例如:头发、耳朵、眼睛、鼻子、嘴巴、眉毛、眼镜、项链、四肢、上衣、裤子、背包、手持、鞋子等,使用抗锯齿和平滑等算法(均值平滑算法、法向量平均算法等)确保3D模型的平滑度水平,以获取平滑的高质量的人偶部件,具体实例是,在Unity中使用C#代码调用相机进行抗锯齿(Anti-Aliasing)和平滑(Smoothness)等算法来让3D模型保持平滑,抗锯齿算法可以选择多重采样抗锯齿MSAA、快速近似抗锯齿FXAA或子像素增强抗锯齿SMAA等。
使用碎片风格化技术对拆解后的人偶部件进行贴图延展,使用自有数据训练的机器学习diffusion模型对每个人偶部件进行第一贴图,生成第二3D模型,使用稳定扩散模型方程,获取第二贴图,进一步使用C#代码将第二贴图替换在第二3D模型上,从而获取多种人物结构和样式。第二贴图是相对于第一贴图的,比第一贴图更清晰、分辨率更高。
稳定扩散模型方程的表达式如下:
其中,u表示要平滑或降维的数据,t表示时间,D表示扩散系数,表示拉普拉斯算符,这里稳定扩散模型使用的扩散系数D是一个稳定分布的随机变量,不是常数。
从多种人物结构和样式中,精选符合第一要求的n种可能,形成y=n^x的指数函数规模扩展模式,其中,x代表配件个数、n代表贴图数量、y代表产生第二3D模型的数量,例如,当x=13,n=10时,y=10^13=10,000,000,000,000,即y就是多样化的独立人偶模型个数。通过指数函数扩展的模式,比使用原有模式的投产比函数f(x)=x,能获取更多类型的人偶模型。第一要求是具有美感,符合多数人的审美。
进一步的,上述步骤S3中将第二3D模型上的模型部件重组,生成第三3D模型,包括如下步骤:
步骤S31:从第二3D模型上获取模型部件的骨骼信息和多个骨骼节点对象,通过反向动力学算法确定骨骼节点对象的根节点,计算根节点向量,基于骨骼节点计算末端效应器到根节点的向量;
步骤S32:使用数据优化或解析法,基于骨骼位置和人体朝向,计算出骨骼节点对应的雅克比矩阵,通过将骨骼位置的偏差分解到每个骨骼上,计算出每个骨骼节点的旋转角度;
步骤S33:如果获取的骨骼旋转角度不满足第一约束条件,重复步骤S32,重新计算雅克比矩阵和骨骼旋转角度,直至满足第一约束条件,生成实时驱动的第三3D模型。
具体的,在上述技术方案中获取静态的人偶模型,此时人偶模型还不具备驱动能力,驱动能力指能做伸展或一系列动作,需要通过进一步的技术方案让人偶模型完成驱动能力,具体实施方式如下。
通过智能化骨骼绑定技术对上述第二3D模型上的人偶部件进行重组,在重组的骨骼设计过程中,需要考虑人偶部件之间的连通性,确保骨骼可以正确地驱动整个模型。接下来将骨骼与3D模型进行绑定,通过反向动力学(Inverse Kinematics)进行求解,这里提到的反向动力学(Inverse kinematics)是一种通过先确定子骨骼的位置,然后反求推导出其所在骨骼链上n级父骨骼位置,从而确定整条骨骼链的方法。更具体的实施例是,1.首先确定末端效应器(End Effector)的目标位置和方向,通常为3D空间中的一点或者一个平面。2.通过逆向遍历骨骼结构,计算出末端效应器到根节点的向量,也就是从末端效应器开始沿着骨骼链向上追溯到根节点的路径,过程通过C#代码进行实现,此处不再赘述。3.利用数值优化或者解析法等方法,可以根据骨骼的位置和朝向,计算出对应的雅克比矩阵,然后,通过将骨骼位置的偏差分解到每个骨骼上,从而计算出每个骨骼节点的旋转角度。需要注意的是,由于旋转角度不唯一,因此在实际应用中需要根据具体情况进行调整和优化。4.如果计算得到的骨骼旋转角度不满足第一约束条件,第一约束条件指关节极限、碰撞检测等,则需要进行调整,并重新计算雅克比矩阵和骨骼旋转角度,重复执行3,直到满足约束条件为止。最终获取到实时驱动的第三3D模型,并完成整体模块的拼接和极限动作测试,确保模型的稳定且不串模。
进一步的,获取达到第一阈值或第二要求实时驱动的第四3D模型,包括:
步骤S41:基于实时驱动的第三3D模型,获取第三3D模型中所有顶点、所有三角形和所有子网格,计算各个顶点的QEM矩阵,使用Edge Collapse算法进行减面处理,获取第四3D模型;
步骤S42:重复步骤S41,直到第四3D模型质量达到第一阈值或第二要求。
具体的,此时可驱动的人偶模型在质量上还达不到可渲染的标准,需要进一步处理,具体处理方法是:针对第三3D模型特定区域的顶点进行算法优化,首先获取第三3D模型)的顶点信息,接下来计算每个顶点的QEM矩阵,该矩阵用于评估减面后的质量。QEM矩阵通常由一个对称矩阵表示,其中包含了顶点位置、面法向量和曲率等信息。在计算完QEM矩阵之后,使用Edge Collapse算法进行减面操作,Edge Collapse算法通过合并相邻的三角形面,从而减少模型的面数,并且保持了原始模型的拓扑结构。在进行Edge Collapse时,需要考虑QEM矩阵中的误差和约束条件,以确保生成的新模型质量良好。在每次减面操作之后,都需要重新计算QEM矩阵和更新顶点位置,通常需要多次进行Edge Collapse操作,直到达到第一阈值或者第二要求,最后获取到可以实时驱动的第四3D模型。第一阈值是指3D模型最终所需的面数,第二要求是模型数据的完整性、合理性、协调性。最后,对重组后的第四3D模型进行优化和渲染。优化可以包括模型简化、纹理映射、灯光设置等操作,以提高渲染效率和视觉效果;渲染则是将优化后的模型呈现到屏幕上,并添加适当的特效和后处理,使其更加真实和生动。
进一步的,上述步骤S41中的减面处理,包括如下步骤:
步骤S411:基于第三3D模型,获取第三3D模型中的每条边,定义模型边,分别计算每条模型边收缩挤压后模型边的两个顶点之间的距离,定义为第一距离;
步骤S412:选择第一距离大于第二阈值的模型边,并在其中选取第一距离最小的模型边作为目标模型边,将目标模型边相邻的两个或两个以上三角形合并成一个四边形或三角形;
步骤S413:重新计算相邻边的两个顶点之间的距离,重复步骤S411和步骤S412,直到达到目标精度或无法再进行收缩挤压操作为止。
具体的,使用Raycast射线检测等方法来获取用户选中的模型表面,并根据其相应的边信息来进行减面操作。将满足上述技术方案中条件的两个相邻的三角形合并成一个四边形或三角形,以减少模型的面数;接下来进行更新相邻边的两个顶点之间的距离,在收缩挤压一个边之后,与该边相邻的其他边的两个顶点之间的距离也会发生变化,因此需要重新计算这些边的两个顶点之间的距离,并更新相应的模型;重复执行以上步骤,直到达到所需的目标精度或者无法再进行收缩挤压操作为止,目标精度为外形、纹理与实际人物更接近。
进一步的,获取第五3D模型,通过云端GPU集群进行渲染,将第四3D模型上传至云端,在云端为第四3D模型分配多个GPU节点,多个GPU节点同时渲染第四3D模型的不同部件,从而获取第五模型,云端通过云调度算法分配和回收计算资源。
具体的,首先准备好需要渲染的场景和第四3D模型,并将其导入到Blender中。在Blender中,可以使用各种工具和功能来创建、编辑和调整场景和模型,包括建模、材质、纹理、光照等,在准备好场景和模型后,配置Blender的渲染设置,以满足需求。渲染设置包括分辨率、输出格式、采样率、光线跟踪参数等,可以根据具体情况进行调整。另外,还可以选择使用CPU或GPU进行渲染,以提高渲染速度,为了实现自动化的高性能渲染,可以使用Python语言编写脚本来控制Blender的渲染过程。Blender提供了Python API,可以通过Python脚本来访问Blender的内部功能和数据,并对其进行操作。
用户端高性能实时动画是在算力调度系统中,将第四3D模型传输到客户端,并利用其芯片的计算能力进行实时渲染。为了提高效率,使用特定的图形API和编程语言,如OpenGL ES或Vulkan来编写渲染程序,以获取实时动态的人偶渲染结果。
用户端高质量渲染是对于较大高精度3D模型和需要高精度渲染的场景,使用云端GPU集群进行静态渲染。在算力调度系统中,将高精度3D模型上传至云端,然后分配多个GPU节点来同时渲染不同部分的模型。为了实现高效的算力调度和管理,程序使用云调度算法,例如,负载均衡、前置调度、自适应调度等,自动化地管理和分配计算资源,优化任务调度和执行,提高系统的可伸缩性和可靠性,同时,还通过监视和调整算力分配来实现更好的性能和效率。
本发明还提供一种如上的基于3D数字人的智能端云一体化生成系统100,包括如下模块:
拆解模块101:创建AI解构器,获取第一3D模型网格,使用AI解构器对第一3D模型网格进行拆解,并获取拆解后的模型部件,使用抗锯齿和平滑算法对模型部件重新计算,获取高质量的模型部件;
筛选模块102:用于针对第一3D模型网络中的模型部件进行贴图,生成多种第二3D模型,并从多种第二3D模型中筛选符合第一要求的y个第二3D模型;
重组模块103:用于在智能化骨骼绑定技术的基础上,将筛选出的第二3D模型上的模型部件重组,生成实时驱动的第三3D模型;
优化模块104:用于针对第三3D模型中的各个模型部件进行QEM或Edge Collapse减面处理,获取达到第一阈值或第二要求实时驱动的第四3D模型;
渲染模块105:用于将实时驱动的第四3D模型进行实时渲染,获取第五3D模型。
本发明还提供一种存储器和处理器;
存储器用于存储计算机可执行指令,处理器用于执行计算机可执行指令,该计算机可执行指令被处理器执行时实现上述的基于3D数字人的智能端云一体化生成方法。
本发明还提供一种计算机存储介质,存储介质存储有程序指令,其中,在程序指令运行时控制计算机存储介质所在设备执行上述的基于3D数字人的智能端云一体化生成方法。
综上所述,通过创建AI解构器,获取第一3D模型网格,使用AI解构器对第一3D模型网格进行拆解,并获取拆解后的模型部件,使用抗锯齿和平滑算法对模型部件重新计算,获取高质量的模型部件;针对第一3D模型网络中的模型部件进行贴图,生成多种第二3D模型,并从多种第二3D模型中筛选符合第一要求的y个第二3D模型;基于智能化骨骼绑定技术,将筛选出的第二3D模型上的模型部件重组,生成实时驱动的第三3D模型;针对第三3D模型中的各个模型部件进行QEM或Edge Collapse减面处理,获取达到第一阈值或第二要求实时驱动的第四3D模型;将实时驱动的第四3D模型进行实时渲染,获取第五3D模型。解决了3D人偶模型研发成本高、多样性和场景适配度不足的问题,并且让其在额定的算力下有更好的实时渲染和离线渲染表现力。
以上上述的实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上上述的实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
以上上述的仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于3D数字人的智能端云一体化生成方法,其特征在于,所述方法包括如下步骤:
步骤S1:创建AI解构器,获取第一3D模型网格,使用所述AI解构器对所述第一3D模型网格进行拆解,并获取拆解后的模型部件,使用抗锯齿和平滑算法对所述模型部件重新计算,获取高质量的所述模型部件;
步骤S2:针对所述第一3D模型网络中的所述模型部件进行贴图,生成多种第二3D模型,并从多种所述第二3D模型中筛选符合第一要求的y个所述第二3D模型;
步骤S3:基于智能化骨骼绑定技术,将筛选出的所述第二3D模型上的所述模型部件重组,生成实时驱动的第三3D模型;
步骤S4:针对所述第三3D模型中的各个模型部件进行QEM或Edge Collapse减面处理,获取达到第一阈值或第二要求实时驱动的第四3D模型;
步骤S5:将实时驱动的所述第四3D模型进行实时渲染,获取第五3D模型。
2.根据权利要求1所述的一种基于3D数字人的智能端云一体化生成方法,其特征在于,所述步骤S1中获取所述第一3D模型网格,包括如下步骤:
步骤S11:设定摄像机的移动速度和旋转速度,使用第一终端输入设备和第二终端输入设备联合控制所述摄像机的移动和旋转,对所述当前模型库中的3D模型进行全身多角度的照片采样,获取所述第一3D模型网格,并将所述第一3D模型网格保存在存储器中;
步骤S12:使用OpenCV将所述第一3D模型网格作为外部库导入Unity中,再使用插件和DLL文件对所述第一3D模型网格作预处理,获取更新后所述第一3D模型网格,对所述第一3D模型网格进行特征提取和匹配,获取场景中的关键点和相机姿态,使用所述关键点和所述相机姿态进行稀疏重建;
步骤S13:在所述Unity中使用编程语言调用OpenCV的StereoBM或StereoSGBM算法对所述第一3D模型网格进行深度估计,获取第一3D模型网格深度图,使用函数将所述第一3D模型网格深度图转换为所述第一3D模型网格三维深度图,对所述第一3D模型网格三维深度图进行稠密度重建,生成所述第一3D模型深度网格,并将所述第一3D模型深度网格保存到所述存储器中。
3.根据权利要求1所述的一种基于3D数字人的智能端云一体化生成方法,其特征在于,所述步骤S2,还包括:
步骤S21:通过机器学习diffusion模型针对每个所述第一3D模型深度网格中的所述模型部件进行第一贴图,生成所述第二3D模型,使用稳定扩散模型方程,获取第二贴图,将第二贴图替换所述第二3D模型上的第一贴图,从而生成多种类型的所述第二3D模型;
步骤S22:从多种类型的所述第二3D模型中选择符合第一要求的y个所述第二3D模型,产生所述第二3D模型的数量表达式如下:
y=n^x
其中,x为配件个数,n为贴图数量,y为产生所述第二3D模型的数量。
4.根据权利要求1所述的一种基于3D数字人的智能端云一体化生成方法,其特征在于,所述步骤S3中将所述第二3D模型上的所述模型部件重组,生成所述第三3D模型,包括如下步骤:
步骤S31:从所述第二3D模型上获取所述模型部件的骨骼信息和多个骨骼节点对象,通过反向动力学算法确定所述骨骼节点对象的根节点,计算所述根节点向量,基于所述骨骼节点计算末端效应器到根节点的向量;
步骤S32:使用数据优化或解析法,基于所述骨骼位置和人体朝向,计算出所述骨骼节点对应的雅克比矩阵,通过将所述骨骼位置的偏差分解到每个所述骨骼上,计算出每个所述骨骼节点的旋转角度;
步骤S33:如果获取的所述骨骼旋转角度不满足第一约束条件,重复所述步骤S32,重新计算所述雅克比矩阵和所述骨骼旋转角度,直至满足所述第一约束条件,生成实时驱动的所述第三3D模型。
5.根据权利要求1所述的一种基于3D数字人的智能端云一体化生成方法,其特征在于,获取达到所述第一阈值或所述第二要求实时驱动的所述第四3D模型,包括:
步骤S41:基于实时驱动的所述第三3D模型,获取所述第三3D模型中所有顶点、所有三角形和所有子网格,计算各个顶点的QEM矩阵,使用Edge Collapse算法进行减面处理,获取所述第四3D模型;
步骤S42:重复所述步骤S41,直到所述第四3D模型质量达到所述第一阈值或所述第二要求。
6.根据权利要求5所述的一种基于3D数字人的智能端云一体化生成方法,其特征在于,所述步骤S41中的所述减面处理,包括如下步骤:
步骤S411:基于所述第三3D模型,获取所述第三3D模型中的每条边,定义模型边,分别计算每条所述模型边收缩挤压后所述模型边的两个顶点之间的距离,定义为第一距离;
步骤S412:选择所述第一距离大于第二阈值的所述模型边,并在其中选取所述第一距离最小的所述模型边作为目标模型边,将所述目标模型边相邻的两个或两个以上三角形合并成一个四边形或三角形;
步骤S413:重新计算相邻边的两个顶点之间的距离,重复所述步骤S411和所述步骤S412,直到达到目标精度或无法再进行收缩挤压操作为止。
7.根据权利要求1所述的一种基于3D数字人的智能端云一体化生成方法,其特征在于,获取所述第五3D模型,通过所述云端GPU集群进行渲染,将所述第四3D模型上传至所述云端,在所述云端为所述第四3D模型分配多个GPU节点,所述多个GPU节点同时渲染所述第四3D模型的不同部件,从而获取所述第五模型,所述云端通过云调度算法分配和回收计算资源。
8.一种基于3D数字人的智能端云一体化生成系统,用于实现如权利要求1-7任一项所述的方法,其特征在于,所述系统包括如下模块:
拆解模块:创建AI解构器,获取第一3D模型网格,使用AI解构器对第一3D模型网格进行拆解,并获取拆解后的模型部件,使用抗锯齿和平滑算法对模型部件重新计算,获取高质量的模型部件;
筛选模块:用于针对第一3D模型网络中的模型部件进行贴图,生成多种第二3D模型,并从多种第二3D模型中筛选符合第一要求的y个第二3D模型;
重组模块:用于在智能化骨骼绑定技术的基础上,将筛选出的第二3D模型上的模型部件重组,生成实时驱动的第三3D模型;
优化模块:用于针对第三3D模型中的各个模型部件进行QEM或Edge Collapse减面处理,获取达到第一阈值或第二要求实时驱动的第四3D模型;
渲染模块:用于将实时驱动的第四3D模型进行实时渲染,获取第五3D模型。
9.一种计算设备,其特征在于,所述设备包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至7中任一项所述的一种基于3D数字人的智能端云一体化生成方法。
10.一种计算机存储介质,其特征在于,所述存储介质存储有程序指令,其中在所述程序指令运行时控制所述存储介质所在设备执行权利要求1至7中任意一项所述的一种基于3D数字人的智能端云一体化生成方法。
CN202311607044.6A 2023-07-12 2023-11-29 一种基于3d数字人的智能端云一体化生成方法及系统 Active CN117576280B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202310852395 2023-07-12
CN2023108523957 2023-07-12

Publications (2)

Publication Number Publication Date
CN117576280A true CN117576280A (zh) 2024-02-20
CN117576280B CN117576280B (zh) 2024-04-19

Family

ID=89893478

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311607044.6A Active CN117576280B (zh) 2023-07-12 2023-11-29 一种基于3d数字人的智能端云一体化生成方法及系统

Country Status (1)

Country Link
CN (1) CN117576280B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002007093A2 (en) * 2000-07-17 2002-01-24 Genex Technologies, Inc. Method and apparatus for modeling via a three-dimensional image mosaic system
WO2015188684A1 (zh) * 2014-06-12 2015-12-17 深圳奥比中光科技有限公司 三维模型重建方法与系统
CN109871589A (zh) * 2019-01-23 2019-06-11 广东康云科技有限公司 基于三维人体建模的智能制衣系统及方法
CN110415343A (zh) * 2019-08-05 2019-11-05 中国电建集团北京勘测设计研究院有限公司 一种工程bim可视化三维引擎系统
CN111080799A (zh) * 2019-12-04 2020-04-28 广东康云科技有限公司 基于三维建模的场景漫游方法、系统、装置和存储介质
CN111292411A (zh) * 2020-01-19 2020-06-16 叠境数字科技(上海)有限公司 一种基于向内环视多rgbd相机的实时动态人体三维重建方法
CN111915726A (zh) * 2019-05-10 2020-11-10 中国电力科学研究院有限公司 一种架空输电线路三维场景的构建方法
CN112802161A (zh) * 2021-01-27 2021-05-14 青岛联合创智科技有限公司 一种三维虚拟角色智能蒙皮方法
CN114820905A (zh) * 2022-06-24 2022-07-29 北京百度网讯科技有限公司 虚拟形象生成方法、装置、电子设备及可读存储介质
US20220327755A1 (en) * 2021-04-02 2022-10-13 Sony Interactive Entertainment LLC Artificial intelligence for capturing facial expressions and generating mesh data
WO2022252674A1 (zh) * 2021-06-01 2022-12-08 北京百度网讯科技有限公司 可驱动三维人物生成方法、装置、电子设备及存储介质
CN116246023A (zh) * 2023-03-03 2023-06-09 网易(杭州)网络有限公司 三维模型重建方法、装置、设备、存储介质及程序产品

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002007093A2 (en) * 2000-07-17 2002-01-24 Genex Technologies, Inc. Method and apparatus for modeling via a three-dimensional image mosaic system
WO2015188684A1 (zh) * 2014-06-12 2015-12-17 深圳奥比中光科技有限公司 三维模型重建方法与系统
CN109871589A (zh) * 2019-01-23 2019-06-11 广东康云科技有限公司 基于三维人体建模的智能制衣系统及方法
CN111915726A (zh) * 2019-05-10 2020-11-10 中国电力科学研究院有限公司 一种架空输电线路三维场景的构建方法
CN110415343A (zh) * 2019-08-05 2019-11-05 中国电建集团北京勘测设计研究院有限公司 一种工程bim可视化三维引擎系统
CN111080799A (zh) * 2019-12-04 2020-04-28 广东康云科技有限公司 基于三维建模的场景漫游方法、系统、装置和存储介质
CN111292411A (zh) * 2020-01-19 2020-06-16 叠境数字科技(上海)有限公司 一种基于向内环视多rgbd相机的实时动态人体三维重建方法
CN112802161A (zh) * 2021-01-27 2021-05-14 青岛联合创智科技有限公司 一种三维虚拟角色智能蒙皮方法
US20220327755A1 (en) * 2021-04-02 2022-10-13 Sony Interactive Entertainment LLC Artificial intelligence for capturing facial expressions and generating mesh data
WO2022252674A1 (zh) * 2021-06-01 2022-12-08 北京百度网讯科技有限公司 可驱动三维人物生成方法、装置、电子设备及存储介质
CN114820905A (zh) * 2022-06-24 2022-07-29 北京百度网讯科技有限公司 虚拟形象生成方法、装置、电子设备及可读存储介质
CN116246023A (zh) * 2023-03-03 2023-06-09 网易(杭州)网络有限公司 三维模型重建方法、装置、设备、存储介质及程序产品

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
WANLING GAO: "AIBench Scenario: Scenario-Distilling AI Benchmarking", 《2021 30TH INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT)》, 18 October 2021 (2021-10-18) *
张萍;申闫春;: "机械设备仿真平台研究与实现", 计算机仿真, no. 12, 15 December 2012 (2012-12-15) *
张贵: "体感交互及其游戏的设计与开发", 《中国优秀硕士论文电子期刊网》, 15 January 2015 (2015-01-15) *
段辉丽;唐丽玉;: "利用OSG三维图形渲染引擎实现的骨骼动画", 计算机工程与应用, no. 03, 1 February 2015 (2015-02-01) *

Also Published As

Publication number Publication date
CN117576280B (zh) 2024-04-19

Similar Documents

Publication Publication Date Title
WO2021184933A1 (zh) 一种人体三维模型重建方法
CN111325851B (zh) 图像处理方法及装置、电子设备和计算机可读存储介质
CN108961369A (zh) 生成3d动画的方法和装置
US20130278607A1 (en) Systems and Methods for Displaying Animations on a Mobile Device
CA3137297C (en) Adaptive convolutions in neural networks
US11010952B1 (en) Method and user interface for generating tangent vector fields usable for generating computer-generated imagery
CN116342782A (zh) 生成虚拟形象渲染模型的方法和装置
WO2021242121A1 (en) Method for generating splines based on surface intersection constraints in a computer image generation system
CN117576280B (zh) 一种基于3d数字人的智能端云一体化生成方法及系统
US11803998B2 (en) Method for computation of local densities for virtual fibers
EP3980975B1 (en) Method of inferring microdetail on skin animation
JP2023540434A (ja) 操作順序変形エンジンを用いたコンピュータアニメーションのためのシステム及び方法
WO2022086344A1 (en) Method for scattering points in a uniform arbitrary distribution across a target mesh for a computer animated creature
EP4097607A1 (en) Applying non-destructive edits to nested instances for efficient rendering
CN116912433B (zh) 三维模型骨骼绑定方法、装置、设备及存储介质
US11783516B2 (en) Method for controlling digital feather generations through a user interface in a computer modeling system
US20230196702A1 (en) Object Deformation with Bindings and Deformers Interpolated from Key Poses
US20240135616A1 (en) Automated system for generation of facial animation rigs
CA3143520C (en) Method of computing simulated surfaces for animation generation and other purposes
CN117765141A (zh) 一种基于aigc的3d数字人生成方法
WO2023023404A1 (en) Method for controlling digital object generations through a user interface in a computer modeling system
WO2022005302A1 (en) Method for computation of local densities for virtual fibers
Van Nguyen et al. A Solution for Building a V-Museum Based on Virtual Reality Application
Ma-Thi et al. Image-Based Approach for Preparing Artifacts for Virtual Puppetry Museum
WO2022240298A1 (en) Computationally-efficient generation of simulations of cloth-like materials using bilinear element models

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