• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于深度卷積神經(jīng)網(wǎng)絡的三維模型識別

      2019-04-23 07:41:22王亦民
      關鍵詞:體素卷積網(wǎng)格

      楊 軍,王亦民

      (蘭州交通大學 電子與信息工程學院,蘭州 730070)

      0 引 言

      語義對象識別對于檢索真實環(huán)境中的物體有著極其重要的意義。越來越多的傳感器如LiDAR和RGBD相機被使用在自動檢索系統(tǒng)中,如無人駕駛汽車、無人機等,這些傳感器大多被用于躲避障礙物或繪制地形圖,由于這些傳感器獲取三維模型多由點云或網(wǎng)格的方式存儲,損失大量表面紋理特征信息,給三維模型識別工作帶來了很大的困難。目前,如何利用三維點云數(shù)據(jù)通過聚類等方式進行三維模型物體識別是現(xiàn)今機器識別物體的重點研究方向。

      本文的主要研究問題是預測出給定三維點云數(shù)據(jù)的相應標簽,達到目標識別和分類的目的?,F(xiàn)有的解決辦法大多是由人工提取出三維模型的特征描述符,然后將其送入分類器如支持向量機(support vector machine,SVM)進行訓練,通過相同特征匹配原則以達到識別模型的目的。雖然這類方法是目前計算機視覺中圖像識別的主要技術,然而,由于傳統(tǒng)機器學習算法需要人工進行特征提取,需要消耗大量的人力物力,并且特征提取的質量直接影響分類器的精度。因此,這類方法正逐漸被基于卷積神經(jīng)網(wǎng)絡的深度學習方法所取代。卷積神經(jīng)網(wǎng)絡(convolution neural network,CNN)是深度學習的一種應用技術,其利用卷積核來自動提取特征,省去了人工提取特征的步驟。CNN利用端對端的模型結構通過反向傳播更新權重參數(shù),可以很好地處理分類與回歸等問題。基于卷積神經(jīng)網(wǎng)絡的檢索方法已經(jīng)大大改進了圖像對象識別的精度,并且也在其他領域中顯示出了明顯的優(yōu)勢。

      利用三維模型空間信息與體積信息進行模型檢索,雖然在概念上只是簡單地將基本方法擴展到體積數(shù)據(jù)。但是由于三維模型特征的離散性,以及在處理模型的過程中所產(chǎn)生的非剛性形變對特征提取的影響,導致網(wǎng)絡結構的設計以及超參數(shù)的選取問題變得尤為困難。此外,由于三維模型的存儲多為點云或者三維網(wǎng)格數(shù)據(jù),當模型使用稠密點云或者三維網(wǎng)格進行特征提取時,將造成大量的計算冗余,若采用稀疏采樣方法對稠密數(shù)據(jù)進行采樣,則會損失大量的細節(jié)信息。以上原因成為利用卷積神經(jīng)網(wǎng)絡解決三維模型識別和分類問題的瓶頸。

      本文的主要貢獻有2個方面:①構建了一個3D卷積神經(jīng)網(wǎng)絡架構,采用占用網(wǎng)格模型將點云數(shù)據(jù)在空間中所占區(qū)域用體素化立方體代替,以此作為卷積神經(jīng)網(wǎng)絡的輸入數(shù)據(jù),通過卷積層提取體素化模型的特征,池化層整合已提取的特征,最后在全連接層中對模型進行分類;②通過對訓練集中體素模型進行旋轉的方式來獲取該模型的旋轉副本以增加訓練集的數(shù)據(jù)量,這不僅通過擴展訓練集降低了網(wǎng)絡的過擬合率,同時在訓練過程中增強了網(wǎng)絡對不同角度三維模型的識別能力。本算法在保證識別精度的同時,加快了反向傳播對參數(shù)的更新速度。

      1 相關研究工作

      卷積神經(jīng)網(wǎng)絡從局部到整體層級式的映射,使卷積核經(jīng)過多層映射后有巨大的感知域,這樣模型在處理過程中既包含局部特征又具有整體信息。由于卷積運算過程中對所有的對象都沒有主觀偏好影響。因此,卷積運算所提取的數(shù)據(jù)特征均為基礎特征,不受數(shù)據(jù)變換影響。此外,卷積操作既通過綜合數(shù)據(jù)區(qū)域信息和非線性映射來優(yōu)化局部的表達,又通過局部信息的整合來進行整體描述。因此,選取卷積神經(jīng)網(wǎng)絡為本文主體算法。

      對于2.5D卷積計算的研究中,文獻[1]通過定義視點及視角掃描方向對三維點云數(shù)據(jù)進行區(qū)域掃描,將獲取的深度圖像用于構建體素三維模型表面,識別空間遮擋關系及區(qū)分空白區(qū)域,以此對2.5D點云數(shù)據(jù)進行局部特征提取。但是2.5D點云空間表達不夠準確,自遮擋問題無法解決,導致三維模型內(nèi)部存在大量無效數(shù)據(jù),在三維模型特征矩陣中這種無效數(shù)據(jù)均用零值表示,這使卷積神經(jīng)網(wǎng)絡在前向傳播過程中大部分激活層都處于未激活狀態(tài),造成大量的計算冗余。文獻[2]在提取2.5D點云數(shù)據(jù)特征的基礎上,結合非監(jiān)督的特征學習方法將掃描獲得的2.5D點云數(shù)據(jù)進行分類,但點云數(shù)據(jù)的自遮擋所導致的空間信息描述不準確問題以及點云數(shù)據(jù)計算量大等問題并沒有得到實質性的解決。

      由于2.5D卷積神經(jīng)網(wǎng)絡存在固有的缺陷,在解決實際問題中不得不轉向維度更高的3D卷積神經(jīng)網(wǎng)絡。3D卷積神經(jīng)網(wǎng)絡空間信息特征提取更準確,這意味網(wǎng)絡具有更高的精度。但同時由于信息維度的增加,網(wǎng)絡參數(shù)量會相應變多,計算量增大。因此,可以通過將中間層的特征進行降采樣操作來減少網(wǎng)絡計算次數(shù),防止網(wǎng)絡參數(shù)過擬合。

      文獻[3-4]提出的3D空間體卷積結構已經(jīng)成功用于從RGB-D相機獲取的深度圖中檢測三維物體。由于預先需要確定可能存在物體的區(qū)域,需要存儲大量的三維信息點,消耗空間資源。同時在卷積神經(jīng)網(wǎng)絡進行反向傳播時,該區(qū)域信息由于存儲在外部,不能形成一個端到端(end-to-end)的結構,還需要消耗大量時間來進行信息傳遞。

      文獻[5]是使用無監(jiān)督的體積特征學習用于檢測室內(nèi)物體。這種方法基于密集矩陣編碼,以損失運算時間為前提追求更高精度。在同一時期,文獻[6]提出了一種生成3D卷積形狀模型的方法,并將其應用于RGB-D對象場景標記的無監(jiān)督聯(lián)合特征學習框架。文獻[7]提出了一個使用LiDAR點云數(shù)據(jù)并采用二進制分類方法訓練的三維卷積神經(jīng)網(wǎng)絡,雖然加快了運算時間,但損失了部分精度。文獻[8]提出的三維卷積神經(jīng)網(wǎng)絡結構可直接處理多維點云數(shù)據(jù),該方法采用了隨機元梯度下降法來訓練神經(jīng)網(wǎng)絡,并且將監(jiān)督學習與無監(jiān)督學習方式相結合進行室外復雜環(huán)境中三維模型數(shù)據(jù)的分類,但直接對復雜環(huán)境多維點云進行處理的過程中由于噪聲干擾導致網(wǎng)絡分類精度不高。

      綜上所述,由于點云數(shù)據(jù)空間信息不易提取,存在自遮擋問題且點云間混有大量噪聲,難以使用視角渲染二維圖像方式對其進行特征提取,若直接使用點云數(shù)據(jù)作為卷積神經(jīng)網(wǎng)絡的數(shù)據(jù)輸入,則會消耗大量數(shù)據(jù)儲存資源并影響網(wǎng)絡訓練速度及分類精度。因此,針對以上存在問題,提出一種體素化占用網(wǎng)格模型,將點云數(shù)據(jù)在空間中所占區(qū)域用體素塊表示,解決了點云數(shù)據(jù)自遮擋以及噪聲影響問題,同時體素塊數(shù)據(jù)為正方體矩陣,大大降低了數(shù)據(jù)儲存消耗,且包含了原始三維模型的結構信息。因此,本文以體素數(shù)據(jù)構建卷積神經(jīng)網(wǎng)絡來提取模型特征信息,以實現(xiàn)三維模型識別和分類。

      2 體積占用模型方法

      三維數(shù)據(jù)(或稱為空間數(shù)據(jù))具有多種表達方式,例如體素圖像,三維點云以及RGB-D圖像。這些信息載體在表達平面圖像信息的基礎上附加了三維空間中的深度信息,使三維數(shù)據(jù)點在空間中被唯一確定,在很大程度上豐富了獲取空間信息的維度。

      體素圖像可以直觀地觀察到三維物體的形狀與姿態(tài),此外,將普通二維圖像的處理和分析方法移植到體素圖像上來相比于三維點云數(shù)據(jù)和RGB-D圖像更容易。在相同分辨率下,三維點云數(shù)據(jù)占用更小的空間資源,且易于表達復雜紋理。RGB-D圖像通過RGB-D相機同時記錄RGB圖像和深度圖像,RGB圖像包含物體表面顏色及紋理信息,深度圖像則包含了物體的空間形狀信息,通過將2種圖像結合來檢測和識別三維模型。由于體素圖像的移植便利性。因此,本文采用體素圖像作為三維數(shù)據(jù)的載體。

      由于稠密點云數(shù)據(jù)具有很大的計算冗余度,運用3D的體素圖像作為點云數(shù)據(jù)的載體可以大大減少計算量,并有良好的空間表達性。體素圖像通常是由點云與物體邊界框的交點給出的區(qū)域,壓縮為固定大小后作為卷積神經(jīng)網(wǎng)絡的輸入數(shù)據(jù)。

      本文算法的任務是預測三維模型的類別標簽從而對三維模型進行分類和檢索,圍繞這一任務主要完成2項研究工作:①表示估計空間的體積占用網(wǎng)格;②構建直接從體積占用網(wǎng)格預測類標簽的三維CNN。

      2.1 體素占用網(wǎng)格的框架

      文獻[10]提出的占用網(wǎng)格是將場景的三維特征表示為隨機的三維網(wǎng)格,每個元素對應空間的三維信息,并且將這些由傳感器轉化得來的信息和占用的維度特征作為深度網(wǎng)絡的輸入數(shù)據(jù)。本文提取特征信息的方法借鑒文獻[10]的占用網(wǎng)格算法。使用占用網(wǎng)格有2個主要原因:①占用網(wǎng)格模型所使用體素數(shù)據(jù)能夠有效地估計出三維物體占據(jù)空間的大小,這種表示方式可以在保留空間信息的同時相對減少稠密點云數(shù)據(jù)的計算冗余度;②該方法能夠更加簡單有效地進行數(shù)據(jù)存儲和數(shù)據(jù)分析。在本文提出的三維模型識別系統(tǒng)中,使用密集陣列來執(zhí)行所有卷積操作,同時利用高性能GPU來使網(wǎng)格參數(shù)在訓練過程中更快地收斂。為了更有效地提取模型特征,在訓練之前,網(wǎng)絡模型參數(shù)由高斯分布隨機變量生成,通過梯度下降法對網(wǎng)絡中神經(jīng)元權重進行更新,并利用典型的ReLU激活函數(shù)使分類器產(chǎn)生非線性決策邊界,這樣可以大大提高網(wǎng)絡模型的計算能力和魯棒性。

      在體積表示中,采用離散映射方法將每個點(x,y,z)映射到離散體素坐標(i,j,k)上,離散值大小取決于空間中的體素網(wǎng)格的方向和分辨率。

      對于體素方向的確定,本文使用笛卡爾坐標系正方向作為體素網(wǎng)格生成方向。在卷積神經(jīng)網(wǎng)絡正向傳播中,由聚類中心定義的起點會隨著卷積層計算不斷產(chǎn)生步長位移,然后,通過卷積神經(jīng)網(wǎng)絡反向傳播,不斷將體素網(wǎng)格對齊到離散體素坐標系下。 然而,對模型進行坐標系正方向的卷積計算所獲取的訓練集不足以擬合復雜的點云數(shù)據(jù)。因此,本文利用(x,y,z)3個方向隨機翻轉來擴大數(shù)據(jù)集實現(xiàn)數(shù)據(jù)增強。

      對于分辨率,由于數(shù)據(jù)集的不同,模型空間分辨率也不同,而網(wǎng)絡數(shù)據(jù)的輸入要求具有統(tǒng)一的分辨率大小。在實驗中,文中使用基于LiDAR傳感器獲取的三維點云信息,首先將模型通過占用網(wǎng)格體素數(shù)據(jù)規(guī)范化計算壓縮至大小為48×48×48體素的固定占用網(wǎng)格,然后使用尺寸為5 m3的立方體包圍盒對模型進行規(guī)范化處理,該分辨率的設置取決于實驗中所用的中央圖形處理器的最大計算能力,包圍盒尺寸為體素化分辨率前后、左右、上下分別加1得到,即(1+48+1)×(1+48+1)×(1+48+1),為保證單個體素的數(shù)據(jù)為整數(shù),因此,包圍盒大小選擇5 m3。其優(yōu)點是通過對象的相對尺度給出的信息使三維模型具有了統(tǒng)一標準尺寸,有利于網(wǎng)格模型的收斂;此外,當體素太小(導致對象大于網(wǎng)格)或太大(導致細節(jié)因失真而丟失)時,避免了形狀信息丟失。

      2.2 占用網(wǎng)格體素數(shù)據(jù)規(guī)范化計算

      (1)

      (2)

      對于該網(wǎng)格的占用狀態(tài)計算公式為

      (3)

      通過對網(wǎng)格占用狀態(tài)進行計算后所得的占用概率即為判斷網(wǎng)格是否被占用的依據(jù)。根據(jù)文獻[10]以及實驗數(shù)據(jù),當占用概率達到0.7以上時即可認為該網(wǎng)格處于被占用狀態(tài),即

      (4)

      最后,將確定為體素占用的網(wǎng)格作為單位矩陣來組成原始三維點云數(shù)據(jù)的三維向量體矩陣,并作為卷積神經(jīng)網(wǎng)絡的輸入數(shù)據(jù)[12]。

      體素化占用網(wǎng)格模型效果如圖1所示。

      2.3 三維卷積神經(jīng)網(wǎng)絡及架構

      選擇卷積神經(jīng)網(wǎng)絡有2個主要原因:①可以高效地利用空間結構;②卷積神經(jīng)網(wǎng)絡可以通過學習對分類任務進行有效的局部空間濾波。本文選擇多層網(wǎng)絡結構,每一層中又設置多個卷積核,使得對占用網(wǎng)格中不同平面結構以及角度信息進行充分的特征提取,同時,網(wǎng)絡通過堆疊卷積層來進行二次特征提取。這使訓練集數(shù)據(jù)能提供更精確的特征,且由于特征的二次提取,很大程度上提高了算法的適應能力,以應對更加多變與復雜的模型結構。

      圖1 體素化模型Fig.1 Voxelization model

      文中構建的三維模型識別網(wǎng)絡由基本卷積神經(jīng)網(wǎng)絡所完成,由輸入層、卷積層、池化層、全連接層構成。

      輸入層(I,J,K)。該層接受固定尺寸為I×J×K的體素,文中設I=J=K=48。根據(jù)占用網(wǎng)格體素規(guī)范化計算的結果,體素矩陣中的元素呈二值化,在卷積運算過程中由于0值對特征提取的影響造成模型邊緣信息不斷減少,所以輸入層將體素矩陣中的0值全部替換為-1,從而不僅保留了模型的邊緣特征,并且不影響卷積層對模型的特征提取。

      卷積層(f,d,s)。該層接受四維輸入量,其中,3個維度是空間信息,第4個維度是特征圖信息。該層通過將輸入數(shù)據(jù)與形式為d×d×d×f0的卷積核進行卷積操作來創(chuàng)建f特征圖,其中,d是空間維度;f0是輸入特征圖的數(shù)量,卷積計算中空間步幅長度值為s。卷積操作通過定義卷積核的個數(shù)來控制輸出特征圖的通道數(shù),將輸出的特征輸入至固定參數(shù)為0.1的激活函數(shù)(Leaky-ReLU)中,以此對神經(jīng)元進行非線性激活。

      池化層(m)。該層的作用為對卷積操作后所獲取m×m×m維度的特征圖譜進行壓縮,一方面使卷積特征圖簡化以降低網(wǎng)絡計算復雜度;另一方面通過降采樣方式提取上一卷積層計算所得的主要特征。本文通過最大池化方法用上一步卷積層計算結果中的最大特征值取代其他特征作為下一卷積層的輸入,避免權重值數(shù)量過多產(chǎn)生的過擬合現(xiàn)象[15]。

      全連接層(n)。該層具有n個輸出神經(jīng)元,每個神經(jīng)元的輸出是來自上一層的所有輸出的線性組合。通過對前向所有特征的連接,最終將所有神經(jīng)元輸出值送入分類器中進行三維模型的識別和分類。

      本文所采用的卷積神經(jīng)網(wǎng)絡的基本模型為C(64,64,64,1)-C(64,64,64,32)-C(64,64,64,32)-P(22,22,22,32)-C(22,22,22,64)-C(22,22,22,64)-P(8,8,8,64)-FL(32768)-FC(512)-FC(10),其中,C為卷積層;P為池化層;FL為展開層;FC為全連接層。卷積層中4項參數(shù)值的前3項為特征圖譜的維數(shù),第4項為卷積核個數(shù);池化層中的前3項也是特征圖譜維數(shù),第4項為下層所需卷積核個數(shù);展開層中參數(shù)為特征圖譜中所有特征向量個數(shù);全連接層中參數(shù)為網(wǎng)絡識別結果的分類個數(shù)。卷積核尺寸在逐漸變小,旨在減少參數(shù)數(shù)量并提高計算效率,使網(wǎng)絡計算更容易,能夠更快速地進行訓練。

      2.4 旋轉增強

      由于原始點云沒有規(guī)定的正方向,在占用網(wǎng)格體素化的過程中所獲取的體素化數(shù)據(jù)不具有統(tǒng)一的標準方向,這將增大卷積神經(jīng)網(wǎng)絡最終的分類難度,為了解決這個問題,本文提出一個簡單但有效的方法來確定三維模型的方向。

      在訓練時,通過每個對象繞Z軸旋轉360°/k來創(chuàng)建每個輸入實例的k個副本以增加數(shù)據(jù)集。在測試時,將輸出層激活并匯總在所有k個副本上。文中k的取值要求是在采取盡量小的旋轉計算開銷前提下獲取盡可能多的旋轉副本,通過實驗過程中對計算時間的評估,當k設置為12或18時,相同的計算時間內(nèi)所獲得的旋轉副本最多,而旋轉超過20個副本后其花費時間越來越多且實驗結果與12個或18個副本的結果差異較小。k的取值可作為經(jīng)驗參數(shù)用于三維模型旋轉副本的生成。這是一種數(shù)據(jù)增強方法,類似于文獻[7]中對輸入的圖像進行的翻轉方式,但不同的是,文獻[7]通過對旋轉圖像進行全采樣來達到數(shù)據(jù)增強的目的,而本文采用對旋轉副本進行隨機采樣的方式來提高樣本數(shù)量,同時可以避免由具體定義旋轉量而產(chǎn)生的過擬合問題。

      此外,由于卷積神經(jīng)網(wǎng)絡的局部連通與權重共享的特點,每層特征圖譜之間共享權值,通過訓練網(wǎng)絡將適用于不同旋轉模型的激活圖譜信息融合后采樣,使其適用于不同的旋轉模型。通過池化層減小特征圖譜的尺寸,從而減少計算量,同時一定程度上防止過擬合的發(fā)生。實驗結果表明,上述方法具有良好的魯棒性,同時不影響網(wǎng)絡的收斂速度。

      2.5 多分辨率輸入

      將體素網(wǎng)格作為卷積神經(jīng)網(wǎng)絡的輸入能夠保留三維模型除表面紋理特征以外的主要信息,同時為大多數(shù)較大物體提供了足夠的空間環(huán)境。對于不同物體,采取相同的分辨率模型勢必會造成信息的丟失。因此,本文參考了文獻[4]視頻分析的“中心凹”架構,構建了一個多分辨率的網(wǎng)絡。對于多分辨率模型,使用2個具有相同架構的網(wǎng)絡,并以2種的分辨率(分別為0.1 m/grid與0.02 m/grid)接收占用網(wǎng)格。2種分辨率的輸入都以相同的位置為中心,但較粗糙的網(wǎng)絡以較低的分辨率覆蓋較大的區(qū)域,而另一個則以較高的分辨率覆蓋較小的區(qū)域。為了融合2個網(wǎng)絡的信息,連接各自的FC(128)層的輸出作為Softmax分類函數(shù)的輸入端,從而將不同分辨率模型特征提取結果進行融合。

      3 實驗模型數(shù)據(jù)選取

      為了驗證本文提出的系統(tǒng),使用了2種不同領域的基準數(shù)據(jù):LiDAR點云集,CAD模型集[16]。

      3.1 LiDAR數(shù)據(jù)—悉尼數(shù)據(jù)集

      第一組實驗是在悉尼城市[14]對象數(shù)據(jù)集2上進行的,其中包含26個類別的631個城市對象標簽(LiDAR Label)。選擇對這個數(shù)據(jù)集進行評估,因為它提供了標記的對象實例和用于計算占用率的視點。當對點云進行體素化時,可使用該對象周圍的邊界框中的所有點,包括背景雜波[17]。按照文獻[14]的建議,將數(shù)據(jù)集均分成14個批數(shù)據(jù)分別進行訓練,每一批數(shù)據(jù)通過2.4節(jié)所述方法進行旋轉增強,整個數(shù)據(jù)集迭代訓練20次。

      3.2 CAD模型數(shù)據(jù)—ModelNet數(shù)據(jù)集

      ModelNet數(shù)據(jù)集是專門用來評估3D形狀分類器的。ModelNet40是ModelNet中具有40個對象類別的151 128個3D模型的版本,是在NYUv2數(shù)據(jù)集中常見模型類型的子集。目前最新版本的ModelNet40模型集提供3D模型以及體素化版本,并且已經(jīng)增加了2個旋轉增強向量,本算法在其基礎上繼續(xù)執(zhí)行2.4節(jié)所述的旋轉增強操作。在進行體素化時,三維模型已經(jīng)被縮放并置入到48×48×48的占用網(wǎng)格中。為了與原始數(shù)據(jù)集分辨率網(wǎng)格比較卷積神經(jīng)網(wǎng)絡計算性能,在實驗時記錄了每次迭代的平均精度。

      本文使用ModelNet40數(shù)據(jù)集評估所提算法的占用網(wǎng)格模型時,將對象邊框裁剪和縮放為48×48×48,使用旋轉增強的18個旋轉向量代替原始的12個。

      4 系統(tǒng)參數(shù)設置與實驗結果

      本算法的實驗環(huán)境為Linux Ubuntu 16.04系統(tǒng),NVIDIA_GeForce_GTX1060 GPU處理器,編程開發(fā)環(huán)境為CUDA-Tookit 8.0,Python 2.7,機器學習框架為Theano 0.7.0[18]。

      4.1 神經(jīng)網(wǎng)絡參數(shù)設置

      對于LiDAR和ModelNet40數(shù)據(jù)集,本文采用具有動量參數(shù)0.9的隨機梯度下降法(stochastic dradient descent,SGD)計算網(wǎng)絡損失函數(shù)(Loss Function)。文中采用標準分類問題損失函數(shù),其方程為

      (5)

      (5)式中:N為卷積計算所提取的特征個數(shù);w為權重;b為偏差。

      針對LiDAR數(shù)據(jù)集,由于其數(shù)據(jù)量大,初始學習率采用文獻[15]中所建議的0.01;而對ModelNet40數(shù)據(jù)集,其數(shù)據(jù)量比LiDAR數(shù)據(jù)集小。因此,初始學習率設置為0.001。網(wǎng)絡訓練中初始權重w0的設置通過高斯分布進行初始化,初始偏差b0設置為0[19]。在隨機梯度下降計算過程中,為防止過擬合現(xiàn)象,對損失函數(shù)添加歐幾里得范數(shù)正則化項[20]為

      (6)

      正則化項的作用是通過規(guī)范權值w的取值范圍來限制卷積神經(jīng)網(wǎng)絡模型的擬合度。由于卷積層所提取的某些特征的權值過大,若不對其進行限制,則會出現(xiàn)權值小的特征無法影響分類結果,導致過擬合結果。

      4.2 數(shù)據(jù)集旋轉增強分析

      在實驗中,根據(jù)LiDAR數(shù)據(jù)集和ModelNet40數(shù)據(jù)集的訓練時間和測試時間研究了4種不同的旋轉增強情況。對于在測試時間沒有限制的情況下,在測試實例上應用隨機選取方向,并記錄4次運行中的平均值。在ModelNet40中,選擇模型姿態(tài)經(jīng)過規(guī)范化的對象并通過旋轉增強作為訓練集,結果表明,網(wǎng)絡進行訓練后的結果優(yōu)于無旋轉增強的規(guī)范化模型數(shù)據(jù)集,其原因在于無旋轉增強的數(shù)據(jù)集訓練得到的網(wǎng)絡產(chǎn)生了一定的過擬合現(xiàn)象,識別精度最終收斂趨近于1,因此,其結果與進行旋轉增強的數(shù)據(jù)集相比較差。對于悉尼數(shù)據(jù)集,由于城市模型無法進行旋轉數(shù)據(jù)增強[21],必須使用數(shù)據(jù)中未修改的方向。結果表明,無旋轉增強的數(shù)據(jù)集需要犧牲更多訓練時間來提高模型分類準確率。因此,使用旋轉增強后的數(shù)據(jù)集進行訓練,在擬合正方向的同時,可以使得整個識別系統(tǒng)應用于多種角度的環(huán)境識別,增加CNN網(wǎng)絡的學習能力。

      4.3 實驗結果

      表1為本文算法和文獻[13]以及文獻[14]算法在悉尼城市數(shù)據(jù)集上模型檢索準確率的結果比較。文獻[13]將無監(jiān)督深度學習與SVM分類器相結合,文獻[14]設計了一個旋轉不變的描述符,并用非線性SVM進行分類。但是基于傳統(tǒng)機器學習的分類算法,需要人工去標注模型特征,而本文使用基于卷積神經(jīng)網(wǎng)絡的算法,通過多層卷積層與全連接層的組合,極大程度上提高了特征的抽象化。再者,本算法結合激活函數(shù),提高了網(wǎng)絡解決非線性問題的能力。相比于文獻[13]和[14]中提出的算法,本文算法的檢索準確率有了明顯提高。

      表1 3種算法在悉尼城市數(shù)據(jù)集上的模型檢索準確率比較Tab.1 Comparison of model retrieval accuracy forthree algorithms on Sydney urban objects dataset

      表2為本文網(wǎng)絡與文獻[7]3D ShapeNet網(wǎng)絡在ModelNet40數(shù)據(jù)集上的模型檢索準確率的結果對比。文獻[7]所采用的網(wǎng)絡體積結構擁有1 240萬個參數(shù),而本文網(wǎng)絡結構通過旋轉增強的模型優(yōu)化方式將參數(shù)量降低至200萬個,大大降低了計算復雜度,同時減少了網(wǎng)絡訓練所需要的時間,而最終模型檢索精度比文獻[7]提高了5%。表3為本文網(wǎng)絡與文獻[7]3D ShapeNet網(wǎng)絡在ModelNet40數(shù)據(jù)集上的網(wǎng)絡訓練時間對比結果。當網(wǎng)絡訓練結果達到收斂時,文獻[7]網(wǎng)絡訓練消耗時為23.52 h;而本文通過使用單卷積層多卷積核對特征圖進行特征提取,提高了模型特征提取效率,訓練的時間僅為16.40 h,大大降低了網(wǎng)絡訓練時長。表4為本文網(wǎng)絡與文獻[7]網(wǎng)絡在ModelNet40測試集進行模型檢索的時間對比結果。文獻[7]檢索消耗時間為28.331 s,而本文網(wǎng)絡的參數(shù)量約為文獻[7]的1/6,檢索過程中的計算復雜度低,檢索耗時為22.537 s,在保證檢索準確率的情況下提高了檢索速度。

      圖2給出了訓練迭代次數(shù)與模型識別準確率的統(tǒng)計結果,隨著模型訓練迭代次數(shù)的增加,模型識別準確率越來越趨近于1.0(即100%)。由卷積層所提取的特征對數(shù)據(jù)集中模型的描述準確度不斷提高,當?shù)螖?shù)超過15 000次時準確率趨于收斂。圖3給出了訓練迭代次數(shù)與訓練誤差統(tǒng)計結果,訓練誤差隨著訓練迭代次數(shù)的增加呈降低趨勢,在訓練執(zhí)行到15 000次時達到收斂。在圖2和圖3中,黑色折線表示原始迭代數(shù)據(jù),灰色折線表示經(jīng)過平滑后的迭代結果。

      表2 在ModelNet40數(shù)據(jù)集上與3D ShapeNet網(wǎng)絡[7]的模型檢索準確率比較Tab.2 Comparison with ShapeNet for model retrievalaccuracy on ModelNet40 dataset

      表3 在ModelNet40訓練集上與3D ShapeNet網(wǎng)絡[7]訓練時間比較Tab.3 Comparison with 3D ShapeNet for network trainingtime on ModelNet40 train dataset h

      表4 在ModelNet40測試集上與3D ShapeNet網(wǎng)絡[7]檢索時間比較Tab.4 Comparison with 3D ShapeNet for network retrievaltime on ModelNet40 test dataset s

      圖2 迭代次數(shù)與模型識別準確率統(tǒng)計結果Fig.2 Statistic results of number of iterations andmodel recognition accuracy

      圖4為網(wǎng)絡輸出正確識別示例。左側為體素化模型的樣例,右側Instance標注出模型的類別標簽及序號。以椅子圖為例,003表示第三大類,chair為名稱;0909為第909號椅子模型;001表示未經(jīng)旋轉的規(guī)范化模型。Predicted label為網(wǎng)絡預測標簽;True Label為模型真實標簽。

      圖3 迭代次數(shù)與訓練誤差統(tǒng)計結果Fig.3 Statistic results of number of iterations and train loss

      圖4 模型檢索結果Fig.4 Results of model retrieval

      5 結 論

      本文介紹了一種基于3D卷積神經(jīng)網(wǎng)絡架構的三維模型檢索和分類算法,用于LiDAR點云集和CAD三維模型數(shù)據(jù)集的對象檢測和識別。算法以占用網(wǎng)格模型為基礎,首先將點云數(shù)據(jù)轉化為體素化占用網(wǎng)格模型,然后通過3D卷積神經(jīng)網(wǎng)絡對已轉化的體素化數(shù)據(jù)進行特征提取,很好地利用了體素化數(shù)據(jù)能完整表達空間信息的優(yōu)勢,最終實現(xiàn)對三維模型進行檢索和分類的目的。算法在悉尼城市數(shù)據(jù)集以及ModelNet40數(shù)據(jù)集上的平均模型識別精度均達到80%以上,且優(yōu)于同類模型識別算法。然而,占用網(wǎng)格算法對模型的體素化局限于對模型體素化分辨大小的設置,若能結合自適應八叉樹等算法,通過網(wǎng)絡來調節(jié)不同模型的體素化分辨率,從而真正實現(xiàn)多分辨率的卷積神經(jīng)網(wǎng)絡數(shù)據(jù)輸入,這將是本研究未來的研究方向。

      猜你喜歡
      體素卷積網(wǎng)格
      基于多級細分的彩色模型表面體素化算法
      用全等三角形破解網(wǎng)格題
      基于3D-Winograd的快速卷積算法設計及FPGA實現(xiàn)
      運用邊界狀態(tài)約束的表面體素加密細分算法
      反射的橢圓隨機偏微分方程的網(wǎng)格逼近
      從濾波器理解卷積
      電子制作(2019年11期)2019-07-04 00:34:38
      基于體素格尺度不變特征變換的快速點云配準方法
      基于傅里葉域卷積表示的目標跟蹤算法
      重疊網(wǎng)格裝配中的一種改進ADT搜索方法
      基于曲面展開的自由曲面網(wǎng)格劃分
      长顺县| 定州市| 陇南市| 东方市| 大同县| 娄底市| 额尔古纳市| 全南县| 绥棱县| 疏勒县| 平定县| 凤城市| 西盟| 新绛县| 扶沟县| 东台市| 临猗县| 浪卡子县| 沙河市| 莫力| 呈贡县| 屏山县| 尉氏县| 广元市| 镇平县| 麻江县| 湛江市| 嘉义县| 开平市| 贞丰县| 隆回县| 夏邑县| 应用必备| 荥经县| 唐海县| 娄烦县| 砀山县| 万年县| 宁陵县| 宁陕县| 荃湾区|