三維激光雷達點雲處理分類及目標檢測綜述


目前,學術界和業界對於激光雷達點雲的處理方式的研究變的非常熱門。我認爲原因有二:

來自學術界的推力:對於圖片中的許多問題有了突破性的進展,例如圖片分類、語義分割和目標檢測等問題。這些突破性進展使得計算機對2D世界的理解有了質的飛躍,那麼如果將問題變難,計算機是否能夠對3D世界中的相對應的問題有很好的的解決辦法呢?獲取3D信息的傳感器典型的有雙目相機、RGBD相機和激光雷達,而其中激光雷達的獲取的數據精度最高,那麼使用激光雷達點雲數據處理上述3D問題就是很好的突破口。
來自產業界的拉力:人工智能的研究火爆,產業界也紛紛嘗試將人工智能落地,自動駕駛產業則是既有市場又有突破的可能性,吸引了一大批商業巨頭和創業公司。在自動駕駛的任務中,保證行車安全是第一任務,那麼高精度的感知則成爲了重中之重的模塊,而激光雷達以其精度高、不易受光照影響等特點成爲了自動駕駛車輛上不可缺少的傳感器之一。所以,對激光雷達點雲的處理的方法則需要着突破性的進展。
激光雷達數據的處理方法分類
激光雷達數據的處理方法的的根源是深度學習在計算機視覺的發展。這裏,我們按照網絡輸入的格式進行分類。

體素
體素Voxel,英文可能是來源於像素Pixel,將體素理解爲3維的像素也是可以的。先來說說像素,給定一張固定大小的圖片,將圖片均勻的分爲很多小格子,每個小格子就叫像素。那麼對於給定的三維空間,將空間均勻分成很多3維小格子,每個小格子叫體素。不同點在於,相機的工作原理,在圖像形成的同時就決定了圖像是由像素組成的,而且相機的感光三通道決定了每個像素的特徵就是RGB。而體素並不是數據固有的格式,激光雷達返回的數據是點雲格式,需要預先確定體素的大小,人工對點雲區域進行分割,將點雲格式轉爲體素格式。而在轉化的過程中,有的體素可能包含多一些激光點,有些體素包含少一些激光點,那麼如果將一個體素內的激光點信息編碼得到體素的特徵也是一個研究內容。
那麼爲什麼要講點雲轉爲體素呢?這種想法我認爲很大程度上是來自於圖像,在CNN未取得突破性進展之前,體素也並沒有被十分重視,在CNN取得突破性進展之後,使用2D卷積操作提取特徵顯得非常有效。那相對應的,如果使用3D卷積提取點雲的特徵是否也同樣有效呢?這樣就推進了體素表達和3D卷積的研究。
Pytorch支持了3D卷積,使用nn.Conv3D即可,3D卷積離不開體素表示。體素表示的處理方法也就是3D卷積。

轉化爲圖像
本人是做自動駕駛相關的激光雷達數據處理的,但將激光雷達轉化爲圖像處理的方式也其他領域和問題上也很常見。我就拿自動駕駛場景舉例,自動駕駛車輛搭載的激光雷達是通過360度旋轉掃描周圍環境的,例如64線激光雷達,是指64個激光雷達縱向排列,俯仰角不同,然後通過旋轉,達到對360度環境的採樣。那麼這種工作方式,很容易讓人想到,掃出來的點如果轉爲柱座標,就是可以根據俯仰角、轉角和距離一一確定的點,而且點和點之間有固定關係,展開就是一張深度圖像,被稱爲Range View。由於考慮自動駕駛環境中的物體都是在路面上,在俯視圖中一般是彼此無遮擋的,經過體素化,將每一層的體素都認爲是一張圖像的一個channel,就可以將雷達點雲轉爲俯視圖,Bird Eye View。
將雷達點雲轉爲圖像之後,那麼各種問題的處理就變得非常容易,只需要使用在處理圖像的成熟的網絡即可。比較典型的網絡有MVnet。

直接對點雲操作
直接對點雲操作,就直接看論文PointNet和PointNet++就可以了。
另外一種思路就是,將點雲表達爲graph的形式,使用graph convolution進行處理。具體我也不是很瞭解。

三種方式的優劣
體素是從CNN直接擴展而來的,非常暴力,理解簡單。但對於自動駕駛場景而言,體素化之後,有很多體素中沒有雷達點,通常的做法是將其特徵置0,0參與卷積之後的結果還是0,相當於沒有貢獻。但這種體素稀疏的性質,使得大量的卷積是無用計算。另一個問題是,體素是三維的,卷積模板也是三維的,那麼計算起來就比二維的慢,而且卷積核移動的方向也是三維的,隨着空間的大小的增大,體素的數量是以立方的數量增長,使得體素這種表達方式,不僅使得計算緩慢,而且大量計算是無用的。當然,稀疏卷積spare convolution的研究可以部分解決這個問題。
轉化爲圖像的操作,理解簡單,工具現成。但轉爲圖像勢必要犧牲一些數據,結果好壞一部分取決於如何將通過點雲數據構造圖像的特徵。
直接對點雲操作,由於點雲的無序性,使得對點雲直接操作的研究要從頭進行。PointNet系列和graph convolution的研究給了直接使用點雲計算的可能性,但我覺得這仍然是個待研究的問題。
 

【論文閱讀】【綜述】3D Object Detection 3D目標檢測綜述

https://blog.csdn.net/wqwqqwqw1231/article/details/90693612

 

 

我覺得目前 3D 檢測根據 sensor 分類比較合理,具體來說分爲 LiDAR + RGB,RGB,LIDAR,RGB-D。LIDAR 方式可分爲 voxel-based,point-based 和 point-voxel;LIDAR +RGB 可分爲數據級融合與決策級融合,數據集融合又可分爲 early fusion, late fusion 和 deep fusion,這是並行處理,而決策級融合如 F-PointNet 屬於串行處理。目前來看,這兩方面研究工作十分熱門

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章