郭一璞 发自 云凹非寺
量子位 报导 | 大众号 QbitAI
一只3D的狗头卡通人物:
给它画上骨架:
诶?就可以动起来了:
相同的办法,也可以让3D小男孩动起来:
让3D高挑大姐姐动起来:
让3D猫猫活蹦乱跳:
总归,全部本来应该仅仅静态的3D人物模型,不管是人是动物,仍是自然界不存在的卡通构思人物,都能见皮知骨,由静到动:
连影子都协作的非常好!
只知道脱骨鸡、脱骨鸭掌,没想到,还有人反着来。
这全部,都是一个叫做RigNet的AI主动完结的。只需设计好人物的3D动态外形,它就可以主动猜测人物骨架,预估骨架外皮肤的分量,生成人物运动的图画。
这可比人工制造动画便利多了,要是能用在3D动画或许3D游戏制造上,今后就不需求过多的忧虑拖更或跳票了呢。
这项研讨也登上了SIGGRAPH 2020,作者来自马萨诸塞大学阿默斯特分校和多伦多大学。
多网络协作完成
AI让3D人物动起来,需求阅历两个过程:先是确认骨骼的方位,再猜测骨架之外皮肤的分量。
骨骼是有关节、会滚动的,因而AI猜测的时分也要先找到那些关节。
先用一个GMEdgeNet图神经网络,猜测极点向相邻关节的位移。
这样,骨头大约长在什么地方就出来了。
一起,还预备了另一个GMEdgeNet,参数和前面的那个不太相同,用它来猜测网格上的注意力函数,图上越红的方位,注意力就越强。
划要点,GMEdgeNet长这样,后边还要用:
做了这样的预备,就可以用聚类模型,找到关节的方位。
关节的散布和生物学意义上的脊椎动物并不完全一致,不过鉴于仅仅寻求外在的运动作用,并不是做骷髅装饰品,因而有大致的方位来表明身体曲折的节点就OK了。
现在找到了关节,咱们再把关节连起来,给它装上骨头。
装骨头用的是BoneNet模型和最小生成树算法,BoneNet担任猜测每两个关节的衔接里,哪些衔接才是正确的骨头的方位,契合一般动物的身体结构。
BoneNet模型长这样:
一起,还要给这个3D人物找到“根关节”,便是下图的小红点,可以理解为“重心”,需求用到RootNet模型。
这真是“铭肌镂骨”啊。
好的,现在关节、骨架和重心都有了,需求让这幅骨头感知一下皮肉的分量,它才干运动得契合自然规律也契合人们的观感。
给皮肉“称重”的使命,仍是GMEdgeNet模型来做,它来猜测骨架蒙皮权重。