《FlowNet3D》(CVPR2019)--直接從點雲中估計場景流

暴走兔學習了CVPR 2019的論文:《FlowNet3D: Learning Scene Flow in 3D Point Clouds》,爲了更好的理解該論文(年紀大了容易忘),在此做個總結性的閱讀筆記,爭取言簡意賅、簡單粗暴地描述出論文作者們所作的工作,如果能對相關研究方向的小夥伴有借鑑意義,那就更好了。不喜勿噴,直接移步就好了~


項目地址:https://github.com/xingyul/flownet3d

一句話介紹:

FlowNet3D----是一種點雲的端到端的場景流估計網絡,能夠直接從點雲中估計場景流。

  輸入:連續兩幀的原始點雲;

  輸出:第一幀中所有點所對應的密集的場景流。

  如圖所示:

  flownet3d網絡爲第一幀中的每個點估計一個平移流向量,以表示它在兩幀之間的運動。

FlowNet3D架構

如圖所示(圖是從論文截的,試了幾次也不知道怎麼去掉博客水印,抱歉啊),該模型具有三個關鍵模塊,分別爲:

(1)點特徵學習(point feature learning)-- 作用:分層點雲特徵學習。

(2)點混合(point mixture)--作用:混合兩個點雲。

(3)流細化(flow refinement)--作用: 將與中間點關聯的流嵌入上採樣到原始點,並在最後一層預測所有原始點的流。

向上採樣的步驟是通過一個可學習的新層--set upconv層來實現的。

點雲處理層

在這些模塊下是三個可訓練的點雲處理層:

4個set conv層--作用: 學習深度點雲功能;

1個flow embedded層--作用: 流嵌入層,學習兩個點雲之間的幾何關係,推斷運動;

4個set upconv層(對應於四個set conv層)--作用: 以一種可學習的方式向上採樣和傳播點特性。

每個可學習層對函數h採用多層感知器,用幾個線性層寬來參數化Linear-BatchNorm-ReLU層。詳細的層參數如表1所示。

(這個表格也是論文中的,同不知道怎麼去博客水印,抱歉)

因爲點雲自身的不規則性和無序性,傳統的用於2d圖像的卷積並不適合對其進行直接處理。在2017年,學術界提出了pointnet以及後來改進的pointnet++,是可以直接處理3d點雲的神經網絡,所以這篇論文是延用了pointnet++的網絡結構。

<具體公式這裏就不貼了,請移步論文看公式>

數據集

FlyingThings3D及kitti

額,FlyingThings3D的這些數據集中,有一個100G的,一個80多G的,我下了半個月還沒下完,下載鏈接爲:

https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html

數據集由stereo和從ShapeNet中採樣的具有多個隨機移動對象的場景中呈現的RGB-D圖像。

有大約32k的立體圖像與地面真視差和光流圖。作者們隨機選取2萬個作爲訓練集,2000個作爲測試集。不使用RGB圖像,而是通過視差圖到3D點雲和光流到場景流來預處理數據。

測試結果

在flying things3d數據集的測試結果

度量指標爲

端點誤差(End-point-error, EPE)

流量估計精度(Acc)(<0.05或5%,<0.1或10%)。

<補充說明:EPE(endpoint error):評價光流法的一種方法。
指所有像素點的gound truth和預測出來的光流之間差別距離(歐氏距離)的平均值,越低越好。>

在KITTI場景流數據集上的場景流估計。

度量指標爲:

EPE,ACC.

使用KITTI sceneflow數據集進行場景流估計。(前100幀用於調整我們的模型。所有方法都在剩下的50幀上求值。)

 

發佈了24 篇原創文章 · 獲贊 27 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章