雲栖号資訊:【 點選檢視更多行業資訊】
在這裡您可以找到不同行業的第一手的上雲資訊,還在等什麼,快來!
一隻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模型來做,它來預測骨架蒙皮權重。
【雲栖号線上課堂】每天都有産品技術專家分享!
課程位址:
https://yqh.aliyun.com/live立即加入社群,與專家面對面,及時了解課程最新動态!
【雲栖号線上課堂 社群】
https://c.tb.cn/F3.Z8gvnK
原文釋出時間:2020-05-10
本文作者:郭一璞
本文來自:“
量子位公衆号”,了解相關資訊可以關注“公衆号 QbitAI”