草圖人像變 3D 模特,360° 無死角還原姿勢,一張就行,多“草”都可|SIGGRAPH 2022

語言: CN / TW / HK

一張隨便勾畫的草圖,居然也可以分分鐘自動變成逼真的 3D 模型?!

360° 無死角不説,轉換期間真的不需要任何其它角度姿勢的輸入。這就是獲得了 SIGGRAPH 2022 榮譽獎的一個最新 3D 姿態估計模型: Sketch2Pose

除了草圖,像這樣的小猴子,四肢嚴重不按比例生長,Sketch2Pose 也可以辦到:

這是如何做到的?

只要 4 步,草圖人變 3D 人

將草圖上的人物 / 形象變成 3D 模型,此前的研究中都還未專門涉及。 該任務最大的挑戰就是比例失真問題 ,因為畫上的東西可能頭大身子小、胳膊長腿短……

為此,Sketch2Pose 通過對三個關鍵元素進行預測來消除繪製姿勢時的可能出現的“歧義”。這三個元素分別是:

  • 2D 骨骼切線(2D bone tangents)

  • 自接觸區域(self-contacts)

  • 骨骼縮短比例(bone foreshortening)

其中,2D 骨骼切線(下圖藍色部分)是預測 3D 骨骼方向最有力的指標(關節位置不行)。自接觸區域(如下圖綠色部分,手接觸腰的位置)對於理解 3D 姿勢至關重要,也是消除未知身體部位歧義的線索。骨骼縮短轉換系統則利用統計分析來糾正原圖中的比例問題。

根據這三者預測,再使用最先進的優化框架(optimization framework),並用專門設計的一種新的損失(loss)來平衡姿勢自然度,以及與輸入草圖的相似性,AI 就能最終推斷出符合畫者意向的 3D 姿勢。

具體步驟如下:

  • 輸入一張草圖,首先預測出 2D 關節位置或骨架,用於 3D 人體模型的粗略對齊。

  • 然後預測屏幕空間(screen-space)接觸區域,將其映射到粗略對齊的 3D 模型上,得到一組接觸頂點(紅色部分)。

  • 接着,利用縮短轉換階段描述的草圖人物比例問題,進行修補。

  • 最後,在優化框架中利用 2D 骨架的骨骼切線、粗略對齊的 3D 姿勢以及比例修補,產生最終結果。

有遮擋缺失也 OK

最終的 Sketch2Pose 可以支持多種草圖風格的轉換,比如下圖中的簡筆畫或者水墨畫,像下下圖最後一張那樣簡略的也可以。

同時,對缺失、遮擋部位也能穩健處理。比如上圖第一行中的人手(不過我們發現左邊的似乎推測有錯,手應該是放在兩腿之間;右邊的抱頭基本沒啥問題,但手掌應該向後彎曲)。

再將 Sketch2Pose 和 SOTA 方法進行比較,結果還是令人非常滿意的。可以看到,Sketch2Pose(第三列)對姿勢還原的更到位,缺失部分的預測也更符合人體構造。

而開頭那隻小猴子,Müller et al. 2021 等方法的轉換效果就是下面這樣:

對於猴子“扭曲”的下肢部分,這些方法都出現了理解偏差 ——Sketch2Pose 完勝。

作者介紹

Sketch2Pose 一共有兩位作者,都來自加拿大蒙特利爾大學。

一作名叫 Kirill Brodt (Кирилл Бродт),出生於 1991 年,本碩畢業於新西伯利亞州立大學(數學學位),後在 Yandex 數據分析和計算機科學中心學院學習機器學習,現為蒙特利爾大學的一位博士生。他的主要研究方向為跟草圖有關的計算機視覺轉換。

另一位作者名叫 Mikhail Bessmeltsev,是一作的導師,蒙特利爾大學計算機科學與運籌學系的助理教授。

感興趣的同學可以戳論文原文,或者去 Huggingface 上試試效果。

論文原文:

https://dl.acm.org/doi/10.1145/3528223.3530106

項目主頁:

https://www-labs.iro.umontreal.ca/~bmpix/sketch2pose/

Huggingface demo:

https://huggingface.co/spaces/SIGGRAPH2022/sketch2pose

Github 代碼:

https://github.com/kbrodt/sketch2pose

「其他文章」