一條染著暮色的小路上,有路燈照常亮著。現在我要許個願,讓這2D的夜晚瞬間擁有立體感。砰!
這不是縮放,是視角真的在變。一會兒高一會兒低,一會兒左一會兒右,彷彿一隻低空飛舞的昆蟲視角。
那麼問題來了,我向誰許的願?它是弗吉尼亞理工學院、臺灣清華大學以及Facebook聯合開發的一隻AI。隨意向它投餵一張2D的RGB圖,它便回贈我一幅3D景色。
這樣美妙的經歷,可不能只有一次。於是我又許了個願:
砰!龍貓那個四季如春的樹洞,也在我眼前生動了起來。
不用太羨慕我,因為只要打開瀏覽器,你也可以投餵這隻AI:
https://colab.research.google.com/drive/1706ToQrkIZshRSJSHvZ1RuCiM__YX3Bz
但在那之前,還是先來看看技術是怎樣煉成的。
腦補各路視角
給一張2D圖片腦補出不同的視角,把它變成3D圖像,不是件容易的事。
每變換一個視角,都會有不同的部位被擋住,也會有不同的部位露出來。
AI怎麼才能瞭解3D世界裡複雜的空間關係?
依照原本的設定,輸入給AI的應該是RGB-D圖像,就是一張色彩圖和一張深度圖共同組成的圖像。想讓圖片獲得立體感,深度數據很重要。
問題是,色彩圖常有而深度圖不常有。於是論文也提到,深度圖除了來自雙攝像頭的不同視角,也可以用普通的RGB圖估計出來。團隊直接從前輩AI那裡借鑑了方法。
有了深度圖,系統便可以找出深度斷層的所在,就是深度圖上顏色發生明顯變化的地方。然後,把這些斷層整理分組,連成幾條深度邊緣。
做好這些準備,才能進入重頭戲:從新的視角上修復圖像,腦補出原始視角里被擋住的部分。
修復當中用到的工具,叫分層深度圖(Layered Depth Image, LDI)。
開始修復之前,LDI上的每個像素都和上下左右的4個像素連通。AI每次選擇一條深度邊緣去修復,把空間上不相連的像素沿著邊緣切開。這樣,LDI就分成了前景和背景兩個部分:
需要修復的部分,就在背景輪廓附近。因為,那裡會有些原圖上被擋的部分,需要在新視角里露出。前景就不用腦補了。
至於怎樣修復背景,方法是“聯繫上下文”,根據周圍的像素來推測原本隱藏的部分。
所以,首先要把背景分成“合成區”和“上下文區”:
合成區是原本被前景擋住的部分,上下文區原本就是背景。
分好兩個區,修(nao)復(bu)環節就要開始了。
修復工作由三隻小AI負責:先是邊緣修復網絡,它利用上下文區的邊緣,來腦補被擋住的邊緣;然後是色彩修復網絡和深度修復網絡,它們拿到了邊緣修復網絡提供的物體結構信息,便能更科學地腦補被遮擋的色彩和深度。
當三隻AI腦補完成,只要把它們給出的結果融進當初的LDI裡,新鮮的3D圖像便出鍋了。然後,把各種不同的視角集合起來,形成動態服用,療效甚佳:
如今既已有線上版本,在下自然按捺不住前去遊玩。一去便無法自拔。
風景如畫,哪幅畫?
就像上文提到的那樣,AI自帶深度估計模型,所以隨意一張RGB圖都可以拿來玩耍。
不出門的日子,就這樣肆意地沉浸在江山裡吧。
順便甩掉一次腦袋。
也不妨去一趟隔壁次元。
順便再甩掉一次腦袋。
依在下愚見,這樣快樂的BugFeature不如就保留吧,千萬不要做人類背影的針對性訓練啊。
假如再搭配一隻播撒快樂的人類,美不勝收,鬼畜源泉。
當然,只是這樣的話,並不算打開了新世界的大門。
還想怎樣
最後,真誠向你推薦一種正確的打開方式:
看了AI的摳圖操作也知道,和歐派相比,其他都是背景(誤)。
勇敢的少年,快去創造奇蹟。
參考文獻
[1] Shih, M. L., Su, S. Y., Kopf, J., & Huang, J. B. (2020). 3D Photography using Context-aware Layered Depth Inpainting. arXiv preprint arXiv:2004.04727.
作者:栗子
編輯:odette
一個AI
路燈,電線杆子,還有人頭,這三樣都是脆弱的東西。
本文來自果殼,未經授權不得轉載.
如有需要請聯繫[email protected]