一種基於特徵點的義齒修復表面快速變形方法
2023-05-03 18:29:36 1
一種基於特徵點的義齒修復表面快速變形方法
【專利摘要】本發明公開了一種基於特徵點的義齒修復表面快速變形方法,包括:S1.讀取待操作的修復體模型,同時輸入特徵點集合;S2.將特徵點集合中的所有特徵點投影到變形曲面,獲得每個特徵點對應的投影點;S3.計算每個投影點對應的變形區域中的每個頂點與該投影點之間的拓撲距離,進而篩選獲得該投影點對應的所有變形點;S4.根據密度函數計算變形點的變形向量;S5.根據計算出的變形向量對變形點進行變形操作。本發明可以實現義齒修復表面的快速變形,計算量低、效率高而且準確度高,可廣泛應用於義齒修復體表面的變形領域中。
【專利說明】-種基於特徵點的義齒修復表面快速變形方法
【技術領域】
[0001] 本發明設及義齒修復的計算機圖形構造領域,特別是設及一種基於特徵點的義齒 修復表面快速變形方法。
【背景技術】
[0002] 牙齒修復體曲面局部變形是口腔修復CAD/CAM系統的核屯、技術之一,其功能是針 對患者口內特定的約束條件修改修復體的表面,該變形方法的效率直接影響到修復體的精 確度。目前主要的變形方法有W下幾種:一、基於細分變形空間的局部變形方法,該方法首 先構造修復體模型的細分變形空間後,將數據映射到空間中,然後通過細分變形空間間接 改變修復體的局部形態,該方法細分空間的界定並不客觀,變形範圍也難W確定,導致變形 效果比較不穩定,而且該種方法計算量也比較大,效率比較低;二、基於B樣條曲線插值修 復體模型的變形方法,該種方法通過B樣條曲線差值修復體模型後,通過改變B樣條的控制 點實現局部變形,該方法計算量較大,導致實時性較差,不適用於實時性要求較高的系統; =、基於曲線驅動的局部變形方法,該種方法的計算量相對於前兩種方法會較低,效率有所 提升,但是提升的效率不足W滿足良好的交互性要求,該方法對處於凹凸處的變形點的變 形向量的計算存在較大偏差,導致整個變形方法精確度較差。總的來說,目前的變形方法 中,普遍存在計算量大、效率低W及準確度低的問題。
【發明內容】
[0003] 為了解決上述技術問題,本發明提供一種基於特徵點的義齒修復表面快速變形方 法。
[0004] 本發明解決其技術問題所採用的技術方案是;
[0005] 一種基於特徵點的義齒修復表面快速變形方法,包括:
[0006] S1、讀取待操作的修復體模型,同時輸入特徵點集合;
[0007] S2、將特徵點集合中的所有特徵點投影到變形曲面,獲得每個特徵點對應的投影 佔. '?、、 ?
[000引 S3、計算每個投影點對應的變形區域中的每個頂點與該投影點之間的拓撲距離, 進而篩選獲得該投影點對應的所有變形點;
[0009] S4、根據密度函數計算變形點的變形向量;
[0010] S5、根據計算出的變形向量對變形點進行變形操作。
[0011] 進一步,所述步驟S2,包括:
[0012] S21、讀取特徵點集合中的第一個特徵點;
[0013] S22、遍歷修復體模型上的所有頂點後,獲得與第一個特徵點的距離平方值最小的 頂點作為第一個特徵點的投影點;
[0014] S23、依次讀取特徵點集合中的其它特徵點,W第一個特徵點的投影點為中屯、點, 依次遍歷中屯、點的N環鄰域點,並將該些頂點中與讀取的特徵點之間的距離平方值最小的 頂點作為該特徵點的投影點;
[0015] 其中,N = 1,2,3,…,N〇;N。為預設的正整數。
[0016] 進一步,所述步驟S3,包括:
[0017] S31、在每個投影點對應的變形區域中,W該投影點為中屯、,依次遍歷該投影點的N 環鄰域點,並將所遍歷的每個頂點的路徑信息均存儲到FIFO中;
[0018] S32、依次從FIFO中讀取一個頂點的路徑信息後,計算該頂點到其對應的投影點 的拓撲距離,並判斷該拓撲距離是否小於或等於變形半徑,若是,將該頂點作為投影點的變 形點,否則,將該頂點剔除;
[0019] S33、重複執行步驟S32,直到FIFO讀取完畢後,獲得該投影點對應的所有變形點;
[0020] 其中,所述變形半徑是指預設的投影點對應的變形區域的半徑,N = 1,2,3,…, Ne;N。為預設的正整數。
[002U 進一步,所述FIFO的每個數據單元包括四個參數;起點、終點、投影點與終點的最 短路徑值W及起點到終點的長度。
[0022] 進一步,所述步驟S4,包括:
[0023] S41、對每個變形點,根據下式計算其密度函數:
[0024] F(x) = (x2-l)2(x G [0, U)
[002引上式中,F(x)表示變形點的密度函數,X = L/R,L表示該變形點到其對應的投影 點的拓撲距離,R表示變形半徑;
[0026] S42、根據下式計算變形點的變形向量:
[0027] Vec (pt) = F (X) X (Cnew (vt) -Cold (vt)}
[002引上式中,Vec(pt)表示變形點的變形向量,C",,(vt)表示該變形點對應的投影點, CdM(^)表示該投影點對應的特徵點。
[0029] 進一步,所述步驟S5,其具體為:
[0030] 根據計算出的變形向量,結合下式對變形點進行變形操作:
[0031] pt' = pt+Vec (pt)
[0032] 上式中,pt代表變形點,pt'代表對變形點進行變形操作後得到的頂點,Vec(pt) 代表變形點的變形向量。
[0033] 本發明的有益效果是:本發明提供了一種基於特徵點的義齒修復表面快速變形方 法,包括;S1、讀取待操作的修復體模型,同時輸入特徵點集合;S2、將特徵點集合中的所有 特徵點投影到變形曲面,獲得每個特徵點對應的投影點;S3、計算每個投影點對應的變形區 域中的每個頂點與該投影點之間的拓撲距離,進而篩選獲得該投影點對應的所有變形點; S4、根據密度函數計算變形點的變形向量;S5、根據計算出的變形向量對變形點進行變形操 作。本發明直接獲取用戶輸入的特徵點集合,沒有擬合等數據計算過程,而且通過將特徵點 投影到變形曲面後,根據密度函數計算出變形點的變形向量,從而對變形點進行變形操作, 實現義齒修復表面的快速變形,計算量低、效率高而且準確度高。
[0034] 而且,本方法基於頂點的N環鄰域來獲得特徵點的投影點W及投影點對應的變形 區域中的變形點,大大地降低了計算量,顯著地提高了義齒修復表面變形的效率,且準確度 較高。
【專利附圖】
【附圖說明】
[0035] 下面結合附圖和實施例對本發明作進一步說明。
[0036] 圖1是本發明的一種基於特徵點的義齒修復表面快速變形方法的示意圖;
[0037] 圖2是N環鄰域示意圖;
[003引圖3是本發明的一具體實施例中查找特徵點的投影點的原理示意圖;
[0039] 圖4是本發明的一具體實施例中的一投影點與其N環鄰域點之間的拓撲結構圖;
[0040] 圖5是本發明的一具體實施例中的FIFO模型的示意圖。
【具體實施方式】
[0041] 為了便於下文的描述,首先給出W下術語解釋:
[0042] N環鄰域點;拓撲模型上,計算頂點B到頂點A所需經過的最短邊數,若該個最短 邊數的值為1,則頂點B是頂點A的1環鄰域點,如果該個最短邊數的值為N,則B是A的N 環鄰域點。換言之,頂點的N環鄰域點是指與頂點的最短拓撲距離為N的頂點,N為不小於 1的自然數。例如,圖2中,頂點B是頂點A的4環鄰域點,實際上,頂點B到頂點A的拓撲 距離有多個,根據N環鄰域點的定義選取最短的拓撲距離。
[004引 FIFO ;First I噸ut First 0u1:put的縮寫,先入先出隊列。
[0044] 參照圖1,本發明提供了一種基於特徵點的義齒修復表面快速變形方法,包括:
[0045] S1、讀取待操作的修復體模型,同時輸入特徵點集合;
[0046] S2、將特徵點集合中的所有特徵點投影到變形曲面,獲得每個特徵點對應的投影 佔. '?、、,
[0047] S3、計算每個投影點對應的變形區域中的每個頂點與該投影點之間的拓撲距離, 進而篩選獲得該投影點對應的所有變形點;
[0048] S4、根據密度函數計算變形點的變形向量;
[0049] S5、根據計算出的變形向量對變形點進行變形操作。
[0化日]進一步作為優選的實施方式,所述步驟S2,包括:
[0化1] S21、讀取特徵點集合中的第一個特徵點;
[0化2] S22、遍歷修復體模型上的所有頂點後,獲得與第一個特徵點的距離平方值最小的 頂點作為第一個特徵點的投影點;
[0化3] S23、依次讀取特徵點集合中的其它特徵點,W第一個特徵點的投影點為中屯、點, 依次遍歷中屯、點的N環鄰域點,並將該些頂點中與讀取的特徵點之間的距離平方值最小的 頂點作為該特徵點的投影點;
[0054] 其中,N=l,2,3,…,N〇;N。為預設的正整數。
[0化5] 進一步作為優選的實施方式,所述步驟S3,包括:
[0056] S31、在每個投影點對應的變形區域中,W該投影點為中心依次遍歷該投影點的N 環鄰域點,並將所遍歷的每個頂點的路徑信息均存儲到FIFO中;
[0化7] S32、依次從FIFO中讀取一個頂點的路徑信息後,計算該頂點到其對應的投影點 的拓撲距離,並判斷該拓撲距離是否小於或等於變形半徑,若是,將該頂點作為投影點的變 形點,否則,將該頂點剔除;
[0化引 S33、重複執行步驟S32,直到FIFO讀取完畢後,獲得該投影點對應的所有變形點;
[0化9] 其中,所述變形半徑是指預設的投影點對應的變形區域的半徑,N = 1,2,3,…, Ne;N。為預設的正整數。
[0060] 進一步作為優選的實施方式,所述FIFO的每個數據單元包括四個參數;起點、終 點、投影點與終點的最短路徑值W及起點到終點的長度。
[0061] 進一步作為優選的實施方式,所述步驟S4,包括:
[0062] S41、對每個變形點,根據下式計算其密度函數:
[0063] F(x) = (x2-l)2(x G [0, U)
[0064] 上式中,F(x)表示變形點的密度函數,X = L/R,L表示該變形點到其對應的投影 點的拓撲距離,R表示變形半徑;
[00化]S42、根據下式計算變形點的變形向量;
[0066] Vec (pt) = F (X) X (Cnew (vt) -Cold (vt)}
[0067] 上式中,Vec(pt)表示變形點的變形向量,C"6,(vt)表示該變形點對應的投影點, Cdh(^)表示該投影點對應的特徵點。
[0068] 進一步作為優選的實施方式,所述步驟S5,其具體為:
[0069] 根據計算出的變形向量,結合下式對變形點進行變形操作:
[0070] pt' =pt+Vec(pt)
[0071] 上式中,pt代表變形點,pt'代表對變形點進行變形操作後得到的頂點,Vec(pt) 代表變形點的變形向量。
[0072] 下面結合具體實施例對本發明做詳細說明。
[0073] 參照圖1,一種基於特徵點的義齒修復表面快速變形方法,包括:
[0074] S1、讀取待操作的修復體模型,同時輸入特徵點集合;本實施例中,特徵點集合來 源於CAD/CAE系統使用者手動對修復體模型進行調整,或者修復體模型與鄰牙適配時產 生;特徵點集合可W位於修復體上,也可W不在修復體上;本發明中的修復體即指義齒修 復預備體。
[0075] S2、將特徵點集合中的所有特徵點投影到變形曲面,獲得每個特徵點對應的投影 佔. '?、、,
[0076] S3、計算每個投影點對應的變形區域中的每個頂點與該投影點之間的拓撲距離, 進而篩選獲得該投影點對應的所有變形點;每個投影點對應的變形區域是指W該投影點為 中屯、,W預設半徑R的球體與義齒修復體模型相交的區域;
[0077] S4、根據密度函數計算變形點的變形向量;
[007引 S5、根據計算出的變形向量對變形點進行變形操作,其具體如下:
[0079] 根據計算出的變形向量,結合下式對變形點進行變形操作:
[0080] pt' =pt+Vec(pt)
[0081] 上式中,pt代表變形點,pt'代表對變形點進行變形操作後得到的頂點,Vec(pt) 代表變形點的變形向量。
[0082] 參照圖3,步驟S2,具體包括S21?S23 ;
[0083] S21、讀取特徵點集合中的第一個特徵點TO ;
[0084] S22、遍歷修復體模型上的所有頂點後,獲得與第一個特徵點TO的距離平方值最 小的頂點P0作為第一個特徵點TO的投影點;
[0085] S23、依次讀取特徵點集合中的其它特徵點Tx,W第一個特徵點TO的投影點PO為 中屯、點,依次遍歷中屯、點P0的N環鄰域點,並將該些頂點中與讀取的特徵點Tx之間的距離 平方值最小的頂點Px作為該特徵點的投影點;Tx指T1,T2, T3, T4…;
[0086] 其中,N=l,2,3,…,N〇;N。為預設的正整數。
[0087] 圖3中,T0, T1,T2, T3, T4…均表示特徵點,圖3中第一圈加粗線上的頂點表示P0 的1環鄰域點,第二圈加粗線上的頂點表示P0的2環鄰域點。
[008引依次遍歷中屯、點P0的N環鄰域點的過程如下;依次遍歷中屯、點P0的所有1環鄰 域點後,遍歷中屯、點的2環鄰域點,遍歷完後再遍歷中屯、點的3環鄰域點,…最後遍歷中屯、 點的N。環鄰域點。
[0089] 步驟S21?S23中獲得特徵點的投影點的方法,只需要將第一個特徵點TO與修復 體模型上的所有頂點進行對比,而其他特徵點T1,T2,T3,…在拓撲結構上有一定的聚集關 系,所W查找到第一個特徵點TO的投影點P0後只需W P0作為中屯、點向外遍歷中屯、點的N 環鄰域捜索其他特徵點對應的投影點,無需遍歷修復體模型的所有頂點,大大減少了計算 量,提升了獲取特徵點的投影點的效率。
[0090] 步驟S3,具體包括S31?S33 ;
[0091] S31、在每個投影點對應的變形區域中,W該投影點為中屯、,依次遍歷該投影點的N 環鄰域點,即依次遍歷的1環鄰域點,2環鄰域點,…,N。環鄰域點,遍歷過程中並將所遍歷 的每個頂點的路徑信息均存儲到FIFO中;該裡,每個頂點的路徑信息指該頂點到投影點的 最短路徑;
[0092] S32、依次從FIFO中讀取一個頂點的路徑信息後,計算該頂點到其對應的投影點 的拓撲距離L並判斷該拓撲距離L是否小於或等於變形半徑R,若是,將該頂點作為投影點 的變形點,否則,將該頂點剔除;換句話說,即剔除掉L > R的頂點;
[0093] S33、重複執行步驟S32,直到FIFO讀取完畢後,獲得該投影點對應的所有變形點;
[0094] 其中,所述變形半徑是指預設的投影點對應的變形區域的半徑,N = 1,2,3,…, Ne;N。為預設的正整數。
[0095] 本實施例中,每個投影點均獨立使用一個FIFO進行數據讀寫。圖4中所示的拓撲 結構中,A為投影點,B、C、D、E、F、G分別為投影點A在其對應的變形區域中的1環鄰域點 或2環鄰域點,執行步驟S31對圖4中的頂點進行遍歷後,獲得的FIFO模型如圖5所示,該 模型中,FIFO的每個數據單元包括四個參數;起點、終點、投影點與終點的最短路徑值W及 起點到終點的長度,即FIFO的數據單元為一個結構體,定義為:
[0096]
【權利要求】
1. 一種基於特徵點的義齒修復表面快速變形方法,其特徵在於,包括: 51、 讀取待操作的修復體模型,同時輸入特徵點集合; 52、 將特徵點集合中的所有特徵點投影到變形曲面,獲得每個特徵點對應的投影點; 53、 計算每個投影點對應的變形區域中的每個頂點與該投影點之間的拓撲距離,進而 篩選獲得該投影點對應的所有變形點; 54、 根據密度函數計算變形點的變形向量; 55、 根據計算出的變形向量對變形點進行變形操作。
2. 根據權利要求1所述的一種基於特徵點的義齒修復表面快速變形方法,其特徵在 於,所述步驟S2,包括: 521、 讀取特徵點集合中的第一個特徵點; 522、 遍歷修復體模型上的所有頂點後,獲得與第一個特徵點的距離平方值最小的頂點 作為第一個特徵點的投影點; 523、 依次讀取特徵點集合中的其它特徵點,以第一個特徵點的投影點為中心點,依次 遍歷中心點的N環鄰域點,並將這些頂點中與讀取的特徵點之間的距離平方值最小的頂點 作為該特徵點的投影點; 其中,N=l,2,3,…,NQ;NQ為預設的正整數。
3. 根據權利要求1所述的一種基於特徵點的義齒修復表面快速變形方法,其特徵在 於,所述步驟S3,包括: 531、 在每個投影點對應的變形區域中,以該投影點為中心,依次遍歷該投影點的N環 鄰域點,並將所遍歷的每個頂點的路徑信息均存儲到FIFO中; 532、 依次從FIFO中讀取一個頂點的路徑信息後,計算該頂點到其對應的投影點的拓 撲距離,並判斷該拓撲距離是否小於或等於變形半徑,若是,將該頂點作為投影點的變形 點,否則,將該頂點剔除; 533、 重複執行步驟S32,直到FIFO讀取完畢後,獲得該投影點對應的所有變形點; 其中,所述變形半徑是指預設的投影點對應的變形區域的半徑,N = 1,2,3,…, 為預設的正整數。
4. 根據權利要求3所述的一種基於特徵點的義齒修復表面快速變形方法,其特徵在 於,所述FIFO的每個數據單元包括四個參數:起點、終點、投影點與終點的最短路徑值以及 起點到終點的長度。
5. 根據權利要求1所述的一種基於特徵點的義齒修復表面快速變形方法,其特徵在 於,所述步驟S4,包括: 541、 對每個變形點,根據下式計算其密度函數: F(x) = (x2-l)2(x G [0,1]) 上式中,F(x)表示變形點的密度函數,x = L/R,L表示該變形點到其對應的投影點的 拓撲距離,R表示變形半徑; 542、 根據下式計算變形點的變形向量: Vec(pt) =F(x) ? {Cnew (vt)-Cold (vt)} 上式中,Vec(pt)表示變形點的變形向量,CnOT(vt)表示該變形點對應的投影點, Cold(vt)表示該投影點對應的特徵點。
6.根據權利要求5所述的一種基於特徵點的義齒修復表面快速變形方法,其特徵在 於,所述步驟S5,其具體為: 根據計算出的變形向量,結合下式對變形點進行變形操作: pt,= pt+Vec (pt) 上式中,Pt代表變形點,pt'代表對變形點進行變形操作後得到的頂點,Vec(pt)代表 變形點的變形向量。
【文檔編號】G06T5/00GK104504665SQ201410841521
【公開日】2015年4月8日 申請日期:2014年12月26日 優先權日:2014年12月26日
【發明者】王煜, 張繼偉, 夏鴻建, 馬傑, 孫秦英 申請人:佛山市諾威科技有限公司