亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于點云深度學習的3D目標檢測

        2020-11-05 05:05:38敖建鋒蘇澤鍇劉傳立李美妮
        激光與紅外 2020年10期
        關鍵詞:視錐準確率神經網絡

        敖建鋒,蘇澤鍇,劉傳立,李美妮,朱 濱

        (江西理工大學建筑與測繪工程學院,江西 贛州 341000)

        1 引 言

        激光雷達獲取得到的點云數據具有精度高、魯棒性強等特點,點云是一種表達形式簡單、靈活多變的數據形式,在自動駕駛[1]、目標識別、三維重建[2]、城市規(guī)劃和遙感測繪等方面有著廣泛的應用。近年來,隨著機器學習的發(fā)展,如何利用點云進行3D目標檢測受到了人們的關注。與二維圖像相比,點云可以更好地表現出地物的表面特征及距離信息,然而與基于圖像的目標檢測的快速發(fā)展形成鮮明的對比[3],由于點云本身的無序性、稀疏性等特點,在基于點云的目標檢測準確度方面遠不如圖像目標檢測,研究還存在著諸多難點亟待解決。卷積神經網絡對于輸入順序是敏感的,而點云數據具有置換不變性,即以任意順序輸入點云都能表示同一物體。目前,利用點云數據進行深度學習主要有以下三種方法。多視角投影[4-5]是通過將點云轉換為在多個角度下投影的圖像,形成多張二維圖像,最后將其輸入到2D卷積神經網絡進行特征的提取。這種方法借助了成熟的圖像處理技術來解決難以直接輸入點云的問題,但從三維點云到二維圖像這一轉換過程中,不可避免地會造成信息的丟失。另一種方法是在三維空間中劃分規(guī)則的立方體,將點云數據柵格化轉換為體素來解決點云無序性的問題,并將2D卷積神經網絡拓展到3D卷積神經網絡。但三維卷積隨著空間復雜的增加和分辨率的提升計算量呈3次方的增長,這就需要對立方體的大小進行謹慎地選擇。目前基于體素的方法[6-8]一般將立方體大小限制在30×30×30,相比圖像的高分辨率,三維空間中的分辨率成為限制模型學習能力的瓶頸。前兩種方法都是先將點云轉換為其他形式,在進行目標檢測中存在局限性,理想情況下是直接使用點云進行輸入,保留信息的完整性,實現端到端的特征學習。斯坦福大學的QI提出了PointNet[9]模型有效地解決了這一問題,利用對稱函數(最大池化)進行對稱化操作處理點云,直接將點云輸入神經網絡中進行特征的提取,有效地解決了前兩種方法信息丟失的缺點。避免了點云數據特點帶來的局限性[10]。

        因此本研究將采用對稱函數的方法,利用直接處理原始的點云數據的Frustum-Pointnets模型[11]進行3D目標檢測,避免了轉換點云數據時的特征損失。并在該模型的基礎上進行改進,提升了模型了性能,得到了很好的檢測效果。

        2 構建Frustum-Pointnets模型

        本文采用Frustum-Pointnets模型,直接對原始點云進行處理并實現3D目標檢測。Frustum-Pointnets模型基本框架如圖1所示。

        圖1 Frustum-Pointnets模型框架

        其中,n為視錐提取出來的點云數;m為分割出的點云數;c為點云的通道數;k為點云被分為k個類。模型共分為3個部分:三維視錐提取、3D實例分割、3D檢測框回歸。該模型結合了圖像和點云的優(yōu)點,先通過圖像生成2D檢測框并將其擴展到三維空間對目標點云進行檢索,然后對區(qū)域內的點云利用Pointnet網絡進行實例分割,最后估計目標點云的3D檢測框。

        2.1 三維視錐提取

        由于大多數的三維傳感器的數據分辨率尤其是實時3D激光雷達采集的點云相比圖像的分辨率低很多,因此Frustum-Pointnets利用圖像進行二維目標區(qū)域的定位,然后擴展到三維空間形成視錐,如圖2所示。

        圖2 三維視錐提取示意圖

        2D目標檢測器是基于FPN模型[12],先在image-Net和COCO上預訓練生成訓練模型并根據KITTI數據集[13-14]進行微調,生成2D檢測框,然后結合標定好的傳感器內參和已知的相機投影矩陣,二維的檢測區(qū)域就可以變換到三維視錐(圖3),過濾三維視錐外的點云并對視錐內的點云進行提取,這樣就只需要在視錐中對點云進行檢索,而不需要在整個場景中檢索,大大地減少了計算量。由于在實際中視錐的朝向是各異的,需要對視錐進行旋轉歸一化處理,從相機坐標系圖3(a)轉換到視錐坐標系圖3(b),使視錐的中心軸(z軸)與圖像所在的平面正交化,歸一化處理有利于提升模型的旋轉不變性。

        2.2 3D實例分割

        由于在場景中有很多前景的遮擋和后景的干擾,直接對視錐中的點云進行3D檢測框回歸是很困難的??紤]到目標在三維空間的自然狀態(tài)下是自然分離的,而在二維空間中并沒有目標之間的深度信息,因此3D點云分割是比在圖像上更加容易和自然的。3D實例分割模塊使用了PointNet網絡,對視錐中的點云進行語義分割得到目標點云(一個視錐只分割出一個對象),分割網絡結構如圖4,其中mlp為多層感知器。在該模塊中還加入了一個預定義的語義類別one-hot向量,利用圖像的檢測結果輔助網絡對目標點云進行分割。最后對目標點云進一步地平移歸一化操作,將視錐坐標系圖3(c)轉換到掩模坐標系圖3(d),坐標系原點為點云掩模的質心,提高模型的平移不變性。這樣目標點云就都集中在坐標原點附近,使得后續(xù)的處理進一步地簡化。

        圖3 坐標歸一化

        圖4 3D實例分割結構

        2.3 3D檢測框回歸

        由3D實例分割得到的目標點云在掩模坐標系下的質心并不是物體真實的質心,這是因為3D激光雷達在采集點云的過程中會被其他目標物遮擋或一部分目標點云在視錐之外,造成目標點云并不完整,因此計算出的目標點云質心可能與目標物體真實的質心距離很遠。模型采用一個輕量的變換網絡T-Net來估計完整目標物體的質心,預測目標物體的質心和掩模坐標系原點之間的殘差。最后一步為3D檢測框的估計,通過PointNet網絡如圖5所示,對3D檢測框的中心、尺寸、朝向進行估計。對于檢測框的中心采用殘差的方法來進行估計,由3D檢測框估計網絡(PointNet)估計的中心殘差與T-Net先前估計的中心殘差和點云掩模的中心進行組合,以恢復目標物體真正的中心,再將點云從掩模坐標系轉換到預測的以目標物體真實質心為原點的坐標系。如公式(1)所示,Cpred為最終預測的檢測框中心殘差,Cmask為點云掩模的中心殘差;ΔCT-Net為T-Net估計的中心殘差;ΔCBox-net為PointNet估計的中心殘差。最終由全連接層(FCs)輸出3D檢測框的質心坐標(cx,cy,cz)、長寬高(h,w,l)、航向角(θ)共7個參數。

        Cpred=Cmask+ΔCT-Net+ΔCBox-net

        (1)

        圖5 3D檢測框評估PointNet網絡結構

        3 Frustum-Pointnets模型改進

        3.1 激活函數

        激活函數是深度學習中的核心單元,主要目的是對神經元的輸入映射到輸出,通過引入一個非線性的函數,使得神經網絡在傳遞過程中每一層的輸入端和輸出端不再是簡單的線性函數,而是可以逼近任意的非線性函數,讓神經網絡擁有強大的表達能力。選用合適的激活函數可以提高模型的性能和收斂速度,常見的激活函數有sigmoid、tanh、ReLU函數,但sigmoid和tanh函數在輸入值非常大或非常小時函數的輸出值的變化很小,在反向傳播中會導致梯度逐漸變小甚至消失,最終導致權重得不到更新。在本實驗中選用了ReLU[15]和Swish函數[16]。

        ReLU函數的表達式非常簡單,如圖6(a)當x>0時,輸入值等于輸出值,當x<0時,輸出值等于0。ReLU函數的表達式為:

        (2)

        其中,f(x)為輸出值;x為輸入值。

        ReLU函數的優(yōu)點在于解決了sigmoid、tanh函數梯度消失的問題,計算量小收斂速度快,只需要一個閾值(是否大于0)就可以得到激活值,但是在輸入值小于0時直接簡單地置0,導致該神經元不再被激活,參數永遠得不到更新,最終造成大量有效特征被屏蔽。

        Swish函數是由谷歌大腦團隊提出的。如圖6(b)Swish函數與ReLU函數一樣無上界而有下界,但Swish函數是平滑且非單調的函數。函數表達式為:

        (3)

        其中,f(x)為輸出值;x為輸入值;β是一個常數或者是可訓練的參數,當β=0時Swish為線性函數,當β→∞時Swish函數變?yōu)镽eLU函數,因此Swish函數是介于線性函數與ReLU函數之間的平滑函數。雖然收斂速度相比ReLU函數慢,但Swish的平滑和非單調性是它的優(yōu)點,在輸入為負值時仍能輸出有效值,避免了神經元壞死梯度參數無法更新的情況的出現,而且由于是非單調函數,因此即使輸入值增大輸出值也可以減小,更加適合深層次的神經網絡。

        3.2 參數初始化

        參數初始化是深度學習中一個很重要的方面,合適的參數初始化方法能讓神經網絡在訓練的過程學習到更多有用的信息,這意味著參數梯度不應該為0。在全連接的神經網絡中,參數梯度與反向傳播得到的狀態(tài)梯度和激活值有關,激活值飽和會導致該層狀態(tài)梯度信息為0,然后導致下面所有層的參數梯度為0,因此參數初始化函數應該使得各層激活值不會出現飽和現象且激活值不為0。選用合適的參數初始化函數不但能夠避免梯度消失的現象,同時也能加快收斂速度提高網絡的訓練效率。傳統(tǒng)的參數初始化方法從高斯分布中隨機初始化參數,甚至直接全初始化為1或者0,這樣的方法雖然簡單計算量小,但效果往往很差。為了提高模型的性能,本試驗選用了Xavier初始化[17]和He初始化方法[18]。

        Xavier初始化的基本原理是若對于一層網絡的輸入和輸出可以保持均勻分布而且方差一致,就能夠避免輸出值都為0的情況,從而避免梯度消失,使得信號在神經網絡中可以傳遞得更深,在經過多層神經網絡元后輸出值保持在一個合理的范圍。根據輸入和輸出神經元的數量自動決定初始化的范圍,初始化范圍如公式(4),n為所在層的輸入維度,m為輸出維度。

        (4)

        He初始化考慮到了ReLU函數的影響,基本原理是對于ReLU激活函數,當輸入小于0時其輸出為0,會導致該神經元關閉,影響其輸出值的分布模式。因此在Xavier初始化的基礎上,假設有一半的輸出為0,就需要對權重的方差進行加倍補償,使得參數的方差保持平穩(wěn)。

        4 實驗結果與分析

        4.1 實驗環(huán)境

        實驗平臺為AMD銳龍R5 3600、NVIDIARTX 2060 Super、16 GB內存,在Ubuntu 18.04和Python 2.7下搭建CUDA 10.0、CUDNN 7.6.4、TensorFlow 1.15深度學習環(huán)境。實驗采用自動駕駛場景KITTI數據集,KITTI數據集是目前公開的規(guī)模最大的交通場景數據集,包含市區(qū)、鄉(xiāng)村和高速公路場景的真實圖像和點云數據,每個場景中最多達15輛汽車和30個行人,根據不同程度的遮擋和截斷,劃分為簡單、中等、困難三個等級。該數據集共有7481個場景對應7481張圖像和相應點云數據,將KITTI數據集劃分為3712份訓練集和3769份驗證集。

        4.2 3D目標檢測精度對比

        采用不同的激活函數和參數初始化方法進行組合對比,模型優(yōu)化器選擇Adam,初始學習率設置為0.001,初始衰減率為0.5,衰減速度為800000,即每迭代800000次學習率減半,batch_size設置為32,num_point為1024,max_epoch為200,即每次迭代處理32份點云數據且每一個樣本只從視錐里抽取1024個點用于訓練,并對所有訓練樣本迭代200次。目標檢測精度實驗結果如表1所示。由表1可知:ReLU和Xavier組合對汽車的檢測在簡單與困難下準確率最高;使用Swish和Xavier組合時對行人的檢測準確率最高;而使用Swish和He方法組合時對騎車人的檢測準確率最高。雖然使用Swish激活函數和He初始化方法在汽車與行人的檢測準確率比其他組合低,但是差距很小,而且在對騎車人的檢測中,這種方法組合的準確率遠高于其他的方法組合,因此綜合考慮,選用Swish作為激活函數、He作為模型的初始化方法最為合適,在目標檢測中可以達到較好的效果。

        表1 不同激活函數和初始化方法組合目標檢測精度對比

        將改進過的模型與近年來主流的3D目標檢測模型進行對比,不同模型的目標檢測結果如表2所示,其中AVOD[19]和MV3D[20]是基于多視角投影的方法;VoxelNet[21]是基于體素的方法。從表2可以看出:改進后的Frustum-Pointnets模型只有汽車(困難)的檢測準確率比VoxelNet略低,對行人和騎車人的檢測準確率均高于其他模型;與原始的Frustum-Pointnets模型相比,目標檢測準確率均得到了提升,特別是對騎車人的檢測準確率提升更為明顯,兩者的差距最多達到了9.45 %。

        表2 不同模型目標檢測精度對比

        4.3 3D目標檢測可視化與分析

        對Frustum-Pointnets模型輸出得到的7個參數進行三維空間的可視化。在圖像中的真值框和在點云中預測的3D檢測框如圖7所示,圖7(a)為圖像的2D真值檢測框可視化,圖7(b)為圖像的3D真值檢測框可視化,圖7(c)為點云的預測結果可視化。從圖中可以看出:場景中的目標基本都能被準確的識別,即使左下角和右下角的汽車只能看到一小部分,在點云中仍舊能精確地檢測出目標物體的邊界和航向。而最遠處的汽車由于距離太遠目標點云過于稀疏,目標的位置和朝向被錯誤的估計,檢測結果與真實值存在較大誤差。

        5 結 語

        針對目前利用點云進行3D目標檢測的準確率較低的情況,本文利用Frustum-Pointnets模型實現對點云的3D目標檢測,并在該模型的基礎上進行改進,選擇合適的激活函數和參數初始化方法組合,提高了目標檢測的精度,與原始的Frustum-Pointnets模型相比,在對騎車人的檢測中準確率分別提高了9.45 %、3.77 %和3.28 %,對模型的泛化性有了進一步的提高。然而由于Frustum-Pointnets模型采用圖像和點云串行處理結構,而不是圖像和點云一起的并行處理,導致3D目標檢測的精度依賴于圖像的檢測結果,在光線條件差和遮擋嚴重等情況下,2D檢測器難以準確定位目標導致影響到3D目標檢測的準確度。在目標物體離傳感器太遠的情況下,由于獲取到的點云過于稀疏,模型無法準確估計目標的準確位置,出現漏判和錯判的情況。接下來將對模型進一步研究,改善這些問題。

        猜你喜歡
        視錐準確率神經網絡
        為什么在暗處物體顯得很模糊
        眼睛是如何分辨顏色的?
        乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
        健康之家(2021年19期)2021-05-23 11:17:39
        不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
        2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
        神經網絡抑制無線通信干擾探究
        電子制作(2019年19期)2019-11-23 08:42:00
        眼睛是怎么看見各種顏色的?
        高速公路車牌識別標識站準確率驗證法
        基于神經網絡的拉矯機控制模型建立
        重型機械(2016年1期)2016-03-01 03:42:04
        復數神經網絡在基于WiFi的室內LBS應用
        chinese国产在线视频| 伊人久久大香线蕉av色| 亚洲色成人网站www永久四虎| 日日摸夜夜添夜夜添无码免费视频| 亚洲男人av天堂午夜在| 亚洲天堂在线视频播放| 国产99精品精品久久免费| 亚洲一区二区视频蜜桃| av黄色在线免费观看| 亚洲av无码一区二区三区人| 最新国产日韩AV线| av中文字幕在线资源网| 97中文乱码字幕在线| 久久综合伊人77777麻豆| 真多人做人爱视频高清免费| 国产美熟女乱又伦av果冻传媒| 一区二区三区少妇熟女高潮 | 免费播放成人大片视频| aa片在线观看视频在线播放| 四虎成人精品无码永久在线| 国产V亚洲V天堂A无码| 国产av剧情久久精品久久| 国产农村熟妇videos| 日本高清一区二区三区水蜜桃| 国产亚洲av手机在线观看| 漂亮丰满人妻被中出中文字幕| 国产好大好硬好爽免费不卡| 亚洲国产美女在线观看| 一区二区三区夜夜久久| 在线国人免费视频播放| 国产成人综合亚洲看片| 成人三级在线| 国内精品国产三级国产avx| 亚洲av丰满熟妇在线播放| 久久久久久人妻一区二区三区| 欧美成人高清手机在线视频| 极品夫妻一区二区三区| 51看片免费视频在观看| 国产一区曰韩二区欧美三区| 亚洲全国最大的人成网站| 插鸡网站在线播放免费观看|