天天看點

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

和一鍵換妝、一鍵美顔一樣,我們可能離“一鍵健身”不遠了。

怎麼說?

近日,MIT(麻省理工學院)的研究人員發明了一項新技術,單憑一張照片,就能把片中人,随意擺成任何姿勢。AI的想象力和腦補力,竟然能達到窺一片而知全貌了?

沒錯,讓人驚喜的是,這項技術的合成效果還非常好,頗有以假亂真的氣勢——

穿着瑜伽服打棒球?

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

又穿着瑜伽服打高爾夫?

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

棒球比賽期間突然做起瑜伽?

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

可能你也猜到,後面這些圖都是假象,在MIT中了今年CVPR Oral的論文Synthesizing Images of Humans in Unseen Poses中,研究人員提出一種子產品化的生成神經網絡,用從人類運動視訊中提取的成對圖像和姿勢訓練之後,它能夠為一個人合成出沒做過的新姿勢。

更有趣的是,這個模型在沒有經過刻意訓練的情況下,還能生成一段連續的視訊。

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

隻用一張照片,就能将照片中人像皮影戲一樣操控,并且在被遮擋的情況下,人物和背景合成都非常自然,這到底是如何做到的?

步驟拆解

單憑一張照片合成人物姿勢不是易事。姿勢變換帶來身體的移動,影響着人物周圍的陰影變化和背景露出,若人物肢體若被遮擋,還需自行想象腦補身體邊界……

總之兩個字:麻煩。

對人類來說這尚且還是個繁瑣複雜的工作,對AI來說更是如此。怎麼辦?

MIT小夥伴們用260多段視訊中截取出來的成對圖檔和姿勢,訓練了一個監督學習模型。

将源圖像和它對應的2D姿勢資訊,以及目标姿勢輸入到這個模型中,它就能合成出一張輸出圖像,把源圖像上的人物形象和目标姿勢結合在一起。

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

這個方法的精髓,就在于把這個艱巨的大任務分成四塊簡單的、子產品化的子任務,大概如下圖所示:

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

制造新姿勢的流程分五步。

第一步得表示姿勢,研究人員将2D的姿勢Ps和Pt表示成3D形式RH×W×J,其中H代表輸入圖像的高度,W代表寬度,每個J通道都包含一個以不同節點(x,y)為中心的高斯凸起。這種方法能快速利用姿态輸入的空間特性,而不僅僅是個扁平、密集的表示。

表示完動作後,就需要對圖像整體大局進行原圖分割,為合成動作做準備了。

運動時身體每個部分軌迹不同通常會分段仿射運動場出現,通過将原圖Is分割成前景層和背景層,并将前景的身體部位分割成頭、上臂、下臂、大腿、小腿和軀幹等部分,基于UNet-style架構将原圖分割。

之後進行前景空間變形,将這些被拆分的身體重新組合起來。

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

之後進行前景合成,将轉換後的主體部分合并,進一步細化外觀。下圖顯示了這個階段的Mask Mt(第3列)和yfg(第4列)的幾個輸出示例。

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

可以看出,即使一開始是很誇張的姿勢,合成出效果看起來也很真實。可惜的是,高爾夫球杆、網球拍等持有物,在合成後不會被保留。

此時,完事具備,就差背景了。背景合成也就是填補前景動作中開始被遮擋的部分,如上圖第五列所示~

整個網絡的架構就是這樣了,接下來我們去看看研究人員具體是如何訓練它的。

精挑細選的資料集

模型準備就緒,還欠資料。

于是,他們從YouTube上尋找了一些視訊。其中包括136段打高爾夫的、60段練瑜伽或者健身的、70段打棒球的。

他們挑選的視訊有個共同特點:背景基本靜止、隻有人在動。這樣,模型才能更好地完成任務。

把它們混在一起,再經過一些縮放、旋轉、反轉之類的擴增操作,就形成了要用的資料集,從中留出10%,用作測試集。

就是用這些資料,幾位科學家檢驗了他們模型的合成能力。

花式秀能力,開始

測試方法很簡單,從視訊裡選一幀提取出人物的動作,找另一幀圖像,讓模型把裡面的人扭成這個動作,看看效果如何。

作者們在論文裡說:顯然是我們的效果比較好嘛,有圖為證。

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

和同行前輩UNet相比,這種新方法合成出來的圖像更不容易出錯。比如說上圖第一行,UNet合成出來的網球少年衣服已經泛黃;第4行,健身小姐姐身後出現了重重重影。

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

從資料上看,這種新方法也取得了比UNet更低的錯誤率、更好的SSIM得分。

但這顯然還不是這個模型的全部實力。

上圖展示的,都是從一個網球動作到另一個網球動作,從一個健身動作到另一個健身動作,而且,還都是,靜止的圖像。

你大概還記得文章開頭展示的那些。當然沒騙你,給模型一張圖檔和一系列目标姿勢,生成視訊當然也沒問題啦~

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

視訊裡的系列動作拆解開來,就是上圖這樣。考驗眼力的時刻到了:你能猜出哪兩行是真實的、哪兩行是合成的嗎?

答案是,1、3行是合成的動作,2、4行是真實的。

連貫起來,就是這樣:

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

膩害~撒花!假裝運動這麼輕松,有視訊都不一定有真相了~

Wait,這依然不是它的全部實力。

開頭展示的穿着瑜伽服打棒球,當然也是它的傑作。

這個模型,可以為畫中人合成不同類别的姿勢。輸入分别來自不同類别的源圖像和目标動作,結果雖說充滿違和感,但還是那麼令人信服。

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

網球場上做瑜伽,瑜伽墊上打高爾夫……

别忘了,他們訓練這個模型隻用了3類運動、260多段視訊,要是訓練資料在充足一點,怕是真能一鍵假裝去運動了。

傳送門

隻需一張照片,運動視訊分分鐘僞造出來 | MIT新算法

這篇Synthesizing Images of Humans in Unseen Poses,被CVPR 2018作為oral論文接收,論文一作,是MIT博士後Guha Balakrishnan,他的碩士和博士學位都來自MIT。

研究團隊全體成員都來自MIT,包括研究所學生Amy Zha、博士後Adrian V. Dalca,以及Balakrishnan的碩士和博士導師:John Guttag和Fredo Durand。

團隊的另外兩位成員也來自MIT,一位是研究所學生Amy Zhao,另一位是博士後Adrian V. Dalca。

論文:

https://arxiv.org/pdf/1804.07739.pdf

代碼:

https://github.com/balakg/posewarp-cvpr2018

原文釋出時間為:2018-06-24

本文作者:關注前沿科技

本文來自雲栖社群合作夥伴“

量子位

”,了解相關資訊可以關注“

”。

繼續閱讀