一種基于深度神經(jīng)網(wǎng)絡(luò)的細(xì)胞追蹤方法,用于細(xì)胞的追蹤,涉及生物醫(yī)學(xué)、機(jī)器視覺、圖像處理、人工智能等技術(shù)領(lǐng)域。
背景技術(shù):
視覺跟蹤是計(jì)算機(jī)視覺領(lǐng)域的一個(gè)重要研究課題。視覺追蹤的目的是跟蹤單個(gè)或多個(gè)對(duì)象的軌跡,其已經(jīng)廣泛應(yīng)用于許多實(shí)際視覺任務(wù),如視頻監(jiān)控、自動(dòng)駕駛系統(tǒng)和生物細(xì)胞譜系分析。作為一個(gè)典型的視覺跟蹤應(yīng)用程序,細(xì)胞追蹤的目標(biāo)是為了直接從微觀圖像序列中追蹤細(xì)胞。通過細(xì)胞跟蹤的結(jié)果,我們可以研究細(xì)胞行為,進(jìn)一步構(gòu)建細(xì)胞譜系和分析細(xì)胞形態(tài)學(xué)。因此,細(xì)胞與自動(dòng)跟蹤方法是至關(guān)重要的。
細(xì)胞跟蹤的挑戰(zhàn)可以總結(jié)為四類。第一個(gè)挑戰(zhàn)是細(xì)胞的變形問題。細(xì)胞的變形包括伸長(zhǎng)、擴(kuò)張和收縮。傳統(tǒng)的視覺跟蹤方法比較容易處理剛體的沒有顯著形狀變化的目標(biāo)。然而,細(xì)胞非剛性的形狀使得跟蹤任務(wù)更具挑戰(zhàn)性,因?yàn)殡S著時(shí)間的推移,他們總是改變形狀。第二類的挑戰(zhàn)是關(guān)于細(xì)胞的行為。例如,細(xì)胞遷移具有復(fù)雜的運(yùn)動(dòng)模式。復(fù)雜的細(xì)胞運(yùn)動(dòng)模式給跟蹤任務(wù)增加了困難。第三個(gè)挑戰(zhàn)來自細(xì)胞的生活環(huán)境。細(xì)胞液中有許多粒子,其中包含死亡細(xì)胞,細(xì)菌和其他有機(jī)物質(zhì)。細(xì)胞跟蹤方法必須區(qū)分細(xì)胞與其他粒子。最后一個(gè)挑戰(zhàn)是,顯微鏡下的細(xì)胞圖像分辨率低,圖像中的細(xì)胞相對(duì)體積較小。
隨著深度學(xué)習(xí)的發(fā)展,特性學(xué)習(xí)方法已經(jīng)成功地應(yīng)用于計(jì)算機(jī)視覺領(lǐng)域。在我們的工作中,卷積神經(jīng)網(wǎng)絡(luò)被用來學(xué)習(xí)魯棒性的細(xì)胞特征,使得提高非剛性的細(xì)胞的追蹤識(shí)別率。卷積神經(jīng)網(wǎng)絡(luò)被廣泛用于視覺任務(wù):在傳統(tǒng)的圖像分類問題中,卷積神經(jīng)網(wǎng)絡(luò)用于大規(guī)模數(shù)據(jù)集上已經(jīng)被證明提高識(shí)別精度,在許多機(jī)器學(xué)習(xí)方法中,它是目前最先進(jìn)的特征學(xué)習(xí)模型方法之一。
在實(shí)際的視覺問題中,深度學(xué)習(xí)方法有時(shí)會(huì)遇到過擬合問題。由于細(xì)胞對(duì)象非剛性的特 點(diǎn),細(xì)胞跟蹤方法要求具有良好的泛化性能。多任務(wù)學(xué)習(xí)通常將大問題分解成獨(dú)立的任務(wù),它是一種機(jī)器學(xué)習(xí)的方法,學(xué)會(huì)從所有獨(dú)立的任務(wù)中學(xué)習(xí)到共享的細(xì)胞特征。這種學(xué)習(xí)過程提供了一種較好的泛化性。它已經(jīng)成功地應(yīng)用于很多領(lǐng)域,包括機(jī)器翻譯,語音識(shí)別,目標(biāo)識(shí)別等。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對(duì)上述不足之處提供了一種基于深度神經(jīng)網(wǎng)絡(luò)的細(xì)胞追蹤方法,解決現(xiàn)有技術(shù)中連續(xù)的顯微鏡細(xì)胞圖片序列中細(xì)胞變形、細(xì)胞的行為、細(xì)胞的生活環(huán)境和顯微鏡下的細(xì)胞圖像分辨率低造成細(xì)胞追蹤效果不佳的問題。
為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案為:
一種基于深度神經(jīng)網(wǎng)絡(luò)的細(xì)胞追蹤方法,其特征在于,包括如下步驟:
(1)收集細(xì)胞圖片數(shù)據(jù),裁剪出細(xì)胞數(shù)據(jù),使用卷積神經(jīng)網(wǎng)絡(luò)提取細(xì)胞特征,獲得一個(gè)初始化的多任務(wù)觀測(cè)模型;
(2)給定顯微鏡圖片序列的第一張圖片,并給定第一張圖片中的細(xì)胞位置,利用粒子濾波方法在下一幀圖片中獲取第一張圖片中細(xì)胞位置附近的多個(gè)候選細(xì)胞位置,其中下一幀圖片是指第二張圖片;
(3)在第一張圖片上采樣正樣本和負(fù)樣本,在初始化的多任務(wù)觀測(cè)模型上訓(xùn)練一個(gè)二元分類器,將訓(xùn)練好的多任務(wù)觀測(cè)模型對(duì)候選細(xì)胞位置進(jìn)行預(yù)測(cè),得到細(xì)胞的預(yù)測(cè)相似度概率值;
(4)選取預(yù)測(cè)相似度概率值最大的候選細(xì)胞位置作為下一幀圖片的細(xì)胞位置,將最大預(yù)測(cè)相似度概率值和對(duì)應(yīng)的細(xì)胞位置保存到一個(gè)模型更新策略中,設(shè)置一個(gè)閾值,如果更新后的最大預(yù)測(cè)相似度概率值小于閾值,轉(zhuǎn)到步驟(2)進(jìn)入下一幀圖片的追蹤;反之,轉(zhuǎn)到步驟(3)重新采樣訓(xùn)練。
進(jìn)一步,所述步驟(1)中包括如下步驟:
(11)特征提取任務(wù):通過構(gòu)造一個(gè)三分類任務(wù)來提取細(xì)胞特征,三個(gè)類別包括無細(xì) 胞類別,分裂中細(xì)胞類別,普通細(xì)胞類別,其中無細(xì)胞類別包含死亡的細(xì)胞以及其他有機(jī)物;
(12)數(shù)據(jù)獲?。簭脑硷@微鏡圖片中獲取包含步驟(11)中三類特征的情形,將對(duì)應(yīng)的圖片位置截取出來,然后對(duì)所有截取的圖片切片統(tǒng)一到32×32的大小,得到裁剪出的細(xì)胞數(shù)據(jù);
(13)卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練:將得到的細(xì)胞數(shù)據(jù)輸入到卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)特征提取任務(wù),獲得初始化的多任務(wù)觀測(cè)模型。
進(jìn)一步,所述步驟(2)包括如下步驟:
(21)給定顯微鏡圖片序列的第一張圖片,并給定第一張圖片中的細(xì)胞位置,將給定的細(xì)胞位置輸入到一個(gè)粒子濾波模型中;
(22)設(shè)置粒子濾波模型產(chǎn)生的粒子個(gè)數(shù),通過粒子濾波算法獲得候選的粒子位置,即獲得多個(gè)候選細(xì)胞位置。
進(jìn)一步,所述步驟(3)具體包括如下步驟:
(31)采樣正負(fù)樣本:在第一張圖片上細(xì)胞位置1到2個(gè)像素點(diǎn)截取N個(gè)正樣本,在50像素點(diǎn)以外的位置獲取M個(gè)負(fù)樣本;
(32)在步驟(1)獲得初始化的多任務(wù)觀測(cè)模型基礎(chǔ)上,重新學(xué)習(xí)當(dāng)前的分類任務(wù),得到訓(xùn)練好的多任務(wù)觀測(cè)模型;
(33)訓(xùn)練好的多任務(wù)觀測(cè)模型用來對(duì)粒子濾波產(chǎn)生的候選的粒子位置進(jìn)行預(yù)測(cè),給出每個(gè)候選細(xì)胞位置的相似度概率值。
進(jìn)一步,所述步驟(4)中的模型更新策略具體包括如下步驟:
(41)先對(duì)模型中的隊(duì)列初始化:從第一張圖片上細(xì)胞位置1到2個(gè)像素點(diǎn)截取N個(gè)正樣本進(jìn)行模型初始化,初始化的N個(gè)正樣本的相似度概率為1,然后通過相似度衰減規(guī)則公式對(duì)相似度進(jìn)行衰減,保證隊(duì)列首的細(xì)胞相似度衰減的慢,隊(duì)列尾的細(xì)胞衰減的快;
上式中,βi是細(xì)胞的相似度,其中i∈(1,N),N是細(xì)胞的個(gè)數(shù),是一個(gè)常數(shù),用來控制衰減的速度;
(42)每次有新的細(xì)胞圖片進(jìn)入隊(duì)列都要對(duì)隊(duì)列中細(xì)胞的相似度進(jìn)行衰減更新,然后要通過一個(gè)判斷:βnew>βmin,如果新的圖片比隊(duì)列中的最小的相似度還要小,那么該新的細(xì)胞圖片丟棄不加入,否則新的細(xì)胞圖片加入到隊(duì)列首進(jìn)行更新;
(43)如果有新的圖片加入到隊(duì)列中,在隊(duì)列中搜索相似度最小的細(xì)胞樣本從隊(duì)列里刪除,不改變隊(duì)列其他樣本的順序。
進(jìn)一步,所述步驟(13)中卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)可用下述公式表示:
其中,P和Q定義了卷積核的大小,p,q表示行數(shù)和列數(shù),用來定義像素點(diǎn)位置,f是卷積核函數(shù),l∈(1,L)表示當(dāng)前的卷積神經(jīng)網(wǎng)絡(luò)層數(shù),定義了l層的i行j列的特征,k定義了卷積核的參數(shù),b是相應(yīng)的偏置函數(shù)。
卷積神經(jīng)網(wǎng)絡(luò)的池化操作可用下述公式表示:
a(l)=f(β(l)·down(a(l-1))+b(l-1)),
上述公式中,down表示了神經(jīng)網(wǎng)絡(luò)的下采樣操作,β是相應(yīng)參數(shù)。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:
一、細(xì)胞的特征提取是一個(gè)關(guān)鍵的預(yù)處理操作,通過對(duì)細(xì)胞圖片進(jìn)行篩選,能夠很好的增加細(xì)胞的特征提取效果,具體操作中,整理的細(xì)胞圖片通過重新歸一化到32×32的大小,卷積神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)成兩層卷積,兩層下采樣層能夠最好的學(xué)習(xí)到細(xì)胞特征;
二、在追蹤的過程中,細(xì)胞會(huì)移動(dòng),形變,在傳統(tǒng)的細(xì)胞追蹤方法中需要不斷的重新訓(xùn)練,而本發(fā)明中我們維護(hù)了一個(gè)樣本隊(duì)列,隊(duì)列中的樣本保存著其相似度概率值,每次新的樣本進(jìn)入隊(duì)列后,相似度最小的樣本將會(huì)從隊(duì)列中剔除,該方法采樣的正樣本在細(xì)胞移動(dòng)、細(xì)胞形變的過程中更好;
三、通過深度學(xué)習(xí)的方法對(duì)細(xì)胞進(jìn)行特征提取,能夠很好的對(duì)多任務(wù)觀測(cè)模型進(jìn)行很好的初始化,增加模型的魯棒性,提高追蹤的效果;
四、在一個(gè)連續(xù)的細(xì)胞顯微鏡圖片序列中,通過標(biāo)定第一幀圖片中細(xì)胞的位置,能夠準(zhǔn)確的追蹤序列中所有圖片細(xì)胞的位置。
附圖說明
圖1為本發(fā)明中多任務(wù)觀測(cè)模型圖;
圖2為本發(fā)明中細(xì)胞識(shí)別流程圖;
圖3為本發(fā)明中模型更新樣本維護(hù)的示例圖;
圖4為本發(fā)明中細(xì)胞追蹤效果圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的說明。
參見圖1,一種基于深度神經(jīng)網(wǎng)絡(luò)的細(xì)胞追蹤方法的核心模型是一個(gè)多任務(wù)的觀測(cè)模型。多任務(wù)的觀測(cè)模型分為兩個(gè)學(xué)習(xí)任務(wù):一個(gè)二分類的主任務(wù),目的是將當(dāng)前追蹤的細(xì)胞目標(biāo)與圖片背景中的其他物體區(qū)分開,該部分在細(xì)胞追蹤的過程中會(huì)不斷更新該部分的分類器;另外一個(gè)是三分類的次任務(wù),目的是將細(xì)胞的主要類別:非細(xì)胞類別、普通細(xì)胞、分裂中細(xì)胞區(qū)分開來,通過區(qū)分主要的細(xì)胞類別,能夠在初始化多任務(wù)觀測(cè)模型的時(shí)候就學(xué)習(xí)到細(xì)胞的主要特征,從而提高追蹤效率。
如圖2為細(xì)胞追蹤的整體流程,具體包括如下步驟:
(1)收集細(xì)胞圖片數(shù)據(jù),裁剪出細(xì)胞數(shù)據(jù),使用卷積神經(jīng)網(wǎng)絡(luò)提取細(xì)胞特征,獲得一個(gè)初始化的多任務(wù)觀測(cè)模型;包括如下步驟:
(11)特征提取任務(wù):通過構(gòu)造一個(gè)三分類任務(wù)來提取細(xì)胞特征,三個(gè)類別包括無細(xì)胞類別,分裂中細(xì)胞類別,普通細(xì)胞類別,其中無細(xì)胞類別包含死亡的細(xì)胞以及其他有機(jī)物;
(12)數(shù)據(jù)獲?。簭脑硷@微鏡圖片中獲取包含步驟(11)中三類特征的情形,將對(duì) 應(yīng)的圖片位置截取出來,然后對(duì)所有截取的圖片切片統(tǒng)一到32×32的大小,得到裁剪出的細(xì)胞數(shù)據(jù);
(13)卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練:將得到的細(xì)胞數(shù)據(jù)輸入到卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)特征提取任務(wù),獲得初始化的多任務(wù)觀測(cè)模型。卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)可用下述公式表示:
其中,P和Q定義了卷積核的大小,p,q表示行數(shù)和列數(shù),用來定義像素點(diǎn)位置,f是卷積核函數(shù),l∈(1,L)表示當(dāng)前的卷積神經(jīng)網(wǎng)絡(luò)層數(shù),定義了l層的i行j列的特征,k定義了卷積核的參數(shù),b是相應(yīng)的偏置函數(shù)。
卷積神經(jīng)網(wǎng)絡(luò)的池化操作可用下述公式表示:
a(l)=f(β(l)·down(a(l-1))+b(l-1)),
上述公式中,down表示了神經(jīng)網(wǎng)絡(luò)的下采樣操作,β是相應(yīng)參數(shù)。
(2)給定顯微鏡圖片序列的第一張圖片,并給定第一張圖片中的細(xì)胞位置的確切位置,如圖中正方形框標(biāo)定的細(xì)胞;利用粒子濾波方法在下一幀圖片(即第二幀圖片)中獲取第一張圖片中細(xì)胞位置附近的多個(gè)候選細(xì)胞位置;包括如下步驟:
(21)給定顯微鏡圖片序列的第一張圖片,并給定第一張圖片中的細(xì)胞位置,將給定的細(xì)胞位置輸入到一個(gè)粒子濾波模型中;
(22)設(shè)置粒子濾波模型產(chǎn)生的粒子個(gè)數(shù),通過粒子濾波算法獲得候選的粒子位置,即獲得多個(gè)候選細(xì)胞位置。
(3)在第一張圖片上采樣正樣本和負(fù)樣本,在初始化的多任務(wù)觀測(cè)模型上訓(xùn)練一個(gè)二元分類器,將訓(xùn)練好的多任務(wù)觀測(cè)模型對(duì)候選細(xì)胞位置進(jìn)行預(yù)測(cè),得到細(xì)胞的預(yù)測(cè)相似度概率值;多任務(wù)觀測(cè)模型是有兩部分組成。三分類的次任務(wù)用來初始化模型達(dá)到提取細(xì)胞特征的目的。多任務(wù)觀測(cè)模型的初始化在30000個(gè)樣本數(shù)據(jù)集下,訓(xùn)練一個(gè)4層的卷積神經(jīng)網(wǎng)絡(luò),數(shù)據(jù)的標(biāo)定包括無細(xì)胞樣本,普通細(xì)胞樣本,分裂中細(xì)胞樣本。訓(xùn)練好的多任務(wù) 觀測(cè)模型用來對(duì)當(dāng)前圖片(第一張圖片)中的細(xì)胞學(xué)習(xí)一個(gè)二元分類器。該二元分類器的正樣本,即屬于細(xì)胞的樣本是從正樣本隊(duì)列中選取的。隊(duì)列的初始化是從第一張圖片上細(xì)胞位置1到2個(gè)像素點(diǎn)截取10個(gè)正樣本。負(fù)樣本的選取是在50像素點(diǎn)以外的位置獲取100個(gè)負(fù)樣本。訓(xùn)練好的觀測(cè)模型對(duì)候選的細(xì)胞位置進(jìn)行預(yù)測(cè),給出細(xì)胞的相似度概率值;包括如下步驟:
(31)采樣正負(fù)樣本:在第一張圖片上細(xì)胞位置1到2個(gè)像素點(diǎn)截取10個(gè)正樣本,在50像素點(diǎn)以外的位置獲取100個(gè)負(fù)樣本;
(32)在步驟(1)獲得初始化的多任務(wù)觀測(cè)模型基礎(chǔ)上,重新學(xué)習(xí)當(dāng)前的分類任務(wù),得到訓(xùn)練好的多任務(wù)觀測(cè)模型;
(33)訓(xùn)練好的多任務(wù)觀測(cè)模型用來對(duì)粒子濾波產(chǎn)生的候選的粒子位置進(jìn)行預(yù)測(cè),給出每個(gè)候選細(xì)胞位置的相似度概率值。
(4)選取預(yù)測(cè)相似度概率值最大的候選細(xì)胞位置作為下一張圖片(即下一幀圖片)的細(xì)胞位置,將最大預(yù)測(cè)相似度概率值以及相應(yīng)的細(xì)胞位置保存到一個(gè)模型更新策略中,設(shè)置一個(gè)閾值(在我們的試驗(yàn)中選取的閾值為0.8),如果更新后的最大預(yù)測(cè)相似度概率值小于閾值,轉(zhuǎn)到步驟(2)進(jìn)入下一張圖片(即下一幀圖片,如下一幀圖片為已追蹤的圖片的下一張圖片)的追蹤;反之,轉(zhuǎn)到步驟(3)重新采樣訓(xùn)練。圖3為模型更新樣本維護(hù)的詳細(xì)示例圖,給出了一個(gè)實(shí)例維護(hù)十個(gè)正樣本的過程。該方法從初始化該隊(duì)列、相似度衰減、隊(duì)列的插入與刪除操作過程,模型更新策略具體包括如下步驟:
(41)先對(duì)模型中的隊(duì)列初始化:從第一張圖片上細(xì)胞位置1到2個(gè)像素點(diǎn)截取N個(gè)正樣本進(jìn)行模型初始化,初始化的N個(gè)正樣本的相似度概率為1,然后通過相似度衰減規(guī)則公式對(duì)相似度進(jìn)行衰減,保證隊(duì)列首的細(xì)胞相似度衰減的慢,隊(duì)列尾的細(xì)胞衰減的快;
上式中,βi是細(xì)胞的相似度,其中i∈(1,N),N是細(xì)胞的個(gè)數(shù),在這個(gè)實(shí)例中,N=10, 是一個(gè)常數(shù),用來控制衰減的速度,在這個(gè)例子中,我們采用
(42)每次有新的圖片進(jìn)入隊(duì)列都要對(duì)隊(duì)列中細(xì)胞的相似度進(jìn)行衰減更新,然后要通過一個(gè)判斷:βnew>βmin,如果新的圖片比隊(duì)列中的最小的相似度還要小,那么該新的圖片丟棄不加入,否則新的圖片加入到隊(duì)列首進(jìn)行更新,新的圖片是指最大預(yù)測(cè)相似度概率值對(duì)應(yīng)的細(xì)胞位置;
(43)如果有新的圖片加入到隊(duì)列中,在隊(duì)列中搜索相似度最小的細(xì)胞樣本從隊(duì)列里刪除,不改變隊(duì)列其他樣本的順序。
圖4為實(shí)驗(yàn)的效果圖,該方法在三種類型的情況下做了測(cè)試。圖中(a)是在變化比較復(fù)雜的背景下追蹤細(xì)胞的過程;圖中(b)是在細(xì)胞的移動(dòng)比較明顯的情況下追蹤細(xì)胞的過程;圖中(c)是在細(xì)胞的形變比較劇烈的情況下追蹤細(xì)胞的過程。