本發(fā)明涉及樣條曲面擬合方法領(lǐng)域,尤其涉及一種基于分區(qū)局部光順權(quán)因子的t樣條曲面擬合方法。
背景技術(shù):
樣條曲面技術(shù)是cad/cam領(lǐng)域的核心技術(shù)之一,其以多項(xiàng)式參數(shù)曲面的形式對(duì)于模型的幾何形狀進(jìn)行描述。t樣條技術(shù)是近年被提出的一種先進(jìn)的樣條曲面造型技術(shù),適合與用單張曲面表達(dá)復(fù)雜的幾何形狀,因而受到了學(xué)術(shù)界的廣泛關(guān)注。t樣條的曲面造型技術(shù)是t樣條技術(shù)研究的核心之一,而t樣條曲面擬合技術(shù)是其中最為基礎(chǔ)的環(huán)節(jié),提高曲面擬合方法的效率和效果是提高樣條曲面造型技術(shù)的關(guān)鍵之一。
t樣條曲面擬合方法通常以參數(shù)化點(diǎn)云或參數(shù)化三角網(wǎng)格為輸入,對(duì)于給定的t網(wǎng)格,可以依據(jù)輸入點(diǎn)與曲面上對(duì)應(yīng)點(diǎn)的誤差距離,通過最小二乘法建立線性方程組,求解擬合曲面的控制點(diǎn)坐標(biāo),進(jìn)而獲得整張曲面的解析表達(dá)式。但是當(dāng)參數(shù)化不理想,或是輸入點(diǎn)在曲面參數(shù)域上的分布嚴(yán)重不均時(shí),擬合結(jié)果可能會(huì)變得不穩(wěn)定,從而產(chǎn)生折皺等不良特征。在擬合過程中引入光順能量函數(shù)是提高擬合曲面光順性的常用方法。該方法通過在曲面參數(shù)域均勻選取光順性檢驗(yàn)點(diǎn),在每一個(gè)檢驗(yàn)點(diǎn)處建立一個(gè)光順能量方程,將其疊加到擬合方程組中,獲得的目標(biāo)函數(shù)優(yōu)化方程組被用于求解最終的擬合曲面。這種方法雖然可以通過全局光順權(quán)重調(diào)節(jié)光順與精度在擬合計(jì)算中的權(quán)重,但在某些情況下,可能會(huì)出現(xiàn)一張曲面的某些區(qū)域精度過低,而另一些區(qū)域光順性不佳的情況。此時(shí),這種方法難以同時(shí)滿足不同區(qū)域的需求。另一方面,為保證結(jié)果的可靠性,均勻布置光順性檢驗(yàn)點(diǎn)的方法需要添加大量的光順性檢驗(yàn)點(diǎn),為計(jì)算帶來了額外的負(fù)擔(dān)。
目前所提出的t樣條曲面擬合方法均以全局光順權(quán)重的方式設(shè)置光順能量權(quán)重,并沒有對(duì)不同區(qū)域區(qū)別對(duì)待,因此無法局部調(diào)節(jié)曲面的光順性。且現(xiàn)有方法中光順性檢驗(yàn)點(diǎn)均為均勻分布,沒有充分考慮t網(wǎng)格在不同區(qū)域的差異性,影響了計(jì)算效率。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提出一種基于分區(qū)局部光順權(quán)因子的t樣條曲面擬合方法,在擬合過程中充分的考慮模型形狀的復(fù)雜性以及t網(wǎng)格在不同區(qū)域的非均勻性,優(yōu)化光順性檢驗(yàn)點(diǎn)的布置以及光順權(quán)重的分配,從而提高擬合曲面質(zhì)量并提高計(jì)算效率。
一種基于分區(qū)局部光順權(quán)因子的t樣條曲面擬合方法,包括如下步驟:
步驟1、輸入?yún)?shù)化的三角網(wǎng)格、初始t樣條以及t樣條的控制網(wǎng)格,將t樣條的控制網(wǎng)格命名為t網(wǎng)格;
步驟2、采用四叉樹算法對(duì)曲面參數(shù)域進(jìn)行區(qū)域分割,得到曲面參數(shù)域的若干子區(qū)域;
步驟3、計(jì)算獲得每個(gè)子區(qū)域的局部光順權(quán)因子;
步驟4、根據(jù)t網(wǎng)格在參數(shù)域上原像的拓?fù)浣Y(jié)構(gòu),生成光順性檢驗(yàn)點(diǎn)集;
步驟5、根據(jù)光順性檢驗(yàn)點(diǎn)的密度權(quán)重與其所在子區(qū)域的局部光順權(quán)因子,計(jì)算每個(gè)光順性檢驗(yàn)點(diǎn)局部光順權(quán)重;
步驟6、構(gòu)建每個(gè)三角網(wǎng)格頂點(diǎn)的擬合方程,根據(jù)每個(gè)光順性檢驗(yàn)點(diǎn)局部光順權(quán)重、全局光順權(quán)重構(gòu)建每個(gè)光順性檢驗(yàn)點(diǎn)的光順性方程,組成關(guān)于控制點(diǎn)坐標(biāo)的超定方程組;
步驟7、利用最小二乘法求解關(guān)于控制點(diǎn)坐標(biāo)的超定方程組,得到最終的t樣條曲面擬合結(jié)果。
所述的參數(shù)化三角網(wǎng)格的每一個(gè)頂點(diǎn)擁有特定的參數(shù)坐標(biāo)(u,v),對(duì)應(yīng)映射到曲面參數(shù)域上的相應(yīng)的位置。輸入t網(wǎng)格中各條邊的節(jié)點(diǎn)距k、和各個(gè)控制點(diǎn)的權(quán)重w等參數(shù)都已給定。
進(jìn)一步,所述步驟2對(duì)曲面參數(shù)域進(jìn)行區(qū)域分割的具體步驟為:
步驟2.1、設(shè)置細(xì)分閾值n,將整個(gè)曲面參數(shù)域作為初始子區(qū)域;
步驟2.2、判斷所有當(dāng)前子區(qū)域中包含的三角網(wǎng)格頂點(diǎn)數(shù)目是否小于細(xì)分閾值n,若是,結(jié)束區(qū)域分割,若否,執(zhí)行步驟2.3;
步驟2.3、采用四插樹算法對(duì)所有包含三角網(wǎng)格頂點(diǎn)數(shù)目超過n的子區(qū)域進(jìn)行區(qū)域細(xì)分,得到當(dāng)前子區(qū)域,然后跳轉(zhuǎn)執(zhí)行步驟2.2。
進(jìn)一步地,所述步驟3包括如下步驟:
步驟3.1、遍歷三角網(wǎng)格的所有頂點(diǎn),計(jì)算得到所有頂點(diǎn)的平均曲率,其中,第i個(gè)頂點(diǎn)的平均曲率記為hi;
步驟3.2、計(jì)算各個(gè)子區(qū)域內(nèi),所有頂點(diǎn)的平均曲率的均值以及區(qū)域內(nèi)頂點(diǎn)的密度,對(duì)于第j個(gè)子區(qū)域,其平均曲率的均值記為hj,其頂點(diǎn)密度記為ηj;
步驟3.3、計(jì)算所有頂點(diǎn)的平均曲率的均值
步驟3.4、計(jì)算所有子區(qū)域的局部光順權(quán)因子
進(jìn)一步地,所述步驟4包括:
步驟4.1、將t網(wǎng)格原像上所有的t節(jié)點(diǎn)延長,獲得拓展t網(wǎng)格;
步驟4.2、遍歷拓展t網(wǎng)格中所有的矩形網(wǎng)格,在每個(gè)矩形網(wǎng)格對(duì)角線交點(diǎn)處布置一個(gè)光順性檢驗(yàn)點(diǎn),這些點(diǎn)構(gòu)成集合記為ψ;
步驟4.3、遍歷拓展t網(wǎng)格中所有的節(jié)點(diǎn),在每個(gè)節(jié)點(diǎn)處布置一個(gè)光順性檢驗(yàn)點(diǎn),這些點(diǎn)構(gòu)成集合記為φ,ψ和φ的并集為光順性檢驗(yàn)點(diǎn)集ω。
進(jìn)一步地,所述步驟5包括:
步驟5.1、計(jì)算光順性檢驗(yàn)點(diǎn)關(guān)聯(lián)區(qū)域的面積,由此獲得第i個(gè)光順性檢驗(yàn)點(diǎn)密度權(quán)重σbi;
步驟5.2、查找第i個(gè)光順性檢驗(yàn)點(diǎn)所在的子區(qū)域,獲取該區(qū)域的局部光順權(quán)因子σai;
步驟5.3、遍歷所有光順性檢驗(yàn)點(diǎn),根據(jù)第i個(gè)光順性檢驗(yàn)點(diǎn)的密度權(quán)重σbi和該光順性檢驗(yàn)點(diǎn)所在子區(qū)域的局部光順權(quán)因子σai,獲得第i個(gè)光順性檢驗(yàn)點(diǎn)對(duì)應(yīng)的局部光順權(quán)重σli=σbi×σai。
進(jìn)一步地,所述步驟5.1包括:
對(duì)于ψ中的光順性檢驗(yàn)點(diǎn),其關(guān)聯(lián)區(qū)域面積是光順性檢驗(yàn)點(diǎn)所在的矩形網(wǎng)格的面積;
對(duì)于φ中的光順性檢驗(yàn)點(diǎn),由光順性檢驗(yàn)點(diǎn)向東西南北四個(gè)方向發(fā)出射線,四條射線分別與t網(wǎng)格的某些節(jié)點(diǎn)或邊相交,從該光順性檢驗(yàn)點(diǎn)到四條射線上最近的交點(diǎn)的距離分別記為de、dw、ds、dn,進(jìn)而可獲得其關(guān)聯(lián)區(qū)域面積表達(dá)式:
則,第i個(gè)光順性檢驗(yàn)點(diǎn)的密度權(quán)重可以表示為:
式中,si為第i個(gè)光順性檢驗(yàn)點(diǎn)關(guān)聯(lián)區(qū)域的面積,l為光順性檢驗(yàn)點(diǎn)的總數(shù)。
本發(fā)明與現(xiàn)有技術(shù)比較,其有益的效果是:
將參數(shù)域進(jìn)行分區(qū),在通過全局光順權(quán)因子調(diào)節(jié)整體光順性的同時(shí),根據(jù)不同區(qū)域中數(shù)據(jù)點(diǎn)的密度以及曲率信息設(shè)置局部光順權(quán)因子,對(duì)不同區(qū)域區(qū)別對(duì)待,提高了擬合曲面的質(zhì)量。
根據(jù)t網(wǎng)格結(jié)構(gòu)布置光順性檢驗(yàn)點(diǎn),優(yōu)化了光順性檢驗(yàn)點(diǎn)的布置,提高了曲面擬合的計(jì)算效率。
附圖說明
圖1為本發(fā)明基于分區(qū)局部光順權(quán)因子的t樣條曲面擬合方法流程圖;
圖2為實(shí)施例中一個(gè)典型的參數(shù)域分區(qū)結(jié)果圖;
圖3為實(shí)施例中平均曲率計(jì)算式說明圖;
圖4為實(shí)施例中拓展t網(wǎng)格構(gòu)造方法示意圖
圖5為實(shí)施例中光順性檢驗(yàn)點(diǎn)布置方法示意圖;
圖6為實(shí)施例中光順性檢驗(yàn)點(diǎn)的關(guān)聯(lián)區(qū)域計(jì)算方法示意圖。
具體實(shí)施方式
為了更為具體地描述本發(fā)明,下面結(jié)合附圖及具體實(shí)施方式對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說明。
本發(fā)明基于分區(qū)局部光順權(quán)因子的t樣條曲面擬合方法的流程圖如圖1所示,具體實(shí)施步驟如下:
步驟101、導(dǎo)入?yún)?shù)化三角網(wǎng)格和t網(wǎng)格,并設(shè)定算法參數(shù)。
設(shè)定的算法參數(shù)包括:區(qū)域細(xì)分閾值n,一般可設(shè)置為50~200,以及全局光順權(quán)因子σg,一般設(shè)置為10-4~10-6。輸入?yún)?shù)化三角網(wǎng)格中的每一個(gè)頂點(diǎn)擁有特定的參數(shù)坐標(biāo)(u,v),t網(wǎng)格的參數(shù)域?yàn)?≤u,v≤1。三角網(wǎng)格的頂點(diǎn)總數(shù)記為n,t網(wǎng)格的控制點(diǎn)數(shù)目為m。
步驟102、對(duì)曲面參數(shù)域進(jìn)行四叉樹區(qū)域分割,獲得曲面參數(shù)域的多個(gè)子區(qū)域。
首先,將整個(gè)曲面參數(shù)域作為初始子區(qū)域,計(jì)算每個(gè)子區(qū)域中所包含三角網(wǎng)格頂點(diǎn)的數(shù)目。將所有包含的三角網(wǎng)格頂點(diǎn)的數(shù)目超過某預(yù)設(shè)閾值n的子區(qū)域進(jìn)行四叉樹細(xì)分,即將該區(qū)域分割為四個(gè)相同的子區(qū)域。檢查是否所有子區(qū)域的中包含的三角網(wǎng)格頂點(diǎn)的數(shù)目均小于n,若不是,則繼續(xù)對(duì)頂點(diǎn)數(shù)目超過閾值n的區(qū)域進(jìn)行細(xì)分。圖2表示了一個(gè)典型的參數(shù)域四叉樹分區(qū)結(jié)果,其中圖2(a)表示輸入網(wǎng)格頂點(diǎn)在參數(shù)域的分布,圖2(b)給出了一個(gè)參數(shù)域分區(qū)的結(jié)果。
步驟103、計(jì)算每個(gè)子區(qū)域的局部光順權(quán)因子。
首先,遍歷輸入三角網(wǎng)格的所有頂點(diǎn),計(jì)算頂點(diǎn)處的平均曲率,其中第i個(gè)頂點(diǎn)di處的平均曲率記為hi,根據(jù)離散微分幾何,其計(jì)算式為:
式中,a表示頂點(diǎn)di相鄰的所有三角面片的面積和,dr為與頂點(diǎn)di相鄰的頂點(diǎn),s為與頂點(diǎn)di相鄰的頂點(diǎn)的總個(gè)數(shù),αr和βr為邊
對(duì)于第j個(gè)子區(qū)域,其內(nèi)部頂點(diǎn)的平均曲率的均值hj以及該子區(qū)域內(nèi)頂點(diǎn)的密度ηj分別為:
式中,m為子區(qū)域內(nèi)部頂點(diǎn)的總數(shù)量,sp為子區(qū)域在參數(shù)空間中的面積。
利用以上式,計(jì)算整個(gè)曲面參數(shù)域內(nèi)所有頂點(diǎn)的平均曲率的均值
第j個(gè)子區(qū)域的局部光順權(quán)因子定義為
步驟104、構(gòu)造拓展t網(wǎng)格,布置光順性檢驗(yàn)點(diǎn)。
如圖4所示,將圖4(a)的t網(wǎng)格原像內(nèi)部所有的t節(jié)點(diǎn)延長到下一條邊,即可構(gòu)造出如圖4(b)的拓展的t網(wǎng)格。
根據(jù)拓展t網(wǎng)格布置光順性檢驗(yàn)點(diǎn),首先遍歷拓展的t網(wǎng)格中所有矩形網(wǎng)格,在每個(gè)矩形網(wǎng)格對(duì)角線交點(diǎn)處布置一個(gè)光順性檢驗(yàn)點(diǎn),其構(gòu)成集合記為ψ,如圖5(a)所示;
隨后遍歷t網(wǎng)格中所有的節(jié)點(diǎn),在每個(gè)節(jié)點(diǎn)處布置一個(gè)光順性檢驗(yàn)點(diǎn),其構(gòu)成集合記為φ,如圖5(b)所示。
ψ和φ的并集構(gòu)成了光順性檢驗(yàn)點(diǎn)集ω,設(shè)ω中點(diǎn)的總數(shù)為l。圖5中光順性檢驗(yàn)點(diǎn)的總和即為圖4中所構(gòu)造的拓展t網(wǎng)格的所有光順性檢驗(yàn)點(diǎn)集。
步驟105、計(jì)算各個(gè)光順性檢驗(yàn)點(diǎn)的光順權(quán)重。
計(jì)算光順性檢驗(yàn)點(diǎn)關(guān)聯(lián)區(qū)域的面積,首先判斷光順性檢驗(yàn)點(diǎn)的類型,對(duì)于ψ中的光順性檢驗(yàn)點(diǎn),其關(guān)聯(lián)區(qū)域面積是光順性檢驗(yàn)點(diǎn)所在的矩形網(wǎng)格的面積。
對(duì)于φ中的光順性檢驗(yàn)點(diǎn),由光順性檢驗(yàn)點(diǎn)向東西南北四個(gè)方向發(fā)出射線,四條射線分別與t網(wǎng)格的某些節(jié)點(diǎn)或邊相交于交點(diǎn),從該光順性檢驗(yàn)點(diǎn)到四條射線上最近的交點(diǎn)的距離分別記為de、dw、ds、dn,進(jìn)而可獲得該點(diǎn)的關(guān)聯(lián)區(qū)域面積表達(dá)式:
圖6示意了圖4的t網(wǎng)格內(nèi)不同類型的光順性檢驗(yàn)點(diǎn)的關(guān)聯(lián)區(qū)域范圍。根據(jù)關(guān)聯(lián)區(qū)域面積可計(jì)算密度權(quán)重,對(duì)于第i個(gè)光順性檢驗(yàn)點(diǎn),它的密度權(quán)重可以表示為
由此,光順性檢驗(yàn)點(diǎn)的密度權(quán)重σbi得以確定。
遍歷所有光順性檢驗(yàn)點(diǎn),對(duì)于每個(gè)光順性檢驗(yàn)點(diǎn),查找光順性檢驗(yàn)點(diǎn)所在的子區(qū)域,獲取該區(qū)域的局部光順權(quán)因子σai。對(duì)于恰好位于多個(gè)子區(qū)域分界線上的光順性檢驗(yàn)點(diǎn),其局部光順權(quán)因子可認(rèn)為是幾個(gè)相鄰區(qū)域的局部光順權(quán)因子的平均值。
根據(jù)其密度權(quán)重和局部光順權(quán)因子的乘積,獲得該點(diǎn)對(duì)應(yīng)的光順權(quán)重。
σli=σbi×σai
步驟106、構(gòu)建擬合方程組,求最小二乘解獲得曲面擬合結(jié)果。
構(gòu)建每個(gè)三角網(wǎng)格頂點(diǎn)的擬合方程,根據(jù)每個(gè)光順性檢驗(yàn)點(diǎn)局部光順權(quán)重、全局光順權(quán)重構(gòu)建每個(gè)光順性檢驗(yàn)點(diǎn)的光順性方程,組成關(guān)于控制點(diǎn)坐標(biāo)的超定方程組,利用最小二乘法求解關(guān)于控制點(diǎn)坐標(biāo)的超定方程組,獲得曲面控制點(diǎn)擬合坐標(biāo),具體實(shí)施方式如下:
對(duì)于第t個(gè)三角網(wǎng)格頂點(diǎn),將其坐標(biāo)記為qt=[xt,yt,zt],參數(shù)域坐標(biāo)記為[ut,vt],可構(gòu)建擬合方程:
其中pk為第k個(gè)控制點(diǎn)的歐式空間坐標(biāo),rk(u,v)為該控制點(diǎn)所對(duì)應(yīng)的有理混合基函數(shù),其解析表達(dá)式為:
式中bk(u,v)為該控制點(diǎn)對(duì)應(yīng)的b樣條曲面混合基函數(shù),wk為該控制點(diǎn)的權(quán)因子。
對(duì)于第i個(gè)光順性檢驗(yàn)點(diǎn),若將其參數(shù)域坐標(biāo)記為[ui,vi],光順權(quán)重記為σli,可構(gòu)造光順性方程:
σgσli[suu2(ui,vi)+2suv2(ui,vi)+svv2(ui,vi)]=0
其中σg和σli分別為全局光順權(quán)重和該光順性檢驗(yàn)點(diǎn)的局部的光順權(quán)重,suu、suv、svv分別為曲面在處的三個(gè)二階導(dǎo)矢,其表達(dá)式為:
通過以上步驟,以pk為未知量,構(gòu)造得到超定方程組;
求解超定方程組的最小二乘解得到pk,即擬合曲面所有控制點(diǎn)的笛卡爾坐標(biāo),最終獲得完整的擬合曲面結(jié)果。
以上所述的具體實(shí)施方式對(duì)本發(fā)明的技術(shù)方案進(jìn)行了詳細(xì)說明,應(yīng)理解的是以上所述僅為本發(fā)明的最優(yōu)選實(shí)施例,并不用于限制本發(fā)明,凡在本發(fā)明的原則范圍內(nèi)所做的任何修改、補(bǔ)充和等同替換等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。