用YouTube上的「木頭人」挑戰影片,Google訓練出頂級的景深檢測模型
- 2019 年 12 月 2 日
- 筆記

大數據文摘出品
你玩兒過「一二三木頭人嗎」,一群到處移動的人在聽到「木頭人」三個字後,紛紛像凍住一樣停下來!最近,在Youtube上,也出現了這樣一波「木頭人挑戰」,而更有趣的是,Google把這些影片拿回家訓練成了數據集,並且完成了一個最新研究:移動的單攝影機+移動的人,就能非常好的預測出影片中人的景深。
這篇論文也因此獲得了CVPR 2019的榮譽提名獎(Honorable Mentioned Award),一起看看。

論文鏈接:
https://arxiv.org/pdf/1904.11111.pdf
人類的視覺系統有一種非凡的能力,可以通過二維投影來理解我們的三維世界,因此即使在有多個移動物體的複雜環境中,人們也能夠對物體的幾何形狀和遠近有正確的判斷。
長期以來,電腦視覺領域一直在研究如何利用二維影像數據計算重建場景的幾何結構,以實現和人眼類似的功能,但在許多情況下這仍然十分困難。
當攝像機和場景中的物體都在自由移動時,這種電腦模型的構建就非常有挑戰性,因為它混淆了傳統的基於三角測量的三維重建演算法,而這種演算法假定同一個物體可以同時從至少兩個不同的視角觀察。
要滿足這個假設,要麼需要一個多攝像機陣列(如Google的Jump),要麼需要一個在單個攝像機移動時保持畫面內物體的靜止。因此,大多數現有的方法要麼過濾掉移動對象(給它們的深度值賦為「零」) ,要麼忽略它們(這會導致不正確的深度值)。

然而多攝像機陣列的構建成本非常高,並且需要現場拍攝以構建大量的數據;而在單個攝像機移動時保持畫面內物體的靜止,卻因為一項挑戰產生了很多現成的高品質的影片數據——木頭人挑戰(Mannequin Challenge)。
Google的這篇論文就巧妙地利用了YouTube上大量挑戰影片作為數據集,然後利用深度學習構建了一個模型,可以從普通影片生成深度地圖,在這種影片中攝像機和主體都可以自由移動。
提取到到影片中的景深後就可以進行一些很有意思的應用了,比如利用其他幀的畫面去填補被人物遮擋的區域:

在這篇論文中,研究人員應用了一種基於深度學習的方法, 該模型通過從數據中學習人體姿態和形狀的先驗知識,避免了直接的三角測量。雖然最近在使用機器學習進行深度預測方面出現了激增,但這項工作是第一次針對攝像機和人體運動同時進行的情況調整一種基於學習的方法。

模型提取景深的效果
數據集來自YouTube「木頭人挑戰「
研究人員在有監督的方式下訓練深度學習模型,這需要由移動的攝像機捕捉的自然場景的影片,以及精確的深度圖,關鍵問題是從哪裡得到這些數據。
研究人員巧妙地利用了現有的YouTube挑戰影片,影片中人們通過各種各樣的自然姿勢來模仿木頭人,而攝影機則在場景中移動巡視。由於整個場景是靜止的(只有攝像機在移動) ,基於三角測量的方法——如多視點立體視覺(MVS)可以持續工作,這樣便可以獲得包括人在內的整個場景的精確深度圖。
研究人員收集了大約2000個這樣的影片,涵蓋了廣泛的真實場景,人們自然地在不同的群體組合中擺各種固定姿勢。

如何推測移動人物的深度
「木頭人挑戰」的影片為移動的攝像機和「靜止」的人提供了深度監控,而研究人員的目標是可以處理用移動的攝像機和移動的人的影片,因此他們需要對神經網路的輸入進行結構化,以便縮小這一差距。
一種可能的方法是分別推斷影片的每一幀的深度(例如讓模型的輸入只有一幀),雖然這種模型在深度預測方面已經比最先進的單幅影像方法有所改進,但還是可以通過考慮多幀影像的資訊來進一步改進預測結果,例如,運動視差,即靜態物體在兩個不同視點之間的相對視覺運動,可以提供強烈的深度線索。
為了從這些資訊中提升效果,研究人員計算了影片中每個輸入幀和另一幀之間的二維光流,它代表了兩幀之間的像素位移。這個流場取決於場景的深度和相機的相對位置,然而,由於攝像機的位置是已知的,那麼可以從流場中消除它們的依賴性,從而得到一個初始的深度圖。
這個初始深度只適用於靜態場景區域,為了在測試時處理移動的人,研究人員應用了一個人工分割網路來掩蓋在初始深度圖中的人類區域,完整輸入包括: RGB 影像、人臉蒙版和來自視差的掩碼深度圖。

神經網路的工作是用人來「內置」區域的深度值,並在其他地方提取深度,直觀地說,因為人類具有相對一致的形狀和身體尺寸,網路可以通過觀察許多訓練例子在內部學習這些先驗經驗,一旦經過訓練,模型就可以處理任意攝影機和人類運動的自然影片。
下面是基於影片的深度預測模型結果的一些例子,與最新的基於學習的方法進行比較。

3D影片深度檢測效果
該影片景深檢測模型可以用來產生一系列三維感知的影片效果,其中一種效應就是合成散焦,下面是一個示例:

其他應用還包括從單目影片生成立體影片,以及插入CG物體到場景中,並且還具備利用其他幀的畫面去填補被任務遮擋區域的能力。


