本發(fā)明涉及計(jì)算機(jī)圖形學(xué)領(lǐng)域,特別是一種基于面片分割的三維點(diǎn)云邊緣重建方法。
背景技術(shù):
1、物體邊緣是三維建模軟件模型所表征的重要結(jié)構(gòu)特征,尤其對(duì)于人造物體中所包含的許多銳利邊緣,而重建出高質(zhì)量的模型邊緣在虛擬現(xiàn)實(shí)、數(shù)字孿生等領(lǐng)域具有極其重要的應(yīng)用價(jià)值。隨著硬件設(shè)備的快速發(fā)展,激光雷達(dá)等設(shè)備日漸普及,三維點(diǎn)云數(shù)據(jù)的獲取也愈發(fā)簡(jiǎn)便。因此,需要開(kāi)發(fā)出能夠?qū)呙椟c(diǎn)云數(shù)據(jù)中的邊緣自動(dòng)檢測(cè)出來(lái)并進(jìn)行參數(shù)化表示的重建方法。
2、此前的有些方法將點(diǎn)云中的每個(gè)點(diǎn)分類后擬合出參數(shù)曲線,但其在邊緣上可以精確采樣的點(diǎn)過(guò)少導(dǎo)致了擬合誤差的增加,并且沒(méi)有充分利用大量非邊界點(diǎn)所提供的信息。另外有些方法則利用神經(jīng)網(wǎng)絡(luò)來(lái)預(yù)測(cè)每個(gè)點(diǎn)到其最近邊緣的距離,但它需要過(guò)于密集的輸入點(diǎn)來(lái)準(zhǔn)確地預(yù)測(cè)這個(gè)距離,以獲得候選邊界點(diǎn)來(lái)進(jìn)行可靠的邊緣重建。
3、物體的邊界點(diǎn)通常位于相鄰面的面片相交處,借此可以通過(guò)面片分割的方法來(lái)促進(jìn)邊緣檢測(cè)。因此,可以設(shè)計(jì)一種基于面片分割的邊緣重建方法,從輸入的不攜帶法向信息的掃描點(diǎn)云中準(zhǔn)確地獲得邊緣,從而更有利于高精度的參數(shù)化邊緣模型的構(gòu)建。
技術(shù)實(shí)現(xiàn)思路
1、發(fā)明的目的針對(duì)現(xiàn)有點(diǎn)云邊緣檢測(cè)技術(shù)的不足,提供一種基于面片分割的點(diǎn)云邊緣重建方法。
2、本發(fā)明公開(kāi)了一種基于面片分割的點(diǎn)云邊緣重建方法,包括以下步驟:
3、步驟1:使用點(diǎn)云邊緣重建網(wǎng)絡(luò)對(duì)三維點(diǎn)云進(jìn)行面片分割、邊界點(diǎn)檢測(cè)和法線預(yù)測(cè);
4、步驟2:對(duì)于每一對(duì)屬于不同面片且相鄰的邊界點(diǎn)對(duì),生成由兩個(gè)點(diǎn)所構(gòu)造的局部面片相交的直線段;
5、步驟3:將生成的直線段用于擬合點(diǎn)云邊緣,得到擬合邊,包括直線、圓、b樣條曲線三種曲線邊緣;
6、步驟4:利用分割面片,檢測(cè)每個(gè)平面的角點(diǎn),并結(jié)合步驟3擬合邊的端點(diǎn)一起獲取具有拓?fù)浣Y(jié)構(gòu)的初始猜測(cè)線框;
7、步驟5:利用擬合邊對(duì)初始猜測(cè)線框進(jìn)行優(yōu)化,獲取最終的點(diǎn)云邊緣結(jié)果。
8、所述點(diǎn)云邊緣重建網(wǎng)絡(luò),由動(dòng)態(tài)圖卷積神經(jīng)網(wǎng)絡(luò)、點(diǎn)云編碼器、用于邊緣特征的點(diǎn)云解碼器、用于分割特征的點(diǎn)云解碼器、法線解碼器和法線編碼器組成;
9、所述點(diǎn)云編碼器為用于提取點(diǎn)云特征的深度學(xué)習(xí)編碼器;
10、所述用于邊緣特征的點(diǎn)云解碼器為通過(guò)卷積操作得到點(diǎn)云邊緣特征的深度學(xué)習(xí)解碼器;
11、所述用于分割特征的點(diǎn)云解碼器為通過(guò)卷積操作得到點(diǎn)云分割特征的深度學(xué)習(xí)解碼器;
12、所述法線編碼器為通過(guò)卷積操作提取點(diǎn)云的法線特征的深度學(xué)習(xí)編碼器;
13、所述法線解碼器為根據(jù)編碼器生成的特征表示,將其還原為目標(biāo)法線輸出的深度學(xué)習(xí)解碼器。
14、所述步驟1包括:
15、步驟1-1:用點(diǎn)云邊緣重建網(wǎng)絡(luò)中的動(dòng)態(tài)圖卷積神經(jīng)網(wǎng)絡(luò),從輸入的原始三維點(diǎn)云通過(guò)點(diǎn)云編碼器提取特征,隨后將提取的特征分別輸入到用于邊緣特征的點(diǎn)云解碼器和用于分割特征的點(diǎn)云解碼器分別得到點(diǎn)云邊緣特征和點(diǎn)云分割特征;
16、步驟1-2:采用一個(gè)法線解碼器,預(yù)測(cè)輸入三維點(diǎn)云的法線,而后采用一個(gè)法線編碼器將所述法線提取為法線特征,分別將邊緣特征和分割特征按元素相加的方式與法線特征進(jìn)行融合,獲取最終的邊緣融合特征、分割融合特征;
17、步驟1-3:對(duì)于最終的邊緣融合特征通過(guò)點(diǎn)云解碼器解碼后獲得邊緣點(diǎn),對(duì)于最終的分割融合特征,通過(guò)采用均值漂移聚類方法的點(diǎn)云解碼器解碼獲取面片分割結(jié)果;
18、步驟1-4:所述點(diǎn)云邊緣重建網(wǎng)絡(luò)使用聯(lián)合損失函數(shù)進(jìn)行監(jiān)督學(xué)習(xí),包括邊緣點(diǎn)回歸損失函數(shù)、法線損失函數(shù)和表面分割嵌入損失函數(shù)三項(xiàng);聯(lián)合損失函數(shù)l為邊緣點(diǎn)回歸損失函數(shù)、法線損失函數(shù)和表面分割嵌入損失函數(shù)的加權(quán)和,計(jì)算方法如下:
19、l=ledge+μlnormal+vlemb
20、其中,μ和v均為加權(quán)系數(shù),取值均為正實(shí)數(shù),使用的取值范圍在0到5之間,用于平衡不同損失項(xiàng)的貢獻(xiàn);當(dāng)μ或v接近0時(shí),則相應(yīng)的法線損失或表面分割嵌入損失的貢獻(xiàn)會(huì)減小,網(wǎng)絡(luò)可能會(huì)更側(cè)重于邊緣點(diǎn)的學(xué)習(xí),而當(dāng)μ或v增大時(shí),這些損失項(xiàng)的貢獻(xiàn)會(huì)增大,從而可能提高對(duì)應(yīng)任務(wù)的性能,但同時(shí)邊緣點(diǎn)的學(xué)習(xí)就會(huì)被減弱,所以往往需要選取恰當(dāng)?shù)闹祦?lái)達(dá)到所有損失項(xiàng)之間的平衡。邊緣點(diǎn)回歸損失函數(shù)ledge、法線損失函數(shù)lnormal和表面分割嵌入損失函數(shù)lemb的計(jì)算方法分別為:
21、
22、其中,對(duì)于每個(gè)點(diǎn)云,當(dāng)點(diǎn)pi位于點(diǎn)云邊緣區(qū)域時(shí),該點(diǎn)的權(quán)重wi=1,當(dāng)點(diǎn)pi處于點(diǎn)云非邊緣區(qū)域時(shí),權(quán)重ne表示邊緣點(diǎn)的數(shù)量,n表示點(diǎn)的總數(shù)量;每個(gè)點(diǎn)真實(shí)的邊緣標(biāo)簽為e(pi),預(yù)測(cè)出的每個(gè)點(diǎn)的邊緣標(biāo)簽為當(dāng)β表示wi的標(biāo)準(zhǔn)差,改點(diǎn)的邊緣回歸損失項(xiàng)其他情況下,li=|e(pi)-表示預(yù)測(cè)的法線,ni表示真實(shí)的法線;k表示需要分割出的面片總數(shù),表示點(diǎn)云里真實(shí)的第k個(gè)部分,表示pi的嵌入向量表示,距離參數(shù)δ1,δ2,分別對(duì)應(yīng)于分割時(shí)屬于同類別面片的距離下限和不同類面片的距離上限,取值均為正實(shí)數(shù),使用的取值范圍在0到2之間,用于控制分割面片嵌入向量之間的距離閾值;當(dāng)δ1和δ2接近0時(shí),嵌入向量之間的距離閾值會(huì)變得非常嚴(yán)格,網(wǎng)絡(luò)可能會(huì)過(guò)于敏感,導(dǎo)致過(guò)擬合或不穩(wěn)定,而當(dāng)δ1和δ2增大時(shí),這些距離閾值會(huì)變得寬松,模型可能會(huì)放松對(duì)嵌入向量距離的要求,從而可能影響分割面片之間的區(qū)分度。因此,需要綜合選取恰當(dāng)?shù)闹祦?lái)達(dá)到嵌入向量距離閾值的平衡。
23、所述步驟2中的生成由兩個(gè)點(diǎn)所構(gòu)造的局部面片相交的直線段,具體方法為:對(duì)于屬于不同面片且相鄰的邊界點(diǎn)對(duì),結(jié)合點(diǎn)云邊緣重建網(wǎng)絡(luò)所預(yù)測(cè)出的法線,分別構(gòu)造垂直于該點(diǎn)法向的兩個(gè)底面圓,計(jì)算獲取該對(duì)圓的交線,即為直線段。
24、所述步驟3中,對(duì)生成的直線段采用最小二乘法依次擬合直線、圓、b樣條曲線,并計(jì)算三種曲線類別的殘差,采用殘差最小的曲線類型。
25、所述步驟4中,所述檢測(cè)每個(gè)平面的角點(diǎn)的具體方法為:對(duì)每個(gè)分割面片做平面檢查,如果屬于平面,利用中軸變換檢測(cè)分割面片的角點(diǎn)。將每個(gè)平面檢測(cè)到的角點(diǎn)以及前面每條擬合邊緣的端點(diǎn),共同構(gòu)成初始猜測(cè)線框的角點(diǎn),連接所有角點(diǎn)對(duì),并修剪那些邊緣點(diǎn)很少的冗余線,得到初始猜測(cè)線框。
26、所述步驟5中,對(duì)于得到的初始猜測(cè)線框、擬合邊緣結(jié)果,采用能量最小化的方式迭代優(yōu)化,重建出具有完整拓?fù)溥B接的精確的邊和角,即最終的點(diǎn)云邊緣重建結(jié)果。該最小能量函數(shù)具體為:
27、e=dist(wf(p),ψ)
28、其中,p表示整個(gè)點(diǎn)云,wf(p)代表該點(diǎn)云的初始猜測(cè)線框,ψ表示點(diǎn)云的擬合邊緣,dist(,)表示兩組邊緣的距離,該距離的具體計(jì)算方法為從兩個(gè)邊緣分別采樣出兩個(gè)點(diǎn)集,計(jì)算兩個(gè)點(diǎn)集的倒角距離,從而作為兩個(gè)邊緣的距離。
29、有益效果:
30、1)本方法通過(guò)一個(gè)點(diǎn)云邊緣重建網(wǎng)絡(luò),綜合了法線特征、邊緣特征和分割特征準(zhǔn)確地獲取點(diǎn)云的表面分割和邊界點(diǎn)結(jié)果,同時(shí)獲得每個(gè)點(diǎn)所屬的分割標(biāo)簽、邊界點(diǎn)標(biāo)簽,這種邊界重建的神經(jīng)網(wǎng)絡(luò)具有高魯棒性、易于訓(xùn)練、計(jì)算資源開(kāi)銷低等優(yōu)秀特點(diǎn)。
31、2)本方法使用邊界點(diǎn)對(duì),構(gòu)造兩個(gè)點(diǎn)的局部面片相交來(lái)獲取直線段,從而擬合出邊緣曲線,獲得更具有真實(shí)性、更完整的邊緣。
32、3)本方法使用點(diǎn)云邊緣重建網(wǎng)絡(luò)分割出的準(zhǔn)確信息,結(jié)合提取到的角點(diǎn)信息,共同獲取邊緣重建結(jié)果,該方法能夠處理形態(tài)復(fù)雜的點(diǎn)云,構(gòu)建出的重建邊緣結(jié)果能夠很好地反映物體的三維拓?fù)浣Y(jié)構(gòu),從而提供更詳細(xì)和準(zhǔn)確的幾何描述。