劉方濤,楊 劍,白瑞君,張啟堯,任宇杰
(中北大學(xué) 軟件學(xué)院,山西 太原 030051)
圖像分割是許多視頻應(yīng)用中的基本任務(wù),需要對對象進(jìn)行某種程度的興趣分割,因?yàn)樗试S在幀與幀之間建立對象對應(yīng)關(guān)系。而火災(zāi)煙霧圖像分割適用于各種消防嵌入式設(shè)備中,對火災(zāi)前期有很好的預(yù)警。鑒于煙霧目標(biāo)的位置視頻的第一幀輸入,視頻對象分割的目的是用第一幀來估計(jì)視頻在所有后續(xù)幀中的對象位置。對于許多應(yīng)用程序,煙霧視頻圖像分割可以很準(zhǔn)確的在視頻播放時(shí)在線跟蹤識別,但是實(shí)時(shí)性不足。
半監(jiān)督視頻對象分割(VOS)需要估計(jì)第一幀中指定的任意煙霧對象的位置。但是在這種情況下,煙霧表示由二進(jìn)制分割掩碼組成,它可以按像素是否屬于目標(biāo)來分割。這種表示對于需要像素級信息的應(yīng)用來說更為準(zhǔn)確,而創(chuàng)建像素級估計(jì)需要比簡單環(huán)繞框有更多的計(jì)算。所以傳統(tǒng)的VOS方法很慢,并且每幀通常需要幾秒鐘。為了加快識別速度,改變在孿生網(wǎng)絡(luò)上訓(xùn)練兩項(xiàng)任務(wù),兩項(xiàng)任務(wù)在新框架中建立目標(biāo)對象與候選區(qū)域之間對應(yīng)的關(guān)系是不同的。一個(gè)任務(wù)是以滑動(dòng)方式了解目標(biāo)之間的相似性,輸出是一個(gè)密集的響應(yīng)圖,僅顯示對象的位置,并不提供其周圍的任何空間范圍信息,另一個(gè)任務(wù)使用區(qū)域提議網(wǎng)格來生成二元掩模。最終通過以上兩個(gè)任務(wù)完成對煙霧目標(biāo)識別研究。
半監(jiān)督視頻對象分割是用于任意對象跟蹤的基準(zhǔn)[1-3],表示跟蹤器以順序方式接收輸入幀。此外通常側(cè)重于實(shí)現(xiàn)超過典型視頻幀速率的速度[4],相反半監(jiān)督的VOS算法傳統(tǒng)上更關(guān)注于感興趣對象的準(zhǔn)確表示[5,6]。為了利用視頻幀之間的一致性,幾種方法將第一幀的監(jiān)督分段掩碼傳播到時(shí)間相鄰的由圖像標(biāo)記的方法中[7-11]。特別是鮑等[11],最近提出了一種非常精確的方法,利用時(shí)空MRF,其中時(shí)間依賴性由光流建模,而空間依賴性由CNN表示。
另一種流行的策略是依賴處理視頻幀[12-14],類似于大多數(shù)跟蹤方法中發(fā)生的情況。例如,在OSVOS-S Maninis等[12]不利用任何時(shí)間形成,它們依賴于預(yù)先進(jìn)行分類的完全卷積網(wǎng)絡(luò),然后在測試時(shí)使用第一幀中提供的實(shí)例掩碼對其進(jìn)行微調(diào)。而MaskTrack[13]則是從頭開始訓(xùn)練單個(gè)圖像,但它通過使用最新的掩模預(yù)測和光流作為網(wǎng)絡(luò)的附加輸入,在測試時(shí)利用某種形式的時(shí)間性來預(yù)測結(jié)果。為獲得盡可能高的精度,在測試時(shí)VOS方法通常采用計(jì)算密集型技術(shù),如微調(diào)[12-14]、數(shù)據(jù)增強(qiáng)[15,16]和光流[9,11,13,16,17]。因此這些方法通常以低框架和無法在線操作為特征。對于只有幾秒鐘的視頻效果可以,像DAVIS那樣,需要分鐘[13,18]甚至更短時(shí)間[9,11]的方法不是很好。
最近,VOS社區(qū)對更快的方法越來越感興趣[10,19,17,20-22]?,F(xiàn)有的最快速的方法是Yang等[23]和Wug等[19]。前者使用元網(wǎng)絡(luò)“調(diào)制器”來快速適應(yīng)在測試時(shí)間內(nèi)分段網(wǎng)絡(luò)的參數(shù),而后者不使用任何微調(diào)并采用在多個(gè)階段訓(xùn)練的編碼器-解碼器Siamese架構(gòu)。這兩種方法都低于每秒10幀,而本文方法的速度要比上述兩種方法快6倍,并且只依賴于邊界框初始化。
為了實(shí)現(xiàn)在線可操作性和快速性,本文采用了完全卷積的孿生網(wǎng)絡(luò)框架。本文將SiamFC和SiamRPN視為代表性的例子。本文在2.1節(jié)中首先介紹它們,然后在2.2節(jié)中介紹改進(jìn)的方法。
SiamFC。Bertinetto等建議使用離線訓(xùn)練的完全卷積孿生網(wǎng)絡(luò)作為跟蹤系統(tǒng)的基本構(gòu)建塊,網(wǎng)絡(luò)將圖像z的示例與密集響應(yīng)圖的搜索圖像(最大)x進(jìn)行比較。z和x分別是以目標(biāo)對象為中心的W*H(寬*高)裁剪和以目標(biāo)的最后估計(jì)位置為中心的較大裁剪。這兩個(gè)輸入由相同的CNNf(θ) 處理,產(chǎn)生兩個(gè)交叉相關(guān)的特征圖
gθ(z,x)=fθ(z)?fθ(x)
(1)
在本文中將響應(yīng)圖的每個(gè)空間元素(等式(1)的左側(cè))稱為濾波器窗口響應(yīng)(RoW)。即x編碼中理想z和第n個(gè)窗口之間的相似性。對于SiamFC,目標(biāo)是獲得與目標(biāo)位置搜索區(qū)域x對應(yīng)的最大響應(yīng)映射值。相反,為了獲得有關(guān)目標(biāo)煙霧周圍每個(gè)RoW加密的豐富信息,只需將等式(1)替換為交叉鏈接的方法,并創(chuàng)建一個(gè)多通道響應(yīng)圖。SiamFC在數(shù)百萬視頻幀上離線訓(xùn)練后損失稱之為Lsiam。
SiamRPN。李等[24]依靠 region proposal network大大提高了SiamFC的績效(RPN),它允許估計(jì)目標(biāo)位置帶有可變長寬比的邊界框。在SiamRPN中,每個(gè)RoW編碼一組有k個(gè)高程點(diǎn)和相應(yīng)的對象分?jǐn)?shù)。所以SiamRPN和分?jǐn)?shù)是輸出框的并行預(yù)測,是使用平滑L1和交叉熵?fù)p失訓(xùn)練兩個(gè)輸出部分。在下文中,本文分別將它們稱為Lscore和Lmask。
與依賴低保真對象表示的現(xiàn)有分割方法不同,煙霧識別實(shí)驗(yàn)認(rèn)為生成每幀二進(jìn)制分割掩碼的重要性。所以完全卷積孿生網(wǎng)絡(luò)的RoW還可以編碼產(chǎn)生像素方式的二元掩模所需的信息。這可以通過擴(kuò)展現(xiàn)有的Siamese跟蹤器來實(shí)現(xiàn)額外的分支和損失如圖1所示。
本文使用具有可學(xué)習(xí)參數(shù)的簡單雙層神經(jīng)網(wǎng)絡(luò)hφ預(yù)測w×h二進(jìn)制掩模(每個(gè)RoW有一個(gè))。設(shè)mn表示對應(yīng)于第n個(gè)RoW的預(yù)測掩模
(2)
(3)
因此,hφ的分類層由w×h分類組成,每個(gè)分類層指示像素是否屬于候選窗口中的對象。請注意Lmask僅被視為正向行(即yn=1)。
掩碼表示與FCN和Mask RCNN風(fēng)格的語義分割方法相比,它們在整個(gè)網(wǎng)絡(luò)中保持顯式的空間信息,本文的方法從平坦的表示形式開始生成掩模對象。該表示對應(yīng)于由fθ(z) 和fθ(x) 之間的深度方向互相關(guān)產(chǎn)生的(17×17)個(gè)RoW。重要的是分割任務(wù)的網(wǎng)絡(luò)hφ由兩個(gè)1×1卷積層組成,一個(gè)具有256個(gè)通道,另一個(gè)具有632個(gè)通道(圖1)。這允許每個(gè)像素分類器利用整個(gè)RoW中包含的信息,從而在x中具有其對應(yīng)候選窗口的完整視圖,這對于消除看起來像目標(biāo)煙霧的實(shí)例之間的歧義對象是至關(guān)重要的。為了生成更精確的對象掩模,本文使用由上采樣層和跳過連接組成的多個(gè)細(xì)化模塊來合并低分辨率和高分辨率特征對象,如圖2所示。
圖2 掩模生成神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
對于我們的實(shí)驗(yàn),本文使用分段分支和損失Lmask來擴(kuò)充SiamFC和SiamRPN的體系結(jié)構(gòu),獲得改進(jìn)的雙分支網(wǎng)絡(luò),這些優(yōu)化了多任務(wù)損失L。 其定義如下
L=λ1·Lmask+λ2·Lscore
(4)
而式(4)中的Lscore是應(yīng)用Siamese方法中的損失函數(shù),在訓(xùn)練之前設(shè)置超參數(shù)λ1=32,λ2=1。
在邊框初始化中雖然VOS標(biāo)準(zhǔn)需要二進(jìn)制掩碼,但標(biāo)準(zhǔn)分割需要一個(gè)邊界框作為目標(biāo)對象的最初表示??紤]3種不同的策略從二元掩模生成邊界框(圖3):圖3(a)軸對齊邊界矩形(Min-max),圖3(b)旋轉(zhuǎn)最小周長矩形(MBR)和圖3(c)優(yōu)化策略用于VOT-2016中提出的自動(dòng)生成邊界框(opt)。
圖3 煙霧圖像初始化box
表1說明了主干架構(gòu)的細(xì)節(jié)(圖1中的fθ)。對于輸出兩分支網(wǎng)絡(luò)使用ResNet-50包括前4層卷積層圖2。為了在深層中獲得更高的空間分辨率,是通過使用具有步幅1的卷積將輸出步幅減小到8。此外,使用擴(kuò)張卷積來增加感受野,實(shí)驗(yàn)在conv4的3×3轉(zhuǎn)換層中將步幅設(shè)置為1并將擴(kuò)張率設(shè)置為2。與原始ResNet-50不同,conv4_x中沒有下采樣。實(shí)驗(yàn)還向主干網(wǎng)絡(luò)中添加了調(diào)整層(具有256個(gè)輸出通道的1×1卷積層),從conv1到conv4共享網(wǎng)絡(luò)參數(shù),而調(diào)整層的參數(shù)不共享。然后調(diào)整層的輸出特征在深度方向上相互交叉相關(guān),得到尺寸為17×17的特征圖。
分支的網(wǎng)絡(luò)架構(gòu)見表2。分支網(wǎng)絡(luò)中的conv5塊包含歸一化層和ReLU非線性,而conv6僅包含1×1。
表1 主干網(wǎng)絡(luò)架構(gòu)
表2 雙分支頭的結(jié)構(gòu)細(xì)節(jié)
在本節(jié)中進(jìn)行了相關(guān)實(shí)驗(yàn)任務(wù),半監(jiān)督視頻對象分割(煙霧視頻數(shù)據(jù)集上)在孿生神經(jīng)網(wǎng)絡(luò)的測試。
有關(guān)煙霧數(shù)據(jù)在半監(jiān)督設(shè)置中,VOS方法用二進(jìn)制掩碼初始化[5]。其中許多方法在測試時(shí)需要加入密集型技術(shù),如圖4(a)原始數(shù)據(jù),圖4(b)數(shù)據(jù)增強(qiáng)[15,16],圖4(c)推斷MRF/CRF[9-11]精細(xì)調(diào)整[11-14]。因此,VOS技術(shù)需要幾分鐘來處理數(shù)據(jù)。
對于煙霧數(shù)據(jù)集使用官方性能度量:表示區(qū)域相似性的Jaccard索引(J)和表示輪廓精度的F-measure(F)。對于每個(gè)度量C∈{J,F(xiàn)}, 考慮3個(gè)統(tǒng)計(jì)量:平均CM,召回CO和衰減CD,并測試隨時(shí)間的性能增益/損失[6],測試了不遮擋(JS,F(xiàn)S)和遮擋的類別(JU,F(xiàn)U)的平均Jaccard指數(shù)和F-measure,O是這4項(xiàng)指標(biāo)的平均值。為了初始化網(wǎng)絡(luò),則從第一幀中提供的掩碼中提取軸對齊的邊界框(Min-max策略,參見圖3)。與大多數(shù)VOS方法類似,如果同一視頻中有多個(gè)煙霧目標(biāo)本實(shí)驗(yàn)只進(jìn)行多次預(yù)測。
數(shù)據(jù)集上的EAO、準(zhǔn)確度和魯棒性指標(biāo)對比見表3,煙霧視頻的結(jié)果(驗(yàn)證集),F(xiàn)T和M分別表示該方法是否需要微調(diào)以及是否使用掩碼(+)或邊界框(*)進(jìn)行初始化見表4和不同煙霧視頻上的結(jié)果見表5,顯示了本文提出方法在煙霧視頻檢測中的實(shí)驗(yàn)結(jié)果。首先,它比OnAVOS[14]或SFL[18]等準(zhǔn)確方法快了近兩個(gè)數(shù)量級。其次,它與最近使用的微調(diào)VOS方法相比具有很好的準(zhǔn)確率,而效率是最快的分割的4倍。注意到本文的網(wǎng)絡(luò)在區(qū)域相似性(JD)和輪廓精度(FD)方面都實(shí)現(xiàn)了非常低的衰減[6]。這表明我們的方法隨著時(shí)間的推移是穩(wěn)健的,因此它表示特別長的序列。
圖4 煙霧數(shù)據(jù)處理
表3 數(shù)據(jù)集上的EAO、準(zhǔn)確度和魯棒性指標(biāo)對比
表4 FT和M分別表示該方法是否需要微調(diào)以及是否使用掩碼(+)或邊界框(*)進(jìn)行初始化
表5 煙霧視頻上的結(jié)果(驗(yàn)證集)
在本節(jié)中說明消融研究,對比幾種不同網(wǎng)絡(luò)架構(gòu)以及可視化實(shí)驗(yàn)結(jié)果對比。在表6中,AN和RN表示的是使用AlexNet還是ResNet-50作為共享骨干fθ(圖1),而使用“w/oR”表示該方法不使用Pinheiro等的細(xì)化策略[26]。從表5的結(jié)果可以進(jìn)行多次觀察。①第一組行表明,通過簡單地更新fθ的架構(gòu),可以實(shí)現(xiàn)重要的性能改進(jìn)。然而,這是以犧牲速度為代價(jià)的,特別是對于SiamRPN。②本文的網(wǎng)絡(luò)在對于(使用相同的fθ)SiamFC和SiamRPN方面有顯著改善。③在Pinheiro等的改進(jìn)方法[26],對于輪廓精度FM非常準(zhǔn)確,但對其它指標(biāo)則不是很好。
本文網(wǎng)絡(luò)在線運(yùn)行在單個(gè)NVIDIA GTX 1060 GPU上,網(wǎng)絡(luò)平均速度為55幀/秒。最高的計(jì)算負(fù)擔(dān)來自特征提取器fθ, 實(shí)驗(yàn)中輸出的圖5(a)原圖與圖5(b)mask圖像(ground truth,真值圖)。
表6 關(guān)于煙霧數(shù)據(jù)集的消融研究
本文使用Min-max,MBR和Opt方法比較本文的二分支變體,在3種不同初始化下比較SiamFC和SiamRPN與本文網(wǎng)絡(luò)的交并比(IU)。
圖5 煙霧mask真值圖
表7顯示,無論使用何種初始化生成策略,本文的方法都能達(dá)到最佳mIU。盡管Our-opt提供了最高的IU和mAP,但由于其優(yōu)化過程緩慢,它需要大量的計(jì)算資源。Our-MBR達(dá)到85.34的mAP@0.5 IU,相應(yīng)的改進(jìn)分別為+29和+9.2 score。當(dāng)在mAP0.7 IU的較高準(zhǔn)確度方案中差距顯著擴(kuò)大:分別為+41.6和+18.4 score。所以可以得出,通過簡單地改變邊界框表示有很大的改進(jìn)空間。
綜合上述實(shí)驗(yàn)結(jié)果并進(jìn)行可視化比較,盡管速度很快,但即使存在干擾物,網(wǎng)絡(luò)也能產(chǎn)生精確的分割掩模,圖6(a) OnAVOS,圖6(b)OSVOS,圖6(c)OSMN,圖6(d)本文數(shù)據(jù)訓(xùn)練結(jié)果對比如圖6所示。
表7 不同邊界框表示的交并比
圖6 實(shí)驗(yàn)煙霧視頻跟蹤效果
在本文中介紹了孿生神經(jīng)網(wǎng)絡(luò),這是一種雙輸入的方法,可以使完全卷積Siamese跟蹤器生成目標(biāo)對象類,同時(shí)也生成了不可知的二進(jìn)制分割掩碼。本文展示了它如何成功應(yīng)用于半監(jiān)督視頻對象分割任務(wù),同時(shí)也是VOS方法中最快的速度,并提出一個(gè)簡單的邊界框初始化在線操作,實(shí)時(shí)運(yùn)行不需要對測試序列進(jìn)行任何調(diào)整。同時(shí)算法可以取得可比較的分割精度,同時(shí)速度快了近一個(gè)數(shù)量級。對比經(jīng)典的OSVOS,我們的算法快了近3個(gè)數(shù)量級,使得視頻目標(biāo)分割可以得到實(shí)際使用。