Projective Feature Learning for 3D Shapes with Multi-View Depth Images

Projective Feature Learning for 3D Shapes with Multi-View Depth Images

摘要:3D圖形的特徵學習很具有挑戰性,因爲缺乏自然的參數化的3D曲面模型。我們採用多視角的深度圖像表示,提出了多視角的深度極限學習機(MDV-ELM)來實現3D圖形的快速的、高品質的特徵投影學習。和已經存在的多視角學習方法形成對比,我們的方法確保從相互依賴的不同的視角通過在每一層共享權值來學習特徵映射,他們的這些預測通過用標準化的卷積核可以對輸入的3D圖形進行有效的重建。因爲在幾個應用中的令人鼓舞的結果的表現,促進了更加精確的3D特徵的學習。此外,3D重構的性能能夠清晰的可視化學習到的特徵,這就進一步證明了我們的特徵學習是富有意義的。

1、引言:3D圖形理解在計算機視覺和計算機圖形學領域已經是一個長期存在的研究話題。在這其中一個共同努力就是提取描繪具有幾何結構的特徵。3D圖形特徵,全局的或者局部的,到目前爲止主要還是人工設計的,或者手工製作的,捕獲3D圖形一些特殊的方面,例如幾何結構、拓撲結構、部分結構等。
目前,成功的自動的特徵學習已經引起了機器學習和計算機視覺研究團體的興趣。他們的方法努力在收集到的訓練書上自動的學習特徵,而不是根據人爲事先設計好的特徵。這對深度學習技術的快速發展非常有益,學習到的特徵在分類和識別任務上有着巨大性能的提升。

然而,當我們把深度學習技術用到3D圖形的特徵學習上時,首要的挑戰是3D模型,向典型的2D圖形的表示一樣,沒有一個像2D圖像一樣的標準表示。怎樣利用已經存在的技術,對於不同的3D模型,參數化或者採樣來編碼3D幾何信息,把它編碼成大多數深度學習方法的輸入所要求的統一維度的矩陣,這是很不明確的。

爲了緩和這些問題,最自然的想法就是把3D圖形轉換成圖像表示,目前有幾個工作嘗試過這種方法,證明是有希望的。例如,【15】成功的應用卷積深度自信網絡(CDBN)在體積之上表示3D圖形,或者3D圖像。然而,由於輸入數據增加的維度,CDBN的訓練非常費時,這就把他們實施時的立體像素的像素值限制在了48*48*48。【14】把3D圖形譯成多視角的深度圖像,然後在2D圖像上執行自動編碼器,很好的實現了3D圖像的恢復。然而,這種投影變換的方法可能會丟失3D信息,因爲投影的角度都是相互獨立的。因此,他們的方法必須合併手工製作的圖像特徵來實現3D圖形的分類。

生物學的研究推斷,人類視覺皮層的3D形狀知覺可以通過多視角的深度線索來形成。根據這個觀點,我們也運用多視角深度的表示方法。爲了解決上述的問題,實現強有力的特徵學習,我們開發了一種叫做多視角深度極限學習機(MVD-ELM)的卷積神經網絡,它是從單隱層前饋神經網絡ELM推斷而來的。我們的方法用友如下幾個關鍵特徵:

  • 第一,MVD-ELM包含了多個通道,沒一個通道對應一個投影視角,他們通過在所有的卷基層上共享權值來實現互相連接。
  • 第二,通過引進標準化的卷積核,所有通道的特徵映射能夠在每一個隱含層重建輸入圖像。
  • 第三,由於ELM訓練的很快速,我們的方法比現存的深度學習的方法在訓練上要快兩個數量級。這就允許我們用更高分辨率的深度圖像(128*128)。
  • 最後,當實現一個全卷積版本的MVD-ELM時,我們的方法能夠實現像素級的特徵抽取。這些像素級的特徵支持在一個單獨的3D圖像上進行多類別預測,這對3D圖形分割特別有用。

實驗證明,我們方法學習到的特徵在3D圖形的分類問題上比手工製作的特徵有很大的提升。對於3D分割,我們學習到的特徵與傳統方法從很多種不同的手工製作的特徵中進行特徵選擇,實現了可比較的效果。此外,我們的方法快速而且容易實現,使其在真實的應用中可實用。

2、相關工作:

多視角3D圖形分析:通過將3D圖形看作是2D圖像從不同方向的投影,多視角投影分析已經廣泛的應用在3D圖形分析和理解中。【CK01】利用多視角投影來確認3D物體和它的位置。【CTSO03】提出了LFD,這是一個3D圖形的旋轉不變性的描述子,通過從多個視角投影2D圖像的輪廓。投影的圖形的描述子也被用來基於草圖的3D圖像檢索。最近,【WGW13】用有標籤的圖像數據集來實現投影圖形的分割。我們的3D圖形分割也是投影的。最大的不同就是,我們的方法用了學習到的特徵圖譜來實現像素標籤的預測,而不是直接匹配有標籤的樣本圖像。

3D數據的深度學習:研究者已經成功的建立了多種深度模型,例如CNN,Deep Auto-Encoder Network,DBN,ELM AutoEncoder,來學習數據驅動發的特徵。這些特徵被證明是很有區分能力的。最近,一些工作試圖通過深學習的方法來學習3D圖形的特徵。【WSK15】用3D圖形的體積表示法,應用3D深度自信網絡(DBN),得到圖像分類的好的結果。【ZWB14】利用Auto-Encoder通過多視角深度圖像來學習3D圖形特徵,得到了很好的3D檢索的效果。【SMKLM15】提出了多視角CNN,用來做3D圖形的識別,多視角的特徵用另外的一個CNN來整合。

通過深度學習來實現多標籤學習:深度神經元網絡,例如CNN,已經被證明是在圖像分類上有很好的性能。最近,有一些工作在多標籤圖像分割上【LSD15,CPK14,WXH14】.這些工作把CNN的全連接層轉化爲卷積層,是分裂的網絡能夠達到像素級別的標籤預測。這些像素級別的標籤可以被用來當做有標籤的分割的輸入圖像。我們沒有意識到有任何的工作在多標籤的3D圖像分割上運用深度學習。爲了實現,我們實現了全卷積的MVD-ELM來預測多視角深度圖像的像素級別的標籤。

3、ELM和基於ELM的特徵學習:ELM很早就被當做一個單隱層前饋神經網絡提出來了。跟其他的神經網絡不同的是它沒有反向傳播(BP),ELM中的隱含節點不需要調整,但是可以隨機生成,只要神經元的激活函數是非線性分段連續函數。隱含層和輸出層的權值可以用一個解析解的形式來優化。ELM包含兩個階段,特徵映射和學習。

ELM特徵映射:給定的輸入數據x,ELM的輸出函數爲:


是隱含層的輸出向量,是隱含層(K個節點)和輸出層(M個節點)之間的輸出權重。h被叫做ELM特徵映射,它把輸入數據映射到特徵空間。任何的非線性分段連續函數(Sigmoid,Gaussian)都可以選擇來當做h來生成特徵映射。在ELM中,h的參數是基於一個連續概率分佈來隨機生成的。

ELM學習:第二各階段是有監督的和特定任務的。我們把N個訓練數據提供的目標矩陣表示成H=包含N個第一階段產生的隨機特徵映射。目標函數是最小化訓練誤差的加權和和規範輸出權值:

可以用一種解析解得形式獲得:

I是單位矩陣。

基於ELM的局部感受野(LRF):【HBK15】開發了一種叫做ELM-LRF的特徵學習的框架。ELM-LRF接替了ELM的兩個關鍵特性。第一,ELM可以用不同類型的局部感受野只要它們是根據任何連續概率分佈隨機生成的。第二,ELM的每一個隱層節點可以合併幾個隱層節點(子網絡)。這兩個特徵與CNN中的卷積和池化操作相一致。對於基於局部感受野的特徵學習任務來說,ELM-LRF提供了確定的解決方案。和ELM一樣,ELM-LRF也只有一個隱含層。

多層ELM-LRF:基於特徵學習模型的ELM可以延伸到一個有多個隱含層的深度。和其它深度模型一樣,例如CNN,前一層的特徵映射的輸出可以用來當做下一層的輸入。最後一層的特徵映射用來訓練優化輸出權值。不同層之間的連接可以是特徵映射的稀疏合併。隨着層數的增加,池化層用來提取越來越抽象的特徵。有很多中池化的方法可以用,例如,max pooling,average pooling等。

基於ELM Auto-Encoder的深度ELM的想法第一次在【CZH13】中提出並實現。這個深度網絡在一個全局的樣式提取特徵編碼。相反,我們的多層ELM是建立在ELM-LRF上的,由於有局部的連接(LRF),它可以實現全局和局部特徵的提取。

4、用MVD-ELM學習特徵用作3D圖形分類:我們設計的MVD-ELM被用來訓練3D圖形分類任務。因此,我們模型學習的特徵期望描繪出可能多的多的形狀特徵。

4.1 模型概述:通過2D圖像來學習3D圖形的投影特徵是不平凡的。一個基本的需求就是多視角應該相互連接的,以至於3D信息能夠在整個訓練過程中被保存在深度網絡中。在這一部分,我們首先描述我們模型的輸入表示,然後介紹實現3D信息保存的兩個基礎部分。

輸入表示:給定一個3D圖形的集合,我們通過多視角的方向,一個圖形的球體中心統一的採樣投影,生成每一個圖形的2.5D深度圖像的集合。在我們的實現中,視點是在一個十二面體的一個單元的制高點上採樣的,視點方向朝着十二面體的中心,如圖所示:



因此,對於每一個3D圖形,D=20深度圖像(分辨率爲d*d)用OpenGL深度緩衝區生成。背景像素設爲最大的深度。我們在第n個視角表示深度圖像爲。對於每一個視角n,在執行卷積和池化操作之後,我們使前景掩碼Mn把背景像素排除在外。

爲了能夠有效的學習特徵,所有的訓練圖形都被處理成統一的大小單元。注意,圖形不需要特別的對方向一致性進行調整,因爲多視角學習具有旋轉不變性。爲了促進神經元的可視化,我們記錄了所有視角的投影矩陣。

標準化的卷積核:在訓練卷積神經網絡的時候,所有的訓練圖像需要標準化,通過減去它們的均值、然後除以它們的方差。然而,這沒有用在我們的例子上,因爲這些非線性的操作將會破壞每一個視角的深度幾何結構。此外,多視角深度圖像是用非線性視角投影來得到的。直接在深度圖像上運用卷積將會破壞它們的對齊,使3D重建不可實行,在圖3中右邊部分:



爲了記住整個MVD-ELM網絡中每一個2.5D特徵映射的幾何結構的信息,我們在不同的卷積層選擇使用標準化的卷積核,用這種方法,特徵圖譜能夠總是保存輸入的深度圖像的3D幾何結構信息。圖3的左邊部分,我們展示了通過標準化的卷積核生成的多視角的特徵圖譜重建的3D模型。

多隱層:ELM-LRF的單層結構對於學習3D圖形特徵不太合適,因爲3D圖形通常具有非常複雜的結構,這應該用一個更好的分層特徵,來提取更加抽象的特徵。爲了在多層模型上實現全局的和局部的特徵提取,我們引進了多層ELM-LRF。

在多層的ELM-LRF中,我們對特徵圖譜採用隨機的卷積,這是一個非線性分段連續的。此外,根據【HBKV15】,擁有局部隨機連接的隱藏節點的ELM-LRF能夠被看做是一個特殊的ELM,滿足通用逼近性和分類能力。堆疊這些層的非線性隱藏節點也滿足需求,使我們的多層ELM-LRF擁有學習能力。

多視角通道:爲了適應多視角學習,我們在網絡中設計了多視角通道,每一個通道有一個多層的ELM-LRF。爲了保證多視角學習到的特徵圖譜能夠相互的連接,我們在不同的視角採用共享權值(卷積核)的方法。在不同的視角通道採用權值共享有兩個好處。第一,不同視角的深度圖像能夠一直的映射到共享的特徵空間,使在任何層上反投影特徵圖譜都能對輸入圖形形成有效的3D重建。第二,使用共享權值,多視角通道的輸出權重能夠用一個統一的封閉解來優化,這能夠極大的減少訓練時間。

4.2 MVD-ELM的構想:我們在這一部分來介紹我們的MVD-ELM構想。圖4顯示了MVD-ELM的結構。輸入數據N=M*D深度圖像(M個圖形和每個圖形有D個視角)用一個矩陣(d*d*N)表示,一個有N個深度圖像,每個圖像的分辨率爲d*d的數組。我們現在詳細說明MVD-ELM的關鍵部件,包括特徵映射、池化、學習和測試。



多視角特徵映射:假設MVD-ELM包含L層卷積層和池化層。拿第l層來舉例,它把第l-1層的特徵圖譜(在第一層輸入深度圖像)當做輸入,生成個特徵圖譜(分辨率爲)在輸入圖像和隨機生成的卷積核之間進行卷積。因此,我們在第l層得到個不同的特徵圖譜。隨機生成的卷積核如同【HZS06】一樣生成,爲了保證他們的權重加起來爲1,每一個卷積核都是標準化的,並且在所有的視角通道的相同曾共享。對於給定的l層的標準的隨機的卷積核表示爲:

包含個標準化的卷積核、大小爲。特別的,第K個標準化的、隨機的卷積核按如下的方式生成:

rand(0,1)是隨機生成一個0到1的隨機數。

卷積操作在前一層的特徵圖譜上執行(圖4左邊)。如果當前層是輸入,卷積操作直接在輸入的深度圖像上操作。l層的卷積核在所有視角上共享。特別的,對於給定的視角n的第l層的第k個特徵圖譜按如下的方式計算:

*是卷積操作,是元素的乘法,用前景的掩碼來去掉背景。對於輸入層,。我們接下來利用池化操作來對特徵圖譜進行下采樣,生成下一層的輸入。

多視角池化:我們選擇average pooling,因爲相對於其他方法(例如max pooling)來說,它對深度圖像的幾何結構產生相對較小的變形。對於第l層,我們使用尺寸大小爲,這會產生池化映射的尺寸大小爲。對於視角n的第l層,在第k個特徵圖譜上通過使用average pooling操作得到的第k個池化映射爲:
作爲下一層的輸入特徵圖譜:。注意,前景掩碼也要進行池化,用和特徵圖譜池化相同的方法進行池化,產生下一層的掩碼。

輸出權重學習:最後一層的輸出特徵圖譜被用在MVD-ELM學習階段來訓練輸出權值。全連接的最後一層有一個輸出層,如圖4左邊。我們簡單的連接所有M個訓練圖形的特徵圖譜成爲M個行向量,得到一個全連接層的矩陣分別是每一個視角最後一層的特徵圖譜的數量、特徵圖譜的大小、池化的尺寸。輸出權值可以這樣計算:

w是方程2中描述的權值。

測試:在測試過程中,一個測試的3D圖形的多視角深度圖像,通過整個網絡,以至於能夠得到測試數據的特徵映射H。輸出的類別標籤是根據計算的出的最大概率的類別標籤。

5、神經元可視化:理解MVD-ELM的性能,需要詮釋多層上的神經元的激活。因爲在我們的網絡中卷積核是隨機生成的,爲了更好的可視化我們的MVD-ELM模型學習到的特徵,我們使用優化的輸出權值來加到輸出的特徵圖譜上,得到的激活映射。這些激活值隨後會從輸出層映射到3D輸入層,通過卷積和池化的相反的操作,與【ZF13】類似。圖4右邊根據MVD-ELM訓練網絡顯示了可視化的網絡。

形式上,給定一個3D網絡,讓我們把表示成輸出的特徵圖譜的矩陣和,學習到的特徵能夠通過下面的操作可視化:

invConv表示的是反捲積操作,unpooling是反average pooling操作。給定一個2D的輸入圖像x和一個卷積核w,卷積操作是。反捲積操作被定義爲,flip意思是在輸入的卷積核上沿着它的第二維度左右翻過來。unpooling通過在pool區域放置平均值來支撐每個像素。在圖5中,我們顯示了在輸入上的顏色編碼的激活映射。

爲了可視化學習到的3D模型的有判別性的小塊,我們剪裁3D模型基於激活圖譜的輸入。在所有的加權的輸出特徵圖譜之間,我們選擇前n個神經元激活值最大的(特徵圖譜的像素值)。爲了可視化選擇的特徵圖譜的神經元的激活值,我們只留下最大激活值附近的像素值,其他的地方的像素值設爲0,得到了一個激活圖譜的掩碼。這些掩蓋的激活值圖譜然後通過可視化網絡來重建底層網絡的激活值(通過反捲積操作和反池化操作),知道到達輸入層。最後,我們通過基於相同的投影矩陣反投影激活圖譜的區域到3D空間。

正如圖6所示,學習到的MVD-ELM特徵能夠在3D空間中可視化爲點雲,也能夠得到部分與輸入的3D模型中相同的最大激活值的區域。因爲我們的MVD-ELM網絡是對圖形分類任務來訓練的有區別的網絡,這些特徵本質上隱含着輸入模型區域有區分類別的特徵。



7、實驗和評價

通過提出的MVD-ELM來學習3D圖形特徵,能夠用在很廣泛的應用上。在這一部分,我們來評價一下我們的MVD-ELM模型的特徵學習的性能。我們已經用MATLAB2014b實現了MVD-ELM。

7.1 3D圖形分類

參數設定:在我們的實現中,我們採用4層的MVD-ELM網絡(L=4)。視角的數量設爲D=20,規則化權重爲w=0.01。表1總結了我們所用的參數。



數據集:爲了驗證通過MVD-ELM學習到的特徵的表示能力,我們在一個大規模的有相當大得類內變化的3D圖形數據集上來跑我們的算法,Princeton ModeNet,目前可以得到的在線圖形數據集,包含662類127915個CAD模型。我們在它的兩個子數據集上運行我們的算法:(ModeNet10和ModeNet40)。在ModeNet10上我們手動的調整一樣的方向,但是在ModeNet40上我們不做這些處理。如下圖:



和可選擇的方法比較:對於ModeNet10,我們的MVD-ELM花了674秒來訓練,得到88.99%的分類正確率。我們的方法和CDBN相比較,他們的方法花費了大約兩天的時間來訓練網絡,得到了83.54%的正確率。我們也和兩種手工製作的描述子做了比較,Light Field Descriptor(LFD)和Spherical Harmonics(SPH)。對於LFD和SPH,我們用線性的SVM來訓練分類器,在表3上顯示出,我們的MVD-ELM實現了比兩種描述子都好的精度。



爲了更好的證明我們學習到的特徵的性能,我們在低分辨率(48*48)的深度圖像上來訓練我們的MVD-ELM,和CDBN做比較。同時,我們在相同的數據集上訓練CNN。此外,我們也訓練SVM分類器,用我們MVD-ELM學習到的特徵作爲數據驅動。圖4顯示了不同方法的分類的精度和訓練的時間。結果證明,我們的特徵表現出更好的性能,甚至用分辨率相對較低的2D投影。此外,我們的方法比其他方法有更好的性能,不管是在深度還是在淺層模型中。



和單層的ELM-LRF相比較:堆疊的多層的ELM-LRF能夠使我們的模型學習到分層的特徵,這可能比單層模型更加有表現力。爲了證明這個問題,我們比較了多層的、以及單層的ELM-LRF在MNIST數據集上的性能,它包括60K訓練數據,10K測試數據。兩種方法我們都用40個卷積核。對於多層的,我們選擇兩層的版本。如表5所示,兩層的ELM-LRF的到了更好的分裂性能。



我們也比較了單層、兩層、四層幾個不同版本的MVD-ELM在ModeNet10上的性能。對於所有的版本,標準化的卷積和都爲8,輸出層的特徵圖譜的大小設爲8*8。表6所示,多層的MVD-ELM得到了更好的分類性能。因爲多層的特徵圖譜。多層的ELM-LRF需要更多的時間來訓練。



投影視角的數量:對於多視角的學習方法,輸出的精度應該是隨着視角數量大的增加而提升。爲了證明視角數量的作用,我們用不同數量的視角做實驗。圖8所示,隨着視角數量的增加,分類的精度也增加。



MVD-ELM的旋轉不變性:爲了測試MVD-ELM的旋轉不變性,我們在ModeNet40數據集上對方向不做限制。我們旋轉每個模型30度來生成更多的模型實例。訓練數據集合測試集安排好,避免重複。如表3底部所示。我們的方法花費了306.4秒來訓練,得到了81.39%的正確率。然而,CDBN得到了77.32%的精度,LFD75.47%,SPH63.59%。

8、結論
我們採用多視角深度圖像表示,提出了基於ELM-LRF的多視角深度神經網絡,實現了3D圖形的快速的、高質量的投影特徵學習。和現存的3D圖形特徵學習的方法相比,我們的方法保證了從相互獨立的不同的視角通過共享權值來學習特徵。此外,每一層的反投影特徵映射能夠組成一個有效的3D重建。通過可視化引導我們學習到更加精確的3D特徵。此外,我們的訓練過程更加快速,使它能夠在現實中得到更多的應用。

缺陷:我們的模型有幾個缺陷。第一,算法中有很多參數需要調整。這是所有深度學習都面臨的問題。然而,MVD-ELM的快速訓練能夠使參數調整的更快。第二,因爲3D圖形的內在幾何結構可能不能通過基於視角的投影來獲得它的全部,我們的特徵學習可能不能捕獲3D圖形的全部的特徵。最後,我們的方法需要很多視角的深度圖像作爲輸入,在現實場景中很難捕獲到。然而,隨着3D場景技術的快速發展,甚至的實時獲取裝置,例如微軟的Kinect,3D數據會更加容易的獲得。

將來的工作:首先,基於我們的深度特徵學習的模型的應用非常值得去發展。一些可能的應用包括室內的3D物體識別、3D場景理解和3D物體分析等。在機器人學中,發展在線的特徵學習也會很有趣,訓練數據從機器人的動作中得到。第二,發現新的方法來學習更加全面的D特徵也會很有趣,例如,根據相機放置的不同距離生成分層的深度圖像。最後,我們隊利用我們的深度投影學習特徵模型來連接2D和3D圖像很感興趣,因此更多的朝着2D-3D數據融合的研究機會。










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