專利名稱:一種牙齒模型中牙冠的自動分割方法
技術(shù)領(lǐng)域:
本發(fā)明屬于牙齒模型圖像處理技術(shù)領(lǐng)域,尤其是涉及一種牙齒模型中牙冠的自動
分割方法。
背景技術(shù):
近年來,隨著計算機圖形學(xué)與虛擬現(xiàn)實仿真技術(shù)的不斷完善和發(fā)展,計算機科學(xué) 和信息技術(shù)日益與現(xiàn)代醫(yī)學(xué)及其相關(guān)技術(shù)相互整合并相互滲透。同時,隨著計算機軟硬件 技術(shù)、圖像采集與處理技術(shù)、三維數(shù)字化成像技術(shù)等在口腔醫(yī)學(xué)領(lǐng)域地飛速發(fā)展,已使得計 算機技術(shù)成為口腔醫(yī)學(xué)教育、臨床、科研以及基礎(chǔ)建設(shè)中的一個重要組成部分。而口腔正畸 學(xué)作為口腔醫(yī)學(xué)領(lǐng)域的一個分支,主要研究牙頜、面、顱三維結(jié)構(gòu)的生長發(fā)育以及各種原因 所造成的畸形,如今對牙頜畸形的矯治正面臨著一場數(shù)字化的革命,尤其是隨三維數(shù)字化 成像與測量技術(shù)在口腔正畸診斷、設(shè)計、治療和療效預(yù)測中越來越廣泛的應(yīng)用,使得口腔正 畸學(xué)越來越朝著計算機化的方向發(fā)展,且有很好地發(fā)展前景。 口腔疾病是一種常見的多發(fā)性疾病,據(jù)世界衛(wèi)生組織統(tǒng)計,錯頜畸形已經(jīng)成為三 大口腔疾病(齲齒、牙周病和錯頜畸形)之一。在我國錯頜畸形的發(fā)病率高達49%。錯頜 畸形往往是由多種因素共同作用而成的。通常,錯頜畸形的病因分為環(huán)境因素和遺傳因素, 各種因素妨礙了口腔骨骼和肌肉的正常生長,從而造成錯頜畸形。當前,口腔正畸學(xué)已被認 為是口腔保健治療中的一個必不可少的重要部分。 今年來,市場上出現(xiàn)了一種技術(shù)先進、操作簡便且使用效果好、舒適的隱形牙齒矯 治器,其先借助當今先進的層析掃描技術(shù)可以將獲得的口腔陰?;蚴嚓柲_M行三維數(shù)據(jù) 錄入,進行模型的三維重建;重建后的數(shù)字化模型可直接在計算機上進行各個方位的旋轉(zhuǎn) 觀測、放大縮小,可對牙齒、牙弓、基骨等測量項目進行自動測量;在此研究的基礎(chǔ)上,結(jié)合 可視化三維圖象處理及三維激光快速成形技術(shù),可以模擬臨床矯治設(shè)計和牙齒的移動方式 與步驟,進行可視化三維牙頜畸形的矯治,并將每個矯治階段的三維牙齒模型進行三維快 速激光成形,再在成形的母模上制作每個階段的透明壓模隱形矯治器。上述隱形矯治器相 對于已經(jīng)出現(xiàn)了一百多年以及目前主要在臨床使用的各種傳統(tǒng)固定矯治器而言,具有無托 槽、舒適、透明、美觀、可摘、高效、衛(wèi)生及患者復(fù)診次數(shù)少等特點,并可實現(xiàn)三維可視化矯治 效果的預(yù)測及與現(xiàn)有的固定矯治器配合進行綜合治療。與傳統(tǒng)固定矯治器相比,無托槽隱 形矯治器有以下優(yōu)點1)美觀方便矯治器采用透明高分子材料制成,矯治過程中不影響 患者的形象,同時方便摘戴,對日常生活影響小;2)安全可靠矯治器設(shè)計過程中借助于計 算機輔助設(shè)計技術(shù)對矯治力和矯治量進行嚴格控制,確保了矯治的安全性;3)省時省力 由于矯治器配戴簡單且矯治量在矯治器的加工過程中已確定,醫(yī)生的操作時間、患者復(fù)診 時間和復(fù)診次數(shù)均明顯減少;4)清潔衛(wèi)生口腔衛(wèi)生易于維護,避免了牙齦炎、牙齒脫礦以 及變色等常見矯治并發(fā)癥的出現(xiàn);5)矯治結(jié)果明確預(yù)測借助于計算機輔助設(shè)計技術(shù)在矯 治器設(shè)計中的應(yīng)用,可以在矯治進行前了解并告訴患者整個矯治過程和矯治結(jié)果,有利于 矯治方案的修改、確定,以及醫(yī)生和患者交流;6)便于遠程醫(yī)療資源共享。
5
綜上,通過計算機實時模擬牙齒矯正過程中牙冠與牙齦分割的隱形牙齒矯正系 統(tǒng),把病人的牙齒模型讀入到系統(tǒng)中,對牙齒的形狀、各項參數(shù)進行記錄、保存。并且,在計 算機上模擬該患者的整個矯正治療過程,記錄每個階段牙齒的位置變化,根據(jù)這些數(shù)據(jù)設(shè) 計各個不同階段的隱形矯正器,患者只要按照設(shè)計程序,在不同時期戴上不同的透明矯正 器,便可使上顎或下顎的牙齒依照預(yù)定的設(shè)計移動,最終使牙齒變整齊?;颊哌€可以在治療 前就看到虛擬的治療過程,預(yù)先了解矯正結(jié)果。這樣既可以讓患者提前了解矯正治療效果, 又方便醫(yī)生的操作、管理。這種自動從牙齒圖像和治療模擬中獲取診斷參數(shù),在治療應(yīng)用之 前模擬其作用效果,是非常吸引人的一項技術(shù)。總之,上述隱形牙齒矯正系統(tǒng)主要包括四大 模塊模塊一是對牙齒數(shù)字模型的數(shù)據(jù)導(dǎo)入;模塊二是牙冠與牙齦的分割;模塊三牙齒的 整齊裝配;模塊四牙齒移動的動畫制作。其中,牙冠和牙齦分割是重要且關(guān)鍵的一個部分, 其主要目的就是將單個牙冠從牙齦中提取出來,并且實現(xiàn)牙冠和牙冠之間分離,最終實現(xiàn) 對不同單個牙齒進行靈活操作的目的,為后序的對牙齒進行移動、排列以及碰撞檢測等工 作奠定基礎(chǔ)。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于針對上述現(xiàn)有技術(shù)中的不足,提供一種牙齒模型 中牙冠的自動分割方法,其設(shè)計新穎合理、實現(xiàn)方便且運行速度快、數(shù)據(jù)處理精度高、分割 效果好,能實現(xiàn)多個復(fù)雜結(jié)構(gòu)之間的精確分割且適用范圍廣。 為解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案是一種牙齒模型中牙冠的自動分 割方法,其特征在于該方法包括以下步驟 步驟一、根據(jù)臨床獲取的牙頜實物模型獲取患者的牙齒數(shù)字化模型,其過程如 下 101、提取數(shù)據(jù)信息采用掃描設(shè)備獲取所述牙頜實物模型的三維模型表面數(shù)據(jù), 并將所獲得的三維模型表面數(shù)據(jù)存儲至PC機;
102、重構(gòu)拓撲結(jié)構(gòu),其重構(gòu)過程如下 1021、將三維模型表面數(shù)據(jù)轉(zhuǎn)換為STL文件進行存儲利用所述PC機對三維模型 表面數(shù)據(jù)進行分析處理,并將所述三維模型表面數(shù)據(jù)轉(zhuǎn)換為由多個三角面片的無序集合組 成的STL文件,之后將所述STL文件存儲至存儲器中;所述STL文件中每個三角形面片均由 三個頂點坐標(Xi,yi,Zi)和一個用于指明三維模型實體包含在本三角形面片哪一側(cè)的法向 量(n丄,n2, n3}來表示; 1022、在依次讀入所述STL文件中所記載三維模型表面數(shù)據(jù)的同時,建立牙齒數(shù) 字化模型的拓撲結(jié)構(gòu)利用所述PC機依次讀取存儲至所述存儲器中的所述多個三角形面 片,查找并依次去除所述STL文件中所記錄的重復(fù)頂點,建立一個沒有重復(fù)頂點的包含所 有三角形面片頂點的點表,同時建立包含所有三角形面片的面表;所述點表中記錄所有不 重復(fù)頂點的頂點坐標、各頂點所在的邊以及三角形面片,并對所有不重復(fù)頂點進行連續(xù)編 號;所述面表中記錄各三角形面片所包含三個頂點在所述點表中的編號,并對所有三角形 面片進行連續(xù)編號;之后,根據(jù)建立起的面表,建立一個沒有重復(fù)邊的包含所有邊的邊表, 所述邊表中記錄各邊的兩個頂點在點表中的編號且記錄各邊所在三角形面片在面表中的 編號以及該邊所屬面的數(shù)量;最后,利用所述PC機將所建立的點表、面表和邊表存儲至所述存儲器中,即通過所述點表、面表和邊表建立起所述牙齒數(shù)字化模型的拓撲結(jié)構(gòu);
103、牙齒數(shù)字化模型交互顯示通過所述PC機讀取存儲至所述存儲器中的點表、 面表和邊表,并調(diào)用OpenGL開放圖形處理模塊實現(xiàn)所述牙齒數(shù)字化模型的真實顯示,同時 實現(xiàn)對所述牙齒數(shù)字化模型的各種基本幾何操作; 步驟二、通過所述PC機且采用射線拾取法對所述牙齒數(shù)字化模型表面的三角形 面片進行拾??; 步驟三、通過所述PC機且采用標記區(qū)分法對所述牙齒數(shù)字化模型中的牙冠和牙 齦以及牙冠和牙冠之間進行分割,其分割過程如下 301、確定分割區(qū)域個數(shù)所述分割區(qū)域的個數(shù)為所述牙齒數(shù)字化模型中所有牙冠 的數(shù)量再加上一個牙齦數(shù)量之和,即對牙齦和每個牙冠對應(yīng)建立一個分割區(qū)域;在確定分 割區(qū)域個數(shù)的同時,為每個分割區(qū)域分別定義一個數(shù)組,用以存放該分割區(qū)域內(nèi)的所有三 角形面片; 302、采用步驟二中所述的拾取方法在所述牙齒數(shù)字化模型中的每個牙冠上分別 拾取一個三角形面片并相應(yīng)進行區(qū)別標記,之后以每個標記過的三角形面片作為分割時其 所在分割區(qū)域的種子面片進行擴展分割,對于所述牙齒數(shù)字化模型中任一個分割區(qū)域m*
而言,其擴展分割過程如下 3021、初始化堆棧首先,定義一個堆棧stack ;其次,確定距離閾值e :所述距離 閾值e 二c^e,其中d為標記三角形面片之間的距離,e為一個乘積系數(shù)取值且其為0 1, 本分割區(qū)域111*中的種子面片記作f* ;之后,查找與種子面片,相鄰的三角形面片并計算 種子面片,與各相鄰三角形面片間的間距di:當di〉 e時且將此相鄰三角形面片對應(yīng)的 結(jié)構(gòu)體三元組壓入堆棧stack,被壓入堆棧stack相鄰三角形面片記為^ ;否則繼續(xù)計算其 它相鄰的三角形面片和種子面片f"司的間距,直至找到di〉 e的與種子面片,相鄰的三 角形面片fi,便完成所定義堆棧stack的初始化;所述結(jié)構(gòu)體三元組為〈fi,m*,H(f*, f》>, 其中&代表三角形面片&的編號,m*為標記號碼且其代表分割后三角形面片&所屬的分 割區(qū)域,H(f*, f》代表三角形面片&與種子面片f*間的相對彎曲程度;
3022、堆棧運行,其堆棧運行過程包括以下步驟 1)壓入堆棧stack中的三角形面片&出棧,將三角形面片&標記為m*且將其對 應(yīng)的結(jié)構(gòu)體三元組添加到分割區(qū)域111*對應(yīng)的數(shù)組中;之后,查找與三角形面片fi相鄰且未 標記的所有三角形面片,并將所查找出的相鄰未標記三角形面片對應(yīng)的結(jié)構(gòu)體三元組壓入 堆棧stack中; 2)壓入堆棧stack中的三角形面片出棧,并判斷出棧的三角形面片是否被標記 當出棧的三角形面片未被標記時,將其標記為m*且將其對應(yīng)的結(jié)構(gòu)體三元組添加到分割
區(qū)域!11*對應(yīng)的數(shù)組中,之后查找與該出棧三角形面片相鄰且未標記的所有三角形面片;并
將所查找出的相鄰未標記三角形面片對應(yīng)的結(jié)構(gòu)體三元組壓入堆棧stack中; 否則,當出棧的三角形面片已被標記時,則將該出棧的三角形面片從堆棧stack
中刪除;之后,返回步驟2);直至將堆棧stack內(nèi)部為空時,即完成所述牙齒數(shù)字化模型中
分割區(qū)域n^的擴展分割過程,所有連通的三角形面片均被唯一標記為n^且同屬于一個分
割區(qū)域m氺; 303、重復(fù)步驟302,直至完成所述牙齒數(shù)字化模型中所有牙冠所對應(yīng)分割區(qū)域的
7擴展分割過程; 304、完成所述牙齒數(shù)字化模型中所有牙冠所對應(yīng)分割區(qū)域的擴展分割過程后,剩 余的所有三角形面片則均屬于同一個分割區(qū)域且該分割區(qū)域為牙齦對應(yīng)的分割區(qū)域,因而 對所述剩余的所有三角形面片進行同一標記,便完成所述牙齒數(shù)字化模型中的牙冠和牙齦 以及牙冠和牙冠之間的整個分割過程。 上述步驟二中所述的采用射線拾取法對所述牙齒數(shù)字化模型表面的三角形面片 進行拾取時,其拾取過程如下 201、經(jīng)屏幕坐標轉(zhuǎn)換獲得屏幕點擊點在的所述牙齒數(shù)字化模型表面的投影點坐 標,之后以視點為起點且過所述投影點構(gòu)造一條垂直指向屏幕的射線L ;
202、確定所述射線L的方向矢量Dir :首先將鼠標點擊點坐標轉(zhuǎn)換為世界坐標系 中的三維坐標即世界坐標,同時窗口坐標向世界坐標的轉(zhuǎn)換,根據(jù)所述射線L分別與顯示 用視圖體的近裁剪面和遠裁剪面間的兩個交點的世界坐標,確定所述射線L的方向矢量 Dir ;所述顯示用視圖體為OpenGL環(huán)境下對所述牙齒數(shù)字化模型進行顯示的視圖體;
203、將所述射線L與存儲在所述STL文件中的所有三角形面片分別進行相交判 斷具體是根據(jù)公式(-Dir) Xlen+(V2-V》XU+(VfV》XV = originPoint-V! (1)判斷所述 射線L是否與被判斷三角形面片相交,當所述射線L與被判斷三角形面片相交時,計算出二 者間交點的重心坐標(U, V)和該交點與視點間的距離T,式中originPoint表示射線L的 原點即視點的世界坐標,Dir為射線L的方向矢量,K、 V2和V3分別為被提取三角形面片的 三個頂點坐標,len為射線L的模當根據(jù)公式(1)計算得出0〈V〈 1、0<U< l、len> 0、0 < U+V < 1和[-Dir, VV" VVJ # 0時,所述射線L和被提取的三角形面片相交;否 則,所述射線L和被提取的三角形面片不相交; 204、找出與所述射線L相交且距離視點最近的三角形面片具體是根據(jù)步驟203 中所計算得出的與所述射線L相交的所有交點以及各交點對應(yīng)的參數(shù)T,找出T值最小即距 離視點最近的一個交點作為射線L和被提取三角形面片的相交點,并根據(jù)步驟203計算得 出的該相交點的重心坐標找到其所在三角形面片的編號,同時對所述相交點所在的三角形 面片進行標記,即完成一個三角形面片的拾取過程。 上述步驟101中所述的提取數(shù)據(jù)信息時,所采用的掃描設(shè)備為激光掃描設(shè)備,且 采用所述激光掃描設(shè)備利用三角測距原理對所述牙頜實物模型進行多次整體掃描并獲取 三維模型表面數(shù)據(jù)。 上述步驟101中所述的提取數(shù)據(jù)信息時,所采用的掃描設(shè)備為X射線計算機斷層 掃描儀CT,且進行掃描時采用X射線束對所述牙領(lǐng)實物模型層面進行掃描并獲取對應(yīng)層面 信息,再通過PC機對所述層面信息進行處理后便得到對應(yīng)的斷層圖像;之后,沿一定方向 并按固定間隔依次獲取所述牙頜實物模型的多幅斷層圖像,最后進行3維重建后便得到實 體的三維模型表面數(shù)據(jù)。 上述步驟101中所述的提取數(shù)據(jù)信息時,所采用的掃描設(shè)備為激光掃描設(shè)備,且 掃描前先制作所述牙頜實物模型的備份模型;進行掃描時,采用材料逐層去除與逐層掃描 相結(jié)合的方法,獲取所述牙領(lǐng)實物模型各個層面的2維圖像信息,進而再通過所述各個層 面的2維圖像信息重構(gòu)出所述牙頜實物模型的3維模型。 上述步驟1021中所述STL文件中所存儲數(shù)據(jù)采用二進制代碼進行表示。
8
本發(fā)明與現(xiàn)有技術(shù)相比具有以下優(yōu)點 1 、設(shè)計新穎、合理且實現(xiàn)方便。 2,運行時間短、運行速度快且數(shù)據(jù)處理精度高。 3、分割效果好,能實現(xiàn)多個復(fù)雜結(jié)構(gòu)之間的精確分割。 4、適用范圍廣,能有效適用至其它相關(guān)圖像分割處理領(lǐng)域。 5、實用價值高,能大幅度推動隱形牙齒矯正系統(tǒng)的發(fā)展。 綜上所述,本發(fā)明設(shè)計新穎合理、實現(xiàn)方便且運行速度快、數(shù)據(jù)處理精度高、分割
效果好,能實現(xiàn)多個復(fù)雜結(jié)構(gòu)之間的精確分割且適用范圍廣。 下面通過附圖和實施例,對本發(fā)明的技術(shù)方案做進一步的詳細描述。
圖1為本發(fā)明的流程圖。
圖2為本發(fā)明對牙齒數(shù)字化模型表面的三角形面片進行拾取時的方法流程圖。
圖3為本發(fā)明對牙冠和牙齦以及牙冠和牙冠之間進行分割的方法流程圖。
具體實施例方式
如圖1所示的一種牙齒模型中牙冠的自動分割方法,包括以下步驟 步驟一、根據(jù)臨床獲取的牙頜實物模型獲取患者的牙齒數(shù)字化模型,其過程如
下 101、提取數(shù)據(jù)信息采用掃描設(shè)備獲取所述牙頜實物模型的三維模型表面數(shù)據(jù), 并將所獲得的三維模型表面數(shù)據(jù)存儲至PC機。 實際操作時,可以選用多種掃描及數(shù)據(jù)處理方式進行數(shù)據(jù)信息提取。例如,可以采 用激光掃描設(shè)備進行掃描,且進行掃描時利用三角測距原理對所述牙頜實物模型進行多次 整體掃描并獲取三維模型表面數(shù)據(jù)。同時,也可以采用激光掃描設(shè)備且按層析法獲取數(shù)據(jù) 信息,掃描前先制作所述牙頜實物模型的備份模型;進行掃描時,采用材料逐層去除與逐層 掃描相結(jié)合的方法,獲取所述牙頜實物模型各個層面的2維圖像信息,進而再通過所述各 個層面的2維圖像信息重構(gòu)出所述牙頜實物模型的3維模型。實踐中,還可采用X射線計算 機斷層掃描儀CT進行掃描,且進行掃描時采用X射線束對所述牙頜實物模型層面進行掃描 并獲取對應(yīng)層面信息,再通過PC機對所述層面信息進行處理后便得到對應(yīng)的斷層圖像;之 后,沿一定方向并按固定間隔依次獲取所述牙頜實物模型的多幅斷層圖像,最后進行3維 重建后便得到實體的三維模型表面數(shù)據(jù)。 上述第一種方法掃描速度快、單次掃描精度高且技術(shù)成熟,但是掃描過程中需從 不同方向進行多次掃描,掃描數(shù)據(jù)配準會降低模型精度,而且無法獲取牙根信息,牙齒數(shù)據(jù) 不完整。第二種方法能夠快速、自動、準確地測量所述牙頜實物模型的三維數(shù)據(jù),解決了鄰 牙狹窄縫隙結(jié)構(gòu)難以測量的難題,并且能獲取牙頜表面的完整數(shù)據(jù),重構(gòu)出的數(shù)字化模型 精度較高,同時也適合批量生產(chǎn),但是數(shù)據(jù)獲取過程是破壞性的,因而獲取數(shù)據(jù)前須制作牙 頜實物模型的備份。第三種方法可在不破壞牙頜實物模型的情況下獲取完整的內(nèi)外表面數(shù) 據(jù),但是設(shè)備成本高且精度不易保證。本實施例中,采用第一種方法提取數(shù)據(jù)信息。
102、重構(gòu)拓撲結(jié)構(gòu),其重構(gòu)過程如下
9
1021、將三維模型表面數(shù)據(jù)轉(zhuǎn)換為STL文件進行存儲利用所述PC機對三維模型 表面數(shù)據(jù)進行分析處理,并將所述三維模型表面數(shù)據(jù)轉(zhuǎn)換為由多個三角面片的無序集合組 成的STL文件,之后將所述STL文件存儲至存儲器中;所述STL文件中每個三角形面片均由 三個頂點坐標(Xi,yi,Zi)和一個用于指明三維模型實體包含在本三角形面片哪一側(cè)的法向 量{&, n2, n3}來表示。 所述STL文件為美國3D System公司于1988年制定了一個接口協(xié)議STL (Stereo Lithogr即hy)文件格式,STL文件以小三角形面片為基本描述單元來離散地近似描述三 維模型的表面,是三維模型單元表達法的一種應(yīng)用形式。它最初來源于快速原型(Rapid Prototyping,簡稱RP)領(lǐng)域,并迅速成為RP領(lǐng)域事實上的工業(yè)標準;作為CAD/CAM系統(tǒng)與 RP系統(tǒng)之間數(shù)據(jù)交換的標準格式,它極大地推動了快速原型技術(shù)的發(fā)展。近些年來,STL文 件在各種需要三維模型描述的諸如有限元分析、鑄件凝固模擬、醫(yī)學(xué)成像系統(tǒng)、反求工程等 領(lǐng)域中也都獲得了具體的應(yīng)用。 綜上,STL文件是對CAD實體模型或曲面模型進行表面三角化離散得到的,相當于 用一種全由小三角形面片構(gòu)成的多面體來近似逼近原CAD模型。并且,每個三角形面片的 法向量的方向與三角形三個頂點的轉(zhuǎn)向符合右手定則。本實施例中,所述STL文件中所存 儲數(shù)據(jù)采用二進制代碼進行表示。 1022、在依次讀入所述STL文件中所記載三維模型表面數(shù)據(jù)的同時,建立牙齒數(shù) 字化模型的拓撲結(jié)構(gòu)利用PC機依次讀取三角形面片,查找并依次去除所述STL文件中所 記錄的重復(fù)頂點,建立一個不重復(fù)的包含所有三角形面片頂點的點表,同時建立包含所有 三角形面片的面表;點表中記錄所有不重復(fù)頂點的頂點坐標、各頂點所在的邊以及三角形 面片,并對所有不重復(fù)頂點進行連續(xù)編號;所述面表中記錄各三角形面片所包含三個頂點 在點表中的編號,并對所有三角形面片進行連續(xù)編號;之后,根據(jù)建立起的面表,建立一個 包含所有邊且不重復(fù)的邊表,邊表中記錄各邊的兩個頂點在點表中的編號且記錄各邊所在 三角形面片在面表中的編號以及該邊所屬面的數(shù)量;最后,利用所述PC機將所建立的點 表、面表和邊表存儲至所述存儲器中,即通過所述點表、面表和邊表建立起所述牙齒數(shù)字化 模型的拓撲結(jié)構(gòu)。 由于步驟1021中所建立的STL文件是多個三角形面片的無序集合,只記錄三角面 片的頂點和法矢信息,不能由STL文件直接找到所述多個三角形面片之間的連接關(guān)系以及 三角形包含的頂點和邊的信息,這樣就不便于查找,同時STL格式文件數(shù)據(jù)重復(fù)很多,每個 頂點幾乎被重用6次,存在大量的冗余信息,且浪費存儲空間,最重要的是給后續(xù)牙齒和牙 齦的分割帶來不便,因而必須對STL文件進行拓撲結(jié)構(gòu)重構(gòu)。 最終所建立拓撲結(jié)構(gòu)所包含的數(shù)據(jù)結(jié)構(gòu)分為3類面(三角形面片的簡稱)、邊 和頂點,通過任何一個面可以找到其3個相鄰的鄰接面、3條邊和3個頂點;通過任何一條 邊能找到該邊所屬的兩個面和它包含的兩個頂點;通過點可以找到它所屬的多條邊和多個面。 103、牙齒數(shù)字化模型交互顯示通過所述PC機讀取存儲至所述存儲器中的點表、 面表和邊表,并調(diào)用OpenGL開放圖形處理模塊實現(xiàn)所述牙齒數(shù)字化模型的真實顯示,同時 實現(xiàn)對所述牙齒數(shù)字化模型實施的各種基本幾何操作。 上述牙齒數(shù)字化模型的交互顯示可在VC++6. 0和Windows2000環(huán)境下實現(xiàn),在真
10實顯示牙齒數(shù)字化模型的同時,還可對牙齒數(shù)字化模型進行旋轉(zhuǎn)、平移、放大、縮小等基本 操作,以便完整了解牙齒數(shù)字化模型的每一個具體細節(jié)。 步驟二、通過所述PC機且采用射線拾取法對所述牙齒數(shù)字化模型表面的三角形 面片進行拾取。 如圖2所示,本實施例中,對所述牙齒數(shù)字化模型表面的三角形面片進行拾取時, 其拾取過程如下 201、經(jīng)屏幕坐標轉(zhuǎn)換獲得屏幕點擊點在牙齒數(shù)字化模型表面的投影點坐標,之后 以視點為起點且過所述投影點構(gòu)造一條垂直指向屏幕的射線L。 202、確定所述射線L的方向矢量Dir :首先將鼠標點擊點坐標轉(zhuǎn)換為世界坐標系 中的三維坐標即世界坐標,同時窗口坐標向世界坐標的轉(zhuǎn)換,根據(jù)所述射線L分別與顯示 用視圖體的近裁剪面和遠裁剪面間的兩個交點的世界坐標,確定所述射線L的方向矢量 Dir ;所述顯示用視圖體為OpenGL環(huán)境下對所述牙齒數(shù)字化模型進行顯示的視圖體。
203、將所述射線L與存儲在所述STL文件中的所有三角形面片分別進行相交判 斷具體是根據(jù)公式(-Dir) Xlen+(V2-V》XU+(VfV》XV = originPoint-V! (1)判斷所述 射線L是否與被判斷三角形面片相交,當所述射線L與被判斷三角形面片相交時,計算出二 者間交點的重心坐標(U, V)和該交點與視點間的距離T,式中originPoint表示射線L的 原點即視點的世界坐標,Dir為射線L的方向矢量,K、 V2和V3分別為被提取三角形面片的 三個頂點坐標,len為射線L的模當根據(jù)公式(1)計算得出0〈V〈 1、0<U< l、len> 0、0 < U+V < 1和[-Dir, VV" VVJ # 0時,所述射線L和被提取的三角形面片相交;否 則,所述射線L和被提取的三角形面片不相交。 204、找出與所述射線L相交且距離視點最近的三角形面片具體是根據(jù)步驟203 中所計算得出的與所述射線L相交的所有交點以及各交點對應(yīng)的參數(shù)T,找出T值最小即距 離視點最近的一個交點作為射線L和被提取三角形面片的相交點,并根據(jù)步驟203中計算 得出的該相交點的重心坐標找到其所在三角形面片的編號,同時對所述相交點所在的三角 形面片進行標記,即完成一個三角形面片的拾取過程。 綜上,本實施例中,采用射線法拾取三角形面片的工作原理為先得到鼠標點擊處 的屏幕坐標,并通過投影矩陣和觀察矩陣把該坐標轉(zhuǎn)換為通過視點和鼠標點擊點的一條射 入場景的光線即所述射線L,該光線如果與數(shù)字化模型中的某一三角形面片相交,則可獲取 該相交三角形面片的信息。從數(shù)學(xué)角度來看,只要得到所述射線L的方向矢量和射線的出 射點,就具備了判斷射線與空間任何一個三角面是否相交的條件。 步驟三、通過所述PC機且采用標記區(qū)分法對所述牙齒數(shù)字化模型中的牙冠和牙 齦以及牙冠和牙冠之間進行分割,其分割過程如下 301、確定分割區(qū)域個數(shù)分割區(qū)域的個數(shù)為所述牙齒數(shù)字化模型中所有牙冠的數(shù) 量再加上一個牙齦數(shù)量之和,即對牙齦和每個牙冠對應(yīng)建立一個分割區(qū)域;在確定分割區(qū) 域個數(shù)的同時,為每個分割區(qū)域分別定義一個數(shù)組,用以存放該分割區(qū)域內(nèi)的所有三角形 面片; 302、采用步驟二中所述的拾取方法在所述牙齒數(shù)字化模型中的每個牙冠上分別 拾取一個三角形面片并相應(yīng)進行區(qū)別標記,之后以每個標記過的三角形面片作為分割時其 所在分割區(qū)域的種子面片進行擴展分割,對于所述牙齒數(shù)字化模型中任一個分割區(qū)域m*
11而言,其擴展分割過程如下 3021、初始化堆棧首先,定義一個堆棧Stack ;其次,確定距離閾值e :首先,定義 一個堆棧Stack ;其次,確定距離閾值e :所述距離閾值£ = d&,其中d為標記三角形面
片之間的距離,e為一個乘積系數(shù)取值且其為0 l,本實施例中e = 0. 45。本分割區(qū)域m氺 中的種子面片記作f* ;之后,查找與種子面片f*相鄰的三角形面片并計算種子面片f*與 各相鄰三角形面片間的間距di:當di〉 e時且將此相鄰三角形面片對應(yīng)的結(jié)構(gòu)體三元組 壓入堆棧stack,被壓入堆棧stack相鄰三角形面片記為^ ;否則繼續(xù)計算其它相鄰的三角 形面片和種子面片f*間的間距,直至找到& > e的與種子面片f*相鄰的三角形面片fi, 便完成所定義堆棧stack的初始化;所述結(jié)構(gòu)體三元組為〈fi, m*, H(f*, f》〉,其中^代表 三角形面片fi的編號,m*為標記號碼且其代表分割后三角形面片fi所屬的分割區(qū)域,H(f*,
fi)代表三角形面片fi與種子面片f*間的相對彎曲程度;
3022、堆棧運行,其堆棧運行過程包括以下步驟 1)壓入堆棧stack中的三角形面片&出棧,將三角形面片&標記為m*且將其對 應(yīng)的結(jié)構(gòu)體三元組添加到分割區(qū)域111*對應(yīng)的數(shù)組中;之后,查找與三角形面片fi相鄰且未 標記的所有三角形面片,并將所查找出的相鄰未標記三角形面片對應(yīng)的結(jié)構(gòu)體三元組壓入 堆棧stack中; 2)壓入堆棧stack中的三角形面片出棧,并判斷出棧的三角形面片是否被標記 當出棧的三角形面片未被標記時,將其標記為m*且將其對應(yīng)的結(jié)構(gòu)體三元組添加到分割
區(qū)域!11*對應(yīng)的數(shù)組中,之后查找與該出棧三角形面片相鄰且未標記的所有三角形面片;并
將所查找出的相鄰未標記三角形面片對應(yīng)的結(jié)構(gòu)體三元組壓入堆棧stack中; 否則,當出棧的三角形面片已被標記時,則將該出棧的三角形面片從堆棧stack
中刪除;之后,返回步驟2);直至將堆棧stack內(nèi)部為空時,即完成所述牙齒數(shù)字化模型中
分割區(qū)域n^的擴展分割過程,所有連通的三角形面片均被唯一標記為n^且同屬于一個分
割區(qū)域m氺; 303、重復(fù)步驟302,直至完成所述牙齒數(shù)字化模型中所有牙冠所對應(yīng)分割區(qū)域的 擴展分割過程; 304、完成牙齒數(shù)字化模型中所有牙冠所對應(yīng)分割區(qū)域的擴展分割過程后,剩余的 所有三角形面片則均屬于同一個分割區(qū)域且該分割區(qū)域為牙齦對應(yīng)的分割區(qū)域,因而對所 述剩余的所有三角形面片進行同一標記,便完成所述牙齒數(shù)字化模型中的牙冠和牙齦以及 牙冠和牙冠之間的整個分割過程(詳見圖3)。 總之,對所述牙齒數(shù)字化模型中的牙冠和牙齦以及牙冠和牙冠之間進行分割時遵 循極小值原則,并按照Fast Marching Watershed理論進行區(qū)域擴展從而確定分割區(qū)域的 位置和范圍。其中,最小值原則為由Hoffman和Richards提出的一種視覺認知原理,其核心 思想可以大致表述如下主曲率為負極小值的點沿著它們的主方向構(gòu)成區(qū)域之間的邊界; 從直觀的角度去理解,主曲率較大(帶符號比較)的點位于較凸的部位,而較小的點則通常 位于凹陷處,人們更傾向于根據(jù)凹的分界線來辨別物體,而不是在凸出的部位分割。
以上所述,僅是本發(fā)明的較佳實施例,并非對本發(fā)明作任何限制,凡是根據(jù)本發(fā)明 技術(shù)實質(zhì)對以上實施例所作的任何簡單修改、變更以及等效結(jié)構(gòu)變化,均仍屬于本發(fā)明技 術(shù)方案的保護范圍內(nèi)。
1權(quán)利要求
一種牙齒模型中牙冠的自動分割方法,其特征在于該方法包括以下步驟步驟一、根據(jù)臨床獲取的牙頜實物模型獲取患者的牙齒數(shù)字化模型,其過程如下101、提取數(shù)據(jù)信息采用掃描設(shè)備獲取所述牙頜實物模型的三維模型表面數(shù)據(jù),并將所獲得的三維模型表面數(shù)據(jù)存儲至PC機;102、重構(gòu)拓撲結(jié)構(gòu),其重構(gòu)過程如下1021、將三維模型表面數(shù)據(jù)轉(zhuǎn)換為STL文件進行存儲利用PC機對三維模型表面數(shù)據(jù)進行分析處理,并將三維模型表面數(shù)據(jù)轉(zhuǎn)換為由多個三角面片的無序集合組成的STL文件,之后將STL文件存儲至存儲器中;STL文件中每個三角形面片均由三個頂點坐標(xi,yi,zi)和一個用于指明三維模型實體包含在本三角形面片哪一側(cè)的法向量{n1,n2,n3}來表示;1022、在依次讀入所述STL文件中所記載三維模型表面數(shù)據(jù)的同時,建立牙齒數(shù)字化模型的拓撲結(jié)構(gòu)利用PC機依次讀取三角形面片,查找并依次去除所述STL文件中所記錄的重復(fù)頂點,建立一個不重復(fù)的包含所有三角形面片頂點的點表,同時建立包含所有三角形面片的面表;點表中記錄所有不重復(fù)頂點的頂點坐標、各頂點所在的邊以及三角形面片,并對所有不重復(fù)頂點進行連續(xù)編號;所述面表中記錄各三角形面片所包含三個頂點在點表中的編號,并對所有三角形面片進行連續(xù)編號;之后,根據(jù)建立起的面表,建立一個包含所有邊且不重復(fù)的邊表,邊表中記錄各邊的兩個頂點在點表中的編號且記錄各邊所在三角形面片在面表中的編號以及該邊所屬面的數(shù)量;最后,利用所述PC機將所建立的點表、面表和邊表存儲至所述存儲器中,即通過所述點表、面表和邊表建立起所述牙齒數(shù)字化模型的拓撲結(jié)構(gòu);103、牙齒數(shù)字化模型交互顯示通過所述PC機讀取存儲至存儲器中的點表、面表和邊表,并調(diào)用OpenGL開放圖形處理模塊實現(xiàn)所述牙齒數(shù)字化模型的真實顯示,同時實現(xiàn)對所述牙齒數(shù)字化模型的各種基本的幾何操作;步驟二、通過所述PC機且采用射線拾取法對所述牙齒數(shù)字化模型表面的三角形面片進行拾取;步驟三、通過所述PC機且采用標記區(qū)分法對所述牙齒數(shù)字化模型中的牙冠和牙齦以及牙冠和牙冠之間進行分割,其分割過程如下301、確定分割區(qū)域個數(shù)所述分割區(qū)域的個數(shù)為牙齒數(shù)字化模型中所有牙冠的數(shù)量再加上一個牙齦數(shù)量之和,即對牙齦和每個牙冠對應(yīng)建立一個分割區(qū)域;在確定分割區(qū)域個數(shù)的同時,為每個分割區(qū)域分別定義一個數(shù)組,用以存放該分割區(qū)域內(nèi)的所有三角形面片;302、采用步驟二中所述的拾取方法在所述牙齒數(shù)字化模型中的每個牙冠上分別拾取一個三角形面片并相應(yīng)進行區(qū)別標記,之后以每個標記過的三角形面片作為分割時其所在分割區(qū)域的種子面片進行擴展分割,對于所述牙齒數(shù)字化模型中任一個分割區(qū)域m*而言,其擴展分割過程如下3021、初始化堆棧首先,定義一個堆棧stack;其次,確定距離閾值ε所述距離閾值ε=d*e,其中d為標記三角形面片之間的距離,e為一個乘積系數(shù)取值且其為0~1,本分割區(qū)域m*中的種子面片記作f*;之后,查找與種子面片f*相鄰的三角形面片并計算種子面片f*與各相鄰三角形面片間的間距di當di>ε時且將此相鄰三角形面片對應(yīng)的結(jié)構(gòu)體三元組壓入堆棧stack,被壓入堆棧stack相鄰三角形面片記為fi;否則繼續(xù)計算其它相鄰的三角形面片和種子面片f*間的間距,直至找到di>ε的與種子面片f*相鄰的三角形面片fi,便完成所定義堆棧stack的初始化;所述結(jié)構(gòu)體三元組為<fi,m*,H(f*,fi)>,其中fi代表三角形面片fi的編號,m*為標記號碼且其代表分割后三角形面片fi所屬的分割區(qū)域,H(f*,fi)代表三角形面片fi與種子面片f*間的相對彎曲程度;3022、堆棧運行,其堆棧運行過程包括以下步驟1)壓入堆棧stack中的三角形面片fi出棧,將三角形面片fi標記為m*且將其對應(yīng)的結(jié)構(gòu)體三元組添加到分割區(qū)域m*對應(yīng)的數(shù)組中;之后,查找與三角形面片fi相鄰且未標記的所有三角形面片,并將所查找出的相鄰未標記三角形面片對應(yīng)的結(jié)構(gòu)體三元組壓入堆棧stack中;2)壓入堆棧stack中的三角形面片出棧,并判斷出棧的三角形面片是否被標記當出棧的三角形面片未被標記時,將其標記為m*且將其對應(yīng)的結(jié)構(gòu)體三元組添加到分割區(qū)域m*對應(yīng)的數(shù)組中,之后查找與該出棧三角形面片相鄰且未標記的所有三角形面片;并將所查找出的相鄰未標記三角形面片對應(yīng)的結(jié)構(gòu)體三元組壓入堆棧stack中;否則,當出棧的三角形面片已被標記時,則將該出棧的三角形面片從堆棧stack中刪除;之后,返回步驟2);直至將堆棧stack內(nèi)部為空時,即完成所述牙齒數(shù)字化模型中分割區(qū)域m*的擴展分割過程,所有連通的三角形面片均被唯一標記為m*且同屬于一個分割區(qū)域m*;303、重復(fù)步驟302,直至完成所述牙齒數(shù)字化模型中所有牙冠所對應(yīng)分割區(qū)域的擴展分割過程;304、完成所述牙齒數(shù)字化模型中所有牙冠所對應(yīng)分割區(qū)域的擴展分割過程后,剩余的所有三角形面片則均屬于同一個分割區(qū)域且該分割區(qū)域為牙齦對應(yīng)的分割區(qū)域,因而對所述剩余的所有三角形面片進行同一標記,便完成所述牙齒數(shù)字化模型中的牙冠和牙齦以及牙冠和牙冠之間的整個分割過程。
2.按照權(quán)利要求1所述的一種牙齒模型中牙冠的自動分割方法,其特征在于步驟二 中所述的采用射線拾取法對所述牙齒數(shù)字化模型表面的三角形面片進行拾取時,其拾取過 程如下201、 經(jīng)屏幕坐標轉(zhuǎn)換獲得屏幕點擊點在的所述牙齒數(shù)字化模型表面的投影點坐標,之后以視點為起點且過所述投影點構(gòu)造一條垂直指向屏幕的射線L ;202、 確定所述射線L的方向矢量Dir :首先將鼠標點擊點坐標轉(zhuǎn)換為世界坐標系中的 三維坐標即世界坐標,同時窗口坐標向世界坐標的轉(zhuǎn)換,根據(jù)所述射線L分別與顯示用視 圖體的近裁剪面和遠裁剪面間的兩個交點的世界坐標,確定所述射線L的方向矢量Dir ;所 述顯示用視圖體為OpenGL環(huán)境下對所述牙齒數(shù)字化模型進行顯示的視圖體;203、 將所述射線L與存儲在所述STL文件中的所有三角形面片分別進行相交判斷具 體是根據(jù)公式(-Dir) X len+(V2-V》XU+^-V!) XV = originPoint-V! (1)判斷所述射 線L是否與被判斷三角形面片相交,當所述射線L與被判斷三角形面片相交時,計算出二者 間交點的重心坐標(U, V)和該交點與視點間的距離T,式中originPoint表示射線L的原點 即視點的世界坐標,Dir為射線L的方向矢量,K、 V2和V3分別為被提取三角形面片的三個 頂點坐標,len為射線L的模當根據(jù)公式(1)計算得出0 < V < 1、0 < U < l、len > 0、0< U+V < 1和[-Dir, V廠Vp V3-VJ ^ 0時,所述射線L和被提取的三角形面片相交;否則, 所述射線L和被提取的三角形面片不相交;204、找出與所述射線L相交且距離視點最近的三角形面片具體是根據(jù)步驟203中所 計算得出的與所述射線L相交的所有交點以及各交點對應(yīng)的參數(shù)T,找出T值最小即距離視 點最近的一個交點作為射線L和被提取三角形面片的相交點,并根據(jù)步驟203中計算得出 的該相交點的重心坐標找到其所在三角形面片的編號,同時對所述相交點所在的三角形面 片進行標記,即完成一個三角形面片的拾取過程。
3. 按照權(quán)利要求1或2所述的一種牙齒模型中牙冠的自動分割方法,其特征在于步 驟101中所述的提取數(shù)據(jù)信息時,所采用的掃描設(shè)備為激光掃描設(shè)備,且采用所述激光掃 描設(shè)備利用三角測距原理對所述牙頜實物模型進行多次整體掃描并獲取三維模型表面數(shù) 據(jù)。
4. 按照權(quán)利要求1或2所述的一種牙齒模型中牙冠的自動分割方法,其特征在于步 驟101中所述的提取數(shù)據(jù)信息時,所采用的掃描設(shè)備為X射線計算機斷層掃描儀CT,且進行 掃描時采用X射線束對所述牙頜實物模型層面進行掃描并獲取對應(yīng)層面信息,再通過PC機 對所述層面信息進行處理后便得到對應(yīng)的斷層圖像;之后,沿一定方向并按固定間隔依次 獲取所述牙頜實物模型的多幅斷層圖像,最后進行3維重建后便得到實體的三維模型表面 數(shù)據(jù)。
5. 按照權(quán)利要求1或2所述的一種牙齒模型中牙冠的自動分割方法,其特征在于步 驟101中所述的提取數(shù)據(jù)信息時,所采用的掃描設(shè)備為激光掃描設(shè)備,且掃描前先制作所 述牙頜實物模型的備份模型;進行掃描時,采用材料逐層去除與逐層掃描相結(jié)合的方法,獲 取所述牙頜實物模型各個層面的2維圖像信息,進而再通過各個層面的2維圖像信息重構(gòu) 出所述牙頜實物模型的3維模型。
6. 按照權(quán)利要求1或2所述的一種牙齒模型中牙冠的自動分割方法,其特征在于步 驟1021中所述STL文件中所存儲數(shù)據(jù)采用二進制代碼進行表示。
全文摘要
本發(fā)明公開了一種牙齒模型中牙冠的自動分割方法,包括以下步驟一、根據(jù)臨床獲取的牙頜實物模型獲取牙齒數(shù)字化模型提取數(shù)據(jù)信息并將獲得數(shù)據(jù)存儲至PC機、重構(gòu)拓撲結(jié)構(gòu)以及實現(xiàn)牙齒數(shù)字化模型的顯示;二、通過PC機對牙齒數(shù)字化模型表面的三角形面片進行拾?。蝗?、通過PC機且采用標記區(qū)分法對牙齒數(shù)字化模型中的牙冠和牙齦以及牙冠和牙冠之間進行分割確定分割區(qū)域個數(shù)、初始化堆棧和堆棧運行,完成牙齒數(shù)字化模型中所有牙冠對應(yīng)分割區(qū)域的擴展分割過程后,剩余所有三角形面片均屬于牙齦對應(yīng)分割區(qū)域。本發(fā)明設(shè)計新穎合理、實現(xiàn)方便且運行速度快、數(shù)據(jù)處理精度高、分割效果好,能實現(xiàn)多個復(fù)雜結(jié)構(gòu)之間的精確分割且適用范圍廣。
文檔編號G06T15/00GK101706971SQ20091021920
公開日2010年5月12日 申請日期2009年11月27日 優(yōu)先權(quán)日2009年11月27日
發(fā)明者寧小娟, 李占利 申請人:西安科技大學(xué)