Make-A-Character是什麼?
Make-A-Character(簡稱Mach)是一個由阿里巴巴集團智能計算研究院開發的一個人工智能3D數字人生成框架,旨在通過文本描述快速創建逼真的3D角色。該系統特別適用於滿足人工智能代理和元宇宙中對個性化和富有表現力的3D角色的需求。Mach的核心功能是利用大型語言和視覺模型來理解文本中的意圖,並生成中間圖像,然後通過一系列針對人類視覺感知和3D生成的模塊,將這些圖像轉化爲完整的3D角色模型。
Make-A-Character的官網入口
- 官方項目主頁:https://human3daigc.github.io/MACH/
- Arxiv研究論文:https://arxiv.org/abs/2312.15430
- GitHub代碼庫:https://github.com/Human3DAIGC/Make-A-Character(代碼待開源)
- ModelScope Demo:https://www.modelscope.cn/studios/XR-3D/InstructDynamicAvatar/summary
Make-A-Character的功能特色
- 文本到3D角色生成:用戶可以通過輸入文本描述來指定角色的外觀特徵,如面部特徵、髮型、服裝等,Mach系統會根據這些描述生成相應的3D角色模型。
- 靈活的可控定製:系統允許用戶對角色進行詳細的定製,包括面部特徵、眼睛形狀、虹膜顏色、髮型和顏色、眉毛、嘴巴和鼻子等,甚至可以添加皺紋和雀斑,以創造出符合用戶個性化需求的角色。
- 高度逼真的渲染:Mach利用基於物理的渲染(PBR)技術,結合真實人類掃描數據,生成高度逼真的角色。角色的頭髮以髮絲的形式構建,而非傳統的網格,以增強真實感。
- 完整的角色模型:生成的角色模型包括眼睛、舌頭、牙齒、全身和服裝等所有細節,確保角色在各種應用場景中都能立即使用。
- 動畫支持:角色配備了高級的骨骼剛體,支持標準動畫,使得角色能夠進行各種動態表現,如面部表情變化等。
- 行業兼容性:Mach生成的角色模型採用明確的3D表示,可以無縫集成到遊戲和電影行業的標準CG流程中,便於後續的動畫製作和渲染。
Make-A-Character的工作原理
- 文本解析與視覺提示生成:
- 用戶輸入描述角色特徵的文本提示。
- 使用大型語言模型(LLM)來理解文本中的語義信息,提取關鍵的面部特徵和屬性。
- 將這些特徵映射到視覺線索,如姿勢和邊緣圖,以指導後續的圖像生成。
- 參考肖像圖像生成:
- 結合Stable Diffusion模型和ControlNet,根據提取的視覺線索生成參考肖像圖像。ControlNet確保生成的圖像具有正面姿勢和中性表情,便於後續的3D建模。
- 使用Openpose和Canny邊緣檢測技術來確保面部特徵的合理分佈。
- 密集面部座標檢測:
- 利用密集面部座標(431個座標點)來重建面部和頭部幾何結構,這些座標點比傳統的68或98個座標點更詳細,覆蓋整個頭部。
- 使用合成圖像作爲訓練數據,通過多視角捕捉和處理流程生成這些座標點。
- 幾何生成:
- 根據參考肖像圖像和密集面部座標,重建頭部幾何結構。通過將3D網格映射到2D平面,實現對網格的優化。
- 使用座標投影損失和局部平滑約束來確保幾何結構的準確性。
- 紋理生成:
- 使用可微渲染技術從參考圖像中提取紋理,並通過多分辨率策略逐步生成高分辨率紋理。
- 引入神經除光(de-lighting)方法,從紋理圖像中去除不必要的照明效果,得到適合渲染的漫反射貼圖。
- 紋理修正與完成:
- 對生成的漫反射貼圖進行修正,解決眼睛、嘴巴和鼻孔等區域的不完美問題。
- 使用面部解析算法提取錯誤區域的遮罩,並通過泊松融合(Poisson blending)技術與模板漫反射貼圖合併,以改善視覺效果。
- 頭髮生成:
- 通過2D圖像合成各種髮型,然後基於這些圖像進行3D髮絲重建。
- 使用先進的頭髮生成技術,如NeuralHDHair,訓練模型並生成高質量的3D髮絲。
- 資產匹配:
- 將生成的頭部與預先製作的頭髮、身體、服裝和配飾等資產進行匹配。
- 使用CLIP文本編碼器計算輸入提示與資產標籤之間的相似度,選擇最匹配的資產。
- 角色裝配:
- 將所有生成和匹配的部件組裝成一個完整的3D角色模型。
- 角色模型支持動畫,可以通過骨骼剛體進行動態表現。
© 版權聲明
文章版权归作者所有,未经允许请勿转载。
相關文章
暫無評論...