0
雷鋒網(wǎng) AI 科技評論按:人類視覺系統(tǒng)有一個我們習(xí)以為然但其實極其強(qiáng)大的功能,那就是可以從平面圖像反推出對應(yīng)的三維世界的樣子。即便在有多個物體同時移動的復(fù)雜環(huán)境中,人類也能夠?qū)@些物體的幾何形狀、深度關(guān)系做出合理的推測。
然而類似的事情對計算機(jī)視覺來說就有相當(dāng)大的挑戰(zhàn),在攝像頭和被拍攝物品都靜止的情況下尚不能穩(wěn)定地解決所有的情況,攝像頭和物體都在空間中自由運動的情況就更難以得到正確的結(jié)果了。原因是,傳統(tǒng)的三維重建算法依賴三角計算,需要假設(shè)同一個物體可以從至少兩個不同的角度同時觀察,通過拍攝的圖像之間的區(qū)別(視差)解算三維模型。想要滿足這樣的前提,要么需要一個多攝像頭陣列,要么要保持被拍攝物體完全靜止不動,允許單個攝像頭在空間中移動觀察。那么,在只有單個攝像頭的情況下,深度計算中要么會忽略掉移動物體,要么無法計算出正確的結(jié)果。
在谷歌的新研究《Learning the Depths of Moving People by Watching Frozen People》中,他們提出了一種新的基于深度學(xué)習(xí)的方法來解決單個攝像頭+攝像頭和物體都在移動的狀況下的深度預(yù)測,在任意視頻上都有很好的效果。這個方法中用人類姿態(tài)、常見物體形態(tài)的先驗學(xué)習(xí)替代了對于圖像的直接三角計算。雷鋒網(wǎng) AI 科技評論介紹如下。
值得指出的是,用機(jī)器學(xué)習(xí)的方法「學(xué)習(xí)」三維重建/深度預(yù)測并不是什么新鮮事,不過谷歌的這項研究專門針對的是攝像頭和被攝物體都在移動的場景,而且重點關(guān)注的被攝物體是人物,畢竟人物的深度估計可以在 AR、三維視頻特效中都派上用場。
正如絕大多數(shù)此類方法一樣,谷歌選擇了用有監(jiān)督方法訓(xùn)練這個模型。那么他們就需要找到移動的攝像頭拍攝的自然場景視頻,同時還帶有準(zhǔn)確的深度圖。找到大量這樣的視頻并不容易。如果選擇生成視頻的方法,這需要非常逼真的建模,而且在多種場景、光照、復(fù)雜度的組合下呈現(xiàn)自然的人物動作,不僅有很高的難度,而且想要泛化到真實場景中仍然有一定難度。另一方法是在真實世界中拍攝這樣的視頻,需要攝像頭支持 RGBD (彩色圖像+深度圖),微軟的 Kinect 就是一種常用的低價方案;但這個方案的問題是,這類攝像頭通常只適用于室內(nèi)環(huán)境,而且在三維重建過程中也通常有各自的問題,難以得到理想的精度。
機(jī)智的研究人員們想到了利用 YouTube 上面的視頻。YouTube 上的海量視頻中,各種題材、場景、拍攝手法的都有,有一類視頻對這個任務(wù)極其有幫助:視頻中的人假裝時間靜止,保持位置和姿態(tài)不動,然后一個攝像機(jī)在空間中移動,拍下整個場景。由于整個場景中的物體都是固定的,就可以用傳統(tǒng)的基于三角計算的方法精確地還原整個三維場景,也就得到了高精度的深度圖。谷歌的研究人員們搜集了大概 2000 個這樣的視頻,包括了不同數(shù)量的人們在各種各樣不同的真實場景中擺出各種姿勢。
上面說到的「時間靜止」視頻提供了移動的攝像頭+靜止的物體的訓(xùn)練數(shù)據(jù),但是研究的最終目標(biāo)是解決攝像頭和物體同時運動的情況。為了應(yīng)對這個區(qū)別,谷歌的研究人員們需要把網(wǎng)絡(luò)的輸入結(jié)構(gòu)化。
一種簡單的解決方案是為視頻中的每一幀分別推理深度圖(也就是說模型的輸入是單幀畫面)。雖然用「時間靜止」視頻訓(xùn)練出的模型已經(jīng)可以在單幀圖像的深度預(yù)測中取得頂尖的表現(xiàn),但谷歌的研究人員們認(rèn)為,他們還可以利用多個幀的信息進(jìn)一步提升模型的表現(xiàn)。比如,對于同樣的固定物體,攝像頭的移動形成了不同視角的兩幀畫面,就可以為深度估計提供非常有用的線索(視差)。為了利用這種信息,研究人員們計算了每個輸入幀和另一幀之間的二維光流(兩幀之間的像素位移)。光流同時取決于場景的深度和攝像頭的相對位置,不過由于攝像頭的位置是未知的,就可以從光流場中消去兩者間的依賴,從而得到了初始深度圖。這樣得到的深度圖只對場景中靜態(tài)的部分有效,為了還能處理移動的人,研究人員們增加了一個人物分割網(wǎng)絡(luò),把人從初始深度圖中遮蔽掉。那么,網(wǎng)絡(luò)的輸入就由這三部分組成:RGB 彩色圖像,人物掩蔽,以及通過視差計算的帶有掩蔽的深度圖。
對于這樣的輸入,網(wǎng)絡(luò)的任務(wù)就是補(bǔ)上有人的區(qū)域的深度圖,以及對整幅畫面的深度圖做一些完善。由于人體有較為固定的形狀和尺寸,網(wǎng)絡(luò)可以很容易地從訓(xùn)練數(shù)據(jù)中學(xué)到這些先驗,并給出較為準(zhǔn)確的深度估計。在訓(xùn)練完畢后,模型就可以處理攝像頭和人物動作都任意變化的自然拍攝視頻了。
與當(dāng)前的其它優(yōu)秀方法的對比如下圖。
得到準(zhǔn)確的深度圖之后,一種簡單、常見的使用方法就是實現(xiàn)景深和虛焦效果,如下圖。
其它的用法還比如可以用原圖結(jié)合深度圖進(jìn)行小幅視角變換,合成「三維畫面」,如下圖;甚至在畫面中增加具有準(zhǔn)確深度和尺寸的三維元素也不難。
論文地址:https://arxiv.org/abs/1904.11111
via ai.googleblog.com,雷鋒網(wǎng) AI 科技評論編譯
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。