![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiADMwEzLcVTO2MzMxUTMzQTMvwFMvwFdi9FcwF2c3VmbvwVbvNmLn1Wa0dmLzdXZul2Lc9CX6MHc0RHaiojIsJye.jpg)
新智元報道
編輯:小鹹魚 好困
【新智元導讀】想讓畫中的「紙片人」有生命,Meta AI來搞定!昨日,Meta AI宣布了一種獨創性方法,隻需幾分鐘,就能動畫化兒童手繪的角色,效果拔群。
快看,「紙片人」居然自己跳出來了!
小貓學會了hiphop。
小蜜蜂還會做wave。
火柴人竟然會打跆拳道。
糖果人還能空中飛踢。
這些卡通動畫都是用孩子們的簡筆畫生成的,不過,作者可是一個AI!
AI動畫工具在兒童繪畫上翻車?
孩子們富有想象力和創造性的簡筆畫,有的時候能帶給人一些不一樣的思考。
不過,雖然家長或老師很容易就能看出孩子的畫想展示什麼,但人工智能卻很難完成這項任務。
為什麼呢?
這是因為孩子們的繪畫通常比較超脫正常,比如,人物的腳并不能支撐身子,或者人物的雙臂位于身體的同一側。
這樣一來,AI系統有時候就無法識别出圖像和繪畫中的人物。
不過,研究人員已經有了一些眉目。
昨日,Meta AI宣布了一種獨創性方法,隻需幾分鐘,就能自動生成兒童手繪人物或類人角色(即具有雙臂、兩條腿等的角色)的動畫,而且生成的動畫還能做到栩栩如生。
隻需将孩子的手繪上傳給Meta AI,就可以看到它們變成會跳舞的角色,十分逼真。
手繪變動畫四步走
許多AI工具和技術都是為了處理真實的人類圖像而設計的,但兒童繪畫增加了人物特征的多樣性和不可預測性,這使得識别手繪人物變得更加複雜。
兒童繪畫中的「人」有許多不同的形式、顔色、大小和比例,在身體對稱性、形态等方面幾乎沒有相似之處。
于是,Meta AI通過四個步驟來應對這一挑戰。
通過物體檢測識别人形
制作兒童人物動畫的第一步是将人物與背景和圖檔中的其他類型的角色區分開來。
Meta AI采用基于卷積神經網絡的目标檢測模型Mask R-CNN來提取兒童繪畫中的人物。
雖然Mask R-CNN已經在最大的分割資料集上進行過預訓練,但是這些資料集都是由真實世界物體的照片組成的,不包含手繪圖。
是以,研究人員又将模型在大約1000張手繪圖上進行了微調。
經過微調過程後,模型就能夠很好地檢測出測試資料集中的人物。
不過,雖然現有的目标檢測技術在區分兒童繪圖上的人物時非常有效,但是産生的分割mask不夠精确,無法用于動畫。
為了解決這個問題,我們改為使用從目标檢測器獲得的邊界框,并應用一系列形态學操作和圖像處理步驟來獲得mask。
使用角色mask從場景中提升人形
從繪圖中識别并提取人形後,下一步就是通過mask将主體與背景分開。
理論上,該步驟完成後,mask掉的部分應該隻含有人形的部分,沒有任何背景。
但是,如果手繪圖中的人物的手、腳、身體等部位在外觀上過于不符合正常時,Mask R-CNN預測的mask往往無法準确地捕捉整個圖形。
比如下圖那個倒三角的小人,其中,黃色三角形代表身體,一條橫杠代表手臂。
Mask R-CNN的結果顯然非常粗糙,不是「砍掉」了手臂,就是加粗了大腿。
為此,Meta的研究人員開發了一種經典的基于圖像處理的方法,對這些形狀各異的身體部件更加穩健。
研究人員先用預測的人形邊界框來裁剪圖像,然後,應用自适應門檻值處理和形态學操作,從框的邊緣進行泛填充,并假設mask是未被泛填充觸及的最大多邊形。
雖然這種方法可以精确提取提取适合于動畫的mask,但是當背景雜亂無章或者紙張上有褶皺、破損或陰影時,就不好使了。
通過「裝配」為動畫做準備
孩子們畫的人物有各種各樣的身體形狀,這些都遠遠超出了AI所見過的傳統人的頭部、手臂、腿部和軀幹的形狀。
舉個例子,孩子畫的「火柴人」沒有軀幹,胳膊和腿直接連在頭上。
是以,研究人員需要一種能夠處理這類形态「變異」的全新方法。
Meta使用專為人體姿勢檢測而訓練的模型AlphaPose來識别人物上的關鍵點,這些關鍵點可以用作臀部、肩膀、肘部、膝蓋、手腕和腳踝的識别。
由于AlphaPose是在真人的圖像上訓練的,是以要想讓它能檢測兒童繪畫中的姿勢,必須對它進行重新訓練,以處理兒童繪畫中千奇百怪的姿勢。
為此,Meta的研究人員先内部收集了一波兒童繪畫的資料。
然後,研究人員利用在這個初始資料集上訓練的姿勢檢測器建立了一個内部工具,并允許父母上傳他們孩子的畫作,而研究人員則可以利用上傳的畫進行額外的訓練。
随着資料越來越多,模型也得到反複地訓練,最終達到了一個較高的準确度。
三維運動捕捉制作2D人物動畫
一旦有了mask和聯合預測,也就有了制作動畫所需的一切。
Meta首先使用提取的mask生成一個網格,用原始圖形對其進行紋理化。
使用預測的關節位置,研究人員為角色建立一個骨架,通過旋轉骨骼和使用新的關節位置來生成各種姿勢。
在制作動畫之前,先從繪圖中建立一個需要操作的角色。
然後,通過将一幀運動捕捉資料投影到2D平面上并更改角色姿态。從前面(頂行)、側面(中間行)和扭曲的視角(底部)投射運動捕捉資料都可以。
最後,再讓角色産生一系列連續的姿勢,就可以建立一個動畫了。
Meta AI可以根據關節預測的可信度來選擇不同的運動:在手臂和腿都被正确預測的情況下,動畫可以無縫地産生。
但是如果軀幹沒有出現在繪圖中,它的關節置信度值将會很低,這時,這隻AI将不得不放棄任務,要求使用者糾正預測,或者宣布動畫「做不了」。
用AI制作更複雜的動畫
AI已經成為富有「創造力」的強大工具,能夠賦予藝術家力量,激發新的表達形式。Meta的動畫工具能鼓勵人們去嘗試繪畫,并把他們帶向更多的方向。
也許有一天,AI可以繪制出一幅複雜的圖畫,然後利用多個的角色互相作用以及背景中的元素,立即制作出一部詳細的動畫。
有了增強現實眼鏡,這些動畫人物甚至可以在現實世界中變得栩栩如生,與孩子們一起跳舞或交談。
可能,AI的想象力就像人類的想象力一樣,是無限的。
參考資料:
https://ai.facebook.com/blog/using-ai-to-bring-childrens-drawings-to-life/