一種基于抽象凸支撐面的三維曲面擬合方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種數(shù)學(xué)建模、計算機(jī)科學(xué)與圖形學(xué)、模式識別等應(yīng)用領(lǐng)域,尤其涉及 的是,一種基于抽象凸支撐面的三維曲面擬合方法。
【背景技術(shù)】
[0002] 在科學(xué)和工程問題研究中,通過采樣、實(shí)驗(yàn)等方法獲得若干離散的數(shù)據(jù),根據(jù)獲得 的這些離散數(shù)據(jù),我們可以得到一個與已知數(shù)據(jù)相吻合的曲面,這過程就叫做曲面擬合。 曲面擬合廣泛應(yīng)用于計算科學(xué)、計算機(jī)圖形學(xué)、逆向工程、數(shù)值計算等領(lǐng)域,并占有十分重 要的地位。我們對某一未知的三維空間的研究,為了形象逼真的探索其內(nèi)在的規(guī)律,以及 把握其發(fā)展方向,了解其發(fā)展的趨勢,曲面擬合對問題的研究占有重要的地位。因此,對 曲面擬合方法的全面研究具有積極的現(xiàn)實(shí)意義。目前,曲面擬合是計算機(jī)輔助幾何設(shè)計 (Computer-Aided Geometric Design, CA⑶)中的一個重要研究課題,曲面擬合的方法有很 多,常用的方法有最小二乘法和插值法等。
[0003] 基于最小二乘法的曲面擬合是根據(jù)已知的數(shù)據(jù)(<,<,/> (k = 1,2, ...,K)(其中 4和< 為測定量,/為其對應(yīng)的函數(shù)值,K為數(shù)據(jù)點(diǎn)的數(shù)量規(guī)模大小),方法是選取一個使 得&江)(均方根誤差)最小的近似的函數(shù)f(x);其最大優(yōu)點(diǎn)是可以根據(jù)實(shí)際使用情況選擇 不同的擬合精度;但基于最小二乘法的曲面擬合技術(shù)不能保留原始數(shù)據(jù)點(diǎn)。因此,在需要保 留原數(shù)據(jù)點(diǎn),或者原始數(shù)據(jù)點(diǎn)非常重要的應(yīng)用場合,使用最小二乘法等常用方法就不合適 了。基于插值法的曲面擬合根據(jù)插值原則構(gòu)造n次多項(xiàng)SP n(x)dtPn(x)在各測試點(diǎn)的數(shù) 據(jù)正好通過實(shí)測點(diǎn);雖然插值法能夠保留原數(shù)據(jù)點(diǎn),但是實(shí)際操作過程中,我們需要采集很 多樣點(diǎn)來反映實(shí)際情況,使得插值多項(xiàng)式P n(x)的次數(shù)變得很高,增加了計算量,對擬合精 度也產(chǎn)生較大的影響。
[0004] 因此,目前的曲面擬合技術(shù)存在著很多缺陷,需要我們改進(jìn)。
【發(fā)明內(nèi)容】
[0005] 為了克服已有方法不能保留原數(shù)據(jù)點(diǎn)、計算量大、擬合精度較低的不足,本發(fā)明 提供一種在保證擬合精度的同時、能保留原數(shù)據(jù)點(diǎn)、計算量小、擬合精度較高的基于抽象凸 支撐面的三維曲面擬合方法。
[0006] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:
[0007] -種基于抽象凸支撐面的三維曲面擬合方法,所述三維曲面擬合方法包括以下步 驟:
[0008] 1)參數(shù)初始化:設(shè)置常數(shù)M,輸入數(shù)據(jù)點(diǎn)(Xl,x2,y),其中 Xl為第一橫坐 標(biāo),x2為第二橫坐標(biāo),其中y為函數(shù)值,根據(jù)已有的數(shù)據(jù)點(diǎn)確定變量^的定義域
【主權(quán)項(xiàng)】
1. 一種基于抽象凸支撐面的三維曲面擬合方法,其特征在于:所述三維曲面擬合方法 包括以下步驟: 1) 參數(shù)初始化:設(shè)置常數(shù)M,輸入數(shù)據(jù)點(diǎn)(Xl,x2,y),其中X1為第一橫坐 標(biāo),X2為第二橫坐標(biāo),其中y為函數(shù)值,根據(jù)已有的數(shù)據(jù)點(diǎn)確定變量^的定義域 Z) =IA;I4幺/' , /=1 ,2丨?,ai表示Xi的下界,bi表示X都上界; 2) 根據(jù)已知點(diǎn)建立三叉樹,對單位單純形區(qū)域進(jìn)行分割: 2. 1)以矩陣R表示單位單純形區(qū)域,并以此為根節(jié)點(diǎn)建立樹;
2. 2)對已知點(diǎn)X= (X1,X2)進(jìn)行轉(zhuǎn)換,即將點(diǎn)X轉(zhuǎn)化到單位單純形區(qū)域中的點(diǎn)X'; 2. 3)以根節(jié)點(diǎn)為起點(diǎn),搜索整棵樹,查找已知點(diǎn)X'落入的葉子節(jié)點(diǎn)對應(yīng)的區(qū)域; 2.3. 1)將落入父節(jié)點(diǎn)對應(yīng)區(qū)域內(nèi)的點(diǎn)X'映射到單位單純形區(qū)域內(nèi)的點(diǎn)X"; 2. 3. 2)遍歷子節(jié)點(diǎn),查找點(diǎn)X"落入子節(jié)點(diǎn)對應(yīng)的區(qū)域; 2. 3. 3)判斷該節(jié)點(diǎn)是否為葉子節(jié)點(diǎn),不是葉子節(jié)點(diǎn)則轉(zhuǎn)人2. 3. 1)繼續(xù)遍歷樹,否則繼 續(xù); 2. 4)在葉子節(jié)點(diǎn)插入轉(zhuǎn)換后的已知點(diǎn),分割父對應(yīng)的區(qū)域: 2. 4. 1)計算該節(jié)點(diǎn)矩陣的逆矩陣; 2.4.2) 將落入父節(jié)點(diǎn)對應(yīng)區(qū)域內(nèi)的點(diǎn)X',映射到單位單純形區(qū)域內(nèi)得到點(diǎn)X"; 2.4.3) 用X"分別取代單位矩陣的第一行、第二行、第三行生成三個不同的矩陣,以這 三個矩陣作為父節(jié)點(diǎn)的三個子節(jié)點(diǎn),將父節(jié)點(diǎn)對應(yīng)的區(qū)域分割為三個區(qū)域; 3) 計算下界估計值: 3.1) 設(shè)置采樣步長,并在定義域{(X1,x2)IX1G(aublx#(a2,b2)}范圍內(nèi)采樣; 3. 2)執(zhí)行步驟2. 3)找到采樣點(diǎn)落入的葉子節(jié)點(diǎn)對應(yīng)的區(qū)域; 3. 3)將函數(shù)值y加一適當(dāng)?shù)腗轉(zhuǎn)化為正齊次遞增函數(shù),計算葉子節(jié)點(diǎn)對應(yīng)區(qū)域頂點(diǎn)的 支撐向量; 3. 4)計算采樣點(diǎn)的下界估計值y' 1; 3.5)由于在步驟3. 3)中轉(zhuǎn)化為正齊次遞增函數(shù)時加了一個常數(shù)M,所以求得的值y'i應(yīng)減去M得到實(shí)際下界估計值Y1,即Y1=y'i_M; 3. 6)輸出實(shí)際下界估計值yi及其對應(yīng)的采樣點(diǎn)X。; 4) 計算上界估計值: 4.1) 把數(shù)據(jù)點(diǎn)中的y取負(fù); 4. 2)按步驟3)計算下界估計值; 4. 3)對步驟4. 2所得的下界估計值取負(fù),即為上界估計值yu; 4. 4)輸出上界估計值yu及其對應(yīng)的采樣點(diǎn)X。;
2.如權(quán)利要求1所述基于抽象凸支撐面的三維曲面擬合方法,其特征在于:步驟2. 2) 中將點(diǎn)X轉(zhuǎn)化到單位單純形中的方法: 根據(jù)公式(1)將點(diǎn)X= (X1,X2)轉(zhuǎn)化到單位單純形中:
3. 如權(quán)利要求2所述的基于抽象凸支撐面的三維曲面擬合方法,其特征在于:步驟 2. 3. 1)中將落入父節(jié)點(diǎn)對應(yīng)區(qū)域內(nèi)的點(diǎn)映射到單位單純形區(qū)域中的方法: 根據(jù)公式(2)將點(diǎn)X'映射到單位單純形區(qū)域內(nèi)的點(diǎn)X": X" =L1X' (2)其中,T1為點(diǎn)X'所在區(qū)域?qū)?yīng)矩陣L的逆矩陣。
4. 如權(quán)利要求3所述基于抽象凸支撐面的三維曲面擬合方法,其特征在于:步驟 2. 3. 2)中查找點(diǎn)X"落入子節(jié)點(diǎn)對應(yīng)的區(qū)域的方法: 若點(diǎn)X"落入子節(jié)點(diǎn)對應(yīng)的區(qū)域則其滿足公式(3):
其中,X'i表示點(diǎn)X"所在子節(jié)點(diǎn)對應(yīng)的區(qū)域的三個頂點(diǎn)。
5. 如權(quán)利要求4所述基于抽象凸支撐面的三維曲面擬合方法,其特征在于:步驟2)中 對單位單純形區(qū)域的分割方法: 以3維單位矩陣表示單位單純形區(qū)域,并以此矩陣為根節(jié)點(diǎn)建立樹,根據(jù)公式(1)對已 知點(diǎn)X=(X1, X2)進(jìn)行轉(zhuǎn)換,即將點(diǎn)X轉(zhuǎn)化到單位單純形區(qū)域中,以根節(jié)點(diǎn)為起點(diǎn),遍歷子節(jié) 點(diǎn),根據(jù)已知點(diǎn)更新樹,每遍歷一次子節(jié)點(diǎn),都需要根據(jù)公式(2)將已知點(diǎn)映射到單位單純 形區(qū)域中,再根據(jù)公式(3)查找點(diǎn)X"落入的葉子節(jié)點(diǎn)對應(yīng)的區(qū)域,并在該葉子節(jié)點(diǎn)插入該 子節(jié)點(diǎn)。
6. 如權(quán)利要求1~5之一所述基于抽象凸支撐面的三維曲面擬合方法,其特征在于: 步驟3. 3)中計算葉子節(jié)點(diǎn)對應(yīng)區(qū)域頂點(diǎn)的支撐向量的方法: 根據(jù)公式(4),葉子節(jié)點(diǎn)對應(yīng)區(qū)域頂點(diǎn)的支撐向量為Ik:
其中,X' =(x' 1>X' 2,x' 3),f(x')為X'對應(yīng)點(diǎn)X處的函數(shù)值y。
7. 如權(quán)利要求6所述基于抽象凸支撐面的三維曲面擬合方法,其特征在于:步驟3. 4) 中計算計算采樣點(diǎn)的下界估計值的方法: 根據(jù)公式(5),采樣點(diǎn)的下界估計值為71':
【專利摘要】一種基于抽象凸支撐面的三維曲面擬合方法,包括以下步驟:首先,以單位單純形矩陣為根建立三叉樹,并根據(jù)已知點(diǎn)對單位單純形進(jìn)行拆分來更新三叉樹;然后,設(shè)置一個采樣步長,在x的定義域范圍內(nèi)進(jìn)行采樣,找出采樣點(diǎn)所屬的樹葉子節(jié)點(diǎn),計算出采樣點(diǎn)所屬樹葉子節(jié)點(diǎn)區(qū)域的下界估計值;其次,連接所有采樣點(diǎn)得到待擬合曲面的下界估計,并以同樣的方法求得待擬合曲面的上界鋸齒估計;最后,取上界和下界估計的平均得到的曲面即為擬合曲面。本發(fā)明提供一種計算量小,可以保留原始數(shù)據(jù)點(diǎn),擬合效率和準(zhǔn)確率高的基于抽象凸支撐面的三維曲面擬合方法。
【IPC分類】G06T17-00
【公開號】CN104821009
【申請?zhí)枴緾N201510163039
【發(fā)明人】張貴軍, 陳凱, 周曉根, 郝小虎, 俞旭鋒, 徐東偉
【申請人】浙江工業(yè)大學(xué)
【公開日】2015年8月5日
【申請日】2015年4月8日