董宇波,王蕊,趙慧娟,張書景
細菌的分類和計數在生物工程、環境檢測和醫藥學等領域都有十分重要的意義。傳統的細菌計數方法有平板計數法[1-3],這是一種間接培養計數法,由于單個細菌難以觀測,因此將分散的細菌在培養基上培養形成菌落,將菌落個數作為計數標準,這種方法需要花時間培養細菌,結果不穩定。流式細胞術是一種通過儀器分析細胞而完成計數的方法[4-6],被熒光標記過的細菌以一定的速度流過流式細胞儀測定區域,熒光反應的信號強度能夠檢測細菌的組成和含量;然而流式細胞儀價格昂貴,對單個細菌的檢測準確,對混合細菌分類效果不好。最大可能數(MPN)計數方法通過概率統計來估計細菌濃度[7-8]。顯微鏡計數是一種常用的方法,顯微鏡可以放大細菌或染色細菌,以便于人們觀察,對于單個視野中細菌分布不均勻且數量眾多的顯微鏡計數工作量巨大,過程繁瑣,并且極易出錯[9-11]。
針對以上問題,本研究提出一種基于深度學習的顯微圖像細菌計數方法,該方法能夠將實際任務圖像中的革蘭氏陽性桿菌、革蘭氏陰性桿菌、革蘭氏陽性球菌和革蘭氏陰性球菌進行分類識別和計數,圖1顯示了4 種不同類型細菌的顯微圖像。該算法過程流程模擬人眼觀察,對4種細菌的分類計數過程為:“分割”→“分類器訓練”→“識別”→“分類計數”。首先采用U-Net“漸進式分割”方法去除背景,分割出細菌部分;然后將分割后的細菌部分分別投入經過訓練后的ResNet50 模型和VGG19 模型進行識別和計數。

圖1 4種革蘭氏染色菌形態差異Fig.1 Morphological differences among four kinds of Gram-stained bacteria
圖像分割是將圖像分成具有獨特特征的特定區域,也是后續圖像分析的預處理和關鍵準備[12]。由于顯微圖像中的細菌尺寸小且存在黏連和邊緣模糊的情況,以往的分割方法難以很好地將背景剔除。U-Net[13-14]在醫學圖像分割方面有很好的表現,在2015年ISBI 細胞追蹤比賽中取得了優秀的表現。U-Net網絡結構如圖2所示,它是一個編碼器-解碼器結構,左半邊為編碼器,與傳統的分類網絡結構類似,是“下采樣階段”,右半邊為解碼器,是“上采樣階段”,中間的灰色箭頭為跳躍連接,將淺層的特征與深層的特征拼接,淺層通??梢宰トD像一些簡單的特征,比如邊界、顏色,深層的特征是高維特征,經過訓練后記憶在網絡參數中。

圖2 U-Net模型結構Fig.2 The U-Net model structure
細菌顯微圖像和醫學圖像有很多相同的特點,例如圖像顏色種類少、背景單調、噪聲高、分辨率低;不同的是細菌顯微圖像中微小細菌的數量十分巨大。因此,首先將一幅細菌顯微圖像分割成若干個30×30 像素的子塊,然后選取部分子塊作標記,對U-Net 模型進行訓練。每個子塊進行分割之后,將它們拼接起來作全局分割掩膜。掩膜為一個二值圖像,白色為細菌部分,黑色為背景部分,將掩膜與原圖相乘即可得到分割后的細菌。圖3顯示了U-Net分割后的掩膜,圖4顯示了子塊合成掩膜的過程。

圖3 U-Net子塊分割掩膜Fig.3 The mask of sub-blocks segmented by U-Net

圖4 合成全局分割掩膜過程Fig.4 The synthesis process of the whole mask segmented by U-Net
本文中使用的U-Net 網絡模型包括19 次卷積運算和4 次轉置卷積運算,4 次上采樣和4 次下采樣,最終輸出由Simoid 函數激活。先將圖像分解成30×30像素的子塊,從中選擇50 個作標簽,用于U-Net 模型的訓練。該模型經過500次迭代,取得了良好的分割效果。分割掩膜很難通過一次性閾值得到,較高的閾值會導致部分細菌的丟失,而較低的閾值則會導致細菌黏連不能完全分割。因此,本研究采用漸進分割,通過至少兩次調整閾值,可以完成幾乎所有細菌輪廓分割。
由U-Net模型生成的掩膜的像素分布如圖5所示。通過觀察U-Net模型生成的掩膜的像素分布,選擇中點處約0.500 5作為首次分割閾值,去除大部分背景。再選首次閾值和最大值之間中點處約0.500 75作為二次分割閾值。

圖5 掩膜像素灰度值及分布情況Fig.5 The pixel value and grey value of mask generated by U-Net and their distribution
1.2.1 首次分割在得到圖3所示的首次全局分割掩膜后,我們通過分水嶺算法找到連通域[15]。這些連通域中有的包含多個細菌,通過簡單比較連通域與最大單個細菌面積,挑選出包含多個細菌的連通域進行二次分割。
1.2.2 二次分割選擇更高的閾值為U-Net 輸出二值掩膜,稱之為“主要部分”。在得到更加細致的分割掩膜的同時,也丟失了部分包含細菌的部分。為了找回其余部分的細菌,我們將首次分割結果進行開運算,將得到的結果和首次分割結果相減得到的結果稱之為“殘差部分”,經過開運算后得到的“殘差部分”可以減少兩部分相減造成的邊緣輪廓和毛刺。然后再次分別搜索“主要部分”和“殘差部分”中的連通域,這兩部分的連通域幾乎覆蓋了所有且獨立的細菌位置。圖6顯示了二次分割的過程和分割后的細菌位置定位,圖7顯示了黏連嚴重的細菌經過漸進分割后得到的結果。

圖6 漸進分割過程Fig.6 The progressive segmentation

圖7 黏連細菌分割結果Fig.7 Segmentation of adhesive bacteria
為了比較結果的準確性,我們選擇了兩種深度卷積神經網絡進行分類和計數。
VGGNet模型[16]:VGGNet使用3×3卷積核和3×3池化核,通過不斷深化網絡結構來提高性能。堆疊式小卷積核優于大卷積核,因為多非線性層可以增加網絡深度以保證更復雜模式的學習,而且代價相對較?。▍递^少)。
ResNet 模型[17]:當神經網絡層數增多時,由于存在梯度消失問題,訓練困難。ResNet 模型主要使用3×3的卷積核。模型的核心內容是殘差,如圖8所示,其學習特性表示為H(x)。當輸入為x時,殘差是F(x)=H(x)-x,那么原始學習特性應該為:H(x) =F(x) +x,殘差的學習結構稱為跳躍連接,可以從網絡的一層激活,然后快速反饋到另一層甚至更深層的神經網絡。這也使卷積層能夠根據輸入特征學習新的特征,從而獲得更好的性能。

圖8 ResNet 模型Fig.8 The ResNet model
實驗中的顯微圖像為濱州醫學院公共衛生與管理學院實驗室采集的革蘭氏染色菌顯微圖像,并對用以U-Net 模型、ResNet50 模型和VGG19 模型所使用分割后的訓練子圖進行標注。標簽將革蘭氏染色細菌分為陽性桿菌、陽性球菌、陰性桿菌和陰性球菌4類。最后,總共有600個細菌圖像被標記為訓練集,100 個細菌圖像被標記為測試集。然后,通過水平翻轉、垂直翻轉、水平垂直翻轉和轉置等操作,將訓練集擴大到3 000個,測試集擴大到500個。
分別使用ResNet50 模型和VGG19 模型進行訓練。為了防止過擬合,當訓練集的準確度小于95%時,提前停止對測試集參數進行保存。經過100次迭代,最終選取在訓練集和測試集均有最高準確率時的模型參數,VGG19 模型在測試集中的準確率達到88%,ResNet50 模型的準確率達到90%,兩者在訓練集中的準確率均達到95%。
由于細菌特征較少,我們將漸進分割后得到的細菌放在白色背景的矩陣中,以此減少噪聲干擾,將細菌輸入VGGNet模型和ResNet模型進行識別和計數。
我們對多張革蘭氏染色細菌顯微圖像進行實驗,并分別記錄兩種深度學習模型識別計數的結果。圖9顯示了VGGNet模型和ResNet模型的結果。表1和表2分別列出了陽性及陰性菌和桿菌及球菌的混淆矩陣[18]?;煜仃噷写韺嶋H情況,列代表深度學習判定的情況。實驗結果表明,VGGNet 模型和ResNet模型在陰性細菌和陽性細菌的分類中均有較好的表現。然而,在桿菌和球菌的分類上,ResNet模型優于VGGNet模型。另外,ResNet比VGGNet平均少花9%的時間,在圖9所展示的3 組圖像結果中ResNet 和VGGNet 的計算時間分別為178.1、111.4、95.9 s和185.4、137.4、100.2 s。

圖9 識別分類結果(顯微鏡放大倍數為1 000倍)Fig.9 Classification results(The microscope magnifies 1 000 times)

表1 陽性菌及陰性菌混淆矩陣Tab.1 Positive-negative Confusion matrix
使用深度學習算法進行細菌分類和計數,可以節省時間和人力,本文中的圖片經比較,人眼計數與ResNet 計數結果誤差率不超過5%。與此同時,單幅圖片人工計數需要數個小時,而使用ResNet 模型計數僅需要幾分鐘。一些分辨率低的黏連細菌目前仍舊難以分割,同樣也難以進行人工識別。但隨著深度學習模型的能力越來越強,計算機視覺將實現低分辨率重建和更精確的分割。因此,細菌計數在未來將更加依賴于先進的人工智能技術。

表2 桿菌及球菌混淆矩陣Tab.2 Bacilli and cocci Confusion matrix