不只是角色3D模型!AI让角色动起来超有趣!别再担心动画拖更了

发布时间:2024-08-31 11:08:58 浏览量:155次

郭一璞 发自 云凹非寺
量子位报道 | 公众号 QbitAI

一只3D的狗头卡通角色:

狗头卡通角色

给它画上骨架:

狗头卡通角色骨架

诶?就可以动起来了:

动态狗头卡通角色

同样的方法,也可以让3D小男孩动起来:

3D小男孩动画

让3D高挑大姐姐动起来:

3D大姐姐动画

让3D猫猫活蹦乱跳:

3D猫猫动画

总之,一切原本应该只是静态的3D角色模型,不管是人是动物,还是自然界不存在的卡通创意角色,都能见皮知骨,由静到动:

3D角色模型

连影子都配合的非常好!

只知道脱骨鸡、脱骨鸭掌,没想到,还有人反着来。

这一切,都是一个叫做RigNet的AI自动完成的。只要设计好角色的3D动态外形,它就可以自动预测角色骨架,预估骨架外皮肤的重量,生成角色运动的图像。

这可比人工制作动画方便多了,要是能用在3D动画或者3D游戏制作上,以后就不用担心拖更或跳票了呢。

这项研究也登上了SIGGRAPH 2020,作者来自马萨诸塞大学阿默斯特分校和多伦多大学。

SIGGRAPH2020

多网络合作实现

AI让3D角色动起来,需要经历两个步骤:先是确定骨骼的位置,再预测骨架之外皮肤的重量。

骨骼是有关节、会转动的,因此AI预测的时候也要先找到那些关节。

先用一个GMEdgeNet图神经网络,预测顶点向相邻关节的位移。

GMEdgeNet预测

这样,骨头大概长在什么地方就出来了。

同时,还准备了另一个GMEdgeNet,用它来预测网格上的注意力函数。

GMEdgeNet预测注意力函数

划重点,GMEdgeNet用于预测关节位置。

GMEdgeNet结构示意图
GMEdgeNet构建

做了这样的准备,就可以用聚类模型,找到关节的位置。

聚类模型找到关节位置

关节的分布和生物学意义上的脊椎动物并不完全一致,不过鉴于只是追求外在的运动效果,并不是做骷髅装饰品,因此有大致的位置来表示身体弯曲的节点就OK了。

现在找到了关节,我们再把关节连起来,给它装上骨头。

添加骨头

装骨头用的是BoneNet模型和最小生成树算法,BoneNet负责预测每两个关节的连接里,哪些连接才是正确的骨头的位置,符合一般动物的身体结构。

BoneNet模型长这样:

BoneNet模型

同时,还要给这个3D角色找到“根关节”,就是下图的小红点,可以理解为“重心”,需要用到RootNet模型。

根关节定位

这真是“刻骨铭心”啊。

好的,现在关节、骨架和重心都有了,需要让这幅骨头感知一下皮肉的重量,它才能运动得符合自然规律也符合人们的观感。

皮肉重量预测
皮肉重量感知

给皮肉“称重”的任务,还是GMEdgeNet模型来做,它来预测骨架蒙皮权重。

传送门

项目主页:点击咨询

论文地址:点击咨询

— 完 —

量子位 QbitAI · 头条号签约作者

关注我们,第一时间获知前沿科技动态

热门课程推荐

热门资讯

请绑定手机号

x

微信扫码在线答疑

扫码领福利1V1在线答疑

点击咨询
添加老师微信,马上领取免费课程资源

1. 打开微信扫一扫,扫描左侧二维码

2. 添加老师微信,马上领取免费课程资源

同学您好!

您已成功报名0元试学活动,老师会在第一时间与您取得联系,请保持电话畅通!
确定