康世英 劉小豫 王維
摘要:牛乳體細(xì)胞數(shù)量是牛乳質(zhì)量檢測(cè)的一項(xiàng)重要指標(biāo)。針對(duì)目前牛乳體細(xì)胞技術(shù)采用的人工計(jì)數(shù)等方法存在的不足,提出一種基于計(jì)算機(jī)視覺的牛乳體細(xì)胞快速計(jì)數(shù)方法。首先用MATLAB對(duì)圖像進(jìn)行預(yù)處理,去除噪聲等影響計(jì)數(shù)的因素;針對(duì)圖像粘連比較嚴(yán)重的情況,采用分水嶺算法進(jìn)行圖像分割;最后利用計(jì)算連通域的方法實(shí)現(xiàn)細(xì)胞計(jì)數(shù),實(shí)驗(yàn)結(jié)果驗(yàn)證了此方法的有效性。
關(guān)鍵詞:計(jì)算機(jī)視覺;圖像處理;MATLAB;細(xì)胞計(jì)數(shù)
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)26-0216-02
Abstract:The quantity of milk somatic cells is an important index for milk quality detection. In view of the shortage of artificial counting method, a fast milk somatic cell counting method Based on MATLAB is proposed. Firstly, the image is preprocessed for reduce the influence of noise. Then the image is segmented by the watershed algorithm due to the serious adhesion among the cells. Lastly, the number of cells is determined by using the fast connected component counting method. Experimental results demonstrated that the method is efficient for cells counting.
Key words:Computer Vision; Image Processing; MATLAB; Cell Counting
1 概述
牛乳體細(xì)胞數(shù)是指每毫升牛乳中的細(xì)胞總數(shù),多數(shù)是白細(xì)胞,通常由巨噬細(xì)胞、淋巴細(xì)胞、多形核嗜中性白細(xì)胞等組成,約占牛乳體細(xì)胞數(shù)的95%,其余是乳腺組織死去脫落的上皮細(xì)胞。在正常情況下,牛乳中體細(xì)胞數(shù)較少。當(dāng)奶牛乳房外傷或發(fā)生疾病引起炎癥時(shí),機(jī)體將大量的白細(xì)胞分泌進(jìn)入乳房以清除感染,因此牛乳體細(xì)胞數(shù)反映了牛乳質(zhì)量及奶牛的健康狀況[1]。顯微鏡法作為牛乳體細(xì)胞計(jì)數(shù)的標(biāo)準(zhǔn)方法,通常用于校正體細(xì)胞分析儀和其他方法的正確性。但是目前的顯微鏡法僅限于人工操作,不僅效率低下,而且不可避免的會(huì)產(chǎn)生人為性的誤差。
2 提出的方法
本文將采用MATLAB圖像處理的方法實(shí)現(xiàn)粘連較為嚴(yán)重的牛乳體細(xì)胞的快速計(jì)數(shù)。
2.1 圖像獲取
通常取0.01ml乳樣制作牛乳體細(xì)胞涂片,將乳樣均勻地涂在載波片上,去脂,采用瑞士染色法染色,由于體細(xì)胞的細(xì)胞核對(duì)G、B信號(hào)比較敏感,所以在圖像中,細(xì)胞核顯示藍(lán)紫色顆粒狀,其它區(qū)域呈淺粉色[2]。
2.2 圖像灰度化
由圖像采集設(shè)備直接獲取的原始圖像為彩色圖像,為了計(jì)數(shù)方便,需要將原始的彩色圖像轉(zhuǎn)換為256色灰度圖像。在將原始圖像轉(zhuǎn)換為灰度圖像時(shí),采用公式G = 0.299*R+0.587*G+0.114*B。其中G代表像素最終的灰度值,R代表原始彩色圖像中紅色分量的值,G代表原始彩色圖像中綠色分量的值,B代表原始彩色圖像中藍(lán)色分量的值。
2.3 圖像增強(qiáng)處理
牛乳中包含一些乳脂、水分和一些小雜質(zhì)等,這些物質(zhì)均不利于目標(biāo)的提取。此外,牛乳體細(xì)胞圖像由于受到光學(xué)系統(tǒng)失真、系統(tǒng)噪聲、光照不均勻等因素的影響,會(huì)產(chǎn)生一些噪聲,這些都會(huì)影響后續(xù)計(jì)數(shù)工作。因此,需要對(duì)圖像進(jìn)行增強(qiáng)處理,并且使用濾波窗口消除細(xì)小的紋理細(xì)節(jié)以及噪聲像素。
均值濾波是一種常用的抑制某些噪聲的線性濾波技術(shù)。均值濾波指的是在圖像中給目標(biāo)像素設(shè)定一個(gè)模板,該模板指的是去掉了目標(biāo)像素本身之后目標(biāo)像素周圍的八個(gè)像素點(diǎn),然后再用模板中全體像素的平均值來代替原來的像素值。它主要使用的是鄰域平均法來進(jìn)行圖像的濾波,即圖像中每個(gè)像素點(diǎn)的灰度值均使用后邊圖像的平均值求得。
濾波可以減少光照等干擾引起的噪聲,起到增強(qiáng)圖像特征的作用。假設(shè)原始圖像為f(x,y),建立一個(gè)模板用S表示,若在模板中,包括當(dāng)前像素點(diǎn)在內(nèi)一共有m個(gè)像素點(diǎn),則使用均值濾波之后,輸出的結(jié)果以及平滑的灰度圖像設(shè)為g(x,y),則可以通過式(1)得到:
其中模板S有多種選取方法,不過一般選取時(shí)均選擇奇數(shù),一般選擇3×3、5×5或7×7。如式(2)所示,分別為3×3、5×5的均值濾波的模板。
本文的具體方法是從圖像的左上角第一個(gè)像素開始,利用濾波窗口進(jìn)行逐個(gè)像素的從左到右、從上到下的掃描,用窗口中各點(diǎn)的灰度值的中值來代替窗口中心點(diǎn)像素的灰度值。濾波窗口大小為3×3像素。
2.4 圖像二值化
在最終計(jì)數(shù)環(huán)節(jié),我們需要圖像中只包含兩種像素,目標(biāo)像素和背景像素。因此,我們需要選取合適的閾值,將以上步驟得到的圖像轉(zhuǎn)換為只有黑和白兩種顏色的二值圖像。
圖像二值化方法最經(jīng)典的是大津法。大津法是日本學(xué)者大津所提出的,它的具體思想就是選取某個(gè)閾值,然后讓前景和背景的類間方差最大,所以這種方法又叫最大類間方差法。所謂的類間方差就是兩個(gè)不同的類之間的方差值。
在本文所處理的圖像中,一種像素是物體也就是前景,一種像素是背景或其他噪聲,所以要求滿足這兩種像素之間的方差值最大的灰度值,這個(gè)灰度值就是二值化的閾值。
該方法的原理是,設(shè)T為前景和背景的分割閾值,將屬于背景的像素點(diǎn)所占整幅圖像像素點(diǎn)比例記為w0,平均灰度值為u0;屬于前景的像素點(diǎn)所占整幅圖像像素點(diǎn)的比例記為w1,平均灰度值為u1;整幅圖像的平均灰度值為u,類間方差記為g。則根據(jù)式(3),(4)可以得出最終滿足方差值最大的分割閾值T。
這樣通過計(jì)算,當(dāng)g最大時(shí),表明此時(shí)前景和背景的差別最大,此時(shí)的灰度值T是最佳的閾值。采用大津法將圖像二值化后如圖2所示。
2.5 形態(tài)學(xué)處理
腐蝕是數(shù)學(xué)形態(tài)學(xué)的兩種最為基本的運(yùn)算之一,腐蝕在數(shù)學(xué)形態(tài)學(xué)中的作用是消除物體邊界點(diǎn),使邊界向內(nèi)部收縮的過程,可以把小于結(jié)構(gòu)元素的物體去除。這樣選取不同大小的結(jié)構(gòu)元素,就可以去除不同大小的物體,從而達(dá)到預(yù)期的處理效果。同時(shí),如兩個(gè)物體之間有細(xì)小的連通,則通過腐蝕可將兩個(gè)物體分開,使圖像輪廓清晰。
為了消除圖像中牛乳體細(xì)胞之間的粘連現(xiàn)象,用數(shù)學(xué)形態(tài)學(xué)中的腐蝕法對(duì)二值圖像進(jìn)行腐蝕,同時(shí)可以消除面積較大的噪聲像素。腐蝕在數(shù)學(xué)形態(tài)學(xué)中的作用是消除物體邊界點(diǎn),使邊界向內(nèi)部收縮的過程,可以把小于結(jié)構(gòu)元素的物體去除。
本文使用5×5像素的圓形結(jié)構(gòu)元素對(duì)圖像進(jìn)行腐蝕,可以使體細(xì)胞截面區(qū)域收縮以消除細(xì)胞之間的粘連現(xiàn)象,便于準(zhǔn)確計(jì)數(shù)。
2.6 圖像分割
二值化后的牛乳體細(xì)胞圖像中,部分細(xì)胞是粘連在一起的,在計(jì)數(shù)之前需要進(jìn)行分割。圖像中目標(biāo)分割方法有三大類:閾值分割、基于邊緣的分割方法和基于區(qū)域的分割方法[3]-[4]。閾值分割法的優(yōu)點(diǎn)是算法簡(jiǎn)單,且總能用封閉而且聯(lián)通的邊界來定義不交疊的區(qū)域,缺點(diǎn)是對(duì)目標(biāo)與背景反差較小的景物很難得到精確的目標(biāo)邊界;邊緣檢測(cè)法的優(yōu)點(diǎn)是輪廓位置精確,缺點(diǎn)是不能保證輪廓是封閉;區(qū)域生長(zhǎng)法雖然可以得到封閉輪廓,但難以確定生長(zhǎng)的終止條件。基于形態(tài)學(xué)的分水嶺分割方法,是將這三種方法中的概念具體化,會(huì)產(chǎn)生更穩(wěn)定的分割效果,特別是分割邊界。
基于分水嶺的分割方法是一種基于拓?fù)淅碚摰臄?shù)學(xué)形態(tài)學(xué)分割方法,其基本思想是把圖像看作是測(cè)地學(xué)上的拓?fù)涞孛?,圖像中每一點(diǎn)像素的灰度值表示該點(diǎn)的海拔高度,每一個(gè)局部極小值及其影響區(qū)域稱為集水盆,而集水盆的邊界則形成分水嶺。在每一個(gè)局部極小值表面,刺穿一個(gè)小孔,然后把整個(gè)模型慢慢浸入水中,隨著浸入的加深,每一個(gè)局部極小值的影響域慢慢向外擴(kuò)展,在兩個(gè)集水盆匯合處構(gòu)筑大壩,即形成分水嶺。
經(jīng)過分割后的圖像如圖3所示。
2.7 細(xì)胞計(jì)數(shù)
完成圖像分割之后,可以利用MATLAB自帶的bwlabel函數(shù)對(duì)二值圖像進(jìn)行連通域計(jì)數(shù)。圖像中包含的連通域數(shù)量就是細(xì)胞個(gè)數(shù)。
3 結(jié)論
本文采用計(jì)算機(jī)圖像處理的方法,利用MATLAB處理采集到的牛乳體細(xì)胞圖像并進(jìn)行計(jì)數(shù)。針對(duì)牛乳體細(xì)胞的特點(diǎn),對(duì)圖像進(jìn)行二值化、形態(tài)學(xué)操作等預(yù)處理,在此基礎(chǔ)上將圖像用分水嶺算法進(jìn)行分割,分割后的每一個(gè)連通部分就是一個(gè)細(xì)胞。實(shí)驗(yàn)結(jié)果表明本文提出的方法可對(duì)牛乳粘連體細(xì)胞圖像實(shí)施快速、較準(zhǔn)確地分離,為自動(dòng)計(jì)數(shù)提供了一種有效的實(shí)施途徑。
參考文獻(xiàn):
[1] 劉茂蓮.基于Android平臺(tái)的現(xiàn)場(chǎng)牛乳體細(xì)胞計(jì)數(shù)系統(tǒng)研究[D].重慶大學(xué),2015.
[2] 劉俊麗.牛乳體細(xì)胞圖像處理及計(jì)數(shù)方法的研究[D].內(nèi)蒙古農(nóng)業(yè)大學(xué),2007.
[3] 博格,薛河儒. 一種粘連牛乳體細(xì)胞圖像的分離算法[J].內(nèi)蒙古農(nóng)業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2012,33(3):222-225.
[4] 周莉莉,姜楓.圖像分割方法綜述研究[J].計(jì)算機(jī)應(yīng)用研究,2017,34(7):1921-1928.
[通聯(lián)編輯:唐一東]