本發(fā)明涉及圖像數(shù)據(jù)處理技術(shù)領(lǐng)域,具體涉及一種3D點(diǎn)云定位及配準(zhǔn)方法、設(shè)備和介質(zhì)。
在工業(yè)檢測(cè)中,精確定位技術(shù)是非常重要的,通常采用點(diǎn)云配準(zhǔn)實(shí)現(xiàn)精確定位。點(diǎn)云配準(zhǔn)是指將多個(gè)不同時(shí)間或不同傳感器采集的點(diǎn)云數(shù)據(jù)進(jìn)行空間位置、姿態(tài)等方面的匹配,以實(shí)現(xiàn)多個(gè)視角或時(shí)間點(diǎn)下的點(diǎn)云數(shù)據(jù)融合,通過對(duì)點(diǎn)云數(shù)據(jù)的配準(zhǔn),實(shí)現(xiàn)工件在三維空間中的精確定位,從而為后續(xù)加工、檢測(cè)等操作提供更精確的基礎(chǔ)數(shù)據(jù)支撐。
在制造車間中,工作人員需要對(duì)零部件進(jìn)行檢測(cè),以確保產(chǎn)品質(zhì)量的穩(wěn)定和可靠。通過點(diǎn)云精確定位技術(shù),可以獲得工件的精確位置信息,從而進(jìn)行高效可靠的檢測(cè);在精密的測(cè)量任務(wù)中,如3D打印、數(shù)控加工、工業(yè)掃描等,需要精確地檢測(cè)和定位工件。通過點(diǎn)云精確定位技術(shù),可以快速得到工件的三維模型,并恢復(fù)與現(xiàn)實(shí)工件尺寸有關(guān)的精度,從而能夠進(jìn)行高精度的測(cè)量和制造。
現(xiàn)有的點(diǎn)云配準(zhǔn)技術(shù)主要包括剛體變換、ICP算法、特征匹配算法以及三角網(wǎng)格配準(zhǔn)。
剛體變換:剛體變換通過對(duì)點(diǎn)云進(jìn)行旋轉(zhuǎn)、平移、縮放等變換,將兩個(gè)點(diǎn)云在同一坐標(biāo)系下重合。優(yōu)點(diǎn)是運(yùn)行速度快、簡(jiǎn)單,但缺點(diǎn)是只能處理剛性變換,不適用于非剛性變換。
ICP算法:迭代近點(diǎn)算法是目前
常用的點(diǎn)云配準(zhǔn)算法,通過迭代計(jì)算點(diǎn)云之間的
小平方誤差,來得到兩個(gè)點(diǎn)云的剛體變換。ICP算法適用于非常規(guī)形狀的點(diǎn)云匹配,但對(duì)于大量噪聲或遮擋等問題,會(huì)導(dǎo)致匹配失敗。
特征匹配算法:特征匹配算法通過提取點(diǎn)云中的特征點(diǎn),并在兩個(gè)點(diǎn)云之間進(jìn)行特征點(diǎn)匹配,從而估計(jì)剛體變換矩陣。常用的特征包括點(diǎn)法向量、曲率、表面特征、直線、平面等。這種方法對(duì)于非剛性變換非常有效,但在點(diǎn)云數(shù)據(jù)量大時(shí),特征提取和匹配時(shí)間可能較長(zhǎng)。
三角網(wǎng)格配準(zhǔn):將點(diǎn)云轉(zhuǎn)換為三角網(wǎng)格模型,再進(jìn)行配準(zhǔn)。在三角網(wǎng)格配準(zhǔn)中,主要采用ICP算法及其變種算法,包括ICP+MLS、ICP+ESF等。這種方法具有高精度,適用于各種形狀的點(diǎn)云配準(zhǔn),但轉(zhuǎn)換耗時(shí)長(zhǎng),對(duì)計(jì)算資源要求較高。
本發(fā)明所要解決的技術(shù)問題是對(duì)3D點(diǎn)云處理計(jì)算量龐大,耗時(shí)長(zhǎng),配準(zhǔn)精度低,目的在于提供一種3D點(diǎn)云定位及配準(zhǔn)方法、設(shè)備和介質(zhì),通過直線對(duì)進(jìn)行轉(zhuǎn)移矩陣的構(gòu)建,優(yōu)化匹配效率,同時(shí)采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,提高轉(zhuǎn)移重合的精度,提高配準(zhǔn)成功的概率。
本發(fā)明 第 一 方面提供一種3D點(diǎn)云定位及配準(zhǔn)方法,包括以下具體步驟:
S1、獲取 第 一 圖像點(diǎn)云數(shù)據(jù),采用滾球法確定點(diǎn)云輪廓數(shù)據(jù);
S2、采用歐式聚類對(duì)輪廓數(shù)據(jù)進(jìn)行分割,統(tǒng)計(jì)分割部分的點(diǎn)云數(shù),保留點(diǎn)云數(shù)大于設(shè)定閾值的輪廓數(shù)據(jù)分割部分;
S3、對(duì)保留的輪廓數(shù)據(jù)進(jìn)行直線的擬合,將擬合后的直線進(jìn)行直線配對(duì)得到直線對(duì);
S4、根據(jù)配對(duì)得到直線對(duì)構(gòu)建轉(zhuǎn)移矩陣,采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,輸出 優(yōu)轉(zhuǎn)移矩陣。
本發(fā)明通過獲取 第 一 圖像點(diǎn)云數(shù)據(jù),采用滾球法確定點(diǎn)云輪廓數(shù)據(jù);采用歐式聚類對(duì)輪廓數(shù)據(jù)進(jìn)行分割,統(tǒng)計(jì)分割部分的點(diǎn)云數(shù),保留點(diǎn)云數(shù)大于設(shè)定閾值的輪廓數(shù)據(jù)分割部分;對(duì)保留的輪廓數(shù)據(jù)進(jìn)行直線的擬合,將擬合后的直線進(jìn)行直線配對(duì)得到直線對(duì);根據(jù)配對(duì)得到直線對(duì)構(gòu)建轉(zhuǎn)移矩陣,采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,輸出 優(yōu)轉(zhuǎn)移矩陣。通過直線對(duì)進(jìn)行轉(zhuǎn)移矩陣的構(gòu)建,優(yōu)化匹配效率,同時(shí)采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,提高轉(zhuǎn)移重合的精度,提高配準(zhǔn)成功的概率。克服了現(xiàn)有技術(shù)中存在的對(duì)3D點(diǎn)云計(jì)算量龐大和特征點(diǎn)提取不夠簡(jiǎn)潔清晰,對(duì)待配準(zhǔn)對(duì)象和目標(biāo)對(duì)象相似度要求高的缺陷。
進(jìn)一步的,所述S1具體包括:
根據(jù)被測(cè)件點(diǎn)云數(shù)據(jù),設(shè)定滾球初始參數(shù)值,確定滾球半徑r和圓心p;
獲取滾球滾動(dòng)軌跡,結(jié)合滾球半徑和圓心,確定點(diǎn)云輪廓數(shù)據(jù)。
進(jìn)一步的,所述確定點(diǎn)云輪廓數(shù)據(jù)包括:
獲取滾球滾動(dòng)軌跡點(diǎn)集P,在點(diǎn)集P中任選一點(diǎn)p1;
獲取過點(diǎn)p和點(diǎn)p1且半徑為0.5r的圓,得到圓心p2和圓心p3;
計(jì)算點(diǎn)集P中不包括點(diǎn)p1以外所有點(diǎn)到p2和p3的距離,得到數(shù)組D;
獲取數(shù)組D中數(shù)值大于r的點(diǎn),確定為邊界點(diǎn),將邊界點(diǎn)進(jìn)行融合,得到點(diǎn)云輪廓數(shù)據(jù)。
進(jìn)一步的,所述S2具體包括:
S21、在獲取點(diǎn)云輪廓數(shù)據(jù)中選取種子點(diǎn),采用KD-Tree進(jìn)行鄰域搜索,遍歷獲取鄰域內(nèi)距離種子點(diǎn)小于設(shè)定閾值的點(diǎn)云數(shù)據(jù),將篩選的點(diǎn)云數(shù)據(jù)和種子點(diǎn)聚類于集合Q;
S22、在集合Q中重新選取種子點(diǎn),重復(fù)步驟S22,直至集合Q中的元素的個(gè)數(shù)不再增加。
進(jìn)一步的,所述對(duì)保留的輪廓數(shù)據(jù)進(jìn)行直線的擬合具體包括:
S31、根據(jù)保留的輪廓數(shù)據(jù),選取擬合樣本數(shù)據(jù)集;
S32、在擬合樣本數(shù)據(jù)集隨機(jī)選取兩點(diǎn)作為假象擬合連線為L(zhǎng),獲取距離L小于閾值s的點(diǎn);
S33、從剩余樣本數(shù)據(jù)集中隨機(jī)抽取兩點(diǎn),重復(fù)步驟S31和步驟S32,直至遍歷距離L小于閾值s的點(diǎn),輸出擬合結(jié)果。
進(jìn)一步的,所述將擬合后的直線進(jìn)行直線配對(duì)得到直線對(duì)具體包括:
將所有直線進(jìn)行兩兩配對(duì),計(jì)算配對(duì)直線的位置參數(shù);
獲取第二圖像點(diǎn)云數(shù)據(jù)中直線對(duì)的位置參數(shù);
基于配對(duì)直線的位置參數(shù)和第二圖像點(diǎn)云數(shù)據(jù)中直線對(duì)的位置參數(shù),從配對(duì)直線中篩選出有效直線對(duì)。
進(jìn)一步的,所述根據(jù)配對(duì)得到直線對(duì)構(gòu)建轉(zhuǎn)移矩陣具體包括:
構(gòu)建有效直線對(duì)的集合A,構(gòu)建第二圖像直線對(duì)的集合B;
計(jì)算集合A和集合B的中心點(diǎn),根據(jù)中心點(diǎn)將集合A和集合B重新中心化,生成集合A′和B′,計(jì)算性的集合A′和B′之間的協(xié)方差矩陣;
采用SVD基于獲得協(xié)方差矩陣的U、S和V,計(jì)算點(diǎn)集A與B之間的旋轉(zhuǎn)矩陣;
根據(jù)旋轉(zhuǎn)矩陣、中心點(diǎn)Pa和Pb,確定轉(zhuǎn)移向量;
根據(jù)旋轉(zhuǎn)矩陣和轉(zhuǎn)移向量確定轉(zhuǎn)移矩陣。
進(jìn)一步的,所述采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,輸出優(yōu)轉(zhuǎn)移矩SVD陣具體包括:
S41、遍歷集合A中的點(diǎn)云數(shù)據(jù),記為i;
S42、在集合B中尋找和i相對(duì)應(yīng)的點(diǎn)云數(shù)據(jù)距離小于閾值的點(diǎn)云數(shù)量;
S43、根據(jù)點(diǎn)云數(shù)量、 第 一 圖像點(diǎn)云點(diǎn)數(shù)和第二圖像點(diǎn)云點(diǎn)數(shù)確定重疊度;
S44、判斷重疊度是否大于重疊度設(shè)定閾值,若否,更新轉(zhuǎn)移矩陣,重復(fù)步驟S41-S43,直至重疊度是否小于重疊度設(shè)定閾值。
本發(fā)明第二方面提供一種電子設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)一種3D點(diǎn)云定位及配準(zhǔn)方法。
本發(fā)明第三方面提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)一種3D點(diǎn)云定位及配準(zhǔn)方法。
本發(fā)明與現(xiàn)有技術(shù)相比,具有如下的優(yōu)點(diǎn)和有益效果:
1.通過直線對(duì)進(jìn)行轉(zhuǎn)移矩陣的構(gòu)建,優(yōu)化匹配效率,同時(shí)采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,提高轉(zhuǎn)移重合的精度,提高配準(zhǔn)成功的概率;
2.通過對(duì)篩選有效直線對(duì)設(shè)置的夾角閾值的改變,針對(duì)不同點(diǎn)云主體數(shù)據(jù)的特點(diǎn),可以通過調(diào)節(jié)閾值得到相對(duì)來說少但又足夠有代表性的直線對(duì),提高準(zhǔn)確性和計(jì)算速度;
3.可以通過調(diào)節(jié)直線對(duì)角度差和距離差閾值來對(duì)配對(duì)直線對(duì)的相似性做調(diào)節(jié),當(dāng)點(diǎn)云噪點(diǎn)過多,相似性下降時(shí),放寬這兩個(gè)閾值,可以得到更多的直線對(duì)對(duì)應(yīng)關(guān)系,提高配準(zhǔn)成功的概率;
4.通過重疊度的計(jì)算,采用在變換后的第二圖像點(diǎn)云中的每一點(diǎn)的鄰域內(nèi)搜索,是否在第二圖像點(diǎn)云中有近點(diǎn),提高了重合的精度。
為了更清楚地說明本發(fā)明示例性實(shí)施方式的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,應(yīng)當(dāng)理解,以下附圖僅示出了本發(fā)明的某些實(shí)施例,因此不應(yīng)被看作是對(duì)范圍的限定,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他相關(guān)的附圖。在附圖中:
圖1為本發(fā)明實(shí)施例中的定位檢測(cè)方法;
圖2為本發(fā)明實(shí)施例中的平移量小時(shí)的配準(zhǔn)對(duì)比圖;
圖3為本發(fā)明實(shí)施例中的平移量大時(shí)的配準(zhǔn)對(duì)比圖;
圖4為本發(fā)明實(shí)施例中的旋轉(zhuǎn)時(shí)的配準(zhǔn)對(duì)比圖;
圖5為本發(fā)明實(shí)施例中的旋轉(zhuǎn)加不共面時(shí)的配準(zhǔn)對(duì)比圖;
圖6為本發(fā)明實(shí)施例中的平移時(shí)的配準(zhǔn)對(duì)比圖;
圖7為本發(fā)明實(shí)施例中的旋轉(zhuǎn)時(shí)的配準(zhǔn)對(duì)比圖;
圖8為本發(fā)明實(shí)施例中的旋轉(zhuǎn)加平移加不共面時(shí)的配準(zhǔn)對(duì)比圖。
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下面結(jié)合實(shí)施例和附圖,對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明,本發(fā)明的示意性實(shí)施方式及其說明僅用于解釋本發(fā)明,并不作為對(duì)本發(fā)明的限定。
作為一種可能的實(shí)施例,如圖1所示,本實(shí)施例 第 一 方面提供一種3D點(diǎn)云定位及配準(zhǔn)方法,包括以下具體步驟:
S1、獲取 第 一 圖像點(diǎn)云數(shù)據(jù),采用滾球法確定點(diǎn)云輪廓數(shù)據(jù);
S2、采用歐式聚類對(duì)輪廓數(shù)據(jù)進(jìn)行分割,統(tǒng)計(jì)分割部分的點(diǎn)云數(shù),保留點(diǎn)云數(shù)大于設(shè)定閾值的輪廓數(shù)據(jù)分割部分;
S3、對(duì)保留的輪廓數(shù)據(jù)進(jìn)行直線的擬合,將擬合后的直線進(jìn)行直線配對(duì)得到直線對(duì);
S4、根據(jù)配對(duì)得到直線對(duì)構(gòu)建轉(zhuǎn)移矩陣,采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,輸出 優(yōu)轉(zhuǎn)移矩陣。
本實(shí)施例通過直線對(duì)進(jìn)行轉(zhuǎn)移矩陣的構(gòu)建,優(yōu)化匹配效率,同時(shí)采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,提高轉(zhuǎn)移重合的精度,提高配準(zhǔn)成功的概率。克服了現(xiàn)有技術(shù)中存在的對(duì)3D點(diǎn)云計(jì)算量龐大和特征點(diǎn)提取不夠簡(jiǎn)潔清晰,對(duì)待配準(zhǔn)對(duì)象和目標(biāo)對(duì)象相似度要求高的缺陷。
具體的,步驟S1中,采用滾球法確定點(diǎn)云輪廓數(shù)據(jù)是一種快速獲得邊界的方法,比按照根據(jù)相鄰點(diǎn)法向量夾角篩選邊界的方法計(jì)算速度更快,提取到的是主要輪廓,而我們關(guān)心的也正是大輪廓特征,而不需要非常細(xì)節(jié)的輪廓特征;
步驟S2中,通過對(duì)各種輪廓設(shè)定點(diǎn)數(shù)閾值后再聚類,在符合要求的輪廓類中進(jìn)行直線提取,有去噪的作用,篩選出真正反應(yīng)輪廓信息的點(diǎn)做直線擬合;
步驟S3中,通過計(jì)算直線對(duì)的夾角,作為下一步直線對(duì)配對(duì)的依據(jù);
步驟S4中,通過只需要用直線對(duì)中的三個(gè)點(diǎn)(直線對(duì)的中心點(diǎn)p1,中心點(diǎn)在兩個(gè)直線上的投影點(diǎn)沿著各自直線的方向向量滑動(dòng)一個(gè)單位長(zhǎng)度得到點(diǎn)p2,p3),通過SVD(Singular Value Decomposition)奇異值分解的方法計(jì)算轉(zhuǎn)移矩陣,比傳統(tǒng)的用點(diǎn)云中所有的點(diǎn)先一一尋找對(duì)應(yīng)點(diǎn),再用所有點(diǎn)計(jì)算轉(zhuǎn)移矩陣的方法更快,且克服了傳統(tǒng)方法因點(diǎn)云位置關(guān)系相差大,而無法得到正確的點(diǎn)對(duì)應(yīng)關(guān)系,從而計(jì)算不出能夠配準(zhǔn)的轉(zhuǎn)移矩陣,本方法無論是在相差大還是小的情況下都適用。
S1具體包括:根據(jù)被測(cè)件點(diǎn)云數(shù)據(jù),設(shè)定滾球初始參數(shù)值,確定滾球半徑r和圓心p;獲取滾球滾動(dòng)軌跡,結(jié)合滾球半徑和圓心,確定點(diǎn)云輪廓數(shù)據(jù)。提取輪廓用到的是alphashapes算法,具有簡(jiǎn)單快速性,同時(shí)提取內(nèi)外所有輪廓的優(yōu)點(diǎn)。原理如下:對(duì)于一個(gè)點(diǎn)云,若一個(gè)半徑為α的圓,繞其進(jìn)行滾動(dòng)。若滾動(dòng)圓半徑α足夠小時(shí),則點(diǎn)云中每一點(diǎn)均為邊界點(diǎn);若適當(dāng)增大到一定程度,其只在邊界點(diǎn)上進(jìn)行滾動(dòng),其滾動(dòng)的軌跡為點(diǎn)云邊界。
確定點(diǎn)云輪廓數(shù)據(jù)包括:
獲取滾球滾動(dòng)軌跡點(diǎn)集P,在點(diǎn)集P中任選一點(diǎn)p1;
獲取過點(diǎn)p和點(diǎn)p1且半徑為0.5r的圓,得到圓心p2和圓心p3;
計(jì)算點(diǎn)集P中不包括點(diǎn)p1以外所有點(diǎn)到p2和p3的距離,得到數(shù)組D;
獲取數(shù)組D中數(shù)值大于r的點(diǎn),確定為邊界點(diǎn),將邊界點(diǎn)進(jìn)行融合,得到點(diǎn)云輪廓數(shù)據(jù)。
提取到的點(diǎn)云輪廓數(shù)據(jù)中,有大輪廓的也有小輪廓的,從大輪廓點(diǎn)云中提取直線,對(duì)整體點(diǎn)云的姿態(tài)具有更好的代表性。區(qū)分是大輪廓還是小輪廓的方法是:采用歐式聚類的方法先對(duì)空間中連成一體的各個(gè)輪廓做彼此分割,統(tǒng)計(jì)每一個(gè)分割部分中點(diǎn)云的點(diǎn)數(shù),對(duì)點(diǎn)數(shù)小的類進(jìn)行去除。具體包括:
在獲取點(diǎn)云輪廓數(shù)據(jù)中選取種子點(diǎn),采用KD-Tree進(jìn)行鄰域搜索,遍歷獲取鄰域內(nèi)距離種子點(diǎn)小于設(shè)定閾值的點(diǎn)云數(shù)據(jù),將篩選的點(diǎn)云數(shù)據(jù)和種子點(diǎn)聚類于集合Q;
在集合Q中重新選取種子點(diǎn),重復(fù)上述步驟,直至集合Q中的元素的個(gè)數(shù)不再增加。
對(duì)保留的輪廓數(shù)據(jù)進(jìn)行直線的擬合具體包括:
根據(jù)保留的輪廓數(shù)據(jù),選取擬合樣本數(shù)據(jù)集;
在擬合樣本數(shù)據(jù)集隨機(jī)選取兩點(diǎn)作為假象擬合連線為L,獲取距離L小于閾值s的點(diǎn);
從剩余樣本數(shù)據(jù)集中隨機(jī)抽取兩點(diǎn),重復(fù)上述步驟,直至遍歷距離L小于閾值s的點(diǎn),輸出擬合結(jié)果。
將擬合后的直線進(jìn)行直線配對(duì)得到直線對(duì)具體包括:
將所有直線進(jìn)行兩兩配對(duì),計(jì)算配對(duì)直線的位置參數(shù);
獲取第二圖像點(diǎn)云數(shù)據(jù)中直線對(duì)的位置參數(shù);
基于配對(duì)直線的位置參數(shù)和第二圖像點(diǎn)云數(shù)據(jù)中直線對(duì)的位置參數(shù),從配對(duì)直線中篩選出有效直線對(duì);
計(jì)算步驟包括:
獲取兩條異面直線m和直線n,獲取直線m上一點(diǎn)M及其方向向量
獲取直線n上一點(diǎn)N及其方向向量
確定兩條異面直線m和直線n的距離d和夾角θ。
根據(jù)配對(duì)得到直線對(duì)構(gòu)建轉(zhuǎn)移矩陣具體包括:
構(gòu)建有效直線對(duì)的集合A,構(gòu)建第二圖像直線對(duì)的集合B;
計(jì)算集合A和集合B的中心點(diǎn)Pa和Pb:
根據(jù)中心點(diǎn)將集合A和集合B重新中心化,生成集合A′和B′,計(jì)算性的集合A′和B′之間的協(xié)方差矩陣;
采用SVD基于獲得協(xié)方差矩陣的U、S和V,計(jì)算點(diǎn)集A與B之間的旋轉(zhuǎn)矩陣R;
根據(jù)旋轉(zhuǎn)矩陣R中心點(diǎn)Pa和Pb,確定轉(zhuǎn)移向量t,t=Pb-R×Pa;
根據(jù)旋轉(zhuǎn)矩陣R和轉(zhuǎn)移向量t確定轉(zhuǎn)移矩陣。
采用重疊度評(píng)價(jià)函數(shù)優(yōu)化轉(zhuǎn)移矩陣,輸出優(yōu)轉(zhuǎn)移矩陣具體包括:
遍歷集合A中的點(diǎn)云數(shù)據(jù),記為i;
在集合B中尋找和i相對(duì)應(yīng)的點(diǎn)云數(shù)據(jù)距離小于閾值的點(diǎn)云數(shù)量;
根據(jù)點(diǎn)云數(shù)量、第 一 圖像點(diǎn)云點(diǎn)數(shù)和第二圖像點(diǎn)云點(diǎn)數(shù)確定重疊度;
判斷重疊度是否大于重疊度設(shè)定閾值,若否,更新轉(zhuǎn)移矩陣,重復(fù)上述步驟,直至重疊度是否小于重疊度設(shè)定閾值。
在點(diǎn)云直線集里面篩選有效直線對(duì)所給的夾角閾值可以預(yù)先設(shè)置為10°,這代表著從直線集中得到有效直線對(duì)的夾角為10°~90°。具體的,針對(duì)不同點(diǎn)云主體數(shù)據(jù)的特點(diǎn),可以通過調(diào)節(jié)閾值得到相對(duì)來說少但又足夠有代表性的直線對(duì),提高準(zhǔn)確性和計(jì)算速度。夾角閾值的取值范圍是0°~90°。
尋找不同點(diǎn)云中的直線對(duì)的對(duì)應(yīng)關(guān)系時(shí),可以通過調(diào)節(jié)直線對(duì)角度差和距離差閾值來對(duì)配對(duì)直線對(duì)的相似性做調(diào)節(jié),當(dāng)點(diǎn)云噪點(diǎn)過多,相似性下降時(shí),放寬這兩個(gè)閾值,可以得到更多的直線對(duì)對(duì)應(yīng)關(guān)系,提高配準(zhǔn)成功的概率。
對(duì)于重疊度的計(jì)算,采用在變換后的source中的每一點(diǎn)的鄰域r內(nèi)搜索,是否在target中有近點(diǎn)。這個(gè)半徑參數(shù)r調(diào)節(jié)了源點(diǎn)云變換后和目標(biāo)點(diǎn)云相比,重合的精度,越小則輸出的配準(zhǔn)結(jié)果約精確。
本實(shí)施例第二方面提供一種電子設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,處理器執(zhí)行程序時(shí)實(shí)現(xiàn)一種3D點(diǎn)云定位及配準(zhǔn)方法。
本實(shí)施例第三方面提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)一種3D點(diǎn)云定位及配準(zhǔn)方法。
作為一種可能的實(shí)施例,如圖2-圖5所示,提供了不同配置情況的配置對(duì)比圖,圖2-圖5中左邊均為配準(zhǔn)前 第 一 圖像和第二圖像的位置關(guān)系,右邊是 第 一 圖像和第二圖像配準(zhǔn)后的位置關(guān)系。其中, 第 一 圖像為被測(cè)件的位置圖像,第二圖像為被測(cè)件定位配準(zhǔn)后的目標(biāo)位置圖像。
實(shí)驗(yàn)一共檢驗(yàn)了四種位置關(guān)系下的配準(zhǔn)效果, 第 一 圖像和第二圖像的點(diǎn)云的初始位置關(guān)系:①平移量小,②平移量大,③旋轉(zhuǎn),④旋轉(zhuǎn)加不共面,手機(jī)中框不是平放于實(shí)驗(yàn)臺(tái)時(shí)會(huì)出現(xiàn)不共面情況,比如:掃描時(shí)手機(jī)中框和平臺(tái)之間有異物。
四種情況下,點(diǎn)云的重疊度均達(dá)到要求,輸出了有效的轉(zhuǎn)移矩陣。