張喜紅
(1.亳州職業(yè)技術(shù)學(xué)院,安徽 亳州 236800;2.山東大學(xué) 控制科學(xué)與工程學(xué)院,山東 濟(jì)南 250061)
基于Canny算子腦部CT邊緣檢測(cè)方法的研究
張喜紅1,2
(1.亳州職業(yè)技術(shù)學(xué)院,安徽 亳州236800;2.山東大學(xué) 控制科學(xué)與工程學(xué)院,山東 濟(jì)南250061)
摘要:鑒于經(jīng)典Canny算法在腦部CT圖像應(yīng)用中存在的問題和缺陷,在深入分析經(jīng)典Canny算法執(zhí)行步驟的基礎(chǔ)上,提出了一種改進(jìn)的邊緣檢測(cè)方法,即用中值濾波與高斯濾波相結(jié)合,替代傳統(tǒng)Canny算子的單一高斯濾波;用迭代算法自動(dòng)計(jì)算閾值,替代經(jīng)驗(yàn)固定閾值。實(shí)驗(yàn)結(jié)果表明,改進(jìn)方法比傳統(tǒng)方法更具準(zhǔn)確性與普適性,減少了邊緣錯(cuò)檢、漏檢的情況。
關(guān)鍵詞:腦部CT; 中值濾波; 高斯濾波; 迭代算法
0引言
醫(yī)學(xué)圖像是醫(yī)生診斷疾病的主要參考依據(jù),傳統(tǒng)的醫(yī)學(xué)圖像閱片準(zhǔn)確度,主要依賴于醫(yī)生的主觀經(jīng)驗(yàn),誤診錯(cuò)判事件多發(fā)。當(dāng)前計(jì)算機(jī)技術(shù)得到了前所未有的發(fā)展,數(shù)據(jù)挖掘技術(shù)已延伸至圖像處理領(lǐng)域,醫(yī)學(xué)影像儲(chǔ)存管理系統(tǒng)(即PACS系統(tǒng))也在各級(jí)醫(yī)院得到了廣泛使用。基于上述背景,通過(guò)對(duì)醫(yī)學(xué)圖像數(shù)據(jù)挖掘,在PACS系統(tǒng)的基礎(chǔ)上,建立一套醫(yī)學(xué)影像計(jì)算機(jī)輔助診斷系統(tǒng),提高醫(yī)學(xué)圖像診斷的準(zhǔn)確度,具有現(xiàn)實(shí)的意義。國(guó)內(nèi)外許多學(xué)者以人體多個(gè)部位、多種類型的醫(yī)學(xué)影像圖片作為研究對(duì)像,開展了大量關(guān)于本領(lǐng)域相關(guān)關(guān)鍵技術(shù)的研究。這些研究工作主要包括:醫(yī)學(xué)圖像的濾波、邊緣檢測(cè)分割、特征提取、數(shù)據(jù)挖掘等[1,2]。醫(yī)學(xué)圖像的邊緣檢測(cè)是特征提取、數(shù)據(jù)挖掘分析的基礎(chǔ),邊緣檢測(cè)的準(zhǔn)確度直接影響醫(yī)學(xué)影像感興趣區(qū)域特征提取的準(zhǔn)確度,進(jìn)而影響后續(xù)工作的進(jìn)行。因此,引來(lái)了眾多學(xué)者在此方面的研究,并提出了眾多算法。常見的圖像邊緣提取算法有:梯度算子(如:羅伯茨算子、Prewitt算子、Sobel算子等),Log算子和canny算子[3]。因傳統(tǒng)canny算了在消除噪聲方面性能較好,因此得到了在眾多領(lǐng)域的應(yīng)用。本文針對(duì)傳統(tǒng)Canny算子在腦部CT邊緣檢測(cè)應(yīng)用中,存在偽邊,邊界模糊,且經(jīng)驗(yàn)固定閾值不具普適性的問題,從濾波環(huán)節(jié)、與閾值選取環(huán)節(jié)兩方面入手對(duì)其進(jìn)行了方法改進(jìn)。
1樣本圖像構(gòu)造及相關(guān)理論
1.1樣本圖像構(gòu)造
在算法的改進(jìn)研究實(shí)驗(yàn)中,首先從山東省濟(jì)南市某醫(yī)院的PACS數(shù)據(jù)庫(kù)中,選取一幅較為清晰的腦部CT圖像,腦部CT圖像原始圖的擴(kuò)展名為dcm,即為DICOM格式圖像。為了利用Matlab2010圖像工具箱對(duì)進(jìn)行后續(xù)處理,先將其通過(guò)函數(shù)dicomread()讀入,再使用dicomwrite()將其輸出轉(zhuǎn)化為bmp格式的腦部CT圖像,如圖1(a)所示。為了使實(shí)驗(yàn)樣本圖像更具典型,接著通過(guò)imnoise(I,'gaussian',0,0.01)與imnoise(f,'salt & pepper',0.01)語(yǔ)句為圖像添加高斯噪聲與椒鹽噪聲,以便模擬在真實(shí)圖像采集、儲(chǔ)存等環(huán)節(jié)中混入的噪聲。所構(gòu)造的腦部CT樣本圖像,如圖1(b)所示。在算法的驗(yàn)證實(shí)驗(yàn)中,所采用的測(cè)試圖像也是來(lái)源于山東省濟(jì)南市某醫(yī)院的PACS數(shù)據(jù)庫(kù)。
(a)腦部CT原圖 (b)構(gòu)造的腦部CT樣本圖像圖1 腦部CT原圖與構(gòu)造的腦部CT樣本圖像Fig.1 The original image and the sample image
1.2傳統(tǒng)Canny邊緣檢測(cè)理論
Canny算子是由Canny.JF等人于1986年提出的一種廣泛用于圖像邊緣檢測(cè)的算法,其集圖像去噪、圖像增強(qiáng)及邊緣檢測(cè)于一體,是一種多級(jí)級(jí)聯(lián)圖像邊緣檢測(cè)算子[4]。Canny邊緣檢測(cè)算子的設(shè)計(jì)思想源于自己提出的3項(xiàng)準(zhǔn)則,即一個(gè)優(yōu)秀的邊緣檢測(cè)算子應(yīng)具有較高的信噪比、較高的定位精度和較好單邊緣響應(yīng)。Canny算子的執(zhí)行過(guò)程主要由4個(gè)步驟構(gòu)成[5]:圖像去噪平滑;對(duì)去噪平滑輸出圖像的梯度幅度和方向進(jìn)行計(jì)算;對(duì)所求得的梯度幅值進(jìn)行非極大值抑制;采用高、低雙閾值進(jìn)行邊緣檢測(cè)與連接。
1)圖像平滑
傳統(tǒng)Canny算子在進(jìn)行邊緣檢測(cè)時(shí),首先采用一高斯濾波器與原圖像做卷積運(yùn)算,實(shí)現(xiàn)圖像的平滑,如式(1)所示。其中,G(x,y,δ)是高斯函數(shù),δ為高斯函數(shù)的標(biāo)準(zhǔn)方差;f(x,y)代表原始圖像;I(x,y)代表濾波輸出圖像。
I(x,y)=G(x,y,δ)*f(x,y)
(1)
2)求解梯度幅值和方向
選用2行、2列模板鄰域的一階偏導(dǎo)的有限差分,沿行、列兩個(gè)方向,對(duì)經(jīng)式(1)處理后的圖像進(jìn)行梯度幅值和方向的計(jì)算。具體運(yùn)算的數(shù)學(xué)表達(dá)如式(2)、式(3)、式(4)所示。其中M(x,y)代表梯度幅值;H(x,y)代表梯度方向;kx和ky代表圖像經(jīng)fx、fy濾波器行、列作用的結(jié)果。
(2)
H(x,y)=arctan[kx(x,y),ky(x,y)]
(3)
(4)
3)梯度幅值非極大值抑制
對(duì)原圖像所有像素點(diǎn)的梯度幅值M(x,y)與沿梯度方H(x,y)的一對(duì)相鄰象素點(diǎn)的梯度幅值進(jìn)行比較,若一像素點(diǎn)的梯度幅值小于沿其梯度方向一對(duì)相鄰象素點(diǎn)的梯度幅值,則認(rèn)為這一點(diǎn)為非邊緣象素點(diǎn),反之,可能為邊緣象素點(diǎn)。
4)雙閾值法檢測(cè)和連接邊緣
根據(jù)圖像特征需事先設(shè)定雙閾值[LtHt],其中Lt代表低閾值,Ht代表高閾值。將經(jīng)第三步處理過(guò)的像素梯度幅值,逐個(gè)與Ht和Lt進(jìn)行比較,若某像素梯度幅值M(x,y)>Ht,則此像素點(diǎn)為邊緣像素點(diǎn);若M(x,y) 2改進(jìn)Canny邊緣檢測(cè)方法 2.1濾波方法的改進(jìn) 由1.2節(jié)的理論可知,傳統(tǒng)Canny算子雖然在去噪與邊緣細(xì)節(jié)取舍上做了較好的設(shè)計(jì)。但在實(shí)際應(yīng)用中,因圖像采集中會(huì)融入眾多類型的噪聲,如高斯噪聲、椒鹽噪聲等[6,7]。從式(1)可知,傳統(tǒng)Canny算子在圖像平滑環(huán)節(jié)使用了單一的高斯濾波G(x,y,δ),并且高斯濾波器的標(biāo)準(zhǔn)方差δ存在不確定性,設(shè)置多依賴于人為經(jīng)驗(yàn),不便確定。δ參數(shù)對(duì)邊緣檢測(cè)的定位精準(zhǔn)度非常關(guān)鍵,對(duì)于不同的圖像使用同一δ值,或?qū)τ谕粓D像使用不同δ值,均會(huì)得到不同的效果。經(jīng)比較實(shí)驗(yàn)證實(shí),高斯濾波器能有效實(shí)現(xiàn)高斯噪聲的降噪處理,但對(duì)散點(diǎn)狀分布的椒鹽噪聲的降噪結(jié)果不太理想。中值濾波方法對(duì)散點(diǎn)狀分布椒鹽噪聲的降噪效果相對(duì)顯著。因此,在算法的改進(jìn)中采用中值濾波同高斯濾波相結(jié)合的方式,即先中值后高斯的方式。在腦部CT的邊緣檢測(cè)中收到了較好的效果。二維中值濾波其表達(dá)如式(5)所示:其中A代表濾波窗大小,其大小與濾波效果密切相關(guān),根據(jù)腦部CT圖像內(nèi)容的特征,最終確立選用3×3的窗口尺寸;{fij}代表要處理的圖像二維數(shù)據(jù)序列。yij代表濾波輸出。 (5) 2.2雙閾值設(shè)置的改進(jìn)方法 通過(guò)對(duì)傳統(tǒng)Canny算子的雙閾值檢測(cè)法介紹可知,高、低閾值的設(shè)置具有不確定性,主要依賴人工經(jīng)驗(yàn)所得,而且對(duì)于同一圖像采用不同的雙閾值,或者不同的圖像采用同一對(duì)雙閾值,邊緣檢測(cè)定位的精準(zhǔn)度有所差異,因此導(dǎo)致Canny算子在實(shí)際應(yīng)用中普適性、兼容性較差。在算法的改進(jìn)中,采用迭代算法[8]實(shí)時(shí)計(jì)算被處理圖像的高、低閾值,實(shí)現(xiàn)依圖而設(shè)、有針對(duì)性的處理,提升了算法的普適性。雙閾值的迭代計(jì)算過(guò)程如下: 1)通過(guò)灰度統(tǒng)計(jì)運(yùn)算,求得待處理圖像的灰度最大值Zmax與灰度最小值Zmin,接著以T0=(Zmax+Zmin)/2為初次迭代閾值; 2)執(zhí)行迭代循環(huán),每次循環(huán),都是以上一次求得的閾值Tk把圖像分割為兩部分,即一部分是所有灰度值大于閾值的前景,另一部分是所有灰度值小于閾值的背景。接著計(jì)算出前景的平均灰度值,記作Za;然后計(jì)算出后景的平均灰度值,記作Zb。式(6)和式(7)中f(i,j)代表圖像上(i,j)像素點(diǎn)的灰度值,N(i,j)是(i,j)像素點(diǎn)的權(quán)系數(shù),通常選用1。 (6) (7) 3)把前景與后景的平求灰度值求平均做為新閾值Tk+1,Tk+1=(Za+ Zb)/2; 4)判斷Tk+1與Tk相等與否,若相等便停止迭代循環(huán)運(yùn)算,否則繼續(xù)跳轉(zhuǎn)到第二步進(jìn)行迭代循環(huán)運(yùn)算。若相等,結(jié)束迭代循環(huán)運(yùn)算,執(zhí)行下一步。 5)將最后求得的Za、Zb賦值于傳統(tǒng)Canny算子的高、低閾值,作為雙閾值,替代了人工設(shè)定。 2.3改進(jìn)Canny邊緣檢測(cè)的實(shí)現(xiàn)步驟 經(jīng)過(guò)改進(jìn)后的Canny 算法執(zhí)行流程及其在Matlab2010中的關(guān)鍵函數(shù)如下幾步所示:輸入圖像并進(jìn)行灰度變換;通過(guò)imread([pathname, filename])函數(shù)將圖像讀入,并對(duì)其類型進(jìn)行判別,如果不是灰度圖像,通過(guò)rgb2gray(I)函數(shù)將其轉(zhuǎn)換為灰度圖像;對(duì)圖像實(shí)施中值與高斯二級(jí)濾波,用medfilt2(I,[3 3])語(yǔ)句實(shí)現(xiàn)中值濾波,高斯濾波用fspecial(’Guassian’,h,s)函數(shù)與imfilter(I,fn_gau)實(shí)現(xiàn);計(jì)算梯度(見1.2節(jié));非極大值抑制(見1.2節(jié));迭代運(yùn)算求解雙閾值,在Matlab 2010平臺(tái)下按2.2節(jié)的方法編寫迭代循環(huán)實(shí)現(xiàn);利用雙閾值連線,輸出邊緣圖像,輸出圖像函數(shù)為imshow(I)。 2.4實(shí)驗(yàn)結(jié)果與分析 在Matlab 2010平臺(tái)下,分別利用傳統(tǒng)的Canny 算法與改進(jìn)的Canny算法,首先對(duì)圖1中的腦部CT樣本圖像,通過(guò)imnoise(I,'gaussian',0,0.01)與imnoise(f,'salt & pepper',0.01)2項(xiàng)函數(shù),先后加入方差值為均為0.01高斯與椒鹽噪聲。模擬現(xiàn)實(shí)環(huán)境中采集的含噪腦部CT樣本,接著對(duì)其使用自編的改進(jìn)算法程序與傳統(tǒng)Canny算法進(jìn)行邊緣檢測(cè)。傳統(tǒng)Canny算法用edge(double(I),'canny',[LtHt],sigma)實(shí)現(xiàn);其中[LtHt]是雙閾值的區(qū)間,sigma是高斯濾波器的標(biāo)準(zhǔn)方差。在改進(jìn)算法中高、低閾值的迭代計(jì)算結(jié)果為:[0.01,0.17],sigma取值為2;使傳統(tǒng)算法的這兩項(xiàng)參數(shù)與改進(jìn)算法取相同的值。得到如圖2和圖3所示的對(duì)比結(jié)果,通過(guò)觀察圖2可以看出,構(gòu)造的腦部CT圖像通過(guò)中值濾波與高斯濾二級(jí)濾波后,不僅有效的消除了各種噪聲,且能較好的提升了圖像的邊緣細(xì)節(jié)特征的對(duì)比度,使邊緣細(xì)節(jié)更加明顯。由圖3可知,傳統(tǒng)算法,因噪聲影響,使的邊緣檢測(cè)結(jié)果存在漏檢的情況較為嚴(yán)重,改進(jìn)算法的邊緣檢測(cè)結(jié)果基本上沒有虛邊、偽邊,且比較細(xì)膩清晰。 圖4和圖5是對(duì)某病人的真實(shí)腦部CT圖像邊緣檢測(cè)的結(jié)果對(duì)比,可以看出改進(jìn)算法無(wú)需事先設(shè)定雙閾值,而是自適應(yīng)因圖而設(shè),在檢測(cè)精度上比傳統(tǒng)算法更為精準(zhǔn)。由此可見,改進(jìn)算法在性能上有所提高,且更具普適性。 (a)濾波前 (b)濾波后 圖2 腦部CT樣本圖像濾波結(jié)果對(duì)比Fig.2 Sample image filtering result contrast (a)改進(jìn)算法邊緣檢測(cè)結(jié)果 (b)傳統(tǒng)算法邊緣檢測(cè)結(jié)果圖3 腦部CT樣本圖像邊緣檢測(cè)結(jié)果對(duì)比Fig.3 Sample results of image edge detection (a)濾波前 (b)濾波后圖4 某病人腦部CT圖像濾波結(jié)果對(duì)比Fig.4 A patient brain CT image filtering result (a)改進(jìn)算法邊緣檢測(cè)結(jié)果 (b)傳統(tǒng)算法邊緣檢測(cè)結(jié)果圖5 圖4病人腦部CT圖像邊緣檢測(cè)結(jié)果Fig.5 Figure 4 patients brain CT image edge detection result 3結(jié)語(yǔ) 基于傳統(tǒng)Canny算法在腦部CT邊緣檢測(cè)中,存在去噪與邊界模糊的矛盾,并且所需的雙閾值依賴人為經(jīng)驗(yàn),且不能動(dòng)態(tài)選取因圖而設(shè),研究從去噪平滑與閾值設(shè)定兩方面入手,以構(gòu)建的腦部CT仿真樣本圖像為材料,通過(guò)多次實(shí)驗(yàn),對(duì)傳統(tǒng)Canny算法進(jìn)行了兩方面的改進(jìn),其一是將濾波環(huán)節(jié)改為3×3鄰閾中值濾波與標(biāo)準(zhǔn)方差為2的高斯濾波;其二是采用迭代算法有針對(duì)性的適時(shí)計(jì)算被檢測(cè)圖像的雙閾值。通在Matlab 2010平臺(tái)下采取相同的參數(shù)設(shè)置,對(duì)部分真實(shí)圖進(jìn)行邊緣檢測(cè),驗(yàn)證了改進(jìn)算法較傳統(tǒng)算法邊緣定位更加精準(zhǔn)。 參考文獻(xiàn): [1] 王立軍.基于關(guān)聯(lián)規(guī)則的醫(yī)學(xué)圖像分類研究[D/OL].江蘇:江蘇大學(xué),2006:10-13[2015-7-18]. http://www.cnki.net./KCMS/detail/detail.aspx?QueryID=3&CurRec=1&recid=&filename=2006173903.nh&dbname=CMFD2009&dbcode=CMFD&pr=&urlid=&yx=&uid=WEEvREcwSlJHSldSdnQ1ZXJhZitUbHhr V0FlZ3ZHOWQ2WTdob2VxU3JVS1ZMZG1NVVdhWEts OFhaZVg1bVVxSm9RPT0=MYM9A4hF_YAuvQ5obgVA qNKPCYcEjKensW4IQMovwHtwkF4VYPoHbKxJw!!&v=MjQwODR1eFlTN0RoMVQzcVRyV00xRnJDVVJMK2V aZWRvRmlEaFZyM09WMTI3R0xLL0hkak1ySkViUElSOG VYMUw=. [2] 冷美萍,鮑蘇蘇,孟祥璽.一種改進(jìn)的分水嶺分割算法[J].貴州師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,28(1):62-65. [3] 朱丙麗.腦部CT圖像分割算法改進(jìn)及實(shí)現(xiàn)[D/OL].四川:西南交通大學(xué),2010:18-19[2015-7-14].http://www.cnki.net./KCMS/detail/detail.aspx?QueryID=11&CurRec=1&recid=&filename=2010121970.nh&dbname=CMFD2010&dbcode=CMFD&pr=&urlid=&yx=&uid=WEEvREcwSlJHSldSdnQ1ZXJhZitUbHhr V0FlZ3ZHOWQ2WTdob2VxU3JVS1ZMZG1NVVdhWEts OFhaZVg1bVVxSm9RPT0=MYM9A4hF_YAuvQ5obgVA qNKPCYcEjKensW4IQMovwHtwkF4VYPoHbKxJw!!&v=MTc4MjVySzZIOWpMcjVFYlBJUjhlWDFMdXhZUzdEa DFUM3FUcldNMUZyQ1VSTCtlWmVkb0ZpRGhXcjNKVj EyNkg=. [4] 王小俊,劉旭敏,關(guān)永.基于改進(jìn)Canny 算子的圖像邊緣檢測(cè)算法[J].計(jì)算機(jī)工程,2012,38(2):196-200. [5] FURUKAWA Y,PONCE J.Carved Visual Hulls for Image-based Modeling[J].International Journal of Computer Vision,2009,81(1):53-67. [6] 范建坤.基于小波變換的圖像閾值去噪算法研究[J].貴州師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2013,31(4):89-91. [7] 周林勇,謝曉堯,劉志杰.無(wú)紙化閱卷中圖像噪聲的去除研究與優(yōu)化[J].貴州師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2013,31(1):84-87. [8] 陳若珠,薛彪.基于MATLAB的改進(jìn)Canny算子的圖像邊緣檢測(cè)研究[J].工業(yè)儀表與自動(dòng)化裝置,2014,238(4):113-116. Improving Canny operator based on CT image of the brain ZHANG Xihong1,2 (1.Bozhou Vocational and Technical College,Bozhou,Anhui 236800,China;2.School of Control Science and Engineering,Shandong University,Jinan,Shandong 250061,China) Abstract:In order to overcome the problems and deficiencies caused by traditional canny operator segmentation algorithm in the application of brain CT, an improved method of image edge detection is introduced in the paper.This method uses median filter in combining with Gaussian filtering after analysis of traditional canny operator segmentation algorithm. To replace the fixed threshold, interative algorithm is used to calculate the threshold. Experimental results show that the proposed method possesses better ability of accuracy and universal and lower rate of wrong detection and miss detection than the traditional methods. Key words:brain CT; median filter; gaussian filter; iterative algorithm 文章編號(hào):1004—5570(2016)02-0080-04 收稿日期:2015-10-26 基金項(xiàng)目:山東省科技重大專項(xiàng)(新興產(chǎn)業(yè))項(xiàng)目(2015ZDXX0801A01);山東大學(xué)基本科研業(yè)務(wù)費(fèi)資助項(xiàng)目(2015QY001);安徽省教育廳醫(yī)用電子儀器與維護(hù)省級(jí)特色專業(yè)質(zhì)量工程項(xiàng)目(20101459);安徽省教育廳醫(yī)用電子儀器省級(jí)實(shí)習(xí)實(shí)訓(xùn)示范中心質(zhì)量工程項(xiàng)目(2011131) 作者簡(jiǎn)介:張喜紅(1983-),男,碩士,講師,研究方向:嵌入式系統(tǒng)開發(fā),圖像處理方法,E-mail:zhangxihong1983@163.com. 中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A