邱云飛,牛佳璐,2*
1.遼寧工程技術大學軟件學院,葫蘆島 125100;2.中國科學院海西研究院泉州裝備制造研究所,泉州 362216
3D 點云在自動駕駛(Li 等,2021)、導航定位(Liu 和Siegwant,2014)、AR(augmented reality)看房(Liu等,2021)和模型重建(Wu等,2017)等諸多領域得到廣泛應用。近年來,針對點云的研究有很多,如對其進行分類(Uy 等,2019;戴莫凡 等,2022)、配準(Yang 等,2021)、分割(邱云飛和朱夢影,2021)、補全和重建(Huang 等,2020;Mandikal 和Radhakrishnan,2019)等。其中,點云分割需要了解全局幾何結構和每個點的細粒度細節(jié),根據(jù)分割粒度,分為語義分割(場景級別)、實例分割(對象級別)和部件分割(部件級別)。語義分割較為常用,對于一個大型場景可以分割出其內(nèi)部細節(jié)特征,能夠很好地反映事物面貌,但是由于點云的不規(guī)則性,處理點云數(shù)據(jù)并將其應用是很有挑戰(zhàn)性的,對此,點云的語義分割有兩種研究范式,即基于投影的方法和基于點的方法。
基于投影的網(wǎng)絡很多,最早的研究是用多視圖(Guerry 等,2017)的方法表示點云,先從多個虛擬攝像機試圖將3D 點云投影到2D 平面上,即在多個相機位置生成點云的多個RGB 和深度圖像,然后使用2D 分割網(wǎng)絡對這些數(shù)據(jù)進行逐像素標記,每個點的最終語義標簽是通過將預測的分數(shù)使用殘差網(wǎng)絡融合到不同的視圖上而獲得的。為了實現(xiàn)點云的快速準確分割,Wu等人(2018)又提出了用球形表示的點云數(shù)據(jù)的方法,是一種基于SqueezeNet 和條件隨機場(conditional random field,CRF)的端到端的網(wǎng)絡,雖然與多視圖投影相比,球形投影保留了更多信息,但是也不可避免地帶來一些問題,例如離散化誤差和遮擋。為了解決這樣的問題,Riegler 等人(2017)提出體素化的處理方式,先將點云劃分為一組占用體素,然后傳輸?shù)?D 卷積網(wǎng)絡中以進行體素分割,為體素內(nèi)的所有點云分配與體素相同的語義標簽,另外Tchapmi等人(2017)提出的SEGCloud實現(xiàn)細粒度與全局一致的語義分割,這種方法引入了確定性三線性插值法,將3D-全卷積神經(jīng)網(wǎng)絡(3D-full convolutional neural network,3D-FCNN)生成的粗體素預測映射回點云,然后使用全連接來增強這些推斷出的點的標簽的空間一致性。但是體積表示是稀疏的,因為非零值的數(shù)量只占很小的百分比,而且由于體素是空間的離散表示,因此該方法需要高分辨率的網(wǎng)格,對存儲器的容量要求較高,且在稀疏的數(shù)據(jù)上應用密集的卷積神經(jīng)網(wǎng)絡會使實驗效率低下??傮w而言,體積表示保留了3D 點云的鄰域結構,而且它還能直接應用3D 卷積,使得網(wǎng)絡性能提高,但是通常高分辨率會導致較高的內(nèi)存占用率和運算成本,低分辨率又會導致細節(jié)丟失,在實際應用中選擇合適的網(wǎng)格分辨率并非易事。
基于點的網(wǎng)絡是直接在不規(guī)則的點云上工作的,因為點云的無序性和無組織性,直接應用卷積神經(jīng)網(wǎng)絡(convolutional neural network,CNN)是不行的,因為標準的深度神經(jīng)網(wǎng)絡模型需要具有規(guī)則結構的輸入數(shù)據(jù),為此Qi 等人(2017a)開創(chuàng)性地提出了PointNet,該網(wǎng)絡使用共享MLP(multilayer perceptron)學習每點的特征并且使用最大池化收集全局特征,但忽視了點云的局部信息,沒考慮鄰域特征,因此,PointNet++對它進行了改進(Qi 等,2017b),增加了對局部鄰域信息的采樣特征提取,將PointNet分層應用到點云的多個子集上,不僅能夠提取到局部信息,還綜合了PointNet 提取全局信息的優(yōu)點,然而它忽略了點之間的空間立體幾何關系。為了解決這個問題,Phan等人(2018)和Wang 等人(2019b)在動態(tài)圖神經(jīng)網(wǎng)絡(dynamic graph CNN,DGCNN)中提出了邊緣卷積(edge convolution,EdgeConv),通過建立點與點之間的拓撲關系,增強數(shù)據(jù)表征能力,設計了邊緣卷積,既可以保持點云的排列不變性,又能捕獲局部幾何特征。
以上這些方法的訓練很大程度上依賴于大量有標簽的數(shù)據(jù),收集時會有很高的時間、人力成本,且都是閉集假設,在通過神經(jīng)網(wǎng)絡對模型訓練后,泛化性差,很難用這個模型預測一些新的未知語義類別。與之形成鮮明對比的是,人類卻可以在只看到一個類別的幾個例子的情況下就能從很多類別中分辨出這個之前從不認識的新類別。這種對比激發(fā)了人們對小樣本學習(Puri等,2020)問題的研究,其目的是在僅有一個或幾個標記樣本的情況下,就能夠在測試集中準確地分割出新的未知語義類的目標。
單樣本學習的概念很早就由Li 等人(2003)提出:當新的類別只有一個或幾個帶標簽的樣本時,已經(jīng)學習到的舊類別可以幫助預測新類別。零樣本學習(Socher等,2013;Cheraghian 等,2020)是指在沒有訓練數(shù)據(jù)的情況下,利用類別的屬性等相關信息訓練模型,然后識別出新類別。在小樣本學習中由于樣本量不夠?qū)е陆?jīng)驗風險最小化帶來的最優(yōu)解和真實解之間的誤差會變大,因此必須使用先驗知識來解決此問題。
根據(jù)利用先驗知識的方法的不同,一般將小樣本學習分為基于模型微調(diào)、基于數(shù)據(jù)增強和基于遷移學習這3 種?;谀P臀⒄{(diào)的方法是在含有大量數(shù)據(jù)的源數(shù)據(jù)集上訓練一個分類模型,然后在含有少量數(shù)據(jù)的目標數(shù)據(jù)集上對模型進行微調(diào),但容易導致模型過擬合,因為少量數(shù)據(jù)不能很好地反映大量數(shù)據(jù)的真實分布情況。因此,基于數(shù)據(jù)增強和基于遷移學習的方法相繼提出(汪榮貴 等,2019;Wang等,2020)?;跀?shù)據(jù)增強的方法是利用輔助數(shù)據(jù)集或輔助信息來擴充目標數(shù)據(jù)集或增強目標數(shù)據(jù)集中的樣本的特征,從而使模型能更好地學習特征;基于遷移學習的方法是目前比較前沿的方法,將已經(jīng)學會的知識遷移到一個新的領域中,其中元學習(Hospedales等,2022)的應用最為廣泛。
針對點云分割需要大量監(jiān)督信息的局限性,本文提出采用融合原型對齊和小樣本元學習的策略對點云進行語義分割,將訓練好的初始化模型經(jīng)過少量樣本微調(diào)后輸出分割結果,并將優(yōu)化好的最終模型應用在閩南古建筑數(shù)據(jù)集上,由于標記樣本十分稀少,可在驗證泛化性能的同時應用于閩南古建筑的統(tǒng)計、修繕等研究工作。實驗證得本文方法在完成小樣本點云分割任務時,模型的泛化能力有所提升,并在閩南古建筑數(shù)據(jù)集上有一定的分割效果。
將元學習與原型對齊(Wang 等,2019a)的融合算法運用于小樣本點云分割上,原型對齊算法可以校對模型學習完的原型,從而更好地學習支持集的信息,以此來提高小樣本學習的泛化能力。
如圖1 所示,對數(shù)據(jù)集進行預處理后投入元訓練,利用元訓練過程中的特征提取器提取原型,并運用原型對齊算法優(yōu)化模型,直至達到能分割出理想效果的最優(yōu)模型。
圖1 總體網(wǎng)絡框架圖Fig.1 Overall network framework diagram
圖2 為本文提出的融合原型對齊的元訓練過程的算法流程圖。元訓練時,重新制作數(shù)據(jù)集為N-wayK-shot的模式,然后用特征提取器分別提取支持集和查詢集的特征,得到每個類的原型,根據(jù)查詢集特征與支持集求得的原型之間的歐氏距離來分割查詢集點云,然后逆向回溯訓練過程,利用查詢集特征與分割掩碼結合組成的“新支持集”通過特征提取器得到的新原型來分割原支持集的點云,通過這樣的校對方式能夠更好地學習支持集的特征,實驗結合正、逆訓練過程的交叉熵損失進行梯度下降優(yōu)化參數(shù)直至最優(yōu),將訓練好的初始模型微調(diào)后,應用于只有少量樣本的新類的預測中。
圖2 元訓練過程的算法流程圖Fig.2 Algorithm flow chart of meta-training process
模型在訓練過程中采用元學習的算法,測試集與訓練集類別互不相交,訓練與測試都區(qū)分支持集和查詢集,均是由支持集訓練—查詢集測試的訓練模式,并且在訓練過程中融合原型對齊的算法來校對支持集的原型,從而取得更好的分割效果。
小樣本學習(few shot learning,F(xiàn)SL)的目標是開發(fā)一個分類器,它能夠?qū)⒑苌俚臉颖就茝V到新的類(例如最常見的一次使用1 個或5 個樣本),特別是基于度量學習的方法,在推理過程中可以直接推斷出不可見類的標簽,具備泛化能力,目前較前沿的如Vinyals 等人(2016)提出的匹配網(wǎng)絡(matching network)和Snell 等人(2017)提出的原型網(wǎng)絡(prototypical network),兩種方法都是利用深度神經(jīng)網(wǎng)絡將支持集和查詢集映射到嵌入空間中,然后利用非參數(shù)方法對查詢集進行類預測,區(qū)別在于表示類的方式不同。本文利用原型思想的同時還使用原型對齊的方法來增強對支持集的學習能力,這樣能夠更好地利用支持集的信息,提高模型的泛化能力。
元學習(meta-learning)的方法不僅在目標任務上訓練模型,并且從許多不同的任務中學習元知識,當一個新的任務到來時,利用元知識調(diào)整模型參數(shù),使模型能夠快速收斂。用一部分類作為訓練集Dtrain,不相交的另一部分類作為測試集Dtest,以此來檢驗元學習者的泛化能力,Dtrain和Dtest都包含支持集S和查詢集Q。
支持集訓練—查詢集驗證,在元訓練過程中校對分割效果,元學習主要是學習這種“學習分割”的能力,主要用于分割新類,即使是沒有學習過的樣本,也依然可以在只學習很少的樣本后做出對應的分割。
元學習主張跨任務學習,然后適應新任務。其目的是在任務級別上學習而不是在某類樣本上學習,為了學習到任務未知的系統(tǒng)能力而不是學出特定于任務的模型。元學習是一種高級的跨任務學習算法,而不是特定的小樣本學習(FSL)模型。任務型訓練模式如圖3所示。
圖3 任務型訓練模式圖Fig.3 Task-based training pattern diagram
元學習分為元訓練(meta-training)和元測試(meta-testing),這兩個階段都有支持集和查詢集,但是彼此的標簽空間是不相交的,元學習示意圖如圖4所示。
圖4 元學習示意圖Fig.4 Meta-learning diagram
元學習過程中的跨任務學習通常會被分成N-wayK-shot 問題,每個任務由N-wayK-shot 的數(shù)據(jù)模式組成,這里的N指的是元測試的過程中要測試的類別數(shù),K指的是元測試的過程中每一類中有標簽的樣本數(shù)。常見的是1-way 1-shot和1-way 5-shot。N-wayK-shot示意圖如圖5所示。
圖5 N-way K-shot示意圖Fig.5 N-way K-shot diagram
訓練集Dtrain與測試集Dtest都包含支持集S與查詢集Q,且訓練集與測試集的類別是不相交的,表示為和Ntest分別表示訓練和測試的集數(shù),每個(Si,Qi)記為1 個episode,相當于1 個mini-batch,1 個episode 包含1 個N-wayK-shot的分割任務,對于每個測試集Dtest,在給定支持集Si的情況下,在查詢集Qi上評估分割模型。
原型學習就是對支持集與查詢集通過網(wǎng)絡后得到的特征,進行平均池化,得到每一類的原型,由一個原型來代表一個類。
計算它們的特征嵌入的中心,作為每一類樣本的原型(prototype),接著基于這些原型,使得新的樣本X通過計算自身的嵌入特征與這些原型的距離來實現(xiàn)最終的分割。類原型示意圖如圖6所示。
圖6 類原型示意圖Fig.6 Schematic diagram of class prototype
分割可以看做是在每個空間位置上的分類,計算每個空間位置上的查詢特征向量與每個原型之間的距離,然后再在此距離上應用一個softmax 函數(shù)來產(chǎn)生一個分割的概率映射(包括背景),具體來說,給定一個距離函數(shù)d,求得原型P={Pc|c∈Ci}∪{Pbg}和查詢集特征Fq之間的距離,對于每一個pj∈P,j表示某個類別,概率映射計算為
預測的分割掩碼具體計算為
得出分割的概率映射后,計算分割損失Lseg,具體為
式中,Mq表示查詢集的每個空間位置的點的地面真實分割掩碼表示每個空間位置的點所對應的概率映射,N為所有空間位置的點的總數(shù),通過對上述Lseg進行優(yōu)化,為每個類得出最合適的原型,從而求得好的分割結果。
直觀地說,如果模型可以使用從支持集中提取的原型預測出查詢集的良好分割掩碼,那么基于預測出的掩碼從查詢集中學習到的原型也應該能夠很好地分割支持集的數(shù)據(jù)。因此,原型對齊算法(prototype alignment algorithm,PAR)鼓勵訓練所得到的分割模型逆向進行小樣本分割。原型對齊算法流程如圖7 所示。其中,GT 為ground truth,Mask 為分割后的查詢集特征掩碼,L為損失函數(shù),首先將支持集和查詢集映射到嵌入特征中,并學習每個類的原型,然后通過將查詢集的特征匹配到嵌入空間中最近的原型來對查詢集進行分割。
原型對齊算法是對上述訓練過程進行逆訓練,即將查詢集特征和所預測的分割掩碼作為新的“支持集”,學習其原型并分割原支持集數(shù)據(jù),使得模型能夠更好地學習支持集的信息,注意,這里所有的支持集和查詢集數(shù)據(jù)都來自訓練集Dtrain。算法能夠從支持集中提取魯棒的原型,并使用非參數(shù)度量距離的方法來執(zhí)行分割。
式中,F(xiàn)s表示支持集特征。
原型對齊損失LPAR的計算式為
式中,Ms表示支持集的每個空間位置的點的地面真實分割掩碼表示每個空間位置的點所對應的概率映射,模型總損失是L=βLseg+λLPAR,λ=0簡化為沒有PAR 的模型,在本實驗中,多次調(diào)試后,最終β=0.7,λ=0.3。
實驗環(huán)境為Windows 10 操作系統(tǒng),PyCharm 軟件開發(fā)平臺,Python 3.9 編程語言,TensorFlow 編程框架,GPU 為NVIDIA GeForce RTX 6000,內(nèi)存為24 GB。
實驗采用基準數(shù)據(jù)集S3DIS(Stanford largescale 3D indoor spaces dataset)(Armeni 等,2017)和ScanNe(tDai 等,2017),先在S3DIS 數(shù)據(jù)集上訓練初始模型,然后在ScanNet 數(shù)據(jù)集上檢驗模型泛化能力,最終應用到自己采集并標注的閩南古建筑的點云數(shù)據(jù)集上進行實踐應用。評價指標為平均交并比(mean intersection over union,mIoU),這是目前語義分割應用較多的標準度量。
4.2.1 S3DIS和ScanNet數(shù)據(jù)集
S3DIS 數(shù)據(jù)集共有6 個大的Area 場景,271 個小場景,包含會議室、走廊和辦公室等,共13 個類別,每個小場景的點云由幾萬個點組成,每個點包含9個維度(x,y,z,r,g,b,xˉ,yˉ,zˉ),數(shù)據(jù)太大不能直接送入網(wǎng)絡訓練和測試,因此在采樣前先將S3DIS 數(shù)據(jù)集按照房間信息裁剪成單個完整的房間以供后續(xù)處理,然后將房間沿著x軸和y軸進行1 m × 1 m 的分塊。ScanNet 數(shù)據(jù)集共有1 513 個采集場景數(shù)據(jù),其中1 201 個場景用于訓練,312 個場景用于測試,共21 個類別,每個場景中點數(shù)不等,且場景的點云都較為稀疏,而點云的稀疏與密集會影響類別特征的提取,因此切塊尺寸調(diào)整為4 m × 4 m,避免裁剪過程中缺失類別的整體形狀,比如桌子只裁出一個角,所以采用重疊裁剪再進行隨機2 048采樣。
4.2.2 閩南古建筑數(shù)據(jù)集
閩南古建筑數(shù)據(jù)集由泉州裝備制造研究所采集提供,福建有很多古舊建筑,將3D 激光相機所掃描的點云數(shù)據(jù)加以利用研究,有助于古建筑復原或改造等工作。實驗中用到兩個大場景,鴻蘭堂和廟上村,如圖8所示,鴻蘭堂共18 555 099個點,廟上村共16 303 272 個點,由于室外場景太大且點云密集,因此在訓練與測試時切分為幾個小場景來實驗。
圖8 閩南古建筑數(shù)據(jù)集場景圖Fig.8 Scene map of the Minnan ancient buildings dataset
DGCNN(Phan 等,2018;Wang 等,2019b)提出了邊緣卷積(EdgeConv),得到描述點與其鄰域點之間的邊緣特征,顯式地構造了一個局部圖并學習邊的嵌入,DGCNN 的每一層采樣根據(jù)距離度量的方式來動態(tài)地選擇節(jié)點的近鄰,通過動態(tài)更新采樣層之間的圖結構來更好地學習點集的語義信息,對于點云信息能夠有較充分的學習。設點云中有n個點,每個點由x表示,x=x1,…,xn,使用K最近鄰算法(K-nearest neighbor,KNN)將x構造為圖G=(V,E),其中V=(1,…,n),E∈V×V,設 點xi與xj之間的邊緣特征為eij,eij=h(xi,xj),其中,h為特征提取函數(shù)。
計算點xi與其鄰接點xj的邊緣特征eij,eij一般來說是多維的,將與xi相鄰的k個點的邊緣信息綜合后更新xi的特征(k=20),其余點均按照此方法更新自己的特征值,用xi與其鄰域點xj的邊緣特征eij對樣本自身進行更新,然后送入卷積層提取特征的過程稱為EdgeConv,如圖9所示。
圖9 邊緣卷積示意圖Fig.9 Schematic diagram of edge convolution
DGCNN 采 用h(xi,xj)=h(xi,xj-xi)作為邊緣特征提取函數(shù),既考慮全局特征也考慮局部特征。為了避免小樣本訓練時易導致的過擬合,同時保證能充分學習到點云信息,故采用2 個EdgeConv 層與6 個MLP 交叉構造DGCNN 網(wǎng)絡,作為本實驗的特征提取器,骨干網(wǎng)絡結構如圖10 所示,其中ED(Edistance)代表點之間的距離。
圖10 骨干網(wǎng)絡結構Fig.10 Backbone network structure
4.4.1 1-way 5-shot和2-way 2-shot點云分割
分割1-way,提出的方法與原型網(wǎng)絡在S3DIS 數(shù)據(jù)集(Armeni 等,2017)上比較,切塊大小為1 m ×1 m,結果如表1所示。由表1可知,綜合所有類別的分割結果,本文方法的分割mIoU 相比原型網(wǎng)絡平均提高了0.06,分割floor 時mIoU 最高,達到了0.95;分割table 時mIoU 達到0.92;分割wall 時mIoU 達到0.73,最高提高了0.12,最低提高了0.04。mIoU 相比匹配網(wǎng)絡平均提高了0.33,匹配網(wǎng)絡因為是將類別的所有樣本作為該類特征,運行過程中產(chǎn)生的數(shù)據(jù)較大,且每個點云的特征值都需要與分割出的特征值進行近鄰加權,所以運算耗時久,且不能很好地反映類別的根本性特征,分割準確性與泛化性較差,因此分割2-way時不考慮匹配網(wǎng)絡。
表1 1-way 5-shot和2-way 2-shot分割結果Table 1 Segmentation results of 1-way 5-shot and 2-way 2-shot
圖11 為1-way 5-shot 分割結果對比圖。由圖11可知,針對單一類別的小樣本點云分割,模型學習不同類別的難易程度不同,因此分割結果不同,提出的方法在每塊點云的學習上,注重顆粒度的同時關注了整體結構,運用原型對齊后使得學習效果提高,很好地辨識了類別特征,應用于點云場景的泛化能力與分割準確性有所提高。
分割2-way,因為匹配網(wǎng)絡效果太差,考慮與原型網(wǎng)絡對比,圖12 從3 個側重點(整體(ceiling 和floor)、地板(floor)、天花板(ceiling))分別展示了模型分割效果,且由表1 可知,方法比原型網(wǎng)絡對于其他類別的抗干擾能力強,mIoU 相比原型網(wǎng)絡提高了0.03。本文方法在學習并分割多個類別時,互相校對各自類別的整體結構,使得分割準確度更高,尤其在平面結構上更為凸顯。
圖12 2-way 2-shot分割結果對比圖Fig.12 Segmentation result comparison diagram of 2-way 2-shot
4.4.2 特征提取器對比評估
在S3DIS 數(shù)據(jù)集(Armeni 等,2017)上對比兩個特征提取器的學習能力,結果如表2 和圖13 所示??梢钥闯?,DGCNN(Phan 等,2018;Wang 等,2019b)作為特征提取器的分割效果較好,分割ceiling 和floor的mIoU相比于PointNet++(Qi等,2017b)分別提高了0.05和0.30。PointNet++雖然有考慮局部鄰域信息和整體特征,但同樣1 m × 1 m 切塊后隨機采樣2 048 個點時樣本特征提取不足,分割效果極差,改為采樣4 096 后才勉強有分割效果。但是DGCNN中提出的EdgeConv,能夠得到描述點與其鄰域點之間的邊緣特征,且每一層采樣根據(jù)距離度量的方式動態(tài)地選擇節(jié)點的近鄰,可以更好地學習點集的語義信息。本文的特征提取器在DGCNN 的基礎上進行優(yōu)化調(diào)整后效果顯著。
4.4.3 ScanNet數(shù)據(jù)集的1-way 5-shot點云分割
ScanNet數(shù)據(jù)集(Dai等,2017)中,場景點云較為稀疏,點云的疏密程度會影響類別特征的提取,因此切塊大小調(diào)整為4 m × 4 m,避免裁剪過程中缺失類別的整體特征,且采用重疊裁剪再進行隨機 2 048采樣,1-way 5-shot 分割結果如表3 和圖14 所示,分割mIoU平均在0.63左右。
圖14 ScanNet數(shù)據(jù)集分割結果Fig.14 The segmentation result of ScanNet dataset
實驗結果表明,模型確實具備很好的泛化能力,在點云數(shù)量特別稀疏的情況下,依然可以在僅學習少量樣本后的基礎上分割出新類,分割不同類別時因其學習的難易程度不同,使得分割效果不同,比如桌子和椅子較難區(qū)分,而沙發(fā)與地面較易區(qū)分,這也是小樣本分割一直需要努力攻克的難點:在面對難區(qū)分的類別時,僅用少量樣本學習特征如何取得準確度更高的分割效果。本文方法在此挑戰(zhàn)下做的努力便是采用原型對齊算法,在支持集的特征提取過程中進行回溯校對以獲取更好的支持集信息來分割查詢集點云。
4.4.4 閩南古建筑數(shù)據(jù)集的1-way 5-shot點云分割將模型應用在室外的閩南古建筑數(shù)據(jù)集上,驗證模型的泛化能力,點云場景很大且點集的信息密集,因此選用5 m × 5 m 的塊來切分大場景,切分為如圖15 的幾個場景做測試,并且每一塊切分后的小場景再隨機采樣2 048 個點作為微調(diào)樣本,1-way 5-shot分割結果如表4所示,分割mIoU在0.51左右,通過少量樣本分割出了新類,雖然是自己采集的數(shù)據(jù)且人為標注,但模型依然能很好地分割出房屋與地面的區(qū)別,證明本文方法不僅可以分割出室內(nèi)場景點云,而且在元訓練階段測試室外場景的新類時,取得了一定的分割效果。
表4 閩南古建筑數(shù)據(jù)集分割結果Table 4 The segmentation result of Minnan ancient buildings
圖15 閩南古建筑數(shù)據(jù)集分割結果Fig.15 The segmentation result of Minnan ancient buildings dataset
針對點云分割需要大量監(jiān)督信息所造成的時間成本高、計算效率低的問題,提出采用融合原型對齊的小樣本元學習算法來對點云進行語義分割。本文能夠在僅學習少量新類樣本的情況下分割出該新類,不僅可以減少實驗對監(jiān)督信息的需求,而且在元訓練階段融合原型對齊算法可以更好地學習支持集的信息,從而得到一個具有很好的泛化能力的初始模型,在元測試階段用少量樣本進行微調(diào)后對查詢集進行分割預測,能夠提高元學習者的泛化能力與分割準確性。
實驗通過與原型網(wǎng)絡和匹配網(wǎng)絡在S3DIS 數(shù)據(jù)集上的1-way 和2-way 的分割結果對比可知,本文方法可以顯著提高對點云的分割準確性以及對新類分割的泛化性,且對于分割多個類別時,抗干擾性很強。實驗分別將DGCNN 與PointNet++作為特征提取器時的分割結果進行對比,可知結合邊緣卷積的DGCNN 能夠更好地學習點云的全局特征和局部幾何結構。實驗通過將模型應用在ScanNet 數(shù)據(jù)集和室外的閩南古建筑數(shù)據(jù)集上進行分割,分割結果顯示,本文方法在對新類的學習上具有很好的泛化能力。然而,實驗結果中也存在某些類別的分割精度較低的現(xiàn)象,經(jīng)過分析總結出兩個原因:1)新類別的特征差異較大時,微調(diào)的模型沒能學好其特征;2)方法未能對微調(diào)的支持集樣本的均衡問題進行優(yōu)化。
綜上所述,下一步研究工作的重點是:1)更好地篩選出具有多樣性和強表達能力的微調(diào)樣本,改善微調(diào)樣本不均衡情況下模型的學習能力,以適應對新類的學習;2)采用注意力機制有選擇地學習新類特征,進一步提升分割精度和泛化能力;3)從稀疏度上對采樣點進行改進,在設備及實驗平臺滿足需求的情況下,嘗試將完整空間場景投入訓練與測試,檢驗模型對空間幾何的整體分割能力。
致 謝:此次點云的閩南古建筑數(shù)據(jù)集獲取得到了福建省泉州市晉江市中國科學院海西研究院泉州裝備制造研究所遙感信息工程實驗室的幫助,在此表示感謝。