加入极市专业CV交流群,与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度 等名校名企视觉开发者互动交流!
同时提供每月大咖直播分享、真实项目需求对接、干货资讯汇总,行业技术交流。关注 极市平台 公众号 ,回复 加群,立刻申请入群~
总之,一切原本应该只是静态的3D角色模型,不管是人是动物,还是自然界不存在的卡通创意角色,都能见皮知骨,由静到动:
这一切,都是一个
叫
做
RigNet
的AI自动完成的。只要设计好角色的3D动态外形,它就可以自动预测角色骨架,预估骨架外皮肤的重量,生成角色运动的图像。
这可比人工制作动画方便多了,要是能用在3D动画或者3D游戏制作上,以后就不用担心拖更或跳票了呢。
这项研究也登上了SIGGRAPH 2020,作者来自马萨诸塞大学阿默斯特分校和多伦多大学。
多网络合作实现
AI让3D角色动起来,需要经历两个步骤:先是确定骨骼的位置,再预测骨架之外皮肤的重量。
骨骼是有关节、会转动的,因此AI预测的时候也要先找到那些关节。
先用一个GMEdgeNet图神经网络,预测顶点向相邻关节的位移。
同时,还准备了另一个GMEdgeNet,参数和前面的那个不太一样,用它来预测网格上的注意力函数,图上越红的位置,注意力就越强。
做了这样的准备,就可以用聚类模型,找到关节的位置。
关节的分布和生物学意义上的脊椎动物并不完全一致,不过鉴于只是追求外在的运动效果,并不是做骷髅装饰品,因此有大致的位置来表示身体弯曲的节点就OK了。
现在找到了关节,我们再把关节连起来,给它装上骨头。
装骨头用的是BoneNet模型和最小生成树算法,BoneNet负责预测每两个关节的连接里,哪些连接才是正确的骨头的位置,符合一般动物的身体结构。
同时,还要给这个3D角色找到“根关节”,就是下图的小红点,可以理解为“重心”,需要用到RootNet模型。
好的,现在关节、骨架和重心都有了,需要让这幅骨头感知一下皮肉的重量,它才能运动得符合自然规律也符合人们的观感。
给皮肉“称重”的任务,还是GMEdgeNet模型来做,它来预测骨架蒙皮权重。
传送门
项目主页:
https://zhan-xu.github.io/rig-net/
论文地址:
https://people.cs.umass.edu/~zhanxu/papers/RigNet.pdf
GitHub:
https://github.com/zhan-xu/RigNet
△长按关注极市平台,获取最新CV干货
觉得有用麻烦给个在看啦~