




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一章緒論1.1課題的研究?jī)?nèi)容與意義1.1.1課題的研究?jī)?nèi)容CT(ComputedTomography計(jì)算機(jī)斷層掃描技術(shù))是指使用計(jì)算機(jī)科學(xué)中相關(guān)的手段對(duì)被檢測(cè)物體的截?cái)鄬舆M(jìn)行掃描而得到圖像實(shí)施三維重建而得到三維斷層圖像的掃描方法,是醫(yī)學(xué)中常用的成像方式【1】。CT影像能揭示人體組織器官的三維結(jié)構(gòu)與形態(tài),對(duì)于醫(yī)學(xué)診斷具有重要的參考價(jià)值。而等值面繪制是計(jì)算機(jī)圖形學(xué)中對(duì)科學(xué)計(jì)算數(shù)據(jù)的常用繪制方法,它從數(shù)值特性接近的三維點(diǎn)集中構(gòu)建出三維網(wǎng)格,便于實(shí)時(shí)繪制。本課題擬針對(duì)CT數(shù)據(jù)中的骨,設(shè)計(jì)實(shí)現(xiàn)一個(gè)采用等值面繪制方法的三維骨形態(tài)顯示程序。本課題的目標(biāo)是運(yùn)用已經(jīng)學(xué)過的程序設(shè)計(jì)知識(shí),結(jié)合計(jì)算機(jī)圖形圖像處理的現(xiàn)有技術(shù),設(shè)計(jì)實(shí)現(xiàn)一個(gè)采用等值面繪制方法的三維骨形態(tài)顯示程序。用戶可以操作該程序選擇等值面參數(shù)和繪制參數(shù),可以讀取Dicom格式的CT影像數(shù)據(jù)進(jìn)行骨的三維顯示。本課題有助于鍛煉我們的程序設(shè)計(jì)能力,尤其是對(duì)圖形圖像相結(jié)合的分析和編程能力,此外也可以拓展我們對(duì)醫(yī)學(xué)影像處理的了解和認(rèn)識(shí)。為了完成本課題,需要我們具有扎實(shí)的數(shù)據(jù)結(jié)構(gòu)和程序設(shè)計(jì)基礎(chǔ),而且需要自主學(xué)習(xí)醫(yī)學(xué)影像處理相關(guān)的基本知識(shí),以及醫(yī)學(xué)影像顯示方面的編程方法。在設(shè)計(jì)和實(shí)現(xiàn)本課題程序的過程中要遵循一般的軟件工程要求,具有比較規(guī)范的基礎(chǔ)文檔,具備比較完備代碼注釋,且進(jìn)行了比較全面的系統(tǒng)測(cè)試。研究?jī)?nèi)容概括如下:(1)了解醫(yī)學(xué)影像處理相關(guān)基本知識(shí)。(2)理解MC算法基本原理。(3)用一種編程語言結(jié)合VTK庫實(shí)現(xiàn)等值面繪制程序。其中,程序的主要功能如下:(1)讀取Dicom格式的CT影像。(2)用戶可以設(shè)置等值面參數(shù)。(3)等值面繪制。(4)骨的三維顯示。1.1.2課題的研究意義 計(jì)算機(jī)斷層掃描(ComputedTomography,簡(jiǎn)稱CT)技術(shù)及核磁共振成像(MagneticResonanceImaging,簡(jiǎn)稱MRI)技術(shù)已普遍應(yīng)用在病患的醫(yī)療領(lǐng)域中,然而,像這樣一些醫(yī)學(xué)設(shè)備只可提供物體內(nèi)部的二維圖像。醫(yī)師需要憑借多年經(jīng)驗(yàn)根據(jù)很多幅二維圖像去預(yù)想病患部位的大小和形狀,這無疑給醫(yī)療診斷帶來了巨大困難【1】。隨著科學(xué)技術(shù)的不斷發(fā)展,社會(huì)的日益進(jìn)步,醫(yī)學(xué)診斷的精確性與直觀程度的要求也愈來愈高。由于醫(yī)學(xué)圖像可視化的重要性日益顯著,所以在診療科學(xué)、整容美形以及外科手術(shù)、射線與化學(xué)治療等技術(shù)中已經(jīng)廣泛應(yīng)用【2】。1989年,美國國家圖書館根據(jù)專家的討論和建議,首先提出了一項(xiàng)被稱為可視人(VisibleHuman)的計(jì)劃【3】,并委托科羅拉多大學(xué)醫(yī)學(xué)院進(jìn)一步研究。這項(xiàng)計(jì)劃的內(nèi)容就是建立一個(gè)完整的男女人體的擁有詳盡剖解結(jié)構(gòu)的數(shù)字化圖像庫。通過這項(xiàng)計(jì)劃的實(shí)施,能夠分析和重新建立出人體內(nèi)部相應(yīng)的器官和組織結(jié)構(gòu)并將其三維顯示出來,最終構(gòu)建出具有實(shí)在感覺的可視化人體三維效果,同時(shí)可以對(duì)重建出的虛擬可視人體進(jìn)行各種透明處理、解剖分析等設(shè)置,便于進(jìn)一步理解人體各組織器官的解剖結(jié)構(gòu)。這對(duì)醫(yī)學(xué)教育及解剖分析起著非常重要的作用。不久前,一個(gè)令無數(shù)人為之激動(dòng)的新聞在重慶市第三軍醫(yī)大學(xué)公布:中國第一個(gè)數(shù)字化可視人體已經(jīng)在該校實(shí)驗(yàn)建立完成,并且向海內(nèi)外同時(shí)發(fā)布了這一系列“中國可視人”的數(shù)據(jù)集【3】,這一消息在海內(nèi)外都引起了極大反響,這一成果也為我國給出了目前為止最為齊整、完備和詳盡的一套人體結(jié)構(gòu)的基本數(shù)據(jù)和圖像資料,這一成果也向所有人宣布,中國已經(jīng)發(fā)展為世界上除美國和韓國外,唯一具有本國可視化人體數(shù)據(jù)集的國家。1.2課題的研究現(xiàn)狀移動(dòng)立方體(MarchingCubes)方法是目前為止最為流行的一種等值面三角化算法之一【4】,用于從三維標(biāo)量場(chǎng)提取一個(gè)多邊形網(wǎng)格的等值面。它是基于基本立方體中剖分出來的體數(shù)據(jù),隨后在每個(gè)立方體中都進(jìn)行標(biāo)準(zhǔn)的三角剖分。在傳統(tǒng)方法中,MC算法是基于15個(gè)基本的三角剖分算法和由旋轉(zhuǎn)、反射、共軛等運(yùn)算得出的256個(gè)基本三角剖分算法的組合。它的運(yùn)算簡(jiǎn)單高效,因?yàn)樗墓ぷ髟韼缀跏峭耆P(guān)于查找表的【5】。但是傳統(tǒng)的MC算法中有很多缺點(diǎn)和需要改進(jìn)的地方,許多學(xué)者對(duì)傳統(tǒng)MC算法的優(yōu)化進(jìn)行了不懈的研究和創(chuàng)新。本文主要介紹了傳統(tǒng)MC算法的基本原理以及計(jì)算過程,并對(duì)傳統(tǒng)MC算法中的缺點(diǎn)進(jìn)行了分析,列舉并比較了其他幾種改進(jìn)和優(yōu)化的MC算法,包括SMC算法,MT算法,以及中點(diǎn)法簡(jiǎn)化線性插值法,等值面頂點(diǎn)矢量平滑等方法。MC算法最主要有三個(gè)方面的問題:首先,由于移動(dòng)立方體方法的原理所導(dǎo)致的局限性,所生成的三角面片僅僅能近似顯示出了需要求的等值面;第二點(diǎn)就是在體元的同一平面中,將兩條相鄰棱上的重合點(diǎn)采用線段隨便地連接起來只能趨于相似地表示所求等值面;另外,在移動(dòng)立方體求等值面的方法中,若是體元的一個(gè)平面上的標(biāo)為1和標(biāo)為0的角點(diǎn)各處于立方體對(duì)角線的兩頭,那末就可以出現(xiàn)2種不同的連接形式,即出現(xiàn)所謂“二義性”【6】。面對(duì)移動(dòng)立方體算法的這些缺陷,我們可以從以下三個(gè)方面對(duì)移動(dòng)立方體算法進(jìn)行改善:(1)選擇邊界跟蹤的方法確定邊界上的立方體。經(jīng)過學(xué)者們的多次實(shí)驗(yàn)證實(shí),大致有九成以上的六面體都是在邊界里或邊界外,因?yàn)檫@樣一些六面體并不是邊界立方體,所以它們之間不存在等值面,如果只對(duì)剩下約占十分之一的邊界立方體進(jìn)行處理,就能簡(jiǎn)化算法的運(yùn)算過程,從而顯著提高算法的效率。當(dāng)開始選定邊界立方體時(shí),可以利用查找每層斷面上的邊界線與之相交的立方體表面的方法,即將所有的邊界線順次操作完就能夠得到全部的邊界立方體;(2)選擇利用立方體棱邊的中點(diǎn)作為三角面片頂點(diǎn)的方法,而不是采用三次插值計(jì)算的方法,能夠節(jié)約大部分的運(yùn)算時(shí)限。同時(shí),考慮到兩相鄰斷層間的距離較小,其最大誤差只有立方體邊的長(zhǎng)度的一半,并且一些顯示設(shè)備的分辨率比這個(gè)長(zhǎng)度精度更小,因此該算法是可行的。(3)在知道的這幾種各不相同的鑒別和避免二義性的辦法中,漸進(jìn)線法當(dāng)之無愧的成為最為常用的辦法之一。當(dāng)發(fā)生二義性問題時(shí),邊界平面被雙曲線中的兩支切割成三個(gè)部分,容易得出的是,在雙曲線中兩條漸近線的重合點(diǎn)必定會(huì)與邊界中處于對(duì)頂線的兩個(gè)焦點(diǎn)落在相同的一個(gè)部分內(nèi)【7】。通過此法可以消除二義性。 以下分別簡(jiǎn)單介紹幾種MC算法的優(yōu)化。1.2.1基于CT數(shù)據(jù)的特殊MC方法(SMC法)針對(duì)標(biāo)準(zhǔn)移動(dòng)立方體算法的缺陷及計(jì)算機(jī)斷層掃面技術(shù)圖像的特點(diǎn),另外有一種特殊的MC算法,對(duì)原有的算法進(jìn)行了一些改進(jìn),稱之為SMC算法【8】。(1)SMC算法的基本理論假設(shè)所有CT切片包含了一系列輪廓線P1,P2,?,Pn,對(duì)于體數(shù)據(jù)的每一個(gè)體素都定義了一個(gè)狀態(tài)函數(shù)f(x,y,z):fx=-1,&在通過這樣的變換后,三維空間中的數(shù)據(jù)就會(huì)轉(zhuǎn)化為三維場(chǎng),每個(gè)體元頂點(diǎn)(x,y,z)的狀態(tài)值根據(jù)這個(gè)點(diǎn)與這個(gè)點(diǎn)位于的平面上所有輪廓線之間的關(guān)聯(lián)來判斷,即在其上、在其內(nèi)或在其外。因?yàn)樗械捏w元都有八個(gè)角點(diǎn),按照狀態(tài)值可以將體元上各個(gè)角點(diǎn)標(biāo)為0、-1或+1,且體元的各條邊上的數(shù)值是線性變化的。所以容易得出,邊界面通過的頂點(diǎn)狀態(tài)值為0;假如體元上一條邊的兩個(gè)頂點(diǎn)分別為-1和+1,則可以得出等值邊界面與該棱相交;假如某個(gè)棱的所有頂點(diǎn)都是同號(hào)的,顯然有等值邊界面與該棱不存在交點(diǎn)。當(dāng)?shù)戎颠吔缑媾c某條棱相交,則該棱的中點(diǎn)可以當(dāng)作交點(diǎn)。(2)SMC算法的實(shí)現(xiàn)及結(jié)果SMC算法是在有序二值圖像上進(jìn)行的【9】。首先在內(nèi)存中讀入4張相鄰的CT二值圖像,按順序記為CT1,CT2,CT3,CT4,其中CT2和CT3是需要構(gòu)建三維的斷層,而利用中心差分法計(jì)算各個(gè)頂點(diǎn)的法向時(shí)將會(huì)用到CT1和CT2。然后計(jì)算這4張CT中各點(diǎn)的狀態(tài)值,進(jìn)行預(yù)處理后,可直接根據(jù)該點(diǎn)的灰度值:灰度0對(duì)應(yīng)狀態(tài)1,灰度128對(duì)應(yīng)狀態(tài)0,灰度255對(duì)應(yīng)狀態(tài)+1。再根據(jù)狀態(tài)值,利用中心差分方法,可以算出CT2和CT3中各個(gè)點(diǎn)的法向。如果f(x,y,z)表示體素(x,y,z)的狀態(tài)值,則這個(gè)點(diǎn)的法向可以通過以下三個(gè)式子來表示為:NxNy=fx,yNz=只要得出這條邊上兩個(gè)端點(diǎn)法向的平均值,就可以得出這條邊上中點(diǎn)的法向。接下來用上述的方法生成體元,并在體元內(nèi)重新構(gòu)建出三角面。通過這個(gè)結(jié)構(gòu),重建出的三角形通過雙向鏈表的方式將數(shù)據(jù)存儲(chǔ)在相應(yīng)內(nèi)存中,而且通過J頃序的順序生成,就可以得到需要的三維幾何圖像【9】。1.2.2用中點(diǎn)法簡(jiǎn)化線形插值在規(guī)范的移動(dòng)立方體算法中,每一個(gè)內(nèi)部包著等值面的立方體都十分有可能會(huì)有一個(gè)以上乃至更多的三角面片,如此一來就會(huì)使每一個(gè)三角片都非常小,乃至比像素更加微小,因此用中點(diǎn)代替頂點(diǎn)造成的更動(dòng)對(duì)最后成像質(zhì)量的影響不明顯。選擇中點(diǎn)法而不是兩個(gè)端點(diǎn)能夠躲開線形插值中的運(yùn)算相重復(fù)的部分,進(jìn)一步讓計(jì)算變得簡(jiǎn)單【10】。每一次線形插值都得進(jìn)行代數(shù)運(yùn)算四次,想得出三個(gè)頂點(diǎn)就必須進(jìn)行十二次運(yùn)算。如果使用中點(diǎn)法代替頂點(diǎn),確定頂點(diǎn)位置僅需要3次計(jì)算,進(jìn)而能夠明顯減少計(jì)算量,顯著提高運(yùn)算速度。中點(diǎn)法保留等值面的拓?fù)浣Y(jié)構(gòu)而僅僅變化的是產(chǎn)生幾何多邊形等值面的端點(diǎn)的位置,所以使用中點(diǎn)法的最大誤差小于或等于半個(gè)立方體【11】。同理對(duì)于只有兩個(gè)值的相應(yīng)體數(shù)據(jù)(數(shù)據(jù)的值僅為0或1)來講,如果所求等值面為相對(duì)大的值,則此近似誤差就是最大的近似誤差;如果范圍在0到1,就沒有近似誤差。三角面片數(shù)量越多,相對(duì)誤差越小,在三角面片極多的情況下,其近似誤差是幾乎可以忽略的。另外,中點(diǎn)法可以縮小立方體中的三角面片的數(shù)目,進(jìn)而令各立方體內(nèi)部或相鄰立方體之間銜接的三角面片歸只并成一個(gè)空間幾何多邊形。1.2.3等值面頂點(diǎn)的矢量平滑利用MC算法重建出的三維圖像,其顯示結(jié)果的可視性和清晰度常常并不能十分令人滿意。由于體數(shù)據(jù)場(chǎng)中的各種噪聲往往會(huì)對(duì)立方體單元內(nèi)部的三角面片的位置和方向造成影響,嚴(yán)重的情況下,會(huì)招使三維顯示的效果出現(xiàn)明顯的“鱗狀效應(yīng)”【11】。為了獲得更加理想的三維顯示效果,可以將等值面的數(shù)據(jù)場(chǎng)剖化成兩部分,一部分是三維坐標(biāo),另一部分則是法向矢量場(chǎng),利用對(duì)等值面剖化出的法向矢量場(chǎng)的矢量實(shí)施平滑操作的方法,可以獲得相對(duì)合適的平滑結(jié)果與平滑速率【12】。等值面矢量平滑方式保留了曾經(jīng)等值面上三角片的坐標(biāo)的位置和狀態(tài)值,還可以憑借光照模型中的濃淡繪制原理,利用增加面片上法向矢量之間連續(xù)相關(guān)性,進(jìn)一步取得三維繪制的平滑效果。1.2.4MT算法簡(jiǎn)述MC算法中,在體素的同一個(gè)平面上,若標(biāo)記為1的端點(diǎn)和標(biāo)記為0的端點(diǎn)(1、0分別表示位于等值面內(nèi)部或者位于等值面外部),各在對(duì)角線的兩頭,就會(huì)導(dǎo)致表現(xiàn)出一對(duì)不同的銜接形式,即存在所謂“二義性”,這種結(jié)果會(huì)進(jìn)一步造成沖突的拓?fù)淞餍驮谙嘟黄矫嫔袭a(chǎn)生,所生成的等值面就會(huì)出現(xiàn)“孔”的問題。MarchingTetrahedral(移動(dòng)四面體)方法簡(jiǎn)稱為MT算法,此算法發(fā)明時(shí)間較MC算法較晚,但已經(jīng)顯示出巨大的發(fā)展?jié)摿ΑK歉鶕?jù)移動(dòng)立方體方法的基本原理和計(jì)算過程開發(fā)的,同時(shí),它與移動(dòng)立方體方法還有很多不同的地方。其一,MT算法最初會(huì)將體素立方體化解成四面體,接下來在它里面提取等值面。在四面體剖分完成后,四面體中等值面的剖分模式縮減,算法實(shí)現(xiàn)更加簡(jiǎn)單。而且,MT算法生成的等值面比MC算法產(chǎn)生的等值面精度要高。而采用此方法最重要的原因是以其改善MC算法中存在二義性問題【1】。等值面在四面體中有重合部分時(shí),只會(huì)產(chǎn)生有重合部分的三角形或有重合部分的平行四邊形,從而有效的避免了二義性問題。1.2.5MC算法的效率改進(jìn)標(biāo)準(zhǔn)的MC算法需要處理和計(jì)算三維數(shù)據(jù)場(chǎng)中的所有立方體體素。但一般來說,等值面僅僅與三維體數(shù)據(jù)場(chǎng)中的個(gè)別體素有重合部分,所以這樣一來,致使白白消耗了計(jì)算的時(shí)間,也是算法效率不高的重要原因。因此,沒有必要依次處理整個(gè)數(shù)據(jù)場(chǎng)。以至于解決這種現(xiàn)象帶來的困擾,有學(xué)者提出了對(duì)MC算法效率方面的創(chuàng)新:假如立方體體素與等值面有重合部分,那么等值面必然會(huì)在這個(gè)六面體的各個(gè)面的方向上持續(xù)延長(zhǎng)。若一個(gè)立方體與等值面有交點(diǎn),則該立方體的六個(gè)面中有若干個(gè)面將與等值面有交線,且與該立方體相鄰的立方體(前后左右上下各個(gè)方向相鄰的立方體)中的三角片將會(huì)按照特定的順序延伸。綜合上述考慮,可以令數(shù)字0、3、4、5、或6來給十五種基礎(chǔ)等值面構(gòu)造類型分別加上一個(gè)標(biāo)識(shí),以顯示該體素必需交流的周邊六面體的數(shù)量。大量實(shí)驗(yàn)表明,百分之九十的等值面是由六種常見情況構(gòu)成的【13】,所以上述方法可以大量節(jié)省計(jì)算時(shí)間。1.3本文的組織結(jié)構(gòu)第一章,緒論。主要介紹了本課題的研究?jī)?nèi)容,研究意義,研究現(xiàn)狀以課題的應(yīng)用和發(fā)展,并進(jìn)行了本文的內(nèi)容組織。第二章,詳明闡述了移動(dòng)立方體算法的基本原理和計(jì)算方法。也介紹了等值面繪制程序的開發(fā)語言及開發(fā)工具等。第三章,詳細(xì)介紹了骨的等值面繪制程序的開發(fā)過程和實(shí)現(xiàn)過程,以及實(shí)現(xiàn)過程中遇到的問題和解決方法。第四章,對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行比較分析。第五章,對(duì)本次設(shè)計(jì)進(jìn)行了簡(jiǎn)單總結(jié),并對(duì)骨的等值面繪制程序中存在的不足提出改進(jìn)方案。1.4本章小結(jié)通過調(diào)研大量文獻(xiàn)和相關(guān)資料,全面了解了課題的研究?jī)?nèi)容與實(shí)踐意義,并根據(jù)課題的發(fā)展現(xiàn)狀,考察了關(guān)于面繪制中重要算法MC算法的一些改進(jìn)方法,對(duì)MC算法的優(yōu)缺點(diǎn)進(jìn)行了對(duì)比。最后,列出了本文的組織結(jié)構(gòu)。CT數(shù)據(jù)中骨的等值面繪制第二章課題相關(guān)算法及開發(fā)工具介紹第二章課題相關(guān)算法及開發(fā)工具介紹2.1MarchingCubes算法2.1.1MarchingCubes算法介紹醫(yī)學(xué)圖像的三維可視化的各種方法中,主流情況下可以分成兩種,即面繪制和體繪制。體繪制更能真實(shí)地反映對(duì)象的具體構(gòu)造,但因?yàn)樗倪\(yùn)算量巨大,即使使用高性能的計(jì)算機(jī)也不能完全滿足實(shí)際應(yīng)用與工作中交互操作的需要【14】。因此,面繪制是目前醫(yī)學(xué)圖像三維可視化中的主流算法。MarchingCubes(移動(dòng)立方體,簡(jiǎn)稱MC)方法是三維等值面面繪制方法法中的傳統(tǒng)算法,它是由W.Lorensen等人在二十世紀(jì)八十年代提出來的一種體素級(jí)重建算法【15】。由于它的原理簡(jiǎn)單,容易實(shí)現(xiàn),所以得到了廣泛的應(yīng)用。MC算法散布在每一個(gè)體素中都進(jìn)行等值面提取,所以也被稱為分而治之的方法。在各個(gè)被操作的體數(shù)據(jù)單元中,利用三角面片來逼近表示體數(shù)據(jù)單元里面的等值面。三維體數(shù)據(jù)中的每個(gè)體素就是一個(gè)小立方體,對(duì)每個(gè)體素都“掃描”一遍來生成三角面片,似乎是一個(gè)小型的運(yùn)算機(jī)在每個(gè)體數(shù)據(jù)單元上轉(zhuǎn)移一樣,MC算法的名字就是這么來的。移動(dòng)立方體方法就是在產(chǎn)生等值面的過程當(dāng)中將一套二維切片的數(shù)據(jù)看作是一個(gè)三維的體數(shù)據(jù)場(chǎng),并且在里面把具備某種特定的值的結(jié)構(gòu)剖分出來,再以某種特別的拓?fù)湫问姐暯映扇敲嫫訫C方法有時(shí)也可以叫做“等值面提取”方法【14】。當(dāng)實(shí)施在醫(yī)療領(lǐng)域中時(shí),利用MC方法能夠重建出人體外面的輪廓線條、內(nèi)部的組織結(jié)果甚至器官的表面褶皺,這樣醫(yī)師就可以直接在三維圖像上觀察需要觀察的部位。2.1.2MarchingCubes算法基本原理在移動(dòng)立方體算法中,需要先假設(shè)原始數(shù)據(jù)相當(dāng)于有規(guī)律的離散三維空間數(shù)據(jù)場(chǎng),例如實(shí)施于醫(yī)學(xué)診療的計(jì)算機(jī)斷層掃描CT圖像就屬于這一類型。移動(dòng)立方體方法的核心思路是依次對(duì)數(shù)據(jù)場(chǎng)中的每個(gè)立方體進(jìn)行操作,尋找那些與等值面有重合部分的立方體,接下來利用線性插值的方法得出等值面與六面體棱的重合點(diǎn)【14】。然后憑借六面體上每個(gè)角點(diǎn)與等值面的相互坐標(biāo)關(guān)系,把等值面與六面體棱上的重合點(diǎn)按特定的形式銜接,構(gòu)造出等值面,以其成為等值面在該立方體里面的一個(gè)逼近的表示。因而,移動(dòng)立方體方法中每個(gè)體數(shù)據(jù)最小單元里面的等值面生成辦法簡(jiǎn)單分析可知有這樣幾個(gè)步驟:(1)體數(shù)據(jù)最小單元中利用三角面片逼近的等值面運(yùn)算;(2)三角面片各頂點(diǎn)法向量計(jì)算。移動(dòng)立方體方法的基本原理是:首先在三維體數(shù)據(jù)場(chǎng)中構(gòu)造出等值面,接下來尋找通過該等值面的體數(shù)據(jù)最小單位元,再得出該體元里面的等值面并得出相應(yīng)數(shù)值,這樣做十分有利于利用經(jīng)常使用的工具包或圖像硬件應(yīng)用程序構(gòu)造出等值面【16】。在醫(yī)療領(lǐng)域的應(yīng)用中,利用MC算法能夠有效地重建出人體外的外部輪廓、內(nèi)部組織及器官,使醫(yī)師可以方便直觀地在三維圖像上考察需要的器官與相鄰組織之間的相互位置關(guān)聯(lián)。另外,MC算法可以充分、高效地使用GPU加速,不僅便于實(shí)時(shí)繪制,而且重建出的圖像質(zhì)量較高【16】。移動(dòng)立方體算法的基本過程如下:1)每次讀出兩張切片,形成一層。2)將上下一對(duì)切片所相呼應(yīng)的總共八個(gè)點(diǎn)構(gòu)成一個(gè)六面體,就像圖2.1所示。3)按照從左向右、從前向后的一定次序操作一層中的六面體(提取每個(gè)六面體中的等值面),然后再按從下向上的次序同上操作至n-1層【16】。上層切片上層切片下層切片圖2.1Cubes示意圖在每個(gè)體素六面體中,六面體的八個(gè)角點(diǎn)的值能夠通過從輸入的體數(shù)據(jù)中獲得。而需要構(gòu)造的等值面的閾值則應(yīng)該是由用戶設(shè)定,因?yàn)闃?gòu)造出來的組織的密度值就是根據(jù)等值面的閾值來構(gòu)造的。例如,骨骼的密度是比較大的,所以需要設(shè)定的等值面閾值也就相應(yīng)地要大一點(diǎn),接下來按照體數(shù)據(jù)的信息就能夠提取出等值面中的三角面網(wǎng)格。2.1.3標(biāo)準(zhǔn)MC算法的計(jì)算過程移動(dòng)立方體算法首先設(shè)當(dāng)原始數(shù)據(jù)是有規(guī)律的離散的三維空間數(shù)據(jù)場(chǎng)(例如CT、MRI等圖像)時(shí),沿立方體的棱方向上的數(shù)據(jù)場(chǎng)是線性的、連續(xù)變化的【16】。若六面體一條棱上的一對(duì)角點(diǎn)的狀態(tài)值各是大于、小于等值面的閾值,則在這條棱上有且僅有唯一的一個(gè)點(diǎn)是這條棱與等值面的重合點(diǎn)。當(dāng)三維體數(shù)據(jù)場(chǎng)中的體元被順次依序進(jìn)行移動(dòng)立方體操作,即尋找等值面與這些體元的重合點(diǎn),從而進(jìn)一步找出體元內(nèi)部的等值面,這就是移動(dòng)立方體的基本算法。上述提到的體元是指由相接兩層的相接的八個(gè)體數(shù)據(jù)最小單元所形成的六面體,且八個(gè)體數(shù)據(jù)最小單元?jiǎng)偤媒M成六面體的八個(gè)頂點(diǎn)。如圖2.3。((i,j+1,k-1)(i,j,k)(i+1,j+1,k-1)(i+1,j+1,k)(i,j,k-1)(i+1,j,k)(i+1,j,k+1)第k+1層第k層圖2.3數(shù)據(jù)場(chǎng)中的一個(gè)體素三維數(shù)據(jù)場(chǎng)中取值相同的全部點(diǎn)的集合構(gòu)成了等值面。它能夠用以下函數(shù)關(guān)系來表示:{(x,y,z)|f(x,y,z)=c},c為常數(shù)由上式顯然可知,等值面的值為c,所以對(duì)于每個(gè)體元來說,當(dāng)體元的八個(gè)角點(diǎn)值都大于閾值c或者都小于閾值c時(shí),則體元里面沒有等值面;如果有的頂點(diǎn)值大于c,有的頂點(diǎn)值小于c,體元內(nèi)存在等值面。嚴(yán)格來說,等值面屬于幾何曲面,其解析表達(dá)式非常復(fù)雜。為了能更加容易地對(duì)其進(jìn)行描述,我們近似地認(rèn)為等值面是許許多多由三角形組合的等值面片構(gòu)成的。所以,提取等值面的問題就可以等效為在每個(gè)體素內(nèi)找出由三角形組合成的等值面片的問題。對(duì)于每個(gè)體元,我們把函數(shù)值大于c的頂點(diǎn)標(biāo)為1,把值小于c的頂點(diǎn)標(biāo)為0,則依據(jù)一條棱上兩個(gè)頂點(diǎn)的狀態(tài),就能夠確定等值面是否與它相交。因?yàn)樗械捏w元都有有八個(gè)角點(diǎn),且每個(gè)角點(diǎn)都能夠取兩種的狀態(tài)值,所以每一個(gè)體元將有28=256個(gè)能夠出現(xiàn)的狀況。利用三維空間的等效對(duì)稱性,通過旋轉(zhuǎn)、平移等簡(jiǎn)單空間操作,我們可以把這256個(gè)狀態(tài)簡(jiǎn)化成15種互不相同的狀態(tài)【16】。圖2.4列出了能夠取到的十五種形態(tài)的等值面的分布。001234567891011121314圖2.4移動(dòng)立方體算法的基本組合。黑色的圓圈代表等值面內(nèi)的體素。等值面的標(biāo)準(zhǔn)三角化是在每一個(gè)立方體中進(jìn)行的。通過旋轉(zhuǎn)和反射的基本原則可以得到所有可能的組合。對(duì)于立方體中的某條棱邊,假如它的兩個(gè)頂點(diǎn)V1、V2標(biāo)記的狀態(tài)值不是相同的,那么選定的等值面必然與此棱邊有相互重合的部分。(a)當(dāng)體素的一條棱邊與X軸方向相同時(shí)候,假設(shè)該邊的兩頂點(diǎn)分別為V1(i,j,k),V2(i+1,j,k),則等值面與體素重合點(diǎn)為V(x,j,k),且c是等值面值,就有以下關(guān)系:x=i+c-(b)同理,當(dāng)體素這條棱邊與Y軸方向相同時(shí)候,假設(shè)這條棱邊的兩頂點(diǎn)分別為V1(i,j,k),V2(i,j+1,k),那么等值面與體素重合點(diǎn)為V(i,y,k),則有:
y=j+c-(c)當(dāng)體素的這條棱與Z軸方向相同的時(shí)候,先設(shè)置這條棱的兩角點(diǎn)分別為V1(i,j,k),V2(i,j,k+1),那么等值面與體素重合點(diǎn)為V1(i,j,z),則有:
z=k+為了成功繪制出能夠直觀體現(xiàn)的等值面,等值面中每個(gè)三角面片的法向量都是必需的。在實(shí)際工程應(yīng)用當(dāng)中,因?yàn)橹苯佑?jì)算三角面片法向量時(shí)復(fù)雜性十分巨大,所以一般不直接給出三角面片的法向,取而代之的,是給出三角面片各個(gè)頂點(diǎn)的法向,即實(shí)際計(jì)算時(shí)是采用中心差分方法計(jì)算的【14】。在三維體數(shù)據(jù)場(chǎng)中,設(shè)有一個(gè)點(diǎn)的取值用f(xi,yj,zk)進(jìn)行運(yùn)算,且在X軸、Y軸、Z軸方向上相鄰兩點(diǎn)間的距離分別為△x、△y、△z。則這個(gè)點(diǎn)的梯度矢量(gx,gy,gz)能以下面這個(gè)關(guān)系式子得出:gQUOTEgy=(fxi,yj+1,zg2.2開發(fā)語言及工具介紹本程序?qū)⒉捎肅++語言開發(fā),界面用C#編寫,并基于VTK庫實(shí)現(xiàn)。本節(jié)將對(duì)C++、C#、VS2010及VTK進(jìn)行簡(jiǎn)單的介紹。2.2.1開發(fā)語言C++介紹C++是一款常用的,且應(yīng)用十分普遍的計(jì)算機(jī)編程類語言。它是一種由非動(dòng)態(tài)數(shù)據(jù)類型驗(yàn)收的、并且支持許多種編程方法的通用計(jì)算機(jī)程序設(shè)計(jì)語言。它支持過程化程序設(shè)計(jì)、數(shù)據(jù)抽象、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì)等多種程序設(shè)計(jì)風(fēng)格。其編譯器比目前其他幾種計(jì)算機(jī)語言的編譯技術(shù)更為復(fù)雜。最新正式標(biāo)準(zhǔn)C++11【18】已于二零一一年八月十二日公布。2.2.2界面開發(fā)語言C#介紹C#(CSharp)是微軟公司在兩千年七月份開發(fā)完成的一種嶄新的、便捷的、安全的、面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,是特意為.NET的應(yīng)用程序而開發(fā)的語言【19】。它借鑒了C++、VisualBasic、Delphi、Java等各種程序設(shè)計(jì)語言的長(zhǎng)處,歸納了VB中便捷的可視化處理機(jī)制和C++的高超運(yùn)行效能。由于C#具有強(qiáng)大的操作能力、優(yōu)美的語法風(fēng)格、獨(dú)樹一幟的語言特性和簡(jiǎn)單快捷的面向?qū)ο缶幊痰闹С?,而使它成?NET程序開發(fā)設(shè)計(jì)的首選語言,顯示了現(xiàn)今最新的程序開發(fā)設(shè)計(jì)技術(shù)的功能和精髓。.NET框架也為C#提供了一個(gè)強(qiáng)大的、簡(jiǎn)單易用的、邏輯結(jié)構(gòu)一致的程序設(shè)計(jì)環(huán)境。另外,公共語言工作時(shí)也為C#程序提供了一個(gè)工作時(shí)可以托管的環(huán)境,使程序比以前更加穩(wěn)定、安全。2.2.3編程工具VS2010介紹由微軟公司開發(fā)設(shè)計(jì)的開發(fā)環(huán)境VisualStudio【20】是當(dāng)前最為流行的Windows平臺(tái)下的應(yīng)用程序開發(fā)環(huán)境。VisualStudio的2010版本于二零一零年四月份正式發(fā)行,它重新設(shè)計(jì)和構(gòu)造了集成開發(fā)環(huán)境(IDE)的界面,變得更加通俗易懂。VisualStudio2010同時(shí)也帶來了NETFramework
4.0、MicrosoftVisualStudio2010CTP(CommunityTechnologyPreview--CTP)等程序開發(fā)框架,而且它還支持開發(fā)和設(shè)計(jì)實(shí)現(xiàn)面向Windows7操作系統(tǒng)的各類應(yīng)用程序。在連接數(shù)據(jù)庫方面,VS2010不僅支持MicrosoftSQLServer,還支持IBMDB2和Oracle數(shù)據(jù)庫。2.2.4開發(fā)工具VTK概述VTK(VisualizationToolkit可視化工具包)是一個(gè)面向?qū)ο蟮目梢暬悗?,由美國Kitware公司開發(fā)。它支持體繪制并支持提供多種不同的體繪制技術(shù),降低了開發(fā)難度【21】。當(dāng)前,使用VTK實(shí)現(xiàn)對(duì)醫(yī)學(xué)圖像的可視化是一個(gè)熱門。VTK是基于Windows/Unix環(huán)境下的,并支持多種編程語言,比如C++、TCL、JAVA、PYTHON。VTK采用流水線【22】機(jī)制。其中,流水線利用source當(dāng)作開始來讀取源數(shù)據(jù)。接下來Filter對(duì)源數(shù)據(jù)進(jìn)行預(yù)處理,同時(shí)產(chǎn)生數(shù)據(jù)輸出。源數(shù)據(jù)經(jīng)過filter進(jìn)行操作后得到所需的結(jié)果,接下來使該結(jié)果利用mapper映射成為圖形數(shù)據(jù)。當(dāng)進(jìn)行數(shù)據(jù)效果的體現(xiàn)時(shí),利用actor作為繪制窗口的實(shí)際對(duì)象來領(lǐng)受mapper傳過來的已經(jīng)處理好的數(shù)據(jù)相關(guān)屬性。最后使用Render來顯示最終結(jié)果的圖形。另外,就算只有一個(gè)Render,也是可以同時(shí)示范多個(gè)實(shí)際對(duì)象Actor的。使用可視化工具包VTK來實(shí)現(xiàn)CT圖像的可視化,根據(jù)算法和數(shù)據(jù)結(jié)構(gòu)判斷,實(shí)質(zhì)上是一個(gè)類似讀取數(shù)據(jù)和圖形顯示的問題【23】。對(duì)與已經(jīng)給出的計(jì)算機(jī)斷層掃描CT圖像,由于這些圖像肯定與DICOM3.0標(biāo)準(zhǔn)相符,所以想要讀取它們比較容易,即在設(shè)計(jì)程序時(shí)只須設(shè)置好必需的數(shù)值,就能夠打成對(duì)一幅計(jì)算機(jī)斷層掃描CT圖像甚至計(jì)算機(jī)斷層掃描CT圖像序列的讀取。在可視化工具包VTK中,為了更加高效地操作如此巨大的類庫,我們不妨根據(jù)某一個(gè)類在類庫中的功能,將類庫中的類分成如下幾個(gè)部份:公共部分(common)、圖形處理部分(graphics)、圖像處理部分(imaging)、讀寫文件部分(I/O)、渲染繪制部分(rendering)以及數(shù)據(jù)轉(zhuǎn)換部分(filtering)等,每一個(gè)部分都已經(jīng)被編譯成相應(yīng)的動(dòng)態(tài)鏈接庫。2.3本章小結(jié) 對(duì)面繪制中的重要算法,移動(dòng)立方體(MarchingCubes)算法進(jìn)行了深入學(xué)習(xí)研究,掌握了MC算法的基本原理和計(jì)算過程,并與第一章中所述的改進(jìn)算法做比較,體會(huì)MC算法的中心思路。最后,介紹了關(guān)于本程序的開發(fā)語言和開發(fā)工具。CT數(shù)據(jù)中骨的等值面繪制第三章設(shè)計(jì)與實(shí)現(xiàn)第三章設(shè)計(jì)與實(shí)現(xiàn)3.1程序的總體設(shè)計(jì)3.1.1系統(tǒng)的需求分析作為三維可視化中的重要方法,面繪制有著非常重大的實(shí)際意義。該程序的目標(biāo)是從本地讀取顯示Dicom格式的CT圖像,用等值面繪制的方法進(jìn)行骨的三維顯示,且用戶可通過界面修改等值面參數(shù),從而比較繪制出的不同效果。為了使該程序使用更加簡(jiǎn)單方便、功能更加完善、執(zhí)行效能更高,則本程序設(shè)計(jì)應(yīng)滿足以下需求:(1)具備完善的程序操作界面,確保應(yīng)用程序能夠簡(jiǎn)單、便捷的操作;(2)能方便地查看檢測(cè)結(jié)果以及檢測(cè)信息;(3)運(yùn)行較快速,顯示直觀;(4)正常使用時(shí)避免出錯(cuò),若運(yùn)行時(shí)遇到突發(fā)錯(cuò)誤,程序不會(huì)影響到本地文件。3.1.2程序的總體設(shè)計(jì)思想 本程序是基于VTK庫實(shí)現(xiàn)的,需要對(duì)VTK的應(yīng)用實(shí)例進(jìn)行大量調(diào)研,包括用到的主要類和參數(shù)。首先應(yīng)設(shè)計(jì)實(shí)現(xiàn)程序中讀取Dicom格式的CT圖像的功能(可以利用vtkDICOMImageReader、\o"讀16位的圖像文件"vtkVolume16Reader),然后調(diào)用VTK中已經(jīng)實(shí)現(xiàn)的經(jīng)典等值面三角化算法,即移動(dòng)立方體算法(vtkMarchingCubes)生成三角面片,用于提取等值面。同時(shí)將生成的三角面片拼接成等值面(vtkStripper),最后建立映射(vtkPolyDataMapper),將經(jīng)過的CT數(shù)據(jù)映射為多項(xiàng)式的幾何數(shù)據(jù)。另外,為了能使程序清晰直觀的進(jìn)行骨的三維顯示,還需要?jiǎng)?chuàng)建一個(gè)繪制對(duì)象(vtkRenderer)和繪制窗口(vtkRenderWindow),同時(shí)創(chuàng)建一個(gè)Camera(vtkCamera),并設(shè)置視覺屬性,使用戶可以對(duì)生成的三維圖像進(jìn)行旋轉(zhuǎn)、平移等簡(jiǎn)單空間操作。 程序的界面設(shè)計(jì)方面是用C#語言編寫的,用C#編寫界面有簡(jiǎn)單易懂,可操作性強(qiáng)等優(yōu)點(diǎn)。界面的主要功能是讓用戶可以通過界面修改等值面參數(shù),從而通過對(duì)比不同參數(shù)的繪制結(jié)果,了解閾值不同部位的三維顯示情況,以達(dá)到應(yīng)用醫(yī)療,獲取病變信息的目的。并且界面一定要簡(jiǎn)單易懂,讓用戶可以容易操作。 界面的設(shè)計(jì)思路是在繪制程序中,將需要修改的參數(shù)(等值面參數(shù))設(shè)為變量,通過C++中的方法將變量設(shè)為讀取一個(gè)本地文件(txt)中的數(shù)據(jù),然后用C#設(shè)計(jì)一個(gè)界面,把界面中的等值面參數(shù)寫入本地文件(txt)中,進(jìn)而實(shí)現(xiàn)了用戶可以通過界面修改等值面參數(shù)的功能。同時(shí)根據(jù)軟件工程的基本要求,界面中也增加了用戶退出提示。開始開始否頂點(diǎn)像素值>b?否頂點(diǎn)像素值>b?頂點(diǎn)在等值面下頂點(diǎn)在等值面下讀取Dicom格式CT圖像讀取Dicom格式CT圖像是是分別取分別取兩圖層中相對(duì)的4個(gè)體素組成一個(gè)立方體的8個(gè)頂點(diǎn)頂點(diǎn)在等值面上逐層掃描小立方體,形成三角面片逐層掃描小立方體,形成三角面片設(shè)置等值面閾值b設(shè)置等值面閾值b拼接等值面拼接等值面繪制三維圖像繪制三維圖像結(jié)束結(jié)束圖3.1程序流程圖程序流程圖如圖3.1,實(shí)現(xiàn)主程序步驟如下步驟1:讀取Dicom格式CT圖像;步驟2:將讀取的一套三維圖像看成是一層層的圖層,接下來從相鄰的兩個(gè)圖層中各取相對(duì)的四個(gè)體素組成一個(gè)立方體的八個(gè)頂點(diǎn),從而將圖像分成若干個(gè)小立方體。步驟3:按照小立方體的每個(gè)角點(diǎn)與設(shè)置的閾值大小關(guān)系將立方體的角點(diǎn)用0或1標(biāo)明狀態(tài)值,角點(diǎn)小于閾值的狀態(tài)值標(biāo)為0,角點(diǎn)大于閾值的狀態(tài)值標(biāo)為1。步驟4:采用線性差值的方法計(jì)算得出等值面與立方體邊的交點(diǎn)(重合點(diǎn)),然后將交點(diǎn)連接起來形成三角面片。步驟5:將三角面片拼接,形成等值面;步驟6:繪制三維圖像。3.2程序的實(shí)現(xiàn)3.2.1讀取Dicom格式的CT圖像功能的實(shí)現(xiàn)根據(jù)調(diào)研大量文獻(xiàn)的結(jié)果以及參考VTK用戶手冊(cè),讀取圖像可以用vtkImageReader、\o"讀16位的圖像文件"vtkVolume16Reader、vtkDICOMImageReader等方式讀取,而vtkImageReader雖然讀取速度較快,但寫起來較為繁瑣;而\o"讀16位的圖像文件"vtkVolume16Reader可讀取16位圖像,優(yōu)點(diǎn)是不限定Dicom格式,缺點(diǎn)是文件后綴要以.1.2.3…來命名,操作復(fù)雜,并且無法讀取數(shù)量較多的圖片,這是因?yàn)関tkArray類沒有辦法帶動(dòng)數(shù)量龐大的數(shù)據(jù),否則會(huì)導(dǎo)致圖像錯(cuò)位;所以我最終還是選擇了常用的vtkDICOMImageReader。部分實(shí)現(xiàn)代碼如下:vtkDICOMImageReader*reader=vtkDICOMImageReader::New();reader->SetDirectoryName("D:\\brain\\brain\\DICOM\\");//設(shè)置文件名前綴,即讀取文件路徑;3.2.2實(shí)現(xiàn)提取等值面 本程序利用VTK中已經(jīng)實(shí)現(xiàn)的MC算法提取等值面,又因?yàn)樾枰脩艨梢酝ㄟ^界面調(diào)整等值面參數(shù),所以等值面的值需設(shè)為一個(gè)變量。再利用面繪制的經(jīng)典算法MC算法,把標(biāo)量屬性數(shù)據(jù)和結(jié)構(gòu)化的數(shù)據(jù)集對(duì)象同時(shí)作為輸入,并輸出等值線形成的圖形(如點(diǎn)、線和三角形)。即vtkMarchingCubes。3.2.3視覺屬性的設(shè)置創(chuàng)建一個(gè)Camera(vtkCamera),并設(shè)置視覺屬性,包括漫反射光的顏色、鏡面光系數(shù)、鏡面光強(qiáng)度以及Camera位置等。視覺屬性:SetDiffuseColor(1,0.49,0.25);//設(shè)定顏色,漫反射光的顏色SetSpecular(.3);//高光反射,鏡面光系數(shù)SetSpecularPower(20);//設(shè)置鏡面光強(qiáng)度,高光強(qiáng)度相機(jī)屬性:SetViewUp(0,0,-1);//設(shè)置相機(jī)的“上”方向SetPosition(0,1,0);//位置:世界坐標(biāo)系,設(shè)置相機(jī)位置SetFocalPoint(0,0,0);//焦點(diǎn):世界坐標(biāo)系,控制相機(jī)方向ComputeViewPlaneNormal();//設(shè)定視平面法線3.2.4界面的設(shè)計(jì)實(shí)現(xiàn)本程序的是用C#編寫界面,把在界面中輸入的等值面參數(shù)寫入本地文件(txt)中,當(dāng)啟動(dòng)繪制程序時(shí),會(huì)重新讀取本地文件(txt)等值面參數(shù)進(jìn)行繪制,從而實(shí)現(xiàn)用戶可以通過界面修改等值面參數(shù)的功能。同時(shí)根據(jù)軟件工程的基本要求,也根據(jù)軟件測(cè)試中要求的軟件容錯(cuò)性,界面中也增加了用戶退出提示。程序界面簡(jiǎn)單分為以下四個(gè)部分:(1)設(shè)置“設(shè)置等值面的值”按鈕,將文本框里的數(shù)據(jù)寫入設(shè)置好的本地文件(txt格式)中,如果本地文件不存在,就新建一個(gè)本地文件,然后將數(shù)據(jù)寫入。FileStreamfs=newFileStream(@"C:\Users\asus\Desktop\yl.txt",FileMode.OpenOrCreate);StreamWritersw=newStreamWriter(fs);sw.Write(this.textBox1.Text);(2)設(shè)置“重置”按鈕,先查找(1)中的文件是否存在,假如文件存在,則將(1)中文件刪除。(3)設(shè)置“開始繪制”按鈕,運(yùn)行繪制主程序。(4)根據(jù)軟件工程的基本要求,同時(shí)也根據(jù)軟件測(cè)試中要求的軟件容錯(cuò)性,界面中也增加了用戶退出提示。最終實(shí)現(xiàn)界面效果如圖3.2。在文本框中輸入等值面閾值,點(diǎn)擊“設(shè)置等值面的值”,再點(diǎn)擊“開始繪制”,則程序可根據(jù)輸入的值繪制相應(yīng)的三維圖像;如需更改等值面閾值,則可點(diǎn)擊“重置”來重新設(shè)置。(a)原始界面(b)用戶退出提示圖3.2程序界面3.3本章小結(jié) 首先通過第一章的調(diào)研和第二章的學(xué)習(xí),對(duì)程序進(jìn)行需求分析,并構(gòu)思程序的總體設(shè)計(jì)思想。然后,利用熟悉的程序語言并基于可視化工具包VTK庫,依次實(shí)現(xiàn)了課題要求的相關(guān)基本功能。CT數(shù)據(jù)中骨的等值面繪制第四章實(shí)驗(yàn)結(jié)果第四章實(shí)驗(yàn)結(jié)果程序中已經(jīng)通過經(jīng)典的移動(dòng)立方體(MC)算法設(shè)計(jì)實(shí)現(xiàn)了CT數(shù)據(jù)中骨的等值面繪制。根據(jù)前面第二章的介紹,MC算法的基本思想將讀取的一套三維圖像看成是一層層的圖層,接下來從相鄰的兩個(gè)圖層中各取相對(duì)的四個(gè)體素組成一個(gè)立方體的八個(gè)頂點(diǎn),從而將圖像分成若干個(gè)小立方體。然后,根據(jù)小立方體的頂點(diǎn)與給定閾值的大小關(guān)系將立方體的頂點(diǎn)以0或1標(biāo)明,即頂點(diǎn)小于閾值標(biāo)為0,頂點(diǎn)大于閾值標(biāo)為1。進(jìn)而就能夠比較出部分立方體和所選定閾值的等值面相交,接下來可以利用線性差值的方法來計(jì)算出等值面與立方體的棱邊的交點(diǎn),然后將所以立方體的棱上的交點(diǎn)全部連接起來形成三角面片,并將三角面片拼接成等值面,最終繪出三維圖形【24】。所以,根據(jù)所選等值面閾值的不同,繪制的結(jié)果也必然不同。另外,當(dāng)視覺屬性的相應(yīng)參數(shù)發(fā)生變化時(shí),繪制的效果也會(huì)有所不同。4.1等值面閾值不同時(shí)的繪制效果將繪制程序中的等值面的閾值設(shè)為200時(shí),繪制后觀察不到三維效果,說明選取閾值過小,等值面與圖像中立方體沒有交點(diǎn)。將繪制程序中的等值面的閾值設(shè)為250時(shí),繪制結(jié)果如圖4.1(a),繪制結(jié)果已經(jīng)可以將骨頭完全顯示出來,但同時(shí)會(huì)將與骨頭密度接近的血管壁繪制出來。將繪制程序中的等值面的閾值設(shè)為300時(shí),繪制結(jié)果如圖4.2(b),繪制結(jié)果可以將骨頭比較完整得顯示出來,但骨頭之間連接處密度較小的部分會(huì)出現(xiàn)微小孔隙。將繪制程序中的等值面的閾值設(shè)為350時(shí),繪制結(jié)果如圖4.3(c),繪制結(jié)果也可以將骨頭顯示出來,但骨頭之間連接處密度較小的部分孔隙變大。將繪制程序中的等值面的閾值設(shè)為400時(shí),繪制結(jié)果如圖4.4(d),骨頭之間連接處密度較小部分產(chǎn)生的孔隙進(jìn)一步變大,已經(jīng)影響了骨頭的直接觀察效果。閾值為250(b)閾值為300(c)閾值為350(d)閾值為400圖4.1等值面閾值不同時(shí)的繪制效果4.2漫反射光顏色參數(shù)不同時(shí)的繪制效果漫反射顏色的參數(shù)是根據(jù)傳統(tǒng)的RGB顏色對(duì)照表設(shè)置的。這種類型圖像僅由三種源顏色構(gòu)成,我們能夠調(diào)節(jié)參數(shù)使三原色根據(jù)不同的比例互相糅合來得到不同的相應(yīng)顏色。所以當(dāng)RGB的值進(jìn)行變化時(shí),會(huì)使繪制結(jié)果呈現(xiàn)不一樣的效果,如圖4.2,三幅圖像分別是R值、G值、B值所占比重大時(shí)的繪制效果,呈現(xiàn)出的組織顏色分別偏紅、偏綠、偏藍(lán)。(a)R值占的比重大(b)G值占的比重大(c)B值占的比重大圖4.2漫反射光顏色參數(shù)不同時(shí)的繪制效果4.3鏡面光系數(shù)不同時(shí)的繪制效果鏡面光(高光)系數(shù)對(duì)繪制結(jié)果的直接影響主要體現(xiàn)在圖像的反射亮度上,進(jìn)而間接對(duì)圖像的不同組織部分的對(duì)比造成影響。從圖4.3可以看出,隨著高光系數(shù)的增大,呈現(xiàn)出來的圖像亮度越大,反射越強(qiáng)烈。(a)高光系數(shù)為0(b)高光系數(shù)為0.5(c)高光系數(shù)為1.0圖4.3鏡面光系數(shù)不同時(shí)的繪制效果4.4實(shí)驗(yàn)結(jié)果總結(jié) 通過比較不同等值面閾值的繪制結(jié)果,可以了解不同組織部分的密度大小,從而判斷骨頭等組織的健康情況。進(jìn)一步觀察就可以大致估算出,能比較完整清晰的顯示效果的等值面閾值大約在250到300之間,具體數(shù)值通過簡(jiǎn)單的實(shí)驗(yàn)還不能精確測(cè)量,因?yàn)橛泻芏嗫陀^因素會(huì)干擾實(shí)驗(yàn)效果,包括體數(shù)據(jù)的差異,不可避免的誤差等等。 通過設(shè)置漫反射顏色的參數(shù),可以根據(jù)喜好調(diào)整繪制效果的顏色,本著選擇與實(shí)際骨頭較為相似的顏色的原則,我的漫反射顏色設(shè)為(1,0.49,0.25)。 通過設(shè)置鏡面光系數(shù)可以調(diào)整繪制結(jié)果的反射亮度,較大的鏡面光系數(shù)會(huì)讓繪制效果有光澤,亮度大。選擇合適的鏡面光系數(shù)可以讓顯示效果更加直觀。經(jīng)過反復(fù)比對(duì),我最終設(shè)置鏡面光系數(shù)為0.3,這樣選擇的效果既不會(huì)使亮度過大,給觀察帶來困難,也不會(huì)因?yàn)闆]有光澤而顯得不美觀。 CT數(shù)據(jù)中骨的等值面繪制第五章總結(jié)第五章總結(jié)5.1總結(jié)5.1.1畢業(yè)設(shè)計(jì)所做的工作根據(jù)課題的要求,做了許多準(zhǔn)備工作。在設(shè)計(jì)實(shí)現(xiàn)程序的同時(shí),通過處理在實(shí)現(xiàn)過程中遇到的問題,也在不斷地學(xué)習(xí)新的知識(shí)。對(duì)于本次畢業(yè)設(shè)計(jì)過程中所做的工作,總結(jié)如下:(1)查閱相關(guān)的文獻(xiàn),了解面繪制的基本內(nèi)容、研究意義與國內(nèi)外研究發(fā)展現(xiàn)狀等,同時(shí)與指導(dǎo)老師溝通,明確本課題的需要實(shí)現(xiàn)的主要功能,并且進(jìn)行了用例分析。(2)學(xué)習(xí)了本課題中涉及到的核心思路方面的知識(shí),如移動(dòng)立方體算法的基本知識(shí),C#開發(fā)語言和開發(fā)工具VisualStudio2010,以及可視化工具VTK的基本操作。(3)根據(jù)本課題的要求和特點(diǎn)進(jìn)行了程序的總體結(jié)構(gòu)設(shè)計(jì)和功能分析,并進(jìn)行了各個(gè)功能模塊的詳細(xì)設(shè)計(jì)。(4)進(jìn)行程序的開發(fā),對(duì)各個(gè)功能不斷地進(jìn)行測(cè)試和修改。遇到問題就通過查找資料或者請(qǐng)教同學(xué)來解決問題。(5)程序在初步完成之后,與指導(dǎo)老師交流,根據(jù)指導(dǎo)老師的要求和建議,進(jìn)行了調(diào)整和改進(jìn)。(6)進(jìn)一步對(duì)程序的功能進(jìn)行了完善,除了完成課題要求的CT數(shù)據(jù)中骨的等值面繪制功能之外,為了方便用戶使用,設(shè)計(jì)了簡(jiǎn)單易用的圖形界面。(7)整理在學(xué)習(xí)課題相關(guān)技術(shù)時(shí)搜集的文獻(xiàn)資料和在程序設(shè)計(jì)與實(shí)現(xiàn)過程中的開發(fā)文檔,撰寫畢業(yè)論文。5.1.2畢業(yè)設(shè)計(jì)的心得體會(huì)在本次設(shè)計(jì)過程中,通過查閱和翻譯各種文獻(xiàn)資料,我對(duì)課題的內(nèi)容有了初步的了解和認(rèn)識(shí),之后通過認(rèn)真學(xué)習(xí)思考以及指導(dǎo)老師和同學(xué)們的幫助,讓我對(duì)本課題中用到的相關(guān)技術(shù)和知識(shí)有了更加深入的了解,同時(shí)也讓自己的分析能力、翻譯能力、編程能力、文字表達(dá)能力等多方面的能力了有很大的提高。經(jīng)歷本次畢業(yè)設(shè)計(jì),讓我在學(xué)到了很多知識(shí),提高了自身的能力之外,還得出了以下幾點(diǎn)心得體會(huì):(1)在進(jìn)行設(shè)計(jì)之前,大量的調(diào)研工作是非常重要的,包括相關(guān)中英文文獻(xiàn)的調(diào)研,相關(guān)參考書目的調(diào)研,相關(guān)網(wǎng)站幫助文檔的調(diào)研以及實(shí)例教程的調(diào)研。這樣就會(huì)使后期的工作更加得心應(yīng)手。(2)設(shè)計(jì)之前要對(duì)使用到的移動(dòng)立方體算法進(jìn)行深入的學(xué)習(xí),理解基本原理和計(jì)算過程,同時(shí)簡(jiǎn)單了解關(guān)于MC算法的改進(jìn)思想,這對(duì)于后邊程序的設(shè)計(jì)和實(shí)現(xiàn)都有很大幫助。(3)進(jìn)行程序設(shè)計(jì)時(shí),要盡量使用開發(fā)工具和各種專用處理庫所提供的各種功能,這樣不僅可以大量減少代碼量,而且減少了代碼的Bug數(shù)目,同時(shí)還提高系統(tǒng)的運(yùn)行效率。(4)在課題要求的繪制程序完成后,設(shè)計(jì)一個(gè)簡(jiǎn)單易用的界面會(huì)使程序更具有可操作性。(5)系統(tǒng)完成后,非常有必要對(duì)系統(tǒng)進(jìn)行完整的測(cè)試,從而在最大程度上發(fā)現(xiàn)并排除系統(tǒng)中存在的Bug。5.2展望 醫(yī)學(xué)三維圖像的可視化在醫(yī)學(xué)輔助診療領(lǐng)域一直發(fā)揮著極其重要的作用和巨大的發(fā)展?jié)摿ΑR驗(yàn)榈戎得胬L制方法的繪制速度比較快,所以在手術(shù)導(dǎo)航操作,虛擬內(nèi)窺鏡和放射療法計(jì)劃等許多領(lǐng)域【25】都有著非常廣泛的應(yīng)用。 在許許多多的面繪制方法中,影響最大的是二十世紀(jì)八十年代由Lorensen等人提出的MC算法【4】。MC方法運(yùn)算準(zhǔn)確、實(shí)現(xiàn)便捷,是目前最風(fēng)行、最有效的面繪制算法之一,同時(shí)在各種商業(yè)化軟件和圖形圖像軟件當(dāng)中也有它的身影。但是傳統(tǒng)的MC算法中有很多缺點(diǎn)和需要改進(jìn)的地方,許多學(xué)者對(duì)傳統(tǒng)MC算法的優(yōu)化進(jìn)行了不懈的研究和創(chuàng)新。包括SMC算法,MT算法和后來仍由Lorenson提出的剖分立方體算法(DividingCubes)【26】。此外還有簡(jiǎn)化MC算法計(jì)算,提高運(yùn)行效率,改善繪制質(zhì)量的改進(jìn)方法,比如中點(diǎn)法簡(jiǎn)化線性插值法,等值面頂點(diǎn)矢量平滑等方法。在本次畢業(yè)設(shè)計(jì)中,我選擇了利用傳統(tǒng)的MC算法實(shí)現(xiàn)等值面的繪制,這是目前面繪制中應(yīng)用非常廣泛的常用算法,并且在VTK中已經(jīng)實(shí)現(xiàn),可以直接調(diào)用。由于接觸C#語言和可視化工具包VTK庫的時(shí)間比較短,對(duì)它們的運(yùn)用還不夠熟練,所以設(shè)計(jì)實(shí)現(xiàn)中花費(fèi)的時(shí)間較長(zhǎng),完成的程序還有著可以改進(jìn)提高的地方,繪制所需要的時(shí)間也偏長(zhǎng)。此外,程序的界面也比較簡(jiǎn)單,用戶能自己調(diào)整的參數(shù)不多。因此,我覺得該程序還可以往以下幾個(gè)方面進(jìn)行擴(kuò)展:(1)考慮應(yīng)用調(diào)研相關(guān)文獻(xiàn)時(shí)了解的改進(jìn)MC算法進(jìn)行繪制;(2)增強(qiáng)程序界面的功能,讓用戶可以隨意調(diào)整更多需要用到的參數(shù);CT數(shù)據(jù)中骨的等值面繪制第五章總結(jié)(3)優(yōu)化系統(tǒng)的設(shè)計(jì),提高其運(yùn)行效率。CT數(shù)據(jù)中骨的等值面繪制結(jié)束語結(jié)束語本程序?qū)崿F(xiàn)CT數(shù)據(jù)中骨的等值面繪制,并設(shè)計(jì)了簡(jiǎn)單易用的界面,方便用戶操作。感謝同學(xué)們不斷對(duì)我提供的寶貴意見和大力支持,幫助我克服了很多困難,同時(shí)也讓我擁有了敢于面對(duì)挑戰(zhàn)的勇氣。同時(shí)也非常感謝XX老師,從課題的各個(gè)部分都非常仔細(xì)認(rèn)真的幫我把關(guān),對(duì)我的畢業(yè)設(shè)計(jì)幫助很大。最后還要感謝家人對(duì)我的支持。通過本次畢業(yè)設(shè)計(jì),發(fā)現(xiàn)了自己有許許多多的不足之處,同時(shí)我也深刻的認(rèn)識(shí)到自己在動(dòng)手實(shí)際操作經(jīng)驗(yàn)上的不足,明白了只有課本上的理論知識(shí)是明顯不夠的,需要更多的磨練才能真正提高自己的能力。CT數(shù)據(jù)中骨的等值面繪制參考文獻(xiàn)參考文獻(xiàn)洪鋒,梅炯,李明祿,醫(yī)學(xué)圖像三維重建技術(shù)綜述[N],中國圖像圖形學(xué)報(bào),2003年特刊:784~791.羅述謙,周果宏.醫(yī)學(xué)圖像處理與分析[M].北京:科學(xué)出版社,2003:105~106.春光,段會(huì)龍,呂維雪.VisibleHuman計(jì)劃的發(fā)展與應(yīng)用[J].國外醫(yī)學(xué)生物醫(yī)學(xué)工程分冊(cè),1997,20(5):269~274.Lorensen,WilliamE.,andHarveyE.Cline.Marchingcubes:Ahighresolution3Dsurfaceconstructionalgorithm.[J]ACMSiggraphComputerGraphics.1987,Vol.21.No.4.ACM:5~16.單東日,陳向東,朱澤平,高復(fù)媛,基于改進(jìn)MC算法的牙頜組織三維重建[N],中國圖像圖形學(xué)報(bào),2009,14(7):1313~1318.DurstMJ.Letters:AdditionalReferenceto‘MarchingCubes’[J].ComputerGraphics,1988,22(2):34~35.NielsonGM,HamannB.TheAsymptoticDecider:ResolvingTheAmbiguityinMarchingCube[C].IEEEProceedingsofVisualization.1991:83~91.何光輝,田捷,趙明基,等.基于分割的三維醫(yī)學(xué)圖像表面重建算法[N].軟件學(xué)報(bào),2002,13(2):221~22.楊曉冬,劉炳輝,王揚(yáng),基于等值面構(gòu)造的CT圖像三維重構(gòu)[J],機(jī)械設(shè)計(jì)與研究,2007,23(4):74~76.何平.剔除測(cè)量數(shù)據(jù)中異常值的若干方法[J].航空計(jì)測(cè)技術(shù),1995,15(1):l9—22.江東,馮成德,林大全,鮑華,基于MC重建算法等值面的優(yōu)化[J],中國測(cè)試技術(shù),2006,32(1):80~82.徐毅,李曉梅.對(duì)體可視化MarchingCube算法的改進(jìn)[J].計(jì)算機(jī)工程,1999,25(11):52—54.CignoniP,GanovelliF,MontaniC,etal1Reconstructionoftopologicallycorrectandadap-tivetrilinearsurfaces[J]1ComputersandGraphics,2000,24(3):39924181.百度百科Marchingcubes[EB/OL]./link?url=9ay861WL213HnRXgSIyrnJaB98oLDs-lR7XQ3YXd1AbS3O1F-HRvmJ18XYu8VipYIUsIALT_rek3GhAodgggB_Lorensen,WilliamE.,andHarveyE.Cline.Marchingcubes:Ahighresolution3Dsurfaceconstructionalgorithm.[J]ACMSiggraphComputerGraphics.1987,Vol.21.No.4.ACM:3~4.李金,胡戰(zhàn)利,基于MC算法的CT圖像三維重建[J],應(yīng)用科技,2008,35(4):30~33.Masala,GiovanniLuca,BrunoGolosio,andPiernicolaOliva.AnimprovedMarchingCubealgorithmfor3Ddatasegmentation[J].
ComputerPhysicsCommunications
184.3(2013):777-782.百度百科C++[EB/OL].\l"2"/link?url=vs3_sMpAA2txmzIP4OVK2tpSNsmy0RtD075lcKP6iCyg0u5k2XGt5BJvzGAgw7_SperYL8grwM94OmW3FlJ4SK#2,2014/5/17百度百科.C#[EB/OL]./view/1284594.htm,2011-03-13.百度百科.MicrosoftVisualStudio2010[EB/OL]./view/2950556.htm?fromId=3433001,2014/5/17苗語,師為禮,郭乃珠,基于VTK的醫(yī)學(xué)圖像三維可視化的研究與實(shí)現(xiàn)[N],長(zhǎng)春理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2007,30(4):120~122.AlessandroRubini.LINUX設(shè)備驅(qū)動(dòng)程序[M].北京:電力出版社,2000:452~455.祁俐娜,羅述謙,基于VTK的醫(yī)學(xué)圖像三維重建[J],北京生物醫(yī)學(xué)工程,2006,25(1):1~5.唐占紅,於時(shí)才,面繪制三維重建原理及其改進(jìn)算法研究[J],計(jì)算機(jī)工程與設(shè)計(jì),2009,30(9):2225~2228.劉磊,馮前進(jìn),王文輝,陳武凡,基于GPU的醫(yī)學(xué)圖像快速面繪制[J],計(jì)算機(jī)工程與應(yīng)用,2007,43(32):166~169.百度百科.等值面[EB/OL].\l"2_2"/link?url=Bl323ywo8iuC6TM1nFZBReKuRo5igPgjnhjHG53QUT_o2a4JHslHc-CWdP_0da94G_oLtEB9rrW97jbJc0bsP_#2_2,2014/5/19基于C8051F單片機(jī)直流電動(dòng)機(jī)反饋控制系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的嵌入式Web服務(wù)器的研究MOTOROLA單片機(jī)MC68HC(8)05PV8/A內(nèi)嵌EEPROM的工藝和制程方法及對(duì)良率的影響研究基于模糊控制的電阻釬焊單片機(jī)溫度控制系統(tǒng)的研制基于MCS-51系列單片機(jī)的通用控制模塊的研究基于單片機(jī)實(shí)現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調(diào)節(jié)器單片機(jī)控制的二級(jí)倒立擺系統(tǒng)的研究基于增強(qiáng)型51系列單片機(jī)的TCP/IP協(xié)議棧的實(shí)現(xiàn)基于單片機(jī)的蓄電池自動(dòng)監(jiān)測(cè)系統(tǒng)基于32位嵌入式單片機(jī)系統(tǒng)的圖像采集與處理技術(shù)的研究基于單片機(jī)的作物營(yíng)養(yǎng)診斷專家系統(tǒng)的研究基于單片機(jī)的交流伺服電機(jī)運(yùn)動(dòng)控制系統(tǒng)研究與開發(fā)基于單片機(jī)的泵管內(nèi)壁硬度測(cè)試儀的研制基于單片機(jī)的自動(dòng)找平控制系統(tǒng)研究基于C8051F040單片機(jī)的嵌入式系統(tǒng)開發(fā)基于單片機(jī)的液壓動(dòng)力系統(tǒng)狀態(tài)監(jiān)測(cè)儀開發(fā)模糊Smith智能控制方法的研究及其單片機(jī)實(shí)現(xiàn)一種基于單片機(jī)的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機(jī)沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機(jī)的在線間歇式濁度儀的研制基于單片機(jī)的噴油泵試驗(yàn)臺(tái)控制器的研制基于單片機(jī)的軟起動(dòng)器的研究和設(shè)計(jì)基于單片機(jī)控制的高速快走絲電火花線切割機(jī)床短循環(huán)走絲方式研究基于單片機(jī)的機(jī)電產(chǎn)品控制系統(tǒng)開發(fā)基于PIC單片機(jī)的智能手機(jī)充電器基于單片機(jī)的實(shí)時(shí)內(nèi)核設(shè)計(jì)及其應(yīng)用研究基于單片機(jī)的遠(yuǎn)程抄表系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的煙氣二氧化硫濃度檢測(cè)儀的研制基于微型光譜儀的單片機(jī)系統(tǒng)單片機(jī)系統(tǒng)軟件構(gòu)件開發(fā)的技術(shù)研究基于單片機(jī)的液體點(diǎn)滴速度自動(dòng)檢測(cè)儀的研制基于單片機(jī)系統(tǒng)的多功能溫度測(cè)量?jī)x的研制基于PIC單片機(jī)的電能采集終端的設(shè)計(jì)和應(yīng)用基于單片機(jī)的光纖光柵解調(diào)儀的研制氣壓式線性摩擦焊機(jī)單片機(jī)控制系統(tǒng)的研制基于單片機(jī)的數(shù)字磁通門傳感器基于單片機(jī)的旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器的研究基于單片機(jī)的光纖Bragg光柵解調(diào)系統(tǒng)的研究單片機(jī)控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機(jī)的多生理信號(hào)檢測(cè)儀基于單片機(jī)的電機(jī)運(yùn)動(dòng)控制系統(tǒng)設(shè)計(jì)Pico專用單片機(jī)核的可測(cè)性設(shè)計(jì)研究基于MCS-51單片機(jī)的熱量計(jì)基于雙單片機(jī)的智能遙測(cè)微型氣象站MCS-51單片機(jī)構(gòu)建機(jī)器人的實(shí)踐研究基于單片機(jī)的輪軌力檢測(cè)基于單片機(jī)的GPS定位儀的研究與實(shí)現(xiàn)基于單片機(jī)的電液伺服控制系統(tǒng)用于單片機(jī)系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機(jī)的時(shí)控和計(jì)數(shù)系統(tǒng)性能優(yōu)化的研究基于單片機(jī)和CPLD的粗光柵位移測(cè)量系統(tǒng)研究單片機(jī)控制的后備式方波UPS提升高職學(xué)生單片機(jī)應(yīng)用能力的探究基于單片機(jī)控制的自動(dòng)低頻減載裝置研究基于單片機(jī)控制的水下焊接電源的研究基于單片機(jī)的多通道數(shù)據(jù)采集系統(tǒng)基于uPSD3234單片機(jī)的氚表面污染測(cè)量?jī)x的研制基于單片機(jī)的紅外測(cè)油儀的研究96系列單片機(jī)仿真器研究與設(shè)計(jì)基于單片機(jī)的單晶金剛石刀具刃磨設(shè)備的數(shù)控改造基于單片機(jī)的溫度智能控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)基于MSP430單片機(jī)的電梯門機(jī)控制器的研制基于單片機(jī)的氣體測(cè)漏儀的研究基于三菱M16C/6N系列單片機(jī)的CAN/USB協(xié)議轉(zhuǎn)換器基于單片機(jī)和DSP的變壓器油色譜在線監(jiān)測(cè)技術(shù)研究基于單片機(jī)的膛壁溫度報(bào)警系統(tǒng)設(shè)計(jì)基于AVR單片機(jī)的低壓無功補(bǔ)償控制器的設(shè)計(jì)基于單片機(jī)船舶電力推進(jìn)電機(jī)監(jiān)測(cè)系統(tǒng)基于單片機(jī)網(wǎng)絡(luò)的振動(dòng)信號(hào)的采集系統(tǒng)基于單片機(jī)的大容量數(shù)據(jù)存儲(chǔ)技術(shù)的應(yīng)用研究基于單片機(jī)的疊圖機(jī)研究與教學(xué)方法實(shí)踐基于單片機(jī)嵌入式Web服務(wù)器技術(shù)的研究及實(shí)現(xiàn)基于AT89S52單片機(jī)的通用數(shù)據(jù)采集系統(tǒng)H
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 皮革制品的產(chǎn)品差異化競(jìng)爭(zhēng)考核試卷
- 住宅房屋裝修設(shè)計(jì)與應(yīng)用考核試卷
- 礦產(chǎn)勘查中的礦產(chǎn)資源綜合利用與節(jié)能減排考核試卷
- 電子制造中的高精度切割技術(shù)考核試卷
- 燈具的智能控制系統(tǒng)與家居集成考核試卷
- 淀粉在工業(yè)用粘合劑的增強(qiáng)應(yīng)用考核試卷
- 健身器材行業(yè)項(xiàng)目管理與質(zhì)量控制考核試卷
- 2025合作經(jīng)營(yíng)合同協(xié)議書
- 20254月生物降解耗材采購環(huán)保降解周期檢測(cè)協(xié)議
- 居民用電安全知識(shí)培訓(xùn)
- 2024年廣東省南海區(qū)中考一模數(shù)學(xué)試題(解析版)
- 煤炭開采單位產(chǎn)品能源消耗限額-編輯說明
- 技術(shù)標(biāo)標(biāo)書范本
- MOOC 思辨式英文寫作-南開大學(xué) 中國大學(xué)慕課答案
- 書香校園-世界讀書日主題教育班會(huì)
- 辦公室安全用電培訓(xùn)
- 國家安全+你我共筑-415國家安全教育主題班會(huì)課件
- 餐飲前廳服務(wù)培訓(xùn)課件
- 智慧農(nóng)業(yè)中的農(nóng)業(yè)無人機(jī)技術(shù)與應(yīng)用
- 2024年6月廣東省高中學(xué)業(yè)水平考試地理試卷(含答案)
- 小學(xué)綜合實(shí)踐活動(dòng)《業(yè)體驗(yàn)及其他活動(dòng) 走進(jìn)愛國主義教育基地、國防教育場(chǎng)所》
評(píng)論
0/150
提交評(píng)論