佔用網路:通過學習粒子動力學進行4D重建
- 2020 年 1 月 16 日
- 筆記
編輯 | KING 發布 | ATYUN訂閱號
下面是馬克斯·普朗克智慧系統研究所研究人員的客座文章。在本文中,研究人員描述了一種從影像或稀疏點雲進行密集4D重建的新方法。
在我們的世界中進行交互和導航的智慧代理必須能夠以3D推理。因此,近年來,對於基於學習的3D重建引起了很多興趣。此類技術使用神經網路來處理一些輸入資訊(例如影像或稀疏點雲)並輸出單個對象或場景的3D幾何形狀。
3D重建中的一個特殊挑戰是我們使用的輸出表示,即幾何圖形的表示。一方面,這種表示應具有足夠的表現力,以使我們可以表示現實世界中出現的所有複雜幾何形狀。另一方面,該表示應與現代機器學習技術(特別是深度學習)一起很好地工作。
最近,我們的小組提出了一種新的基於學習的3D重建輸出表示形式,稱為「 佔領網路」,其中,幾何圖形通過深層神經網路表示,該網路將對象的內部與外部區分開。我們發現,這種表示既強大到足以表示複雜的幾何圖形,又非常適合深度學習範例。它不僅可以在對象實例上而且還可以在查詢點上有效地並行化,從而使我們能夠充分利用最新的NVIDIA GPU。
例如,這允許我們訓練一個神經網路,該網路可以從稀疏的3D點雲中重建人類。
使用進行培訓NVIDIA GPU的RTX與cuDNN -accelerated PyTorch深度學習的框架。

挑戰
儘管這很好用,但這種情況並不完全現實:在現實世界中,物體在運動,因此人類不會靜止不動,而會運動。因此,我們的輸入將看起來像這樣:

當然,我們可以單獨對待每個時間步驟,並將其應用到網路中。但是,這將非常慢(畢竟我們無法重用先前時間步長中的資訊),甚至更糟的是,我們在各個時間步長之間沒有任何對應關係。2秒後指尖在哪裡結束?我們不知道,因為我們無法在稍後的時間步驟中識別出身體上的特定點(例如,手指尖)在哪裡。我們可以做些比這更聰明的事情嗎?
方法
我們在該項目中的主要見解是,我們可以分別表示3D實體的形狀和運動(「解纏結」)。我們不僅使用佔用網路,還使用兩個網路:佔用網路和速度網路。佔用網路代表3D對象的形狀,而速度網路定義3D空間中隨時間變化的運動場。我們可以將其可視化如下:


在推論過程中,我們可以使用佔用網路(如先前的論文)在時間0處提取網格,然後通過求解一個常微分方程使用速度網路在時間上向前傳播頂點。
在訓練過程中,我們以3D形式對隨機點進行取樣,然後及時返回以確定這些點在時間0處的位置。然後,我們評估這些假設位置處的佔用網路,並與取樣時間的地面實際佔用率進行比較。這樣,我們甚至不需要訓練數據中不同時間步長之間的對應關係!但是,如果給出了它們,我們可以通過將點跟隨矢量場的位置與應該去的位置進行比較來輕鬆地合併它們。
總而言之,關鍵思想是我們解開3D對象的形狀和運動。當我們使用連續速度網路進行運動表示時,我們會自動獲得時間步長之間空間中每個點的對應關係。這也使推理步驟快得多!
實驗
讓我們再次從引言中查看我們的示例。此示例中的「 入住流程」如何執行?結果如下:


我們看到,「佔用流」以一種合理的方式重構了3D運動,並且正確地顯示了對應關係(由顏色表示)。
在我們的論文中,我們進行了多種其他實驗。例如,我們使用了一個生成模型將運動從一種形狀轉移到另一種形狀:


