劉肖肖,王兢業(yè)
湖北文理學(xué)院附屬醫(yī)院(襄陽市中心醫(yī)院),湖北 襄陽 441021
基于Matlab的尿沉渣圖像有形成分的自動(dòng)分類方法
劉肖肖,王兢業(yè)
湖北文理學(xué)院附屬醫(yī)院(襄陽市中心醫(yī)院),湖北 襄陽 441021
尿沉渣是尿液經(jīng)過離心或自然沉淀之后形成的沉渣,是尿液中各有形成分的集合,包括紅細(xì)胞、白細(xì)胞、上皮細(xì)胞、管型、結(jié)晶和雜質(zhì)等成分。尿沉渣檢查能輔助臨床對(duì)泌尿系統(tǒng)疾病進(jìn)行診斷,但其成分眾多,不易區(qū)分[1]。臨床上常用的尿液檢查方法有干化學(xué)法、流式法和鏡檢法等[2]。干化學(xué)法應(yīng)用試紙條進(jìn)行檢測(cè),成本低,但只能測(cè)試尿液中的某些化學(xué)成分,無法分析尿沉渣形態(tài),從而影響對(duì)病變部位的判斷,其試紙條也容易受到藥物影響;流式法的檢測(cè)結(jié)果較準(zhǔn)確,醫(yī)院使用率也很高,但其設(shè)備價(jià)格較高。目前,國內(nèi)普遍使用的方法是分別應(yīng)用干化學(xué)法和流式法進(jìn)行尿檢,當(dāng)二者結(jié)果偏差大時(shí),則使用人工鏡檢法,即將標(biāo)本放置在顯微鏡下直接觀測(cè)。
Matlab是一款商業(yè)數(shù)學(xué)軟件,功能強(qiáng)大、函數(shù)庫豐富、簡單易學(xué),在矩陣運(yùn)算和圖像處理領(lǐng)域有著廣泛而有效的應(yīng)用。為了解放人力并減少檢驗(yàn)成本,本研究基于Matlab環(huán)境,嘗試應(yīng)用自動(dòng)鏡檢法,即首先應(yīng)用顯微鏡采集尿沉渣圖像,再利用計(jì)算機(jī)對(duì)該圖像進(jìn)行自動(dòng)處理,從而得到尿沉渣中有形成分的種類和數(shù)目。
本研究的圖像處理分為預(yù)處理和特征提取兩部分:首先去除圖像的雜質(zhì)和噪聲,提取出圖像中有形成分的邊緣信息,并將圖像分割成適合分類識(shí)別的小圖像;然后提取出每個(gè)小圖像的特征值,并利用該特征值對(duì)有形成分進(jìn)行識(shí)別和分類。圖像處理的流程圖,見圖1。
圖1 圖像處理流程圖
尿沉渣成分復(fù)雜,結(jié)構(gòu)多樣,圖像在采集過程中可能出現(xiàn)光照不均、散焦嚴(yán)重,有些成分邊緣較淡不易識(shí)別、背景上有雜質(zhì)和陰影等情況。為了方便后續(xù)處理,本研究首先將圖像灰度化以去除彩色圖像中的冗余信息,然后使用全局直方圖均衡化來加強(qiáng)有形成分和背景的對(duì)比度,之后利用鄰域?yàn)V波法去除刻度框的投影,最后應(yīng)用中值濾波法去除椒鹽噪聲。
若要對(duì)尿沉渣圖像中的有形成分進(jìn)行分類,便要先獲得每個(gè)有形成分的特征值;若要獲得特征值,便要將每個(gè)有形成分的邊緣信息提取出來,方法如下。
(1)首先提取邊緣信息。經(jīng)過實(shí)驗(yàn)發(fā)現(xiàn),Canny算子可以提取出纖細(xì)的邊緣信息,但是對(duì)于邊緣清晰度不同的成分會(huì)發(fā)生斷續(xù),從而出現(xiàn)邊緣提取不完整的現(xiàn)象[3-4];而Sobel算子提取的邊緣信息較多,但提取的是雙邊緣信息,過于冗雜,且也有斷續(xù)現(xiàn)象,從而導(dǎo)致在提取連通域信息時(shí)丟失邊緣信息。通過兩種算法處理的上皮細(xì)胞細(xì)節(jié)圖,見圖2。
圖2 Canny算子和Sobel算子處理的上皮細(xì)胞細(xì)節(jié)圖
圖2中,(a)為原尿沉渣圖像中的上皮細(xì)胞圖;(b)是對(duì)原尿沉渣圖像作Canny邊緣檢測(cè)后所得圖像中該上皮細(xì)胞的處理結(jié)果,有斷續(xù)現(xiàn)象;(c)是對(duì)原尿沉渣圖像作Sobel邊緣檢測(cè)后所得圖像中該上皮細(xì)胞的處理結(jié)果,有邊緣信息冗余;(d)是對(duì)Canny算子處理的上皮細(xì)胞作連通域填充的結(jié)果,連通域與原圖中的上皮細(xì)胞形態(tài)相差甚遠(yuǎn)。對(duì)Sobel算子處理的上皮細(xì)胞作連通域填充后,依然存在細(xì)胞信息丟失的情況,此處不表。此外,由于所用顯微鏡倍數(shù)較低,導(dǎo)致采集圖像的分辨率不夠高,當(dāng)觀察單個(gè)細(xì)胞時(shí),圖像清晰度偏低,但不影響最終處理結(jié)果。
而將經(jīng)Canny算子和Sobel算子濾波之后的兩幅圖像進(jìn)行疊加及平均處理,再進(jìn)行膨脹腐蝕、孔洞填充等一系列處理后,可得到良好的連通域(圖3)。
圖3 疊加算子處理的上皮細(xì)胞細(xì)節(jié)圖
圖3中,(a)為對(duì)圖2(a)分別進(jìn)行Canny與Sobel邊緣檢測(cè)后進(jìn)行疊加及平均處理后的圖像;(b)為對(duì)疊加圖像進(jìn)行連通域填充等一系列處理后的結(jié)果,與原圖的形態(tài)信息接近,處理結(jié)果良好。
(2)最終的處理步驟為:灰度化圖像,去除冗余信息;直方圖增強(qiáng),增大有形成分和背景的對(duì)比度;鄰域?yàn)V波,去除刻度框陰影;中值濾波,去除椒鹽噪聲;Canny和Sobel算子疊加進(jìn)行邊緣檢測(cè),得到完整的邊界信息;膨脹腐蝕和孔洞填充后得到連通域。白細(xì)胞、上皮細(xì)胞和管型的最終處理結(jié)果對(duì)比,見圖4。由圖4可知,各成分的刻度框陰影已完全消除,且不影響有形成分的邊緣提取;白細(xì)胞的右上角粘連現(xiàn)象的處理仍需改進(jìn),但定位定型檢測(cè)基本準(zhǔn)確;上皮細(xì)胞的灰度雖較低,但邊緣定位良好;管型內(nèi)雖含大量細(xì)胞顆粒,較為零散,但處理效果良好。對(duì)大量處理后的圖像進(jìn)行觀察驗(yàn)證的結(jié)果表明本研究提出的預(yù)處理方法對(duì)本組圖像通用,處理效果顯著。
圖4 邊緣信息提取處理結(jié)果對(duì)比
經(jīng)過上述處理,已經(jīng)得到完整的連通域信息,對(duì)每個(gè)連通域進(jìn)行處理,便可以得到其特征值。
3.1 有形成分特征
尿沉渣中的有形成分多種多樣,主要包括紅細(xì)胞、白細(xì)胞、管型、結(jié)晶、上皮細(xì)胞和雜質(zhì)等。本文重點(diǎn)對(duì)正常成分進(jìn)行分類,異常成分暫不處理。正常紅細(xì)胞呈雙面凹陷圓盤狀,淡黃色,較小,尿中出現(xiàn)紅細(xì)胞表示腎臟出現(xiàn)病變;正常白細(xì)胞呈圓球狀,形態(tài)規(guī)整,細(xì)胞膜及細(xì)胞核清晰可見,比紅細(xì)胞略大;結(jié)晶種類繁多,意義大多不明[5];上皮細(xì)胞包括腎小管上皮細(xì)胞、移形上皮細(xì)胞、鱗狀上皮細(xì)胞和多核巨細(xì)胞等,除了腎小管上皮細(xì)胞形狀規(guī)則外,其他上皮細(xì)胞形狀皆不規(guī)則;管型包括透明管型、顆粒管型、細(xì)胞管型、變形管型和寬幅管型等,多為矩形柱狀。
3.2 特征選擇和提取
根據(jù)有形成分特征,本研究除了使用周長、面積、長寬比、矩形度等常用特征值外,另外選用圓形度和Hu 7個(gè)不變矩共12個(gè)特征值對(duì)不同的有形成分進(jìn)行識(shí)別區(qū)分。圓形度的計(jì)算公式為:,它表征了連通域似圓的程度,以此來有效區(qū)別圓細(xì)胞和非圓成分,比如白細(xì)胞和管型。Hu 7個(gè)不變矩由二階和三階歸一化中心矩構(gòu)造,具有旋轉(zhuǎn)、平移和縮放的不變性。在尿沉渣圖像中,由于細(xì)胞的形態(tài)多樣,對(duì)于同一類細(xì)胞例如管型,當(dāng)細(xì)胞在圖像中的位置發(fā)生改變但細(xì)胞本身的形態(tài)并未改變時(shí),Hu 7個(gè)不變矩可以將圖像中處于不同位置的同一細(xì)胞歸為一類。
4.1 BP神經(jīng)網(wǎng)絡(luò)
人工神經(jīng)網(wǎng)絡(luò)(ANN)是一種在模擬生物神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上創(chuàng)建的一種有關(guān)信息處理的系統(tǒng),是一種經(jīng)典的非數(shù)值算法,具有強(qiáng)大的信息存貯和計(jì)算能力[6],在聯(lián)想記憶、模式識(shí)別、復(fù)雜控制、函數(shù)逼近、信號(hào)處理與圖像處理等領(lǐng)域應(yīng)用廣泛[7]?,F(xiàn)在已有的ANN模型有Hopfield網(wǎng)絡(luò)、對(duì)向傳播網(wǎng)絡(luò)、誤差反向傳播網(wǎng)絡(luò)、Kohonen網(wǎng)絡(luò)、自組織映射模型、徑向基函數(shù)網(wǎng)絡(luò)等,其中以BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)模型的應(yīng)用最為廣泛[7-8]。
本研究嘗試使用BP神經(jīng)網(wǎng)絡(luò)對(duì)尿沉渣有形成分進(jìn)行分類。BP神經(jīng)網(wǎng)絡(luò),包括信息的正向傳播和誤差的反向傳播。其輸入層負(fù)責(zé)接收數(shù)據(jù)并將其傳遞給隱含層各神經(jīng)元,隱含層對(duì)數(shù)據(jù)進(jìn)行一級(jí)或多級(jí)處理后由最后一級(jí)隱含層將處理結(jié)果傳遞給輸出層,最后數(shù)據(jù)經(jīng)輸出層處理后輸出,便完成了一次正向傳播處理。當(dāng)輸出數(shù)據(jù)與期望輸出相差甚遠(yuǎn)時(shí)則進(jìn)入誤差反傳階段,通過輸出層將誤差按一定的規(guī)則反向修正,周而復(fù)始直至輸出數(shù)據(jù)與期望輸出相同或達(dá)到預(yù)設(shè)的學(xué)習(xí)次數(shù)為止。
BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖,見圖5。
圖5 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
如圖所示,BP神經(jīng)網(wǎng)絡(luò)最少由3層網(wǎng)絡(luò)組成,第一層為輸入層,最后一層為輸出層,中間層為隱含層,隱含層可以有多層。每層都包含任意數(shù)量的神經(jīng)元,神經(jīng)元之間無聯(lián)系,但層與層之間互聯(lián)。BP神經(jīng)網(wǎng)絡(luò)的復(fù)雜性隨神經(jīng)元與層數(shù)的增加而增加,訓(xùn)練時(shí)間也相應(yīng)增加。
4.2 BP神經(jīng)網(wǎng)絡(luò)在Matlab環(huán)境中的應(yīng)用
本研究基于Matlab環(huán)境對(duì)尿沉渣圖像進(jìn)行分析和處理,使用BP神經(jīng)網(wǎng)絡(luò)對(duì)各有形成分的特征向量進(jìn)行學(xué)習(xí)和分類。
在使用BP神經(jīng)網(wǎng)絡(luò)對(duì)尿沉渣有形成分進(jìn)行分類的過程中,需要設(shè)定每一層神經(jīng)元的數(shù)量。經(jīng)過反復(fù)試驗(yàn)發(fā)現(xiàn),設(shè)置1個(gè)輸入層、1個(gè)輸出層和兩個(gè)中間層時(shí),有形分類的效果最貼近實(shí)際。由于共挑選了12個(gè)特征值作為輸入,所以輸入層選用12個(gè)神經(jīng)元;最后要分類出6種成分,所以輸出層選用1個(gè)神經(jīng)元,而此神經(jīng)元有6個(gè)不同的值,此處賦為1~6;經(jīng)過多次試驗(yàn)比對(duì),中間層即隱含層分別選用24個(gè)和10個(gè)神經(jīng)元。
Matlab神經(jīng)網(wǎng)絡(luò)工具箱封裝了很多神經(jīng)網(wǎng)絡(luò)函數(shù),本研究僅描述BP神經(jīng)網(wǎng)絡(luò)相關(guān)函數(shù)的使用規(guī)則和流程,描述如下。
(1) 創(chuàng)建1個(gè)BP網(wǎng)絡(luò)net,有1個(gè)輸入層(有12個(gè)神經(jīng)元)和1個(gè)輸出層(有1個(gè)神經(jīng)元),兩個(gè)中間層(分別有24個(gè)和10個(gè)神經(jīng)元)。
net=newff(P,[12,24,10,1],{ 'tansig' 'purelin'});
newff表示創(chuàng)建1個(gè)網(wǎng)絡(luò)為BP網(wǎng)絡(luò),P用來定義輸入向量的最大值和最小值,因?yàn)樘幚磔斎霐?shù)據(jù)時(shí)會(huì)做歸一化處理,所以此處最大值為1,最小值為-1;之后是網(wǎng)絡(luò)層的設(shè)置,分別為12、24、10和1;最后是第i層的傳遞函數(shù),第二層采用正切函數(shù)式,其余全選擇默認(rèn)S型對(duì)數(shù)式。newff函數(shù)其他參數(shù)也全部采用默認(rèn)值。
(2)初始化網(wǎng)絡(luò)。
net=init(net);
(3)采用梯度下降法訓(xùn)練網(wǎng)絡(luò),最大訓(xùn)練次數(shù)為10000,誤差為0.0001,每訓(xùn)練10次顯示1次。
net.trainparam.epochs=10000;
net.trainparam.show=10;
net.trainparam.goal=1e-4;
(4)開始訓(xùn)練并將網(wǎng)絡(luò)保存成Uri.mat。
[net,tr,Y,E]=train(net,P,T);
P為輸入向量,T為每個(gè)有形對(duì)應(yīng)的輸出值。
save('Uri','net');
(5)使用新樣本P1進(jìn)行預(yù)測(cè)。
YY =sim(net,P1);
YY即為預(yù)測(cè)結(jié)果。
4.3 有形成分分類結(jié)果
將未分類的有形成分樣本特征值輸入到訓(xùn)練好的網(wǎng)絡(luò)中進(jìn)行分類處理,結(jié)果見表1。
表1 未知樣本有形成分識(shí)別率
經(jīng)分析發(fā)現(xiàn),在實(shí)際處理中,有些紅細(xì)胞會(huì)被誤檢成白細(xì)胞,而一些粘連的白細(xì)胞會(huì)被誤檢為上皮細(xì)胞,有些透明的上皮細(xì)胞則會(huì)造成邊緣誤判,被分割成數(shù)個(gè)小連通域。結(jié)晶的種類較多,檢測(cè)結(jié)果不準(zhǔn)確。管型細(xì)胞特征較明顯,檢測(cè)結(jié)果尚可。該結(jié)果說明,使用BP神經(jīng)網(wǎng)絡(luò)對(duì)尿沉渣進(jìn)行分類的方法是可行的,后續(xù)工作需要提高其檢測(cè)準(zhǔn)確率。
經(jīng)過研究表明,本研究使用12個(gè)特征值經(jīng)BP神經(jīng)網(wǎng)絡(luò)對(duì)尿沉渣圖像中的有形成分進(jìn)行分類和計(jì)數(shù)的效果較好,且處理速度較快。Matlab封裝的BP神經(jīng)網(wǎng)絡(luò)的函數(shù)易于理解和使用,但是網(wǎng)絡(luò)層數(shù)的確定是個(gè)復(fù)雜而細(xì)致的工程,需要不斷的摸索和嘗試。
但本研究也有一定的局限性:對(duì)于不同質(zhì)量的圖像,該分類方法的效果未知,本研究使用的圖像分辨率偏低,細(xì)節(jié)比較模糊,日后應(yīng)增拍清晰圖像進(jìn)行驗(yàn)證;當(dāng)檢驗(yàn)需求更加細(xì)致如需分析上皮細(xì)胞的類型時(shí),就要重新設(shè)計(jì)分類方法;對(duì)有形成分的類別判斷需依靠大量的臨床知識(shí)和經(jīng)驗(yàn),尚需進(jìn)行進(jìn)一步改進(jìn)以向臨床推廣。
[1] 王冠.尿沉渣檢查的臨床價(jià)值分析研究[J].中外醫(yī)學(xué)研究, 2012,20(25):48.
[2] 劉興莉.常用的三種尿沉渣檢測(cè)方法的比較[J].齊魯醫(yī)學(xué)檢驗(yàn), 2004,15(6):45.
[3] 彭淑敏.神經(jīng)網(wǎng)絡(luò)圖像識(shí)別技術(shù)研究與實(shí)現(xiàn)[D].西安:西安電子科技大學(xué),2005.
[4] John Canny.A computational approach to edge detection[J].IEEE Transactions on PAMI,1986,8(6):679-698.
[5] 劉肖肖.尿沉渣圖像采集與分析系統(tǒng)的研究[D].濟(jì)南:山東大學(xué),2014.
[6] 馬莉,杜一鳴,黃光,等.基于樣本熵與人工神經(jīng)網(wǎng)絡(luò)的癲癇發(fā)作預(yù)測(cè)初步研究[J].中國生物醫(yī)學(xué)工程學(xué)報(bào),2013,32(2):243-247.
[7] 焦振.誤差反向傳播神經(jīng)網(wǎng)絡(luò)(BP網(wǎng)絡(luò))算法的啟發(fā)式改進(jìn)[J].安陽師范學(xué)報(bào),2008,(5):47-49.
[8] 胡金濱,唐旭清.人工神經(jīng)網(wǎng)絡(luò)的BP算法及其應(yīng)用[J].信息技術(shù), 2004,28(4):1-4.
Matlab-Based Automatic Classification Method of Tangible Components in Urinary Sediment Images
LIU Xiao-xiao, WANG Jing-ye
Affiliated Hospital of Hubei College of Arts and Sciences (Xiangyang Central Hospital), Xiangyang Hubei 441021, China
目的 依托于Matlab環(huán)境,初步實(shí)現(xiàn)BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)對(duì)尿沉渣圖像中有形成分的自動(dòng)識(shí)別與分類。方法 首先應(yīng)用灰度化、直方圖增強(qiáng)、鄰域?yàn)V波和中值濾波等方法對(duì)圖像進(jìn)行預(yù)處理;再利用Canny算子和Sobel算子疊加處理進(jìn)行邊緣檢測(cè),通過膨脹腐蝕和孔洞填充等操作得到有形成分的連通域信息,提取出每個(gè)連通域的周長、面積、長寬比、矩形度、圓形度等12個(gè)特征值作為BP神經(jīng)網(wǎng)絡(luò)的輸入;最后利用BP神經(jīng)網(wǎng)絡(luò)創(chuàng)建學(xué)習(xí)訓(xùn)練過程,對(duì)每個(gè)連通域即有形成分進(jìn)行分類。結(jié)果 采用該自動(dòng)分類方法得到了尿沉渣圖像中有形成分的種類和數(shù)目。結(jié)論 該方法分類準(zhǔn)確,可實(shí)現(xiàn)尿沉渣圖像中有形成分的自動(dòng)識(shí)別與分類。
尿沉渣圖像;邊緣檢測(cè);特征提?。籅P神經(jīng)網(wǎng)絡(luò);Matlab
Objective To classify the tangible components in urinary sediment images automatically through application of BP (Back Propagation) neural network on basis of Matlab. Methods The urinary sediment images were preprocessed with the methods of graying, histogram enhancement, neighborhood filtering, median filtering and so on. Then, the Canny and Sobel operators were applied to perform edge detection. The information of connected domains for the tangible components were obtained through expansion corrosion and hole filling, from which 12 characteristic values including the perimeter, area, aspect ratio, rectangle and round degree were extracted as the input of BP neural network to classify the tangible components in urinary sediment images. Results The type and quantity of the tangible components in urinary sediment images were obtained with the application of this automatic classification method. Conclusion The automatic classification method made it possible to precisely identify and classify the tangible components in urinary sediment images.
urinary sediment images; edge detection; characteristics extraction; back propagation neural network; Matlab
TP183
A
10.3969/j.issn.1674-1633.2015.02.007
1674-1633(2015)02-0029-04
2014-08-14
2014-10-09
王兢業(yè),副主任技師
作者郵箱:466593784@qq.com