胡旭祥 劉 俊
(武漢科技大學計算機科學與技術學院 武漢 430065)
秀麗隱桿線蟲[1]是一種生長在土壤中,以微生物為食,生命周期短(約為2 周~3 周),容易繁殖等特點。秀麗隱桿線蟲作為現代生物學研究和觀察的流行生物模式,有著簡單且易于研究的器官,包括口、咽、腸、性腺和膠原質表皮。當下,秀麗隱桿線蟲的多數生理變化都是通過研究人員的視覺評估而缺少量化標準,通過圖像處理技術來取代認為評估,對秀麗隱桿線蟲各種生理變化的量化都會有很大幫助,為了實現利用計算機視覺自動進行量化評估,從顯微圖像中分割出秀麗隱桿線蟲就成為了首要的,也是重要的一個環節。這是本研究的目標。
現如今,人類的科學技術已取得巨大進步,但是生命健康依然是大多數領域所探索的話題。秀麗隱桿線蟲作為該研究方向的一個研究載體,它的一些特定的基因在細胞研究的過機器學習自動分割程中起著重要作用,對將來醫學、科學的發展有著深遠的影響。因此如何利用機器學習自動分割顯微圖像具有重要意義。
傳統的圖像分割算法[2]由于是以像素灰度值為基礎對圖像進行分割,通過一個或多個閾值吧圖像中的像素點進行分類,以此實現對圖像的分割,但是顯微圖像中的環境比較復雜,目標與雜質的灰度值較為相近,因此,選擇合適的閾值完成高精度分割具有一定的難度。近些年,一些相關研究人員已經探索出了用于微觀生物圖像研究的相關圖像處理算法。例如,如文獻[3]中提到在顯微圖像中分割了重疊的宮頸細胞,在文獻[4]提出一種用于從血細胞的顯微圖像中分割血小板的方法。文獻[5]中提出了一種包括圖像變換,閾值和形態學運算的方法分割秀麗隱桿線蟲。本文在YOLACT++的基礎上,引入了Attention 機制,目的是為了讓網絡分割模型更好地識別圖片中的特征信息,進而提高網分割模型的分割準確度,實驗表明,該方法能有效處理原始YOLACT++對秀麗隱桿線蟲頭尾分割不精確、圖片周圍分割精度不高等問題,實現了網絡分割模型對秀麗隱桿線蟲的高精度分割。
現如今在目標檢測方面主要可分為One-stage型網絡和Two-stage型網絡。這兩種網絡模型的側重點不太一樣,Two-stage 型網絡的分割精度較高,更加重視高精度的實力分割,其中Mask-RCNN[6],Faster-RCNN[7]等都是采用的這種目標檢測網絡;而One-stage 型網絡更加注重分割的速度,此類網絡直接通過主干網絡給出目標物體的類別和位置信息,這樣的算法速度更快,但是分割的準確性相比于Two-stage來說有所降低,比較經典的YOLO系列[8~9],Retina-Net[10]等都是這種類型的檢測網絡。
YOLACT[11]是丹尼爾·波利亞、崇洲等在2019年提出的一個實時實例分割模型,此模型是一個One-stage 模型,通過兩個并行的子網絡來實現圖像分割,YOLACT 有著速度快、掩碼質量高、普適性強等優勢。YOLACT++在YOLACT 的基礎上,在保證了實時性(大于或者等于30fps)的情況下,對先前的的YOLACT做出幾點改進,為了提升各個監測分割模型的準確度,模型中把可變形的卷積由自由行使的采樣代替傳統CNN 中使用的剛性網格采樣,也就是在不同的卷積層的后面再加上一個卷積層,用來學習特征圖中每個像素點的偏移情況。然后,將學習到的偏移位置信息輸入到特征圖中,之后再進行后續的卷積。為了可以檢測到不同尺寸大小的物體,YOLACT 采用了和SSD 相同的多尺度特征圖,也就是在比較大的特征圖上檢測小目標,在小的特征圖上檢測大目標。同時,為了使得網絡模型學習到的特征更加豐富,從而更好地分割不同尺寸的目標,實驗的分割模型采用的是FPN 網絡,模型輸入的圖片大小為550*550,采用的Backbone為ResNet101。
如圖1 所示,它是在經過一個卷積層處理后,由C5 層得到的P5 層,然后再進行雙線性插值操作,使得P5 的特征圖擴大了一倍,經過上述操作后,由C4 層得到了P4 層,由C3 層得到了P3 層,接下來就是把P5 進行卷積和下采樣操作得到了P6,對P6 進行同樣的操作得到了P7,從而搭建起了一個FPN網絡。

表1 ResNet結構

圖1 秀麗隱桿線蟲檢測、分割的網絡框架
針對提高分割速度,可以進行實行分割,丹尼爾·波利亞、崇洲等在Retina-Net 的基礎上進行改進,采用了共享卷積網絡,從而可以提高分割速度,達到實時分割的目的。在受到MASK R-CNN[12]的啟發下,因為僅僅從包圍框這個因素來評判mask的好壞不太合理,所以在模型后添加了Mask Re-Scoring 分支,直接使用全尺寸的mask 作為scoring 分支的輸入,輸出則是對應每個類的GT-mask 的IoU,在scoring 的分支中沒有使用FC層,所以提升了網絡的分割速度。
損失函數(Loss function)是用來度量模型的預測值f(x)與實際值Y的差異程度,損失值越小,代表模型的魯棒性就越好,反之越差,如果所得的預測值與實際值相等,代表沒有損失,損失函數的核心部分是經驗風險函數也使其結構的重要組成部分。
YOLACT++中的損失函數由三部分組成,包括分類損失(Lcls),框回歸損失(Lbox)以及掩碼損失(Lmask),其損失函數為L=Lcls+Lbox+Lmask,每一個目標區域都會生成一個的特征層,其中特征層中的的每個值為二進制的掩碼(0 或1)。根據當前RoI 區域預測的分類,含有K?n?n維度的輸出,K代表類別的數量,n*n是提取的ROI 圖像的大小。mask 損失值是預測值(預測mask)與實際值(group truth)的逐像素二進制交叉熵[13]。為了產生實例masks,通過結合原型分支和mask 系數分支的工作,使用前者和后者的線性組合作為系數,然后通過一個sigmoid[14]非線性來產生最終的mask。使用單個矩陣乘法和sigmoid 可以有效地實現這些操作。逐像素二進制交叉熵的公式如式(1)所示:
其中概率分布m和n來度量信息量,yi表示label 的類別,本文的實驗中1表示線蟲的蟲體部分,0表示背景。y?i為模型的預測概率,模型在通過計算得到特征值后,根據Sigmoid 函數計算出概率。Sigmoid函數計算如式(2)。
本次實驗的實驗數據設置如下:分類損失Lmask設置為1,盒回歸損失Lbox設置為1.5,mask 損失Lmask設置為6.125。圖為訓練狀態曲線,圖的縱坐標為loss 的值。由圖2 可見,實驗在迭代4000 次之后達到一個相對穩定的狀態,平均損失值穩定在0.09 左右。Lbox的定義方式與SSD 中的定義的相同,然后計算掩模損耗,取集合掩模M與地面真掩模Mgt之間像素方向的二元交叉熵Mgt:Lmask=BCE(M,Mgt)。圖2為損失下降曲線圖。

圖2 損失下降曲線圖
為了加深分割網絡對特征圖的理解,解決在低層特征中缺失的語義信息,存在的一些噪聲對蟲體分割造成一定的干擾,所以引入Attention機制來獲取高級語義信息,增加線蟲蟲體區域的權重信息,增加網絡模型對線蟲圖片的學習能力,從而提高分割模型的準確率。
因為本次實驗是分割線蟲蟲體部分,Attention機制通過Attention 權重0<<β<<1 來識別線蟲蟲體的特征區域,注意力權重的計算公式為
在式(3)中,m是像素空間的大小;表示低級的特征圖,表示高級的特征圖;式(4)中的為中間值;b1和b2均為偏置項;σ1和σ2分別為Re-LU 函數和Sigmoid 函數,目的是對Attention 權重進行一個歸一化的處理。Attention 機制在訓練過程中可以自動學習目標結構,不需要額外的監督。
論文中所使用的數據,是通過光學顯微鏡拍攝得到的纖維圖像。因為訓練出一個比較好的分割網絡權重有兩個重要因素,首先是需要大量的數據,其次是大量的參數,且以人為的方式難以獲取大量的線蟲數據,所以實驗過程中對線蟲數據有一個數據增強的過程,以致于可以擁有更多的線蟲數據,來使得文章所采用的網絡模型有更好的分割效果,來提升網絡模型的魯棒性。經過一系列數據增強的操作后,將現有的2500 張數據,選出其中的2200 張數據作為訓練集,剩余的300 作為測試集。數據集的制作完成后,再使用標注軟件(本次實驗所使用的的是labelme)對數據中的蟲體部分進行標注,標注完成后則會得到一個對應的json類型的文件。圖3 為本次實驗的實驗環境。Labelme 標注如圖4所示。

圖3 實驗環境

圖4 labelme標注數據結果

圖5 實驗效果對比
本文實驗的大致步驟如下:
1)將所得到的數據進行預處理,選取可用的數據,去除重復數據。
2)對已有的數據進行標注,完成數據集的制作。3)使用得到的模型對測試集數據進行實驗。4)對模型進行評估。
本次實驗在使用YOLACT++網絡分割模型是引入了Attention機制,結合改進后的模型對不同體態下的秀麗隱桿線蟲有較好的分割效果,原來的YOLACT++分割模型容易造成線蟲頭部和尾部的信息缺失,圖片的邊緣部分也有些許無法分割出來。可以看出,在經過改進后的分割模型在一定程度上的提升了分割的準確性,使分割的精確度更加趨近于真實值。
本文的實驗利用AP,AP50來進行結果評估。為了檢測出一個合適的值,在此AP50代表的是IOU的值為0.5。AP 表示的IOU 的值設置在0.50~0.95之間,增量為0.05。IOU的公式為
式(5)中的P代表的是一個預測值,g代表的是一個實際值。定義IoU 這個概念是為了評價定位算法是否精確,即它衡量了兩個邊界框的重疊的相對大小。由式(5)可以看出IoU 值越大,越接近于1,表示預測的效果越好,在一般的目標檢測過程中,若IoU的值大于0.5,則說明檢測正確。式(6)為AP的公式。

表2 實驗結果(mIOU)
在實驗過程中,從表中的數據表明,網絡與傳統分割方法相比具有巨大優勢。與OSTU 相比,本次實驗所使用的方法的mIOU值提升了16%。
本次研究是在YOLACT++網絡框架的基礎上引入了Attention機制,在對光學顯微鏡下所拍到的秀麗隱桿線蟲的數據進行檢測分割,原始的YOLACT++在對線蟲體態進行分割時,對圖像邊緣信息會有一定程度的丟失,對線蟲的頭部和尾部的信息的處理效果也不是很理想。為了在保證分割速度的同時提高了一些網絡分割模型的精確性,通過引入Attention機制,結合損失函數算法等方法來提升網絡模型的分割效果。實驗表明,本方法在秀麗隱桿線蟲蟲體分割時提高了網絡分割模型的精準度,證明了本文方法的有效性。