基于ransac算法的旋轉(zhuǎn)面提取方法研究_第1頁
基于ransac算法的旋轉(zhuǎn)面提取方法研究_第2頁
基于ransac算法的旋轉(zhuǎn)面提取方法研究_第3頁
全文預覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

基于ransac算法的旋轉(zhuǎn)面提取方法研究

0基于數(shù)據(jù)分塊與曲面重建的產(chǎn)品的過程逆向工程是將現(xiàn)有的實物或模型數(shù)字化后轉(zhuǎn)換為3d模型,然后在經(jīng)過設計和加工后開發(fā)出類似于更先進的產(chǎn)品的過程。它是近年來CAD領域最熱門的研究方向之一。其中,數(shù)據(jù)分塊和曲面重建是整個逆向工程的核心步驟目前,有關曲面提取技術的研究主要是針對平面、二次曲面等簡單規(guī)則曲面。單東日和柯映林筆者在離散點云的基礎上,提出采用RANSAC(randomsamplingconsensus)1旋轉(zhuǎn)面特征的提取旋轉(zhuǎn)面包括旋轉(zhuǎn)軸和輪廓線兩個參數(shù),可表示為下面的形式由p,t確定旋轉(zhuǎn)軸的方向和位置,旋轉(zhuǎn)面的輪廓線c可以是任何曲線或曲線的組合。在提取旋轉(zhuǎn)面特征時,通常需要先提取旋轉(zhuǎn)軸,然后利用點云切片技術獲取輪廓線的初始信息,進而提取出輪廓線。旋轉(zhuǎn)面上任一點的法向量必定與它的旋轉(zhuǎn)軸相交可以通過求解超定線性方程組計算出旋轉(zhuǎn)軸。利用最小二乘法提取旋轉(zhuǎn)軸盡管簡單,但魯棒性較差,若點云中存在大量的噪聲點,法矢估算不夠準確,將會影響旋轉(zhuǎn)軸的提取精度,進而影響旋轉(zhuǎn)面的提取質(zhì)量。筆者在最小二乘法的基礎上,提出采用RANSAC算法提高估算的抗噪聲能力。2法佐的法佐內(nèi)容p的確定算法依賴于點云的法矢,因此法矢的計算精度將影響旋轉(zhuǎn)軸的提取精度。目前,基于離散點云進行法矢估算的基本方法是以數(shù)據(jù)點p處的法矢估算為例,首先在散亂點集中尋找數(shù)據(jù)點p的k-鄰近(即k個鄰近點),利用k個鄰近點擬合平面,并將擬合平面的法矢作為數(shù)據(jù)點p處的法矢初值。為了保證各數(shù)據(jù)點處法矢方向的協(xié)調(diào)一致(即指向曲面的同一側(cè)),需要對各點處法矢初值的方向進行調(diào)整。然后以數(shù)據(jù)點p為坐標原點,估算出的法矢初值為h軸建立局部坐標系(u,v,h),將點p的k個鄰近點在局部坐標系(u,v,h)中進行拋物面擬合,利用擬合的拋物面以迭代的方式對法矢進行修正直到滿足精度要求為止。詳細算法步驟如圖2所示。3基于ransac算法的旋轉(zhuǎn)軸估算盡管利用上文的改進算法可較大的提高法矢估算的精度,但由于點云中噪聲數(shù)據(jù)的影響,依然還存在不少估算異常的法矢量,稱之為“壞法矢”。如果這些“壞法矢”的數(shù)量較多或偏差較大,那么采用最小二乘法將無法估算出滿足精度的旋轉(zhuǎn)軸。隨機抽樣一致性(RANSAC)算法是一種魯棒性很強的參數(shù)估算方法,目前已被廣泛應用于計算機視覺、數(shù)字圖像處理的很多問題中。它的基本思想是:首先針對具體問題設計出一個目標函數(shù),然后反復抽取盡可能少但又充分多的數(shù)據(jù)點集來估算目標函數(shù)各參數(shù)的初始值,并利用這些參數(shù)初始值把所有的數(shù)據(jù)劃分為所謂的內(nèi)點(Inliers,即滿足估計參數(shù)的點)和外點(Outliers,即不滿足估計參數(shù)的點);最后反過來用所有的內(nèi)點重新估算目標函數(shù)的參數(shù)值。與傳統(tǒng)優(yōu)化算法所不同的是,RANSAC算法最開始是利用一小部分數(shù)據(jù)作為內(nèi)點得到參數(shù)初始值,然后根據(jù)初始值尋找數(shù)據(jù)集合中別的內(nèi)點,這樣可以最大限度的減少噪聲和外點的影響,因此該算法具有較強的魯棒性。利用RANSAC算法估算旋轉(zhuǎn)軸時,具體使用下面步驟實現(xiàn):步驟1使用上文的方法估算離散點云數(shù)據(jù)的法矢。步驟2從估算的法矢中均勻隨機的選取m個法矢量,并構(gòu)造一個有個齊次方程的超定線性方程組,形式如下步驟3求解步驟2所構(gòu)造的超定線性方程組??刹捎锰卣飨蛄抗浪惴ㄇ蠼?求得矩陣(A如果步驟4對點云數(shù)據(jù)的每一個法向量,計算誤差如果步驟5統(tǒng)計步驟4的內(nèi)點數(shù)為為目標函數(shù),利用最小二乘法重新計算參數(shù)步驟6循環(huán)操作步驟2~步驟5,直到計算出所有的步驟7求所有步驟8將計算出的旋轉(zhuǎn)軸Plucker坐標(d,上述算法中步驟6的n表示從法矢集合中的取樣次數(shù),其值的確定與法矢集合中“好法矢”的概率有關。設獲得的法矢集中“好法矢”的概率為p,則i次取樣中只有一個“好樣本”的概率為其符合幾何分布的分布規(guī)律,因此,所需要的取樣次數(shù)n的數(shù)學期望為獲得“好法矢”的概率p以及閾值dot的選擇均與實際數(shù)據(jù)測量的情況有關,在工程計算時,可由技術人員根據(jù)測量狀況交互確定。同樣,為了確保取得“好樣本”,工程計算中取樣次數(shù)n的選擇也要適當大于其數(shù)學期望。提取出旋轉(zhuǎn)面的旋轉(zhuǎn)軸后,將點云數(shù)據(jù)旋轉(zhuǎn)投影至過旋轉(zhuǎn)軸的一個平面上,以獲取輪廓線上的數(shù)據(jù)點集。針對輪廓線數(shù)據(jù)點,經(jīng)過簡化、排序等預處理運算后,將其坐標轉(zhuǎn)換至二維平面坐標系,并進行基于約束的二維輪廓線整體擬合4旋轉(zhuǎn)面模擬數(shù)據(jù)的旋轉(zhuǎn)軸提取為驗證算法有效性和魯棒性,分別用3組旋轉(zhuǎn)面模擬數(shù)據(jù)和兩個零件的實測數(shù)據(jù)進行驗證。模擬數(shù)據(jù)用計算機生成正常數(shù)據(jù)作為第一組,然后分別在正常數(shù)據(jù)基礎上加入兩種不同程度的噪聲(≤0.05和≤0.1)作為另外兩組。圖3(a)是用計算機生成的正常旋轉(zhuǎn)面模擬數(shù)據(jù),其旋轉(zhuǎn)軸的提取結(jié)果如圖3(b)所示。表1是使用本算法和Pottmann算法對3組旋轉(zhuǎn)面模擬數(shù)據(jù)提取旋轉(zhuǎn)軸的結(jié)果及誤差分析表,其中,取樣次數(shù)n取20,內(nèi)點數(shù)閾值dot取100。圖4、圖5分別是對兩個機械零件的測量數(shù)據(jù)提取參數(shù)及重構(gòu)曲面的結(jié)果,(a)是點云數(shù)據(jù),其部分數(shù)據(jù)的法矢估算結(jié)果見(b),(c)是采用本文算法對具有旋轉(zhuǎn)面性質(zhì)的兩個零件的旋轉(zhuǎn)軸及輪廓線的提取結(jié)果,依據(jù)該參數(shù),在UG系統(tǒng)下重新生成兩個零件的CAD模型,其效果圖見(d)。由表1可以看出,在噪聲數(shù)據(jù)較少的情況下,本文算法和Pottmann算法均能計算出較精確的旋轉(zhuǎn)軸,隨著噪聲的增多增大,本算法具有良好的抵抗能力,而Pottmann算法受噪聲影響較大。5基于ransac算法的旋轉(zhuǎn)軸參數(shù)估算方法針對目前常用離散點云法矢估算方法的缺陷,提出了一種改良的算法,為后續(xù)的旋轉(zhuǎn)面特征提取提供了良好的支持,這種方法同樣對逆向工程中下游的其它計算步驟具有一定意義;根據(jù)旋轉(zhuǎn)面在各點處的法矢量與旋轉(zhuǎn)軸相交的幾何約束關系,提出利用RANSAC算

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論