《基于特征矢量的模糊聚類算法以及GUI程序設計實現》14000字_第1頁
《基于特征矢量的模糊聚類算法以及GUI程序設計實現》14000字_第2頁
《基于特征矢量的模糊聚類算法以及GUI程序設計實現》14000字_第3頁
《基于特征矢量的模糊聚類算法以及GUI程序設計實現》14000字_第4頁
《基于特征矢量的模糊聚類算法以及GUI程序設計實現》14000字_第5頁
已閱讀5頁,還剩21頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

基于特征矢量的模糊聚類算法以及GUI程序設計實現摘要………………55緒論………………61.1圖像分割……………………61.2醫學圖像分割………………61.3圖像特征與圖像配準………81.4論文的主要工作和組織安排……………82.目前主要的圖像分割算法………112.1圖像分割及其數學表達式………………112.2圖像分割算法分類………122.2.1基于邊界的圖像分割算法………122.2.2基于區域的圖像分割算法………132.2.3基于邊界和區域兩者混合的方法………………152.2.4基于特定理論的分割方法………152.3醫學圖像分割方法性能評價……………173.基于特征矢量的模糊聚類算法以及GUI程序設計的實現…193.1模糊集及模糊聚類算法…………………203.1.1模糊集的引入……………………203.1.2模糊集的概念……………………203.1.3聚類與模糊聚類…………………213.1.4K-means算法……………………223.1.5基于模糊C均值聚類分割的算法原理…………233.1.6融合遺傳算法的改進FCM算法…………………253.2基于約束和偏場模型的模糊聚類算法…………………253.2.1新算法的目標函數………………253.2.2參數的估計………263.2.3算法的初始化……………………273.2.4遞歸優化算法……………………283.2.5算法流程圖………284.GUI程序設計和實驗結果………304.1GUI程序設計……………304.1.1相關程序代碼……………………304.1.2實驗操作步驟……………………334.2實驗數據和實驗結果……………………334.2.1實驗數據…………334.2.2實驗結果…………334.3實驗結果和評測…………354.4討論和總結………………36參考文獻……………38摘要:圖像分割的方針是根據像素相似性準則來將圖像分成許多個特定的、具備獨特性質的不重疊區域,從而提取出我們感興趣的目標。醫學圖像分割作為圖像分割在醫學影像中的應用,對于醫學圖像的分析至關重要。本文提出并實現了一種具有空間約束項的模糊聚類分割算法,并應用于對腦部MR圖像的灰質、白質和腦脊液的分割。本文算法引入像素標記空間一致性約束來消弱噪聲的不利影響,同時引入基于多項式的偏場模型來克服MR圖像偏場的負面影響,提高了本文算法的魯棒性和分割結果的準確度。實驗結果表明本文算法不僅保留了FCM算法的速度快的特點,而且其對強噪聲和大偏場MR腦部圖像的分割結果依然有較高的準確度。關鍵詞:圖像分割;模糊聚類;FCM算法;MR圖像;腦組織1緒論1.1圖像分割

圖像分割就是將一個大的圖像分成許多個互不堆疊的小的圖像,使得同一個小圖像內的特征擁有一定的相似性,不同小圖像的特征出現較為突出的差異。從繁雜的背景中提取出人們所需要的目標來進行后續分析是圖像分割的實質[2]。醫學圖像處理以及分析的前提是醫學圖像分割,并且也受到人們的廣泛關注,分割的算法也層出不窮。醫學圖像分割的發展到今天還有很大的進步空間,其中的重要原因就是醫學圖像的復雜性和多樣性。再加上各種噪聲(高斯噪聲、椒鹽噪聲等)、部分容積效應和偏移場效應的影響,這些影響就使得使用分割算法后得不到想要的結果[3]。在當今世界,圖像分割的應用非常廣泛。在醫學影像的分析、交通控制、氣象的預先調查等很多領域中,圖像分割的應用都取得了非常優秀的成績,并且做出了一定的貢獻。1.2醫學圖像分割醫學圖像分割是圖像分割的一個分支,也是極為重要的一個分支,不僅擴大了圖像分割的領域,而且為醫學事業的發展做出了不可磨滅的貢獻。醫學圖像分割就是把醫學圖像根據如亮度、顏色、紋理等醫學圖像相似性特征分割成多個互不連通的區域的過程。目前,臨床醫學越來越依賴各種模態的醫學圖像提供的信息,從醫學圖像中獲得相關的診斷信息和醫學信息必須依靠圖像分割。醫學圖像技術的發展在可視化、三維重建等其它領域也發揮了非常重要的作用。隨著科學技術和相關學科的快速發展,諸如醫院等醫療機構在疾病診斷和手術計劃制定等方面的相關關鍵信息主要依靠此類圖像模式的醫學圖像來獲得。盡管圖像經過分割后,不同的區域擁有不同的屬性,但是分割出的區域還是存在內部聯系[2]。1.3圖像特征圖像特征主要有圖像的顏色特征、紋理特征、形狀特征和空間關系特征等。顏色特征和紋理特征都是一種全局特征,顏色特征是用來描述圖像或圖像區域所對應的景物的表面性質,紋理特征是用來描述了圖像或圖像區域所對應景物的表面性質。形狀特征有輪廓特征和區域特征兩類表示方法,紋理特征與顏色特征的不同點是紋理特征不是基于像素點的特征。紋理特征要在含有數個像素點的區域中進行統計計算[2]。所謂特征矢量,就是將多個圖像特征串起來構成一個矢量,這個矢量就稱為特征矢量。圖像配準我們使用特征法。首先我們對待配準圖像進行預處理,\t"/item/%E5%9B%BE%E5%83%8F%E9%85%8D%E5%87%86/_blank"圖像分割和\t"/item/%E5%9B%BE%E5%83%8F%E9%85%8D%E5%87%86/_blank"特征提取的過程我們稱之為預處理過程,其次利用提取得到的特征完成兩幅圖像特征之間的匹配,并通過特征的匹配關系建立圖像之間的配準映射關系。因為圖像中有很多種可以利用的特征,因而產生了多種基于特征的方法[11]。1.4論文的主要工作和組織安排本文主要研究課題為基于約束聚類的醫學圖像分割,是基于FCM算法[8]的改進算法。本文采用Matlab的圖形用戶接口(GUI)框架編寫并實現了基于本文分割算法的程序。本文一共分為五章,各章節的主要內容如下:第一章為緒論部分,主要介紹了什么是圖像分割、醫學圖像分割及其重要性、圖像特征。第二章主要介紹了目前主要的圖像分割算法,包括基于邊界的圖像分割算法和基于區域的圖像分割算法以及基于特定理論的圖像分割算法等[1]。第三章主要闡述了什么是聚類算法和模糊聚類算法,并且詳細介紹基于約束聚類和多項式偏場模型的改進FCM算法。第四章主要闡述了實現本文算法的GUI程序設計,以及相關的實驗數據、實驗步驟和和實驗結果。對實驗結果進行分析和評測,并進行討論和總結。2目前主要的圖像分割算法2.1圖像分割及其數學表達式圖像分割已經廣泛應用于各個領域,比如機器視覺、人臉識別等,其中,圖像分割在醫學影像中的應用最為廣泛[14]。所謂圖像分割,其實就是我們感興趣的目標被提取出來的過程,或者說將圖像分割成各具特性的區域使得在同一區域中的元素的相似度最大,不同區域之間的相似度最小。一直以來,不同的人對圖像分割的定義有不同的理解。我們根據集合的相關概念,對圖像分割給出了比較正式的定義[1]。令集合R代表整個圖像區域,對R的分割可看出將R分成N個滿足一下五個條件的非空子集(子區域)R1,R2,...,i=1NRi=R ?i,j,i≠j,有Ri∩Rj=?。獨立性:指出分割結果中各個區域是互不交叉的,即分割結果中一個像素不能對于i=1,2,...,N,有P(Ri)=TRUE。相似性對于i≠j,有P(Ri∪Rj)=FALSE。互斥性:Ri是一個相連通的區域,?其中,?代表空集,P(Ri)是對應于子區域R如果增強待分割區域均勻性的約束,分割區域極易造成大量空白和不規則邊緣的產生;如果過于重視分割之后不同區域間的差異性,則會導致合并了不同質的區域和一部分感興趣邊界的丟失[1][3]。2.2圖像分割算法分類目前,國內外圖像分割的算法層出不窮,本文將主要的分割方法分為以下四類:基于邊界的分割方法,基于區域的分割方法,基于邊界和區域兩者混合的方法以及基于特定理論的分割方法[1]。以下是各類算法的詳細講述。2.2.1基于邊界的圖像分割算法基于邊緣檢測的圖像分割算法的基本思想是先確定圖像中的邊緣像素,然后再把這些像素連接在一起就構成所需的區域邊界。以下為常見的幾種方法。邊緣檢測算法圖像的邊緣是圖像最基本的特點之一,基于邊緣的分割算法是圖像分割算法中使用最早的。所謂圖像邊沿,即表現為圖像中一個區域的閉幕和另一個區域的開始,圖像中相鄰區域之間的像素集合構成了圖像的邊緣[1]。很多時候,我們使用邊緣檢測算法是因為該算法邊緣定位非常準確,并且算法速度快,然而該算法也有優點,就是不能保證邊緣的連續性和封閉性且在高細節區域存在大量的碎邊緣,但是又不能夠將高細節區域分成小碎片;也由于此,邊緣檢測只能產生邊緣點,而非完整意義上的圖像語義分割過程。2)基于水平集的分割方法水平集是幾何形變模型。水平集方法源于界面傳播等研究領域的發展,它被用來處理封閉運動界面。通過思考一些流體中的重要思想,1988年,Osher和Sethian首次提出了水平集算法,這是一種有效解決曲線演化問題。水平集算法是一種有效解決曲線演化問題的數值方法,并且計算穩定,適宜任意維數空間。這些年來此算法已經廣泛地應用在各個領域中,尤其是圖像處理領域中。把運動的界面看作零水平集是水平集的基本思想,再將其嵌入到更高維的水平集函數中。這樣一來,就可以從閉超曲面的演化方程得到水平集函數的演化方程,而它的零水平集一直是嵌入的閉合曲面。最后,零水平集確定了,運動界面演化的結果也就確定了[1]。2.2.2基于區域的圖像分割算法基于區域的圖像分割算法是比較常用的一類圖像分割算法,該方法是以直接探尋區域為基礎的分割技術。該方法一共有兩種基本形式:一種是區域生長,即從單個像素出發,逐步歸并以形成所需要的分割區域;另一種則是從全局出發,一步步切割至所需的分割區域。主要包括以下幾類:1)閾值分割閾值分割是比較常見的一種并行分割方法。使用閾值分割首先必須確定一個灰度值,這個灰度值也稱“閾值”,是用來劃分不同的類別。把灰度值大于閾值的所有像素歸為一類,小于閾值的所有像素歸為另一類。閾值分割方法實則是如下變換:數學公式:此中,T為閾值,對于物體的圖像元素g(i,j)=1,對于背景的圖像元素g(i,j)=0。由此可知,閾值分割算法最關鍵的地方就是確定閾值,假如我們能夠確定一個合適的閾值,我們就能夠將圖像準確地分割開來。閾值確定后,將閾值與像素點的灰度值逐個進行比較,從而就能對圖像進行分割。閾值分割可以分為單閾值分割方法和多閾值分割方法:單閾值分割方法只設置一個閾值,將圖像分為目標和背景即可;多閾值分割方法則需要設置多個閾值,利用多個閾值將圖像分割為多個目標和背景區域[1]。我們使用閾值分割算法主要是因為它操作簡單,當不同事物或組織結構間有很強大對比時,我們可以獲得更好的效果;然而該算法的缺點也很明顯,當目標與背景或目標之間灰度區別不明顯時,或者是目標與背景的灰度值范圍有較大重疊時,就很難得到準確的結果。除此之外,它對噪聲還特別敏感[1]。區域生長法基于區域的分割方法是根據圖像的相似性準則劃分為各種不同的類別,而區域生長法是區域分割法中常用的一種圖像處理方法,它是根據某一種事先定義好的法則將各子區或者其他像素聚合成一個更大區域的一種圖像處理方法[2]。2.2.3基于邊界和區域兩者混合的方法兩者混合的方法就是將基于邊界和基于區域的方法混合,取兩者之優勢,避免其劣勢[4]。2.2.4基于特定理論的分割方法圖像分割到目前為止還沒有通用的自身理論。隨著科學的發展,技術的進步,各學科提出了許多新理論和新方法,因此出現了很多與一些特定理論、方法相結合的圖像分割方法。當前圖像分割技術研究發展的趨向是將新概念、新方法尤其是數學領域提出的新方法引入到圖像分割領域中[12]。1)基于統計學的分割方法統計學方法的內涵是從統計學的角度出發對數字圖像進行建模,我們把圖像中各個像素點的灰度值看作是擁有一定概率分布的隨機變量。統計方法是比較流行的醫學圖像分割方法。基于統計學的分割方法中,使用最頻繁的是基于馬爾可夫隨機場(Markovrandomfiled,MRF)模型算法。MRF模型被廣泛應用于被噪聲破壞的圖像的恢復、分割和紋理分析等領域。參數估計是MRF模型中一個重要的問題,只有參數估計的正確性才既能保證圖像分割的準確性,又能保證算法的自適應性。參數估計是該方法被廣泛應用之前必須解決的一個重要問題。必須選擇正確的參數估計方法和優化計算方法,以保證估計的正確性和收斂的快速性。MRF的算法的缺點是不能有效地處理圖像的模糊性且存在過分割現象[3][4]。2)基于遺傳算法的分割方法遺傳算法采用的是非遍歷尋優搜索策略,是一種簡單的、適用于并行處理并且具有魯棒性和廣泛適用性的搜索方法。該算法在搜索過程中是直接作用于在參數集中進行了編碼的個體,而不是直接作用于變量,由此可以使該方法直接對圖像進行操作。整個搜索采用同時處理群體中多個個體的方法,是從一組解迭代到另一組解的過程,這樣做的好處是降低了陷入局部最優的可能性,而且易于并行化處理。遺傳算法的優點是擅長全局搜索,缺點是局部搜索能力不足,因此在醫學圖像分割中常把遺傳算法和其它算法結合起來使用(第三章將會提到)[1][3][4]。3)基于模糊集理論的分割方法本文研究的重點就是基于模糊聚類的圖像分割方法。由于醫學圖像具有模糊和不均勻的特性,圖像中的區域并非總能被明確地劃分,基于模糊集理論的方法也就應運而生。模糊技術是在模糊集理論的基礎上建立起來的,對噪聲不敏感,并且還能很好地處理三維圖像內在的模糊性。對于一個目標物體,用0到1之間的一個隸屬度值來表示圖像中像素隸屬于目標物體的程度,越接近于0,表明隸屬度越小,越接近于1,表明隸屬度越大。從而有效的刻畫了圖像的模糊性,特別適合處理醫學圖像中的不確定性的問題[3][6]。模糊分割技術主要有模糊閾值、模糊聚類、模糊邊緣檢測、模糊連接度等。在模糊聚類技術中,模糊C-均值(FCM)聚類技術使用最為廣泛,FCM算法是一種無監督學習算法,所謂無監督學習算法,就是在聚類過程中不需要任何人為外界因素的加入,所以它比較適合用于自動化方面[3]。FCM算法的優勢主要在以下兩個方面,其一是FCM算法能夠很好地處理噪聲、部分容積效應、模糊性等圖像問題;其二就是它是一種無監督的模糊聚類分割算法。FCM算法的缺點就是容易受到初始值選取的影響,如果初始值選取不當,不僅會影響算法收斂速度,而且可能導致算法收斂到局部極小點,從而影響最終的分割結果。傳統的FCM算法不能有效分割噪聲圖像和退化圖像。因此,如何改進FCM算法來使其能夠合理地利用空間信息就成為了當前的一個研究熱點。目前,在FCM的基礎上,又出現了如快速FCM算法(FFCM)、FCM-Chen算法等改進算法[1]。2.3醫學圖像分割方法性能評價除了前面介紹的圖像分割算法,圖像分割算法還有很多種,特別是灰度圖像的分割算法更多。算法有很多,不一樣的算法有不同的優缺點。如何評價一個算法的好壞是圖像處理算法中的一個大難題。目前,對某一醫學圖像分割算法很難給出客觀的、系統的、定量的評價。究其原因,主要存在以下兩個問題:①不同的組織或者器官以及不同的成像模式(CT/MRI/PET等)所得到的醫學圖像的特點差別很大,②同一幅特定的醫學圖像,不同的醫學圖像專家也許會得到不同的分割結果,分割結果存在很大的人為因素在里面。介于以上兩點,所以很難對計算機分割方法得到的分割結果做統一的客觀評價,缺少關于醫學圖像分割的金標準數據庫[7]。圖像分割評價通過對圖像分割算法性能的研究以達到優化分割的目的,分割評價不僅可以提高算法的性能,而且對研究新的技術也具有指導意義。一般,我們要求評價方法應該具有以下幾點要求:①評價方法應該具有通用性,即它要適合于評價不同類型的分割算法以及適合于各種應用領域的情況。②應采用定量和客觀的性能評價準則,所謂定量是指可以精確地描述算法的性能,客觀是指要擺脫人為因素來進行評價。③應該取用通用的圖像進行測試以使評價結果具有可比性,同時這些圖像要盡可能反映客觀世界的真實情況和實際應用的共同特點。除此之外,對圖像分割算法的評估要基于一定的評估準則,也稱評估指標或者測度。本文使用的測度就為Dice測度(詳細見第四章)[10]。3基于特征矢量的模糊聚類算法以及GUI程序設計的實現3.1模糊集及模糊聚類算法3.1.1模糊集的引入在現實生活中充滿了不確定、含糊的信息,在1965年,美國加州大學伯克利分校電氣工程系的L.A.zadeh(扎德)教授首次創立模糊集合理論,模糊理論就是在模糊集合理論的數學基礎之上發展起來的,主要包括模糊集理論、模糊邏輯、模糊推理和模糊控制等方面的內容[13]。早在20世紀20年代,著名哲學家和數學家B.Russell就寫出了有關“含糊性”的論文。他認為所有的自然語言都是模糊的,比如“暖和的”和“年輕的”等概念沒有明確的內涵和外延,因而是不明確的和模糊的。可是,在特定的環境中,人們用這些概念來描述某個具體對象時卻又能心領神會,很少引起誤解和歧義。美國加州大學的L.A.Zadeh教授在1965年發表了著名的論文,文中首次提出表達事物模糊性的重要概念:隸屬函數,從而突破了19世紀末康托爾的經典集合理論,奠定模糊理論的基礎[6]。后來用隸屬度函數來衡量事物模糊的程度,引入隸屬度,標志著模糊數學的產生[1]。模糊數學理論不僅能概括事物“非此即彼”的確定性狀態,還能概括事物“亦此亦彼”的不確定性狀態,也因此與傳統數學相比它的應用范圍更為廣泛。到目前為止,模糊數學已經在模式識別、人工智能、醫療診斷以及生態學、心理學等多種領域得到應用[1]。3.1.2模糊集的概念在經典集合理論中,集合A可由其特征函數唯一確定:(3-1)即x∈A和x?A有且只有一個成立。為了更好地刻畫模糊現象和將普通集合里面的函數更容易地擴展到模糊集里面的隸屬度函數,我們要將離散的兩點{0,1}擴展到連續區間[0,1]。隸屬度函數定義:設X是論域,μA是把任意x∈X映射為[0,1]上某個數值的函數,即μAx→μA則稱μA為定義在X上的隸屬度函數,由μA(x)所構成的集合A,被稱為X上的模糊集,μ由以上定義可以可看出,隸屬函數完全可以刻畫模糊集A,隸屬函數μA把X中的每個元素x都映射為[0,1]上的一個值μA(x),表示該元素屬于A的程度,該值越接近于1,就表明屬于A的程度越高。當μA(x)3.1.3聚類與模糊聚類在圖像處理中,聚類是依照像素的某種屬性,聚成若干個類,同一個類中的像素彼此相似,而不同類中的像素要彼此不同,因為它的思想與圖像分割的思想基本一致,所以聚類適用于圖像分割。我們通過引入模糊集合理論來研究分析圖像分割所存在的這些問題的原因是因為圖像本身存在模糊性以及不確定性以及為了取得更好的結果,而且有其內在的合理性和必然性。聚類一般可以分為硬聚類與軟聚類。在硬聚類的算法中,像素對類的隸屬度不是0就是1,也即屬于時為1,不屬于時為0,像素只能屬于其中一個類,不能再屬于別的類別。典型的代表是K-means算法等。由于此類算法未考慮領域的相關信息,導致分割結果不是很理想。另一類是軟聚類,軟聚類就是在硬聚類的基礎之上引入了模糊的概念,使得算法擁有了柔的特性。在軟聚類中,模糊聚類的分割方法是使用最多的。模糊屬性的提出改善了硬劃分中存在的不足,模糊理論的推廣可以解決很多硬劃分不能解決的問題。關于圖像,在硬聚類中,像素只能屬于其中一個類,不是0就是1;而在軟劃分中,每個像素對類的隸屬度在0和1之間,即像素點可以根據不同的隸屬度同時屬于不同的類,越接近0,對該類的隸屬度越小,越接近1,對該類的隸屬度越大,但是像素點對所有類的隸屬度的總和是1。引入了隸屬度的概念是模糊聚類方法的優勢,因為讓模糊聚類方法擁有了柔的特性,所以不僅可以有效解決圖像模糊性與不確定性的問題,而且它的分割效果優于硬聚類的分割方法。FCM算法是模糊聚類方法中比較常用且實用的一種聚類方法,用FCM算法分割圖像時,在圖像分割中融入模糊理論,圖像的原始信息就能被較多的保留下來,獲得更好的分割效果[6]。3.1.4K-means聚類算法在前面講到,硬聚類算法中的代表算法是K-means算法。K-means操作簡便以及效率相對來說比較高是它在聚類算法中使用比較多的一類算法的原因。以樣本之間的歐式距離為相似性準則是K-means算法的基本思想。我們把樣本集合分為了K個類使得在這K個類中被分到同一類中的樣本距離盡量小,連接盡量緊密一些,而分到不同類中的樣本之間的距離盡量大[6]。means算法的基本操作為:首先選取K個聚類中心,然后根據距離最近原則劃分數據對象到聚類中心,劃分完所有數據過后,會聚集K個類,然后依據現有對象去更新每個聚類中心,就會得到新的K個聚類中心,然后重復以上操作,直到聚類中心不發生變化或者變化幅度很小或者達到了我們預先設置的迭代次數為止。聚類的目標是使得各類的聚類平方和最小,即最小化目標函數,目標函數如下:(3-2)其中,k表示一共有k個數據簇,x是數據簇中的數據,是數據簇中的均值向量。上式描述了簇類樣本圍繞簇均值向量的緊密程度,J值越小則表明簇類樣本相似性越高,因此只要最小化上式就能得到最優分類結果[6]。結合最小二乘法和拉格朗日原理,可以得出聚類中心為對應類別中各數據點的平均值,同時為了使得算法收斂,在迭代過程中,我們要使得最終的聚類中心盡量保持不變。我們將K-means算法步驟化和圖像化,分為如下四個步驟[6]:①首先隨機選取K個聚類中心,作為初始聚類中心;②依據距離最近原則,將所有的對象分配到相應的離它最近的那個聚類中心;③更新聚類中心,聚類中心采用每個類中全部對象的均值,然后計算目標函數的值;④判斷目標函數的值是否改變,若不變或者變化很小或者達到預先設定的迭代次數,則算法結束,否則返回②;以下為K-means算法的一個圖像例子,見圖(3-1):圖(3-1)上圖a表達了初始的數據集,我們假設k=2,在圖b中,我們隨機選取了兩個聚類中心,然后根據距離最近原則將數據分割成兩部分,獲得圖c,然后更新聚類中心,得圖d,再次根據距離最近原則劃分數據集,得圖e,再次更新聚類中心,得圖f,以此類推進行下去,知道聚類中心不發生改變或者變化很小時,結束算法,得到最終結果。當然在實際K-Means算法中,我們一般會多次運行圖c和圖d,才能達到最終的比較優的類別。3.1.5基于模糊C均值聚類分割的算法原理在軟聚類算法中,FCM算法是一種代表性算法,它是一種基于劃分的聚類算法,它按照某一相似性原則,使得在同一類中的對象之間的相似度盡可能達到最大,而不同類中的對象的相似度盡可能達到最小。FCM算法在硬聚類算法K-means算法的基礎之上結合模糊理論而形成一種模糊聚類算法,它是一種軟劃分的聚類算法,而K-means算法是一種硬劃分聚類算法[6]。FCM算法是基于目標函數的一種聚類算法,它通過不斷迭代來更新聚類中心和隸屬度函數,使得目標函數達到最小以完成圖像圖像分割[6]。目標函數:(3-3)其中,c為預定的聚類數目,表示X中任意樣本屬于聚類i的隸屬度函數,,i=1,2,c為每個聚類的聚類中心,2≤c≤N,m∈[1,∞)為聚類加權指數,它控制數據劃分過程的模糊程度,當m=1時,模糊聚類就退化為硬C均值聚類。研究表明,m=2是比較理想的取值。表示第k個像素到第i個聚類中心的歐氏距離(歐幾里得距離)。其中,隸屬度函數要滿足如下關系式:(3-4)在隸屬度函數滿足上式的情況下,通過拉格朗日來得到聚類中心和隸屬度函數的迭代更新公式,如下:(3-5)3-6)FCM算法步驟如下:①初始化參數,隨機初始化聚類中心,迭代次數l=0;;②由(3-5)式更新隸屬度矩陣;③由(3-6)式更新聚類中心;④若||-||<?,則迭代終止,輸出U和V;否則,令l=l+1,返回②;在FCM算法中,參數選擇尤為重要,尤其是聚類個數c和模糊參數m;一般來講,聚類個數c要遠小于其樣本總數,同時也要大于1;模糊參數m控制算法的柔性,不能太大也不能太小,如果m取太大,則算法的聚類效果會特別差,如果m取太小,則算法的聚類效果和HCM算法的聚類效果差別不大,一般來說,我們將m設置為2會得到很好的聚類效果[1]。3.1.6融合遺傳算法的改進FCM算法遺傳算法廣泛應用于各個領域,比如自動控制、生產計劃、圖像處理、機器人等研究領域。傳統的FCM算法屬于局部搜索優化算法,其初值的大小會直接影響算法的性能(算法的結果)。將遺傳算法與FCM算法相結合,來優化FCM算法的初始值,這也是該改進算法的關鍵。這樣做不僅提高了全局優化算法的性能,有效避免陷入局部收斂算法,而且也提高了算法的抗噪聲能力(椒鹽噪聲、高斯噪聲等)[2]。3.2基于約束和偏場模型的模糊聚類算法由于腦部MR圖像分割過程主要是受噪聲的影響,但是目前已經存在的模糊聚類算法對腦部MR是不能夠提供優質的分割技術的,鑒于此點,本文提出了基于模糊聚類的改進算法——帶偏場校正和鄰域約束的FCM圖像分割算法。在該算法中,我們給出了一種新的分割目標函數,并且我們利用參數模型近似偏場和類似馬爾可夫隨機場先驗得的鄰域約束來模擬腦組織分布的空間一致作用。改進后的算法一是可以正確的設置初始值,二是能削弱產生的噪聲,有效地克服了噪聲和偏場的影響。我們通過和現有的分割算法比較時發現,新的算法具有更高的精度和更快的分割速度[2]。3.2.1新算法的目標函數因為模糊聚類算法存在在分割時達不到預期效果的問題,所以偏場校正和鄰域約束的模型就應運而生,新算法的思想是在該算法的目標函數中增加新的約束條件,運用鄰域的分割結果對中心像素進行分析歸類。與原始FCM算法的目標函數相比,新算法的目標函數還增加了第二項——像素模糊隸屬度矢量約束項,作用是為了削弱噪聲的影響。具體目標函數如下[8]:(3-7)其中:為參數模型表達的MR圖像的偏場B,L為參數模型的基函數的個數,為像素j處的基函數的值,為待估計的模型參數,即基函數的系數;為像素j的鄰域,||為像素j鄰域的勢,即像素j鄰域像素的數目;為鄰域約束的權重系數[9],在我們的遞歸算法中是不變的。3.2.2參數的估計在新算法的目標函數中,目標函數J的最小化和標準的FCM算法極其相似。我們通過對目標函數J分別對取偏導數,并置各自的偏導數為0,從而推導出使得目標函數J取得局部極值的必要不充分條件[8]。隸屬度函數的估計新算法的約束優化用拉格朗日乘子L來解決[8]:(3-8)L對取偏導數,并令其偏導數為0,即:其中:,為了方便計算,我們令q=2,解出上式得的估計為:(3-9)其中:,。聚類中心的估計對L取的偏導數,并令該偏導數為0,即[8]:由此解得:(3-10)偏場B的估計同前面一樣,對L取的偏導數,并且置偏導數為0,如下[8]:(3-11)解上列方程組會得到的估計。為了更明確地表達,我們采用了矩陣的形式去表達,即:其中:,,,。在上面(3-11)式子中,估計參數的個數小于方程個數,因此方程(3-11)是過定的,所以該方程的解是在最小平方意義下的最優解。我們用象素分割結果的抽樣來快速估計偏場B的參數,這樣估計偏場大大節省了時間,提高了算法的效率[8]。3.2.3算法的初始化本文算法的初始化非常簡單,具體步驟如下[8]:正則化圖像象素灰度值到[0,1]區間。根據具體情況選擇分割聚類數C,在腦部MR圖像分割實驗中,C=3。選擇鄰域形式,依據具體情況選擇適當的鄰域形式。設置初始聚類中心,此聚類中心可以隨機選取,本文將聚類中心設置為。選擇偏場模型基函數形式和階數,本文設置偏場初始函數。初始化隸屬度函數矩陣計算灰度值與聚類中心得到的矩陣便是初始隸屬度函數的矩陣。3.2.4遞歸優化算法本文新算法的步驟如下[8]:對新算法進行初始化設置最大迭代次數iter_max和一個標量值?>0令迭代次數iter=0用式對隸屬度矩陣U進行更新用式對聚類中心進行更新用式更新偏場模型參數判斷是否成立,若成立,則終止迭代,否則,iter=iter+1,重復(4)~(6)3.2.5算法流程圖.圖3-2算法流程圖4GUI程序設計和實驗結果本章主要講述了GUI的程序設計過程和實驗數據以及相關實驗結果。4.1GUI程序設計GUI(GraphicalUserInterface)的中文名稱為圖形用戶界面,是指采用圖形方式顯示的計算機操作用戶界面,是一種人與計算機通信的界面顯示格式,允許用戶使用鼠標等輸入設備操縱屏幕上的圖標或者菜單選項,用來達到選擇命令、調用文件、啟動程序或者執行其它一些日常任務的目的。本文算法是在WindowsXP平臺下由MatlabR2016a下編程實現。GUI界面包含以下三個大的模塊:顯示模塊:一共有五個axes插件,用來顯示五幅圖像;參數設置模塊:在文本框里設置相應的參數,或者點擊“缺省值”按鈕一鍵設置默認參數,選擇相應的特征;文件加載和運行模塊:點擊加載圖像按鈕加載.mat圖像,設置切片數進行預處理,設置相應參數后點擊“聚類算法”運行算法;界面顯示如圖:4.1.1相關程序代碼本小節將程序的主要代碼展示出來:功能代碼:①選取文件:globalIMImg_gradientimslice_numdataALL%%選擇文件地址[filename1,pathname1]=uigetfile({'*'},'選擇數據');ImageName1=[pathname1filename1];ALL=load(ImageName1);%%將圖片地址賦值給editset(handles.edit7,'String',pathname1);%%將圖片地址賦值給editset(handles.edit11,'String',filename1);②保存文件:%%讀取文件名globalImg_filterImg_gradientim_segpathname2ImageName2=get(handles.edit12,'String');str=strcat(pathname2,'\',ImageName2,'.jpg');imwrite(im_seg,str);③缺省值按鈕(默認值):param.c=3;param.m=2;param.e=1e-6;param.v=1;set(handles.edit1,'string',param.c);set(handles.edit2,'string',param.m);set(handles.edit3,'string',param.e);set(handles.edit4,'string',param.v);第二部分算法代碼:①預處理:globalIMImg_gradientimslice_numdataALLim=ALL.im;im_size=size(im);%%選取需聚類的切片%slice_num=floor(im_size(3)/2);%選擇3D圖像中的一個slice,即一個2D橫斷面N=get(handles.edit6,'String');slice_num=str2double(N);%%當前切片影像灰度IM=im(:,:,slice_num);%從3D圖像中,提取slice_num這個橫斷面圖像%%灰度梯度Img_gradient=gradient(double(IM));%%歸一化灰度圖Img_F=(IM-min(IM(:)))/(max(IM(:))-min(IM(:)));%%提取切片中的腦部區域I=find(IM>0&IM<=255);%去除背景,即把圖像中灰度值為0的像素去除,它們不是腦內組織,我們只須對腦內組織聚類分割%掩模圖像Img_s=IM;Img_s(Img_s==0)=NaN;%%繪圖axes(handles.axes1);imshow(IM,[]);drawnow;axes(handles.axes3);imshow(Img_s,[]);drawnow;axes(handles.axes2);imshow(Img_F,[]);drawnow;axes(handles.axes4);imshow(Img_gradient,[]);drawnow;②算法運行:globalIMImg_gradientimslice_numdataALLim_seg%%聚類參量parametersN1=get(handles.edit1,'String');param.c=str2double(N1);N2=get(handles.edit2,'String');param.m=str2double(N2);N3=get(handles.edit3,'String');param.e=str2double(N3);N4=get(handles.edit4,'String');param.val=str2double(N4);%param.c=3;%param.m=2;%param.e=1e-6;param.ro=ones(1,param.c);%param.val=1;%%聚類clusteringI=find(IM>0&IM<=255);%去除背景,即把圖像中灰度值為0的像素去除,它們不是腦內組織,我們只須對腦內組織聚類分割%判斷是使用灰度or灰度梯度進行聚類ifget(handles.radiobutton1,'value')data.X=IM(I);%使用灰度elseifget(handles.radiobutton2,'value')data.X=Img_gradient(I);%使用灰度梯度end%%歸一化normalizationdata=clust_normalize(data,'range');%%聚類result=FCMclust(data,param);%%按v的聚類中心的大小排列v,由大到小[v_ri_r]=sort(result.cluster.v',2,'ascend');result.data.f=result.data.f(:,i_r);[valueI_seg]=max(result.data.f,[],2);im_seg=zeros(size(IM));im_seg(I)=I_seg;axes(handles.axes5);imshow(im_seg,[]);drawnow;4.1.2實驗操作步驟首先選擇文件地址,導入相應文件到Matlab中;給edit賦值圖片地址,讀取文件名;設置聚類參量parameters;聚類clustering,去除背景,即把圖像中灰度值為0的象素去除,它們并不是腦內組織,我們只需要對腦內組織聚類分割即可;歸一化normalization,按照v的聚類中心的大小排列v,由大到小;選取需要聚類的切片數目,本次實驗選取50;提取切片中的腦部區域;在matlab中進行繪圖操作;4.2實驗數據和實驗結果4.2.1實驗數據本文的實驗數據全部選自BrainWeb的腦部MR3D圖像數據。包含3%~9%的噪聲和20%~40%的偏場,圖像模式為T1權重,其中3D圖像數據像素大小為mm。例:t1_icbm_normal_1mm_pn5_rf20.mat就表示圖像是T1權重,每個像素的真實大小為的立方體,pn5表示圖像噪聲為5%,rf20表示圖像的偏場幅度為20%。4.2.2實驗結果注:以下切片數均為50:圖4-1噪聲:9%,偏場:40%,圖4-2噪聲:9%,偏場:20%,Dice測度:0.804712Dice測度:0.822423圖4-3噪聲:7%,偏場:40%,圖4-4噪聲:7%,偏場:20%Dice測度:0.857374Dice測度:0.86683圖4-5噪聲:5%,偏場:40%,圖4-6噪聲:5%,偏場:20%Dice測度:0.901625Dice測度:0.910715圖4-7噪聲:3%,偏場:40%,圖4-8噪聲:3%,偏場:20%Dice測度:0.930568Dice測度:0.944674腦灰質分割結果的3D顯示(噪聲:3%,偏場20%)表4-1BrainWeb仿真MR圖像2D分割結果序號模式噪聲(%)偏場(%)組織類型Dice測度1T1320白質0.967437灰質0.966527腦脊液0.9638742T1340白質0.959866灰質0.958163腦脊液0.9540003T1520白質0.94864灰質0.946881腦脊液0.9403394T154

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論