廣西金源信息產(chǎn)業(yè)股份有限公司 羅 斌桂林電子科技大學(xué)信息科技學(xué)院 黃建燈
羊精子圖像的分割及識別算法研究
廣西金源信息產(chǎn)業(yè)股份有限公司 羅 斌
桂林電子科技大學(xué)信息科技學(xué)院 黃建燈
【摘要】對羊精子圖像的分割及識別算法進(jìn)行了研究,針對羊精子圖像的特點,提出比傳統(tǒng)Otsu分割算法更精確的類間最大交叉熵閾值化分割算法對精子圖像進(jìn)行分割,通過數(shù)學(xué)形態(tài)學(xué)開運算分離粘連的精子,采用4連通標(biāo)記算法對精子目標(biāo)區(qū)域作標(biāo)記,分析雜質(zhì)的類型,設(shè)置篩選規(guī)則,去除雜質(zhì)。實驗表明,該方法能實現(xiàn)對精子圖像進(jìn)行快速準(zhǔn)確地分割及識別。
【關(guān)鍵詞】最大類間交叉熵;圖像分割;精子識別;形狀因子;數(shù)字標(biāo)記
在養(yǎng)殖業(yè)中給牲畜配種是一項重要的工作,而配種過程中人工受精樣本優(yōu)選工作復(fù)雜,通過檢查牲畜精子質(zhì)量的方式進(jìn)行牲畜生育能力分析,可以實現(xiàn)最優(yōu)配種牲畜的選擇。但傳統(tǒng)的人工分析精子質(zhì)量的方法效率低,準(zhǔn)確性差。通過計算機輔助技術(shù)來檢測分析動物精子質(zhì)量,可以提高檢測速度和檢測精確度,保證診斷結(jié)果的正確性,并且還可以得到一些依靠傳統(tǒng)方法無法檢測得的精子運動參數(shù)。所以計算機輔助檢查動物精子質(zhì)量更科學(xué)、更準(zhǔn)確、更客觀,大大節(jié)約了選擇配種動物的時間,并達(dá)到優(yōu)生的目的,給養(yǎng)殖業(yè)帶來巨大的經(jīng)濟效益。
精子圖像的分割與識別在整個精子質(zhì)量計算機輔助分析系統(tǒng)中起到至關(guān)重要的作用,其目的是檢測出精子,將精子從背景中分離出來,并提取所有精子目標(biāo)的準(zhǔn)確位置。精子目標(biāo)的位置信息將作為下一步軌跡跟蹤的輸入?yún)?shù)。如果目標(biāo)分割識別有誤,將會把錯誤傳給后繼的目標(biāo)跟蹤部分,得到有誤的跟蹤軌跡,最終導(dǎo)致分析結(jié)果不準(zhǔn)確。因此,提高精子圖像分割和識別的準(zhǔn)確性至關(guān)重要。圖像分割算法有很多,大都是針對具體問題,目前尚無通用的分割理論。本文針對精子運動圖像的特點[1],提出最大類間交叉熵閾值化分割算法,對精子圖像進(jìn)行分割,通過設(shè)置篩選規(guī)則去除雜質(zhì),并標(biāo)記識別精子。
本文研究所需精子運動圖像序列是以每秒25幀的采樣頻率采集。圖1是一幅采集的經(jīng)過灰度化(256級)后的經(jīng)典精子樣本圖像。
圖1 精子樣本圖
圖2 精子圖像直方圖
圖1中所示黑暗區(qū)域為精子目標(biāo)的頭部,亮度最淺面積最大的區(qū)域為背景,亮度居中的區(qū)域為精子目標(biāo)尾部或雜質(zhì)。從中,我們可以看到精子圖像的特點:1)精子目標(biāo)灰度不盡相同;2)除精子外還含有其他的雜質(zhì);3)部分區(qū)域可能精子密度比較大,使得圖像中精子目標(biāo)粘連在一起。
通過觀察圖2所示的精子圖像灰度直方圖,發(fā)現(xiàn)其灰度分布具有以下幾個特點: 1)呈單峰分布;2)目標(biāo)像素個數(shù)遠(yuǎn)遠(yuǎn)小于背景像素個數(shù);3)目標(biāo)的平均灰度和背景的平均灰度相差較小,即對比度低。
目前應(yīng)用最廣泛的是閾值分割法,龐增拴[1]提出通過最大類間方差(Otsu)分割算法對精子圖像求閾值,對于目標(biāo)和背景較明顯,少雜質(zhì)且其直方圖有雙峰的圖像可以取得較好的分割效果。但根據(jù)以上對精子運動圖像特點的分析,在實際的系統(tǒng)中,最大類間方差(Otsu)分割算法使得分割結(jié)果不精確。為了提高精子圖像分割的準(zhǔn)確性,針對精子運動圖像的特點本文采用了類間最大交叉熵閾值化分割算法。
2.1 類內(nèi)最小交叉熵閾值化分割算法
這些年,科技發(fā)展迅速,各個學(xué)科提出各種新理論且相互結(jié)合發(fā)展。在圖像分割方面也提出了一些結(jié)合特定理論工具的分割方法,例如基于數(shù)學(xué)形態(tài)學(xué)[2]的分割方法,基于信息論的分割方法等?;谛畔⒄摰姆指罘椒ㄊ前研畔⒄撝械淖畲笙戕r(nóng)熵準(zhǔn)則[3]和最小交叉熵準(zhǔn)則[4]引入到圖像分割中以控制分割造成的信息損失。部分算法借助了求熵極值的方法來達(dá)到分割的目的。
它的對稱形式稱為對稱交叉熵,其定義為:
現(xiàn)有的最小交叉閾值分割方法都是將分割前后的原始圖和分割圖分別用P和Q來表示,假定圖像分割前后的灰度總量保持不變,并且用灰度值來代替P和Q計算交叉熵,最后求得使交叉熵最小的閾值,利用該閾值來分割圖像[5]。設(shè)圖像中有目標(biāo)(o)和背景(b)兩類像素,文獻(xiàn)[4]定義的交叉熵分割函數(shù)為:
文獻(xiàn)[30]定義了另一種交叉熵:
它的對稱形式為:
類內(nèi)最小交叉熵閾值化分割算法借助上述最小交叉熵函數(shù)來求最優(yōu)閾值而使原始圖和分割圖之間的信息量差異最小。文獻(xiàn)[4]用圖像灰度直方圖來估計P中的先驗概率,并歸一化后設(shè)定為條件概率;再用泊松分布估計Q中兩類像素的條件概率,并用類的先驗概率進(jìn)行歸一化。此時交叉熵定義為兩類像素間的交叉熵之和:
上述算法有幾個缺點:第一,假設(shè)目標(biāo)灰度和背景灰度均服從泊松分布,由圖2可知這不符合精子圖像的特點。第二,泊松分布只有一個參數(shù),分布的均值和方差相等,那么當(dāng)目標(biāo)或背景均值都處在高亮區(qū)時,方差就會很大。第三,該算法只利用了先驗概率和條件概率,而沒有考慮劃分像素點所依據(jù)的后驗概率。
2.2 類間最大交叉熵閾值化分割算法
后驗概率有等于零的可能性,為了確保上式不出錯將式9改為:
接著求出目標(biāo)和背景兩個不同區(qū)域內(nèi)的所有像素的交叉熵的平均值,把這兩個平均值的和當(dāng)做整幅圖像的類間差異,得到:
上式中Po和Pb分別是目標(biāo)和背景類的先驗概率。
基于精子圖像直方圖(圖2)所示的特點,可以看出,其精子圖像直方圖類似一個正態(tài)分布函數(shù),故本文假設(shè)目標(biāo)和背景兩類的條件分布服從正態(tài)分布,其參數(shù)可由直方圖估計出,用貝葉斯后驗概率公式求取式10中的后驗概率如下:
為簡化計算,用灰度值g表征像素點s,即用灰度直方圖代表概率分布,重寫式11,得到:
通過搜索使上式最大的T作為最優(yōu)分割閾值。
2.3 實驗結(jié)果與分析
采用最大類間方差(Otsu)法和本文方法分別對羊精子圖像序列進(jìn)行分割、二值化,其中一幀圖像結(jié)果如圖3所示:
圖3 分割處理結(jié)果
分割效果見表1。
表1 分割效果對比
從圖1中可看出精子圖像目標(biāo)和背景對比度低,目標(biāo)像素個數(shù)遠(yuǎn)遠(yuǎn)小于背景像素個數(shù)。從圖2中可看出直方圖沒有明顯的雙峰,而且灰度分布比較狹窄。從圖3和表1可見采用Otsu法得出的閾值偏低,導(dǎo)致目標(biāo)的欠缺和背景的附著同時存在,本文方法求得的閾值分割結(jié)果最理想,保證了分割的精度。該方法完全能夠滿足正確地分割目標(biāo)以及系統(tǒng)的實時性要求。
圖像分割后會把多個精子目標(biāo)粘連或重疊在一起的區(qū)域當(dāng)做一個目標(biāo)區(qū)域,從而把這些粘連或重疊在一起的精子目標(biāo)當(dāng)做雜質(zhì)被錯誤剔除掉。通過觀察發(fā)現(xiàn),大多數(shù)情況下,是少數(shù)“毛刺”像素將多個精子目標(biāo)區(qū)域連接在一起形成大的區(qū)域。采用對大面積區(qū)域做一次數(shù)學(xué)形態(tài)開運算的方法[6],消除位于多個粘連目標(biāo)區(qū)域間的“毛刺”像素,從而使得粘連的目標(biāo)區(qū)域被分離開來。
3.1 精子目標(biāo)的標(biāo)記
通過閾值分割后,精子圖像中分離出了目標(biāo)區(qū)域和背景區(qū)域。為了區(qū)分各個精子目標(biāo),并統(tǒng)計精子個數(shù),需要對各個目標(biāo)區(qū)域進(jìn)行標(biāo)記[7]。從標(biāo)記后的區(qū)域中可以獲得位置和面積等信息參數(shù),這些信息參數(shù)為后面精子目標(biāo)的篩選提供了依據(jù),同時在后續(xù)的多目標(biāo)跟蹤時,也是通過這些參數(shù)來進(jìn)行幀間目標(biāo)匹配。
圖4 鄰域與鄰點
對于二值化圖像,目標(biāo)區(qū)域的標(biāo)記可以是4連通,也可以是8連通。精子圖像中會存在部分精子靠得比較近現(xiàn)象,如果采用8連通方式會把靠近的多個精子目標(biāo)標(biāo)記為一個,導(dǎo)致識別錯誤。故本文算法采用4連通標(biāo)記[8]。
具體標(biāo)記算法就是從頭到尾掃描二值圖像,對的像素做標(biāo)記,判斷灰度值為1的像素的左方和上方像素的灰度值及他們的標(biāo)記。如果這兩個像素的灰度值都為0,就給該像素賦一個新標(biāo)號。如果這個兩個像素中只有一個像素灰度值為1,就把灰度值為1的那個像素的標(biāo)號賦值給它。如果這兩個像素的灰度值都為1,那么就要進(jìn)一步判斷它們的標(biāo)記是否相同。如果相同,就把這個相同的標(biāo)號賦給當(dāng)前像素;如果不同,就把其中任意一個標(biāo)號賦值給它,并標(biāo)注這兩個不同的標(biāo)號是表示同一目標(biāo)。此次掃描結(jié)束后,所有灰度值為1的像素點都已有了標(biāo)記,但同一個連通分量可能有多個標(biāo)記。為此,必須對已記錄的標(biāo)記的等價情況進(jìn)行分類,所有等價的標(biāo)記歸為一類。在第二次掃描中根據(jù)分類情況,將同一類改用同一個標(biāo)記。
3.2 精子目標(biāo)的篩選
在經(jīng)過預(yù)處理和閾值分割后的精子圖像中不僅有從背景中分離出來的精子目標(biāo)還有一些雜質(zhì)。通過觀察分析后發(fā)現(xiàn)實驗樣本中可能存在的雜質(zhì)有如下幾類:
1)精液樣本本身存在的雜質(zhì)、存放樣本器皿中存在的某些固態(tài)雜質(zhì)和樣本中的較大細(xì)胞,如紅細(xì)胞、白細(xì)胞等。這些雜質(zhì)往往面積比較大。
2)拍攝用的各種鏡頭上也可能附著灰塵等雜物,這些雜質(zhì)面積較小。
3)精子計數(shù)板上會留有小氣泡。這些小氣泡往往面積和精子頭部面積相當(dāng),灰度方面也和精子目標(biāo)相似,但小氣泡在形狀上與精子不同,比精子要圓,所以形態(tài)因子比精子目標(biāo)要大。
目標(biāo)區(qū)域面積A和其周長平方P2之比稱為目標(biāo)區(qū)域的形態(tài)因子C[9]如式(3-4-11)所示,它能夠描述目標(biāo)區(qū)域形狀與圓的接近程度,所以可以通過它來判斷目標(biāo)區(qū)域是精子目標(biāo)還是雜質(zhì)。
4)顯微鏡沒擦洗干凈留下的小纖維,在圖像中成長條形,所以形態(tài)因子較小。
為了跟蹤精子目標(biāo),必須在分割出來的目標(biāo)區(qū)域中將這些非精子目標(biāo)剔除掉。通過上述幾類雜質(zhì)特點的分析建立篩選規(guī)則[10]如下:
1)精子目標(biāo)的面積大小在一定范圍內(nèi),大于下界且小于上界。
精子圖像中精子面積是有范圍的,且各個精子面積的大小都差不多。因此如果目標(biāo)面積小于精子面積最小值就可以直接刪除,但如果目標(biāo)面積大于精子面積最大值,這時候還要考慮兩個精子粘連在一起的情況,所以要把面積上界設(shè)置大點,超過這個上界的目標(biāo)才刪除。通過面積條件作初步篩選, 可以刪除部分目標(biāo),減少待選目標(biāo)。
2)精子目標(biāo)的形態(tài)因子C有界,用此剔除面積與精子目標(biāo)相似但是形狀不一樣的雜質(zhì)。對C設(shè)定一個門限,剔除C值過大或過小雜質(zhì)。
3)考慮精子粘連情況:目標(biāo)區(qū)域的面積比一個精子面積大,比兩個精子面積之和又要小。那么可以把該目標(biāo)區(qū)域看做是兩個精子粘連在一起,并把它劃分為兩個精子目標(biāo)。
由于經(jīng)過前面的一次形態(tài)開運算不能使其分開,說明這時的兩個精子目標(biāo)可能有很大部分重疊在一起。針對這種情況采用分水嶺算法進(jìn)行分割會取得比較好的分割效果,但該算法的計算量很大,不能滿足系統(tǒng)實時性要求。本文利用邊界跟蹤所得到的目標(biāo)區(qū)域邊界鏈碼,求得該區(qū)域的長軸,并為長軸求得垂直平分線。該垂直平分線就是兩個精子粘連的分割線,如圖5所示。該方法簡單而又比較有效。
圖5 兩個重疊目標(biāo)的切分示意圖
參照以上三個篩選規(guī)則,可以把精子圖像中的大部分雜質(zhì)去除,同時還可以把粘連精子目標(biāo)切分開。
3.3 實驗結(jié)果與分析
精子運動圖像經(jīng)過閾值分割、形態(tài)學(xué)處理后,采用4連通標(biāo)記算法進(jìn)行標(biāo)記,效果如圖6(圖中目標(biāo)右下角綠色數(shù)字為目標(biāo)編號)所示。經(jīng)過大量實驗,確定精子目標(biāo)的形態(tài)因子C最大值為0.9,最小值為0.7,平均值在0.85左右,由此來設(shè)置篩選規(guī)則2中形狀因子的上下限。根據(jù)篩選規(guī)則,識別結(jié)果如圖7所示。由圖7可以看出,根據(jù)篩選規(guī)則可以有效的去除雜質(zhì),識別精子效果較好。
圖6 精子標(biāo)記圖
圖7 精/子識別結(jié)果
表2 目標(biāo)識別
由于精子運動圖像有目標(biāo)背景對比度低、目標(biāo)灰度不盡相同,且其灰度直方圖呈單峰分布等特點,傳統(tǒng)的分割方法不適用。本文從目標(biāo)和背景的類間差異性出發(fā),搜索使分割后的類間差異最大的閾值,使用該閾值進(jìn)行分割,實驗結(jié)果表明該算法分割精確度較高。精子圖像經(jīng)分割后,存在一些粘連現(xiàn)象。在圖像識別過程中利用數(shù)學(xué)形態(tài)學(xué)的開運算解決輕微粘連現(xiàn)象,提出了一種利用平分線將目標(biāo)切分的簡單有效的方法解決精子目標(biāo)粘連嚴(yán)重的情況,同時根據(jù)可能存在的雜質(zhì)的特點建立篩選規(guī)則提高了識別的準(zhǔn)確性。
參考文獻(xiàn)
[1]龐增拴.精子運動能力檢測系統(tǒng)中的圖像分割方法的選取與算法的實現(xiàn)[J].河北省科學(xué)院學(xué)報,2004,21(3)∶44-46.
[2]楊帆.數(shù)字圖像處理與分析[M].北京∶北京航天航空大學(xué)出版社,2010∶1-10.
[3]Pal N R,Pal S K.A review on image segmentation techniques[J]. Pattern Recognition,1993,26(9)∶1277-1294.
[4]Li C H,Lee C K.Minimum cross entropy thresholding[J].Pattern Recognition,1993,26(4)∶617~625.
[5]薛景浩,章毓晉,林行剛一種新的圖像模糊散度閾值化分割算法[J].清華大學(xué)學(xué)報,1999,39(1)∶47-50.
[6]曾明,孟慶浩,張建勛等.基于形態(tài)特征和SVM的血液細(xì)胞核自動分析[J].計算機工程,2008,34(2)∶14-17.
[7]柳建武,精子質(zhì)量計算機輔助分析技術(shù)的研究[D].武漢∶華中科技大學(xué),2007.
[8]Rafael C.Gonzalez,Richard E.Woods.數(shù)字圖像處理(第三版)[M].北京∶電子工業(yè)出版社,2011,501-508.
[9]Yaheng Ren.An improved algorithm of rat sperm image segmentation and counting[C].Intelligent Computing and Integrated Systems(ICISS),2010∶201.
[10]陳天洲,石教英.精子圖像的形態(tài)分析[J].中國圖像圖形學(xué)報,1999(2)∶147-151.
作者簡介:
羅斌(1973—),男,廣西賀州人,大學(xué)???,工程師,研究方向:應(yīng)用電子技術(shù)和計算機信息化技術(shù)。
黃建燈(1982—),男,浙江人,碩士,高級實驗師,研究方向:圖像處理。