matlab三维点云去除背景,一种点云处理三维重建方法与流程
本發(fā)明屬于三維數(shù)字化、逆向工程領(lǐng)域,特別是涉及一種點(diǎn)云處理三維重建方法。
背景技術(shù):
::三維掃描是一種高精度的三維坐標(biāo)測(cè)量方法。線(xiàn)結(jié)構(gòu)激光投射到被測(cè)表面,攝像機(jī)獲取投射圖像,提取光條上點(diǎn)的三維形貌。通過(guò)精確控制被測(cè)物的平移和旋轉(zhuǎn),得到表面完整的三維點(diǎn)云數(shù)據(jù)。因此,得到的點(diǎn)云數(shù)據(jù)是線(xiàn)陣列的規(guī)則數(shù)據(jù)。對(duì)點(diǎn)云數(shù)據(jù)進(jìn)行重構(gòu),真實(shí)再現(xiàn)三維表面,這種技術(shù)可以應(yīng)用于逆向工程領(lǐng)域。對(duì)于模型的重構(gòu),點(diǎn)云處理算法起到關(guān)鍵的作用。因?yàn)?#xff0c;掃描數(shù)據(jù)不可避免的會(huì)有一些冗余信息和噪聲點(diǎn),一方面,掃描過(guò)程中激光線(xiàn)可能會(huì)投射到非測(cè)量物上,如擺放物體的平臺(tái)等,導(dǎo)致冗余數(shù)據(jù),另一方面,掃描數(shù)據(jù)易受環(huán)境和系統(tǒng)的影響,從而可能產(chǎn)生干擾噪聲,會(huì)嚴(yán)重地影響模型的建構(gòu)。因此,點(diǎn)云處理的原則是在不影響重構(gòu)曲面精度的前提下,大幅度減少數(shù)據(jù)并使之光順。所以點(diǎn)云處理算法可以保證重構(gòu)過(guò)程中有可靠精選的點(diǎn)云數(shù)據(jù),不僅能提高重構(gòu)的準(zhǔn)確度,更能降低重構(gòu)過(guò)程的消耗。現(xiàn)有技術(shù)存在處理效率低,重構(gòu)效果較差等不足。技術(shù)實(shí)現(xiàn)要素:針對(duì)現(xiàn)有點(diǎn)云處理技術(shù)存在的不足,本發(fā)明設(shè)計(jì)了一種點(diǎn)云處理三維重建方法,具有較低的重構(gòu)誤差,重構(gòu)效果較好。為解決上述問(wèn)題,本發(fā)明采取的技術(shù)方案是:不同于傳統(tǒng)的對(duì)三維形式的點(diǎn)云進(jìn)行處理,本發(fā)明所述一種點(diǎn)云處理三維重建方法,步驟是:首先將三維掃描得到的stl點(diǎn)云圖導(dǎo)入matlab中,讀取每個(gè)點(diǎn)的三維數(shù)據(jù),生成矢量點(diǎn)集。基于具有連續(xù)特性的ε微條曲面法,采用評(píng)價(jià)指標(biāo)進(jìn)行誤差分析,避免了mse和r-square這兩種回歸誤差分析評(píng)價(jià)方法的缺陷,提取某一橫(縱)斷面點(diǎn)集。其次利用橫(縱)斷面點(diǎn)集得到斷面樣條曲線(xiàn)。最后,將足夠數(shù)量的橫(縱)斷面樣條曲線(xiàn)在三維空間整合,得到質(zhì)量較高的三維重構(gòu)模型。所述具有連續(xù)特性的ε微條曲面法,首先從stl文件提取點(diǎn)云的三維數(shù)據(jù),在三維坐標(biāo)系中生成矢量點(diǎn)集,此外有一個(gè)斷面與矢量點(diǎn)集相交,若斷面平行于xoz平面,則為縱斷面,若平行于yoz平面,則為橫斷面。所述橫(縱)斷面,其中橫斷面沿著x軸平行移動(dòng),縱斷面沿著y軸平行移動(dòng),橫縱斷面各有一個(gè)起始和終止位置。橫斷面的起始位置為x值最小的坐標(biāo),終止位置為x值最大的坐標(biāo);橫斷面的起始位置為y值最小的坐標(biāo),終止位置為y值最大的坐標(biāo)。所述橫(縱)斷面,在移動(dòng)過(guò)程中,進(jìn)行斷面點(diǎn)集提取,判斷點(diǎn)是否分布均勻,不均勻則重新進(jìn)行斷面點(diǎn)集提取,否則進(jìn)入斷面曲線(xiàn)插值。移動(dòng)到終止位置時(shí)進(jìn)行三維網(wǎng)格復(fù)原完成三維重構(gòu)。所述斷面點(diǎn)集提取,將三維掃描得到的stl點(diǎn)云圖導(dǎo)入matlab中,讀取每個(gè)點(diǎn)的三維數(shù)據(jù),生成矢量點(diǎn)集,構(gòu)建入三維坐標(biāo)系中。至于具體的點(diǎn)集提取,基于ε微條曲面法,兼顧了mse和r-square這兩種回歸誤差分析評(píng)價(jià)方法的評(píng)價(jià)指標(biāo)進(jìn)行誤差分析,提取某一橫(縱)斷面點(diǎn)集。所述斷面曲線(xiàn)插值包含了基于排序的凸包插值算法和分段處理法。與現(xiàn)有技術(shù)相比,具有以下優(yōu)點(diǎn):1.現(xiàn)有的大多數(shù)三維重構(gòu)都基于整體插值擬合,受噪聲和冗余數(shù)據(jù)影響較大,重構(gòu)質(zhì)量較差,而本發(fā)明通過(guò)ε微條曲面法,獲取小片局部擬合,最后在三維空間整合,化局部為整體,大大提高了重構(gòu)的精度。處理效率高,重構(gòu)質(zhì)量好。2.提出的點(diǎn)云處理誤差評(píng)價(jià)指標(biāo)兼顧了mse和r-square'這兩種回歸誤差分析評(píng)價(jià)方法,且具有連續(xù)特性,可以保證重構(gòu)過(guò)程中有可靠精選的點(diǎn)云數(shù)據(jù),不僅能提高重構(gòu)的準(zhǔn)確度,更能降低重構(gòu)過(guò)程的消耗。附圖說(shuō)明圖1是本發(fā)明的三維重構(gòu)流程示意圖;圖2是基于ε的微條曲面法的點(diǎn)云提取算法流程圖;圖3是實(shí)施例1的步驟(1)提取獨(dú)角仙前翅,x=2cm橫斷面點(diǎn)集,在不同ε下時(shí)的提取效果圖;圖4是實(shí)施例1的步驟(1)獨(dú)角仙前翅,x=2cm橫斷面提取點(diǎn)誤差隨ε的變化關(guān)系。圖5是實(shí)施例1的步驟(2)進(jìn)行分段插值前后的對(duì)比圖。圖6是實(shí)施例1的步驟(3)所有橫縱斷面樣條曲線(xiàn)形成的三維網(wǎng)格骨架與逆向重構(gòu)對(duì)照?qǐng)D。具體實(shí)施方式下面結(jié)合附圖和實(shí)施例,來(lái)進(jìn)一步說(shuō)明本發(fā)明技術(shù)方案。圖1所示,一種點(diǎn)云處理三維重建方法,包括斷面點(diǎn)集提取,斷面曲線(xiàn)插值和三維網(wǎng)格復(fù)原。具體步驟如下:首先,從stl文件提取點(diǎn)云的三維數(shù)據(jù),在三維坐標(biāo)系中生成矢量點(diǎn)集,此外有一個(gè)斷面與矢量點(diǎn)集相交,若斷面平行于xoz平面,則為縱斷面,若平行于yoz平面,則為橫斷面。其中橫斷面沿著x軸平行移動(dòng),縱斷面沿著y軸平行移動(dòng),橫縱斷面各有一個(gè)起始和終止位置。橫斷面的起始位置為x值最小的坐標(biāo),終止位置為x值最大的坐標(biāo);橫斷面的起始位置為y值最小的坐標(biāo),終止位置為y值最大的坐標(biāo)。橫縱斷面在移動(dòng)過(guò)程中,進(jìn)行斷面點(diǎn)集提取,判斷點(diǎn)是否分布均勻,不均勻則重新進(jìn)行斷面點(diǎn)集提取,否則進(jìn)入斷面曲線(xiàn)插值。移動(dòng)到終止位置時(shí)進(jìn)行三維網(wǎng)格復(fù)原完成三維重構(gòu)。實(shí)施例1下面以獨(dú)角仙前翅為例,對(duì)斷面點(diǎn)集提取,斷面曲線(xiàn)插值和三維網(wǎng)格復(fù)原的實(shí)施方式進(jìn)行詳細(xì)描述:一、斷面點(diǎn)集提取圖2所示,所述斷面點(diǎn)集提取基于ε微條曲面法,兼顧了mse和r-square這兩種回歸誤差分析評(píng)價(jià)方法的評(píng)價(jià)指標(biāo)進(jìn)行誤差分析,提取某一橫(縱)斷面點(diǎn)集。首先將三維掃描得到的stl點(diǎn)云圖導(dǎo)入matlab中,讀取每個(gè)點(diǎn)的三維數(shù)據(jù),生成矢量點(diǎn)集,構(gòu)建入三維坐標(biāo)系中。至于具體的點(diǎn)集提取,以橫斷面x=x0為例,由于矢量點(diǎn)集的是離散的,而且密度有限,直接落在這一斷面上的點(diǎn)通常很少,無(wú)法滿(mǎn)足重構(gòu)精度。所述連續(xù)特性的ε微條曲面法,先根據(jù)x=x0±ε,微區(qū)間內(nèi)的掃描點(diǎn),利用tablecurve3d軟件獲得寬度為2ε的微條曲面,x=x0截面與這一曲面的相交線(xiàn),便是一根連續(xù)的曲線(xiàn)。圖3所示,例如提取獨(dú)角仙前翅在x=2cm斷面處的點(diǎn)集,即使是取了2ε微區(qū)間上的點(diǎn),如果ε過(guò)少,總點(diǎn)數(shù)少,不能反映這一斷面的真實(shí)三維空間信息,更別說(shuō)只是x=x0的斷面上的點(diǎn)了。反之如過(guò)大,所取得的點(diǎn)本身離x=x0截面遠(yuǎn),其精度本身就差。這就需要誤差分析和ε取得的優(yōu)化。所述連續(xù)特性的ε微條曲面法將2ε內(nèi)微條曲面上的點(diǎn)集都視同為這一斷面上的掃描點(diǎn)(即將這些點(diǎn)都投影到x=x0截面上),并在后述的誤差分析中將其視作實(shí)際點(diǎn)集。這樣對(duì)應(yīng)于每一個(gè)實(shí)際點(diǎn)的x值,勢(shì)必能在前述連續(xù)曲線(xiàn)上找到與x值相交的點(diǎn),記為該實(shí)際點(diǎn)的提取點(diǎn),有時(shí)會(huì)出現(xiàn)兩個(gè)相交點(diǎn),取z值差較小的。不過(guò),此時(shí)每個(gè)提取點(diǎn)與對(duì)應(yīng)實(shí)際點(diǎn)的z坐標(biāo)值往往是不相等的。因此,需要對(duì)每個(gè)斷面確定一個(gè)最優(yōu)的ε使得這個(gè)截面上所有點(diǎn)產(chǎn)生的誤差精度最小,保證數(shù)據(jù)真實(shí)可靠。以回歸統(tǒng)計(jì)中常用的mse和r-square回歸模型的整體誤差分析手法為基礎(chǔ),提出了經(jīng)過(guò)改進(jìn)的確定斷面點(diǎn)集提取過(guò)程中最優(yōu)的ε值的誤差分析方法,下面作了簡(jiǎn)要介紹。利用如下公式1計(jì)算mse,其表征取點(diǎn)數(shù)據(jù)和實(shí)際數(shù)據(jù)誤差平方和的均值。利用如下公式2計(jì)算r-square,其表征實(shí)際數(shù)據(jù)誤差平方和與取點(diǎn)數(shù)據(jù)和實(shí)際數(shù)據(jù)平均誤差平方和之比的標(biāo)準(zhǔn)化數(shù)據(jù)。公式1、2中,n為某一ε確定后截面提取點(diǎn)的個(gè)數(shù),和zi分別為第i個(gè)提取點(diǎn)和對(duì)應(yīng)實(shí)際點(diǎn)的z坐標(biāo)值,為所有對(duì)應(yīng)實(shí)際點(diǎn)的z坐標(biāo)平均值。鑒于公式2中r-square越大時(shí),取點(diǎn)的誤差越小,而公式1中mse則正好相反。為了更加便于比較,公式3直接取公式2中r-square式中最后一項(xiàng)的絕對(duì)值作為誤差標(biāo)準(zhǔn),并記r-square'進(jìn)行評(píng)斷。r-square'(ε)=1-r-square(ε)(公式3)這樣使得取點(diǎn)誤差最小時(shí),mse和r-square'也均為最小值,并將取到最小值的ε分別記作εmse和εr,但通常這兩者不相等。仍然以提取獨(dú)角仙前翅在x=2cm橫斷面上的點(diǎn)為例給出了具體的mse和r-square'結(jié)果。由圖4可見(jiàn),εmse=184.8μm,εr=160.6μm并不相等。為此,本申請(qǐng)?zhí)岢隽艘粋€(gè)兼顧兩種方法,使綜合取點(diǎn)誤差最小的評(píng)價(jià)指標(biāo)公式4中,右邊第一式分母為mse的最大值,這樣就把mse的指標(biāo)轉(zhuǎn)化為與r-square'具有同等尺度和量綱的指標(biāo)。二、斷面曲線(xiàn)插值所述斷面曲線(xiàn)插值利用單個(gè)斷面的提取點(diǎn)集,應(yīng)用基于排序算法的確定平面點(diǎn)集的凸包程序,程序的輸入?yún)?shù)為斷面提取點(diǎn)坐標(biāo),可得到相應(yīng)斷面的一條樣條曲線(xiàn)。需要說(shuō)明的是,圖5所示,當(dāng)對(duì)斷面插值時(shí),有時(shí)會(huì)出現(xiàn)鋸齒形的情況,這時(shí)候要采取適當(dāng)措施消除鋸齒。基于分段處理法,編寫(xiě)程序,輸入?yún)?shù)為樣條曲線(xiàn)數(shù)據(jù)點(diǎn)坐標(biāo),反復(fù)進(jìn)行三次樣條插值,并同時(shí)實(shí)時(shí)監(jiān)測(cè)是否有梯度變化劇烈的數(shù)據(jù)點(diǎn),如有,則剔除變化劇烈的點(diǎn),直到獲得基本光滑無(wú)鋸齒的斷面樣條曲線(xiàn)。三、三維網(wǎng)格復(fù)原重復(fù)前述斷面曲線(xiàn)的求解過(guò)程,對(duì)所有矢量點(diǎn)集做橫向和縱向斷面進(jìn)行表面插值;代替均勻斷面,反而在曲面變化劇烈的部位施加密集斷面。最終將橫縱斷面樣條曲線(xiàn)在三維空間整合,保證每條橫向曲線(xiàn)與每條縱向曲線(xiàn)都有交點(diǎn),獲得由所有橫縱斷面樣條曲線(xiàn)形成的三維網(wǎng)格骨架,完成三維重建。如6所示,本發(fā)明通過(guò)ε微條曲面法,獲取小片局部擬合,最后在三維空間整合,化局部為整體,與逆向軟件geometrycontrolx2017處理后的獨(dú)角仙前翅圖對(duì)比,重構(gòu)質(zhì)量相差無(wú)幾。此外,在保證重構(gòu)質(zhì)量的前提下,本專(zhuān)利提出的點(diǎn)云處理誤差評(píng)價(jià)指標(biāo)兼顧了mse和r-square這兩種回歸誤差分析評(píng)價(jià)方法,且具有連續(xù)特性,可以保證重構(gòu)過(guò)程中有可靠精選的點(diǎn)云數(shù)據(jù),不僅能提高重構(gòu)的準(zhǔn)確度,更能降低重構(gòu)過(guò)程的消耗。當(dāng)前第1頁(yè)1 2 3 當(dāng)前第1頁(yè)1 2 3 
總結(jié)
以上是生活随笔為你收集整理的matlab三维点云去除背景,一种点云处理三维重建方法与流程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Python绘制饼状图对商品库存进行分析
- 下一篇: matlab中求矩阵的迹,求Matlab