論文閱讀:PointCLIP: Point Cloud Understanding by CLIP

?CVPR2022

鏈接:https://arxiv.org/pdf/2112.02413.pdf

0、Abstract

????????最近,通過對比視覺語言預訓練(CLIP)的零鏡頭學習和少鏡頭學習在2D視覺識別方面表現出了鼓舞人心的表現,即學習在開放詞匯設置下將圖像與相應的文本匹配。然而,在二維大規模圖像文本對的預訓練下,CLIP識別能否推廣到三維識別還有待研究。在本文中,我們通過提出PointCLIP來確定這樣的設置是可行的,它對CLIP-encoded的點云和3D類別文本進行對齊。具體來說,我們對點云進行編碼,在不渲染的情況下將點云投影到多視圖深度圖中,并對視圖上的零點預測進行聚合,實現從2D到3D的知識轉移。在此基礎上,我們設計了一個inter-view adapter,以便更好地提取全局特征,并自適應地將3D中學習到的少鏡頭知識融合到2D預訓練的CLIP中。通過在少數鏡頭設置中對輕量級適配器進行微調,PointCLIP的性能可以得到很大的改善。此外,我們觀察了PointCLIP與經典3d監督網絡之間的互補性。通過簡單的集成,PointCLIP提高了基線的性能,甚至超過了最先進的模型。因此,PointCLIP是在低資源成本和低數據條件下,通過CLIP有效理解3D點云的一個有前途的替代方案。我們對廣泛采用的ModelNet10、ModelNet40和具有挑戰性的ScanObjectNN進行了深入的實驗,以證明PointCLIP的有效性。代碼在https://github.com/ZrrSkywalker/PointCLIP發布。

1. Introduction

????????近年來,深度學習已經主導了二維和三維領域的計算機視覺任務,如圖像分類[12,17,21,28,36,41],目標檢測[1,4,13,29,46,64],語義分割[3,24,35,61,65],點云識別和部分分割[19,43,44,55]。隨著三維傳感技術的迅速發展,對三維點云數據處理需求的不斷增長,催生了許多具有更好的局部特征聚合器[30,32,49]、幾何建模[20,39,40]和基于投影的處理[20,34,48]的先進深度模型。與基于網格的二維圖像數據不同,三維點云存在空間稀疏和不規則分布的問題,阻礙了直接方法從二維域轉移。此外,新捕獲的大規模點云數據包含大量“看不見”類別的對象到訓練有素的分類器。在這種情況下,即使是性能最好的模型也可能無法識別它們,而且當“看不見的”對象出現時,每次都要重新訓練也是負擔不起的。

????????對比視覺語言預訓練(CLIP)[45]在2D視覺中顯著緩解了類似的問題,該方法提出在自然語言監督下學習可轉移的視覺特征。對于“未見”類目的零拍分類,CLIP利用預先訓練的視覺和語言之間的相關性進行開放詞匯識別,取得了很好的效果。為了進一步提高在少鏡頭設置下的準確性,CoOp[66]采用可學習標記對文本提示進行編碼,從而自適應形成分類器權重。從另一個角度來看,CLIP-Adapter[16]添加了一個具有兩個線性層的輕量級殘留樣式適配器,以更好地適應圖像特征。Tip-Adapter[63]進一步提高了它的性能,同時大大減少了訓練時間。這兩種方法都實現了顯著的改進,超過零鏡頭剪輯。因此,識別新的未標記物體的問題已經在二維CLIP中得到了探索。然而,一個問題自然出現了:這種基于clip的模型能否轉移到3D領域,實現對“看不見”的3D對象的零拍分類?

????????為了解決這個問題,我們提出了PointCLIP,它將CLIP的2D預訓練知識轉換為3D點云理解。第一個問題是在無序點云和CLIP可以處理的基于網格的圖像之間架起橋梁。考慮到自動駕駛[4,13,29,42]、室內導航[67]等多種場景對實時預測的需求,我們建議采用在線透視投影[19],不進行后期渲染[48],即將每個點簡單地投影到一系列預定義的圖像平面上,生成散點深度圖。該投影過程在時間和計算上的成本都很小,但保留了多視圖點云的原始屬性。在此基礎上,我們利用CLIP預處理的視覺編碼器對點云的多視圖特征進行編碼,并通過零鏡頭分類器獨立獲得每個視圖的文本匹配預測。在CLIP之后,我們根據提示將3D類別名稱放入手工制作的模板中,并通過CLIP的文本編碼器生成零鏡頭分類器。由于不同的視圖對整個場景的識別有不同的貢獻,我們通過視圖之間的加權聚合來獲得對點云的最終預測。

????????盡管PointCLIP在沒有任何3D訓練的情況下實現了跨模態零拍分類,但其性能仍落后于在完整數據集上經過良好訓練的經典點云網絡。為了消除這一差距,我們引入了一個具有瓶頸線性層的可學習訪問視圖適配器,以便在少鏡頭設置中更好地從多個視圖中提取特征。具體來說,通過交互和匯總交叉視圖信息,將所有視圖的特征連接起來,提取點云的緊湊全局特征。基于全局表示,生成每個視圖的自適應特征,并通過殘差連接將其添加到原始的clip編碼特征中。通過這種方式,每個視圖都配備了融合的全局特征,并將來自3D少鏡頭數據集的新適應特征與2D預訓練的CLIP編碼相結合。在培訓期間,我們只對這個輕量級適配器進行了微調,并凍結了CLIP的可視和文本編碼器,以避免過度擬合,因為每個類只有幾個樣本。令人驚訝的是,PointCLIP與具有較少鏡頭微調的采訪適配器實現了與使用完整數據集進行良好訓練的一些以前的模型相當的性能,這是性能和成本之間的良好平衡。

????????此外,我們觀察到,在對比缺失的監督下,CLIP的2D知識與近距離的3D監督是互補的。帶有訪問視圖適配器的PointCLIP可以在少鏡頭設置下進行微調,以提高經典的全訓練3D網絡的性能。以16鏡頭的ModelNet40[57]和完全訓練的PointNet++[44]中的PointCLIP為例,直接集成它們的預測logit進行測試。令人驚訝的是,PointCLIP將PointNet++ 89.71%的性能提高到92.03%,準確率為87.20%。此外,我們選擇目前最先進的三維識別模型CurveNet[39]作為集成基線,實現了從93.84%到94.08%的性能提升。相比之下,簡單地將兩個在ModelNet40上完全訓練過的模型集成在一起,而不使用PointCLIP只會導致性能損失。因此,PointCLIP可以被重新評級為一個多知識集成模塊,通過有限的額外訓練,通過2D對比知識促進3D網絡。

?????????我們提出PointCLIP來擴展CLIP處理3D點云數據,通過將2D預訓練的知識轉換為3D,實現跨模態零拍識別。

?????????PointCLIP上引入了一個訪問視圖適配器,通過多個視圖之間的特性交互,提高了少鏡頭微調的性能。

?????????PointCLIP可以作為一個多知識集成模塊,用于提高現有完全訓練的3D網絡的性能,其性能超過了最先進的性能。

?????????在廣泛適應的ModelNet10、ModelNet40和具有挑戰性的ScanObjectNN上進行了全面的實驗,這表明PointCLIP在3D理解方面的潛力。

2. Related Work

3D的零鏡頭學習。零拍學習的目的是使識別“看不見的”物體,在訓練中沒有采用。雖然零拍學習在二維分類中引起了廣泛的關注[26,45,58],但是在三維領域中如何進行零拍學習的研究卻很少。作為對點云的第一次嘗試,[7]將3D數據集分為兩部分:“見過的”和“未見過的”樣本,并對前者進行PointNet[43]訓練,而對后者通過度量類別語義的余弦相似度進行測試。基于之前的工作,[5]進一步緩解了由于提取的3D特征質量較低而導致的轂度問題[62],[6]引入了三重損失,以在轉換設置中獲得更好的性能,這允許在訓練時利用未標記的“看不見的”數據。與以上設置中對部分三維樣本進行訓練,對其他三維樣本進行預測不同的是,PointCLIP不需要進行任何三維訓練,直接實現零點識別,對整個點云數據集進行預測。因此,我們的設置對于2D預訓練和3D應用之間的領域差距更具挑戰性,但對于實際問題更迫切。

遷移學習。遷移學習[9,60]的目的是利用數據豐富領域的知識來幫助數據稀缺領域的學習。對于一般的視覺,ImageNet[9]的預訓練可以極大地輔助下游的任務,如對象檢測[1,18,46]和語義分割[35]。在自然語言處理方面,通過蒙版語言模型[10]在網絡語料庫上預先訓練的表示在機器翻譯[38]和自然語言推理[8]上也取得了領先的性能。在沒有任何微調的情況下,最近推出的CLIP[45]顯示了對“不可見”數據集的卓越的圖像理解能力。CLIP- adapter[16]、Tip-Adapter[63]、ActionCLIP[53]和WiSE-FT[56]進一步表明,通過注入特定領域的監控,CLIP的性能可以大大提高。雖然成功的案例令人鼓舞,但現有的方法大多都是在相同的模式下進行知識轉移,即圖像到圖像[9]、視頻到視頻[2]或語言到語言[10]。與他們不同的是,我們的PointCLIP能夠有效地將從2D圖像中學習到的表示轉移到完全不同的3D點云中,這激發了未來在不同模式間遷移學習的研究。

面向點云的深度神經網絡。現有的點云深度神經網絡可分為基于點的方法和基于投影的方法。基于點的模型在原始點上處理,而不需要任何預轉換。PointNet[43]和PointNet++[44]首先用一個多層感知器(multilayer Perceptron, MLP)對每個點進行編碼,并利用max pooling操作實現置換不變性。最近的基于點的方法提出了更先進的本地聚合器和架構設計[30,49]。除了原始點之外,基于投影的方法通過將點云轉換為體積[37]或多視圖[48]數據表單來理解點云。其中,多視圖方法將點云投影到多視圖圖像中,利用在ImageNet[28]上預先訓練的2D Convolution Neural Networks (CNN)[21]對其進行處理,如MVCNN[48]等[14,15,25,59]。通常,這種視圖投影方法操作離線生成的圖像,這些圖像是從點轉換的3D網格[54]投影出來的,或者需要渲染后的陰影和紋理[47],所以它們在實時應用中昂貴且不實用。相反,我們遵循SimpleView[19],天真地將原始點投影到圖像平面上,并根據垂直距離設置它們的像素值。這種深度圖的生成在時間和計算成本上都是邊際的,滿足了高效的端到端零鏡頭識別的需求。

3. Method

在3.1節中,我們首先回顧了用于2D零拍分類的對比視覺語言預訓練(CLIP)。然后在3.2節中,我們引入PointCLIP,它將2D預訓練的知識轉換為3D。在第3.3節中,我們為PointCLIP提供了訪問視圖適配器,以便在少鏡頭設置下獲得更好的性能。在3.4節中,我們提議將PointCLIP與經過充分訓練的經典3D網絡集成在一起,進行多知識集成,可以實現最先進的性能。

3.1. A Revisit of CLIP

????????CLIP被訓練來匹配圖像與它們相應的自然語言描述。CLIP中有兩個獨立的編碼器,分別用于視覺和文本特征編碼。在訓練過程中,給一組圖像和文本,CLIP提取它們的特征,并學習在對比缺失的嵌入空間中對齊它們。為了確保全面的學習,從互聯網上收集了4億個訓練圖像文本對,這使得CLIP能夠將圖像與開放詞匯表中的任何語義概念進行對齊,以進行零拍分類。

????????具體來說,對于K類的“看不見的”數據集,CLIP通過將所有類別名稱放入預定義的模板(稱為提示符)來構造文本輸入。然后,由類別提示符的c維文本特征得到零射分類器,記為。Wt中的每K行向量對預訓練的類別權重進行編碼。同時,將每個測試圖像的特征通過CLIP的視覺編碼器編碼為,分類計算為:

????????其中,softmaxi(·)和pi表示第一類的softmax函數和預測概率。整個過程不需要新的訓練圖像,僅通過凍結的預先訓練的編碼器就可以獲得很好的零拍分類性能。

3.2. Point Cloud Understanding by CLIP

????????二維中各種大規模數據集[28,31]為模型的預訓練提供了豐富的樣本[11,21],以實現高質量和魯棒的二維特征提取。相比之下,被廣泛采用的3D數據集相對來說要小得多,類別也比較有限,如ModelNet40[57]有9843個樣本,40個類,而ImageNet[28]有100萬個樣本,1000個類。因此,很難獲得良好的預訓練的三維網絡進行遷移學習。為了緩解這一問題,并探究CLIP的跨模性能力,我們提出了PointCLIP,基于預訓練的CLIP對點云進行零拍學習。

????????彌合模態差距。點云是一組分散在三維空間中的無序點,其稀疏性和分布與基于網格的二維圖像有很大的不同。為了將點云轉換為CLIP-accessible表示,我們從多個視圖生成點投影圖像,以消除3D和2D之間的模態差距。例如,在三維空間中,將一個點的坐標記為(x, y, z),以底部投影視圖為例,其在圖像平面上的位置為(x/z,y/z),位于[19]之后。這樣投影出的點云就是一個透視縮短的圖形,遠處小,近處大,更接近于真實照片。除了[19]應用卷積層將單通道深度圖預處理為三個通道外,我們沒有采用任何預卷積,而是在三個通道中直接將像素值設置為z。另外,與其他脫機投影方法根據網格[54]或CAD模型[48]生成的投影圖像不同,我們的投影深度圖是由原始點生成的,沒有顏色信息,而是深度值分散,這導致了時間和計算成本的邊際。有了這種輕量級的跨模態聚合,CLIP的預先訓練的知識就可以用于點云的理解。

????????零拍分類。基于M個視圖的投影圖像,我們使用CLIP提取其視覺特征{fi},對于i = 1,…, m對于文本分支,我們在預定義模板的類標記位置放置K個類別名:“[class]的點云深度圖。”,并將其文本特征編碼為零射分類器Wt∈RK×C。然后分別計算各視圖的分類logitsi,通過加權求和得到點云的最終logitsp,

其中,αi是衡量視圖i重要性的超參數。每個視圖fi編碼點云特征的不同視角,能夠進行獨立的零拍分類。他們的總結進一步補充了不同角度的信息,以獲得全面的了解。PointCLIP的整個過程對于“不可見的”3D數據集來說是非參數化的,它通過CLIP的預先訓練的2D知識將每個點云與其類別配對,而不需要任何3D訓練。

3.3. Inter-view Adapter for PointCLIP

????????雖然PointCLIP在點云上實現了高效的零拍分類,但其性能仍無法與完全訓練的3D神經網絡相比[43,44]。然后我們考慮一個更常見的場景,在新收集的數據中包含每個“看不見的”類別的一些對象,網絡需要在這樣的少鏡頭設置下識別它們。對整個模型進行微調是不現實的,因為參數龐大,樣本不足,容易導致過擬合。因此,參考自然語言處理(NLP)中的[23]和CLIP-Adapter[16]對下游任務的預訓練模型進行微調,我們在PointCLIP之上附加了一個三層多層感知器(MLP),命名為inter-view adapter,以進一步提高其在少鏡頭設置下的性能。為了進行培訓,我們凍結CLIP的可視和文本編碼器,并通過交叉熵損失對可學習適配器進行微調。

????????具體來說,給定一個點云的clip編碼的M-view特征,我們將它們沿通道維串接為,通過inter-view adapter的前兩層獲取點云的緊湊全局特征為

其中, W1、W2表示適配器中的兩層權值。通過這種訪問視圖聚合,來自多個透視圖的特性融合成一個總括表示。之后,由全局特征生成視圖適配特征,并通過殘差連接將其添加到原始的clip編碼特征中

其中表示視圖i中W3的第i部分,。一方面,該算法將全局引導的自適應特征融合到fi中,實現了對點云的整體理解,從而實現了更好的視景預測;另一方面,殘差樣式適配器將新學習的3D少鏡頭知識與2D預訓練的CLIP知識相融合,進一步促進了知識的跨模態轉移。

????????在inter-view adapter之后,每個視圖用自適應的特征和文本分類器進行分類。與零鏡頭分類一樣,將所有視圖的所有M logits進行匯總,構建最終的預測,這里視圖權值αi可以作為可學習參數,以便更自適應的聚合。令人驚訝的是,只需對這個輕量級適配器進行少量樣本的微調,就可以顯著提高性能,例如,在ModelNet40上,每個類別有16個樣本,從20.18%提高到87.20%,不到全部數據的1/10。這一鼓舞人心的推進展示了特征適應對3D少鏡頭數據的有效性和重要性,這極大地促進了從2D到3D的知識轉移。因此,帶有訪問視圖適配器的PointCLIP為理解點云提供了一個有前途的替代解決方案。在一些應用程序中,沒有條件用大規模的全注釋數據來訓練整個模型,只有微調帶有少量數據的三層適配器才能達到相當的性能。

(感覺思路很簡單,就是通過DNN做域轉換,前兩層有一點融合,第三層有一個shortcut 類似resnet的殘差,但是這么講就覺得高級了)

3.4. Multi-knowledge Ensembling

????????經典的點云網絡,如早期的PointNet[43]和最近的CurveNet[39],都是通過密切的監控在3D數據集上從頭開始訓練的。相反,PointCLIP主要從2D視覺語言學習中繼承預先訓練好的先驗,包含不同方面的知識。然后,我們研究這兩種形式的知識是否可以合集在一起進行聯合推理。在實踐中,我們首先得到經典的模型,如由[22]預訓練的PointNet++[44],以及zero-shot或適配器版本的PointCLIP。我們對兩個模型進行推理,并通過簡單的加法將它們的預測對數集成為最終輸出。出乎我們的意料,在16-shot微調的PointCLIP 87.20%的輔助下,89.71%的PointNet++提高到92.03%,顯著提高了+2.32%。換句話說,兩個低分數模型的集成可以產生一個更強的模型,它充分展示了來自兩個模型的知識的互補交互。此外,即使零鏡頭PointCLIP為20.18%,PointNet++仍然可以改進到92.10%。相比之下,對兩個受過全面訓練的經典模型進行集成并不會提高性能,這表明互補知識的重要性。我們還將這種集成與其他高級網絡一起實現,并觀察到類似的性能提升,其中一些實現了最先進的性能。因此,PointCLIP可以作為一個即插即用的增強模塊來實現健壯的點云理解。

(感覺自己做融合,兩個同樣的任務的結果,融合后很難提升,這是什么原理,這個也沒看懂不知道對不對:

(微調的PointCLIP 87.20% +?89.71%的PointNet++ =?92.03%

(零鏡頭PointCLIP為20.18%) +?89.71%的PointNet++ =?92.10%,怎么零鏡頭的提高更多?

但是后邊的表格里92.1又是16-shot的結果)

4. Experiments

4.1. Zero-shot Classificatio

設置。我們評估了PointCLIP在ModelNet10[57]、ModelNet40[57]和ScanObjectNN[51]三個知名數據集上的零鏡頭分類性能。對于每個數據集,我們不需要訓練數據,采用完整的測試集進行評估。對于預訓練的CLIP模型,我們默認采用ResNet-50[21]作為視覺編碼器,transformer[52]作為文本編碼器。然后,我們從6個正交視圖投影點云:前、右、后、左、頂和底,每個視圖的相對權重值從1到10,如表1的第四列所示。由于點坐標從-1歸一化到1,我們將6個圖像平面與坐標中心(0,0)的距離設定為固定的距離,這個距離表示為Proj的第一個值。設置如表1所示,距離越大,圖像上的點分布越密集。投影的方形深度圖的邊長因數據集的不同而不同,在Proj中以第二個值表示。設置,更大的邊長導致更小的投影對象大小。然后我們將所有圖像上采樣到(224,224),以便與CLIP的設置對齊。另外,我們將文本模板設置為“一個[CLASS]的點云深度圖”。,以迎合點云的視覺特征。

性能。在表1中,我們展示了zero-shot PointCLIP在三個數據集的最佳性能設置下的性能。在沒有任何3D培訓的情況下,PointCLIP能夠在ModelNet10上實現30.23%的良好效果,這證明了從2D到3D的知識轉移是有效的。對于具有4倍于嘈雜的真實世界場景的類別數量的ModelNet40和ScanObjectNN, PointCLIP的性能略差,分別為20.18%和15.38%,這是因為缺少3D下游適配。對于項目的投影距離和圖像分辨率。設置,它們的方差符合不同數據集的屬性。與室內的ModelNet10相比,ModelNet40上的PointCLIP對于識別復雜的室外物體(如飛機、植物等)需要更多的細節,因此在點分散更多、物體尺寸更大(即透視投影距離和分辨率更大)的情況下表現更好。而ScanObjectNN則需要更密集的點和更大的分辨率來過濾噪聲,保留復雜的真實場景信息。在視圖權重方面,合成對象的ModelNet10和ModelNet40要求所有6個視圖對最終分類的貢獻具有不同的重要性,但對于包含有樓層和天花板噪聲點的ScanObjectNN來說,上下視圖幾乎不能提供任何信息。

Ablations

在表2中,我們對ModelNet40上的投影視圖數和每個視圖的重要性進行了消融研究。對于投影視圖數,我們嘗試了1、4、6、8、10和121個視圖,以便越來越多地捕捉點云的多視圖信息,但超過6個視圖會帶來冗余,導致性能下降。為了探索不同視圖如何影響性能,我們將所有相對權重統一為3,并分別將每個視圖的權重增加到9。從表中可以看出,從右邊投影的效果最好,這說明它的作用是主導的,而top視圖和down視圖對零拍分類的貢獻相對較小。在表4中,我們實現了ResNet[21]到vision transformer[11]不同的視覺骨干,RN50×16[45]的性能最好,達到了23.78%,比ResNet-50多16倍的計算量。然而,將ResNet-50升級到ResNet-101,參數更多、層次更深,并不能提供更高的分類精度。

Prompt Design

我們在表3中給出了五種零彈點剪輯提示設計。我們觀察到天真的“一張[CLASS]的照片。,在ModelNet40上達到17.02%,但簡單地插入“點云”一詞將損害性能。然后我們去掉“一張照片”,直接利用“點云”作為主體,使正確率提高了+1.66%。此外,由于投影的點云通常覆蓋圖像的大部分區域,添加一個形容詞“大”可以帶來進一步的性能改進。此外,我們添加了“深度圖”,以更恰當地描述投影圖像,這有助于最佳表現20.18%,表明提示選擇的重要性。

4.2. Few-shot Classification

設置。我們也在ModelNet10[57]、ModelNet40[57]和ScanObjectNN[51]這三個數據集中,在1、2、4、8、16個鏡頭下對訪談視圖適配器進行PointCLIP實驗。對于K-shot設置,我們從訓練集的每個類別中隨機抽取K個點云。我們從4.1節的零拍實驗中繼承了最佳的投影設置。相比之下,考慮到效率和性能,我們采用ResNet-101[21]作為CLIP的預先訓練的視覺編碼器,更強的特征提取,并將投影視圖數增加到10,增加了上/下、前/后左上角的視圖,因為在表2中,左視圖被證明是對少鏡頭識別最有價值的。此外,我們將提示修改為“一個大[類]的點云”。,它在幾次射擊實驗中表現得更好。對于訪問視圖適配器,我們構建了一個殘差式多層感知器(MLP),由三個線性層組成,如第3.3節所述。

性能。在圖5中,我們展示了PointCLIP的少數shot性能,并將其與4個具有代表性的3D網絡進行比較:PointNet[43]、PointNet++[44]、SimpleView[19]和最先進的CurveNet[39]。正如我們所看到的,PointCLIP與訪談視圖適配器優于所有其他方法的少數鏡頭分類。在每個類別樣本數量較少的情況下,PointCLIP優勢明顯,在ModelNet40上以1次投注的方式,超過PointNet 25.49%,超過CurveNet 12.29%。當提供更多的訓練樣本時,PointCLIP仍然領先于性能,但由于輕量級三層適配器的擬合能力有限,差距變得更小。詳細的培訓設置請參見附錄。

消融。在表2中,我們展示了不同投影視圖下的16鏡頭PointCLIP,并探討了每個視圖Score (%) Score (%) Score(%)對ModelNet40的貢獻。與zero-shot版本不同,16-shot PointCLIP的10個視圖的性能優于6個視圖,這可能是因為新添加的適配器能夠更好地利用來自更多視圖的信息,并自適應地聚合它們。考慮到視圖的重要性,我們遵循零鏡頭版本的配置,并觀察到相反的結論,左邊的視圖在這里提供的信息最多。令人驚訝的是,對于表4中不同的視覺編碼器,ResNet-101比vision transformer或ResNet-50×16用更少的參數實現了最高的精度。表3列出了提示設計對性能的影響,以及某大[類]的“點云”。,這與第4.1段的分析略有不同。

4.3. Multi-knowledge Ensembling

設置。為了驗證預先訓練的2D先驗與3D知識混合的互補性,我們將ModelNet40上經過精細調整的87.20%的16 shot PointCLIP,分別與經過完全訓練的PointNet[43]、PointNet++[44]、DGCNN[55]、SimpleView[19]和CurveNet[39]進行聚合,其訓練模型由[22,50]不經過任何投票獲得。我們手動調整PointCLIP與每個模型的融合比例,并在表5中報告比例最佳的性能,它代表了PointCLIP相對于整體的權重。

性能。如表5所示,與PointCLIP集成提高了所有經典的全訓練3D網絡的性能。結果充分證明了PointCLIP與現有的完全訓練的3D模型的互補性,并且性能增益不是簡單地通過集成模型實現的。這些結果對我們來說是令人驚訝的,因為16桿PointCLIP的準確性低于所有其他模型的全數據集訓練,但仍然可以受益于他們已經很高的性能更高。其中,在PointNet++上準確率提高最大,從89.71%提高到92.10%,將PointCLIP與最先進的CurveNet相結合,進一步提高了94.08%。此外,我們觀察到,對于具有低基線性能的模型,PointCLIP的logit需要占很大的比例,但對于性能良好的模型,如CurveNet,它們的知識應該在整體中發揮主導作用。

消融。我們對兩個在沒有PointCLIP的ModelNet40上完全訓練的模型進行了消融研究,并為簡單起見將它們的logits以相同的比例融合。如表6所示,將PointNet++集成降低了RSCNN和CurveNet的性能,將兩個模型中最高的SimpleView和CurveNet進行聚合,并不能獲得更好的性能。另外,一對PointCLIP也會損害性能。因此,簡單地將兩個具有相同訓練方案的模型集成通常會導致性能下降,這說明了多知識交互的重要性。在表7中,我們將zero-shot PointCLIP和分別經過8、16、32、64、128個鏡頭調整的模型與CurveNet融合,探究其整體性能。據報道,zeroshot PointCLIP僅為20.18%,可以使CurveNet增強+0.04%。但是,在三維數據集上進行過多的訓練會影響集成的精度。這可能是由于兩個模型之間的相似度過高,不能提供預期的互補知識。

5. Conclusion and Limitation

????????我們提出PointCLIP,在不需要任何3D訓練的情況下,在點云上進行跨模態零拍識別。PointCLIP通過多視圖投影,有效地將CLIP預訓練的2D知識轉移到3D領域。在少鏡頭設置下,我們設計了一個輕量級的訪問視圖適配器來聚合多視圖表示并生成自適應的特征。通過微調這樣的適配器和凍結所有其他模塊,PointCLIP的性能得到了很大的改進。此外,PointCLIP可以作為即插即用模塊,為經典的3D網絡提供免費信息,其性能超過了最先進的技術。雖然PointCLIP實現了從2D到3D的遷移學習,但是如何將CLIP的知識應用到其他3D任務中還有待探索。我們未來的工作將集中于將CLIP應用于更廣泛的3D應用。

自己總結:

1、把z直接當圖像深度,因此直接算應該不大行,所以加了adapter。但是Clip是RGB色彩通道訓練的,為什么直接用深度也可以?

2、可能clip本身對小類比較擅長,因此直接加原始模型效果也有提高,只能說是巧妙,作者也嘗試了普通的兩個模型直接相加并不能提高結果。

3、在想怎么做點云分割,Lseg + pointclip?

存在疑問

pointclip對結果的提升分別是92.03和92.10,是怎么理解的?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/209557.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/209557.shtml
英文地址,請注明出處:http://en.pswp.cn/news/209557.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【ET8】2.ET8入門-ET框架解析

菜單欄相關:ENABLE_DLL選項 ET->ChangeDefine->ADD_ENABLE_DLL/REMOVE_ENABLE_DLL 一般在開發階段使用Editor時需要關閉ENABLE_DLL選項。該選項關閉時,修改腳本之后,會直接重新編譯所有的代碼,Editor在運行時會直接使用最…

免費網頁抓取工具大全【附下載和工具使用教程】

在當今信息爆炸的時代,獲取準確而豐富的數據對于企業決策和個人研究至關重要。而網頁抓取工具作為一種高效獲取互聯網數據的方式,正逐漸成為大家解決數據需求的得力助手。本文將深入探討網頁抓取工具的種類,并為大家提供簡單實用的頁面采集教…

(企業項目)SpringBoot3整合校驗框架validation

在Spring Boot項目中使用校驗框架validation可以讓我們更方便地實現數據校驗和錯誤提示。下面是Spring Boot集成校驗框架validation的步驟。 添加依賴 在項目的pom.xml文件中添加validation依賴&#xff1a; <dependency><groupId>org.springframework.boot</…

C# 實現Lru緩存

C# 實現Lru緩存 LRU 算法全稱是最近最少使用算法&#xff08;Least Recently Use&#xff09;&#xff0c;是一種簡單的緩存策略。 通常用在對象池等需要頻繁獲取但是又需要釋放不用的地方。 代碼實現的基本原理就是使用鏈表&#xff0c;當某個元素被訪問時&#xff08;Get或…

windows安裝protoc、protoc-gen-go、protoc-gen-go-grpc

文章目錄 一、 protoc二、protoc-gen-go三、protoc-gen-go-grpc 一、 protoc 1&#xff0c;下載&#xff1a;https://github.com/google/protobuf/releases 下載對應的protoc&#xff0c;注意選擇windows 2&#xff0c;下好之后解壓就行&#xff0c;然后把bin目錄加入到環境…

【異常】淺析異常體系及為什么一定會執行finally塊代碼

異常體系&#xff1a; &#xff08;1&#xff09;所有異常&#xff08;Exception&#xff09;、錯誤&#xff08;Error&#xff09;都繼承自異常中的基類&#xff1a;Throwable。而異常又可以分為檢查異常&#xff08;Checked Exception&#xff09;、非檢查異常&#xff08;Un…

msvcp100.dll丟失的常見原因/msvcp100.dll丟失的解決方法分享

在計算機使用過程中&#xff0c;我們經常會遇到一些錯誤提示&#xff0c;其中之一就是“msvcp100.dll丟失”。這個錯誤提示通常出現在運行某些程序或游戲時&#xff0c;給使用者帶來了很大的困擾。那么&#xff0c;究竟是什么原因導致了msvcp100.dll文件的丟失呢&#xff1f;本…

ubuntu22.04在opencv4的基礎上安裝opencv3

安裝opencv4 首先在ubuntu22.04上安裝opencv4&#xff0c;可以參考之前的博客ubuntu22.04安裝opencv4和opencv_contrib-CSDN博客 安裝opencv3 由于有使用opencv3的需求&#xff0c;所以需要繼續安裝opencv3 ; 安裝編譯 這里安裝的版本是opencv3.4.5&#xff0c;大致安裝思…

STM32F1之CAN介紹

目錄 ?編輯 1. CAN 是什么&#xff1f; 2. 總線拓撲圖 3. CAN 的特點 4. CAN 協議的基本概念 1. CAN 是什么&#xff1f; CAN 是 Controller Area Network 的縮寫&#xff08;以下稱為 CAN&#xff09;&#xff0c;是 ISO*1 國際標準化的串行通信協議。 在當前的汽車產…

javaWebssh學生系統myeclipse開發mysql數據庫MVC模式java編程計算機網頁設計

一、源碼特點 java ssh學生管理系統是一套完善的web設計系統&#xff08;系統采用ssh框架進行設計開發&#xff09;&#xff0c;對理解JSP java編程開發語言有幫助&#xff0c;系統具有完整的源代碼和數據庫&#xff0c;系統主要采用B/S模 式開發。開發環境為TOMCAT7.0,My…

前端開發中,Web Storage的存儲數據的方法localstorage和sessionStorage的使用及區別

在 Web瀏覽器中存儲數據以改善用戶體驗和提升Web應用程序性能是非常常見的。在大多數情況下&#xff0c;可供我們使用就是LocalStorage和SessionStorage。 本文中&#xff0c;我們將會從安全性和用戶體驗兩個方面對SessionStorage和LocalStorage進行評估。然后我們將討論如何根…

Linux驅動安裝遇到的問題(Kernel configuration is invalid)(Invalid module format)

Linux驅動編譯安裝遇到的問題&#xff08;Kernel configuration is invalid&#xff09;&#xff08;Invalid module format&#xff09; 前言1. Kernel configuration is invalid2. Invalid module format2.1 第一種情況&#xff1a;內核模塊編譯的環境與現在insmod想要運行的…

python:mplfinance 畫K線圖+布林線

pip install mplfinance ; python 安裝使用 TA-lib 安裝主要在 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 這個網站找到 TA_Lib-0.4.24-cp310-cp310-win_amd64.whl pip install /pypi/TA_Lib-0.4.24-cp310-cp310-win_amd64.whl 編寫 mpf_kline_boll.py 如下 # -*- cod…

英語口語練習(背誦老友記)

There is nothing to tell! 這沒什么好說的&#xff01; Hes just some guy I work with. 他不過是我的同事。 Cmon, youre going out with the guy! 少來了&#xff0c;你們都在約會了&#xff01; Theres gotta be something wrong with him! 這個男人一定有什么問題&…

華為OD機試真題-快遞員的煩惱-2023年OD統一考試(C卷)

題目描述: 快遞公司每日早晨,給每位快遞員推送需要送到客戶手中的快遞以及路線信息,快遞員自己又查找了一些客戶與客戶之間的路線距離信息,請你依據這些信息,給快遞員設計一條最短路徑,告訴他最短路徑的距離。 注意: 1. 不限制快遞包裹送到客戶手中的順序,但必須保證都…

【VRTK】【VR開發】【Unity】12-占位身體

課程配套學習資源下載 https://download.csdn.net/download/weixin_41697242/88485426?spm=1001.2014.3001.5503 【概要】 目前你會發現,就算存在非Trigger Collider的墻壁屏障等,也能夠正常穿過,這會導致不沉浸的體驗。你需要一個占位身體來實現讓墻壁等碰撞并擋住自己…

基于java的貪吃蛇小游戲

貪吃蛇游戲需要做兩點&#xff1a;圖形界面和游戲邏輯。在 Java 中&#xff0c;可以使用 Swing 或 JavaFX 來創建圖形界面。下面代碼創建了一個簡單的 Swing 窗口&#xff0c;實現了一個基本的貪吃蛇游戲。在游戲中&#xff0c;使用方向鍵控制貪吃蛇的移動&#xff0c;吃到食物…

`Numpy`數組中 數據的修改(第10講)

Numpy數組中 數據的修改(第10講) ??????? ??博主 侯小啾 感謝您的支持與信賴。?? ????????????????????????????????????????????????????????????????????????????????????…

YOLOv5獨家原創改進:SPPF自研創新 | 可變形大核注意力(D-LKA Attention),大卷積核提升不同特征感受野的注意力機制

??????本文自研創新改進: 可變形大核注意力(D-LKA Attention)高效結合SPPF進行二次創新,大卷積核提升不同特征感受野的注意力機制。 收錄 YOLOv5原創自研 https://blog.csdn.net/m0_63774211/category_12511931.html ??????全網獨家首發創新(原創),適合p…

Python學習路線 - Python語言基礎入門 - 函數使用

Python學習路線 - Python語言基礎入門 - 函數使用 函數介紹函數函數的快速體驗 函數的定義函數的定義 函數的參數函數的傳入參數函數的傳入參數 - 傳參定義函數的傳入參數 - 語法解析練習案例&#xff1a;升級版自動查詢核酸 函數的返回值函數返回值的定義返回值的語法None類型…