在自動(dòng)駕駛領(lǐng)域,目前基于深度學(xué)習(xí)的分割算法運(yùn)算負(fù)荷仍然較大,不能有效移植到嵌入式端,在車(chē)輛上運(yùn)行。在保證分割精度的情況下,如何才能達(dá)到高實(shí)時(shí)性?CVPR 2018商湯科技論文解讀第4期為您帶來(lái)解讀。
以下是在自動(dòng)駕駛場(chǎng)景理解領(lǐng)域,商湯科技發(fā)表的一篇亮點(diǎn)報(bào)告(Spotlight)論文,提出極低延遲性的視頻語(yǔ)義分割算法。
簡(jiǎn)介
近年來(lái)由于深度神經(jīng)網(wǎng)絡(luò),尤其全卷經(jīng)神經(jīng)網(wǎng)絡(luò)的迅速發(fā)展,圖像語(yǔ)義分割取得了飛速的進(jìn)展,但是如何高效的實(shí)現(xiàn)視頻語(yǔ)義分割仍然是一個(gè)極富挑戰(zhàn)性的問(wèn)題。其困難在于:
與圖像分割相比,視頻分割通常涉及更多的數(shù)據(jù)。比如,視頻每秒通常包含15~30幀,分析視頻因而需要更多的計(jì)算資源;
許多實(shí)際應(yīng)用(如自動(dòng)駕駛)中的視頻分割模塊需要實(shí)現(xiàn)視頻分割的低延遲性。
對(duì)于視頻語(yǔ)義分割任務(wù),大部分現(xiàn)有工作關(guān)注如何在每幀計(jì)算量和分割精度之間的達(dá)到一個(gè)平衡點(diǎn),卻并沒(méi)有深入的思考和探討算法延遲性這個(gè)因素。現(xiàn)有工作可以被大致分為兩類(lèi):
高層特征的時(shí)序建模方法
中間層特征傳播的方法
前者主要在一個(gè)完整的逐幀模型上增加一些提取時(shí)序信息的操作,因此不能減少計(jì)算量。后者(如Clockwork Net、Deep Feature Flow等工作)通過(guò)重用歷史幀的特征來(lái)加速計(jì)算,這類(lèi)方法可以減少視頻整體計(jì)算量,然而忽略了延遲方面的因素。這類(lèi)方法的延遲和精度對(duì)比(如圖1所示),可以看出這類(lèi)方法很難同時(shí)實(shí)現(xiàn)低延遲和高精度。我們的工作則立足降低每幀平均計(jì)算量的同時(shí),實(shí)現(xiàn)分割的高精度,降低算法的最大延遲。
圖1:
Cityscapes數(shù)據(jù)集上
不同方法延遲和分割精度的對(duì)比
算法核心思想
本文算法使用視頻分割中經(jīng)典的基于關(guān)鍵幀調(diào)度的模式來(lái)有效平衡計(jì)算量和精度。具體來(lái)說(shuō),如果當(dāng)前處理幀為關(guān)鍵幀,則使用整個(gè)分割網(wǎng)絡(luò)來(lái)獲得語(yǔ)義分割的標(biāo)簽,如圖2左部分所示;如果當(dāng)前幀不為關(guān)鍵幀,則變換分割網(wǎng)絡(luò)高層歷史幀特征為當(dāng)前幀高層特征,再使用分割網(wǎng)絡(luò)的語(yǔ)義分類(lèi)操作獲得當(dāng)前幀的語(yǔ)義標(biāo)簽,如圖2右部分所示。關(guān)鍵幀的選擇和特征跨幀傳播兩個(gè)操作均基于同樣的網(wǎng)絡(luò)低層特征,具體操作在之后章節(jié)詳述。在劃分分割網(wǎng)絡(luò)結(jié)構(gòu)時(shí),算法盡量保證低層網(wǎng)絡(luò)的運(yùn)行時(shí)間遠(yuǎn)小于高層網(wǎng)絡(luò),(如圖2所示)低層網(wǎng)絡(luò)耗時(shí)61ms,而高層網(wǎng)絡(luò)耗時(shí)300ms。這樣考慮的出發(fā)點(diǎn)在于:
因低層網(wǎng)絡(luò)的計(jì)算代價(jià)很小,算法可以基于低層網(wǎng)絡(luò)提取的特征,增加少部分額外的計(jì)算來(lái)完成關(guān)鍵幀選擇和特征跨幀傳播;
當(dāng)前幀的低層特征同樣包含當(dāng)前幀的信息,可以互補(bǔ)來(lái)自不同時(shí)間的傳播特征;
所有的操作均復(fù)用了逐幀模型的結(jié)構(gòu),算法整體模型更加簡(jiǎn)潔。
圖2:
自適應(yīng)特征傳播模塊
自適應(yīng)特征跨幀傳播
特征傳播關(guān)注如何從歷史幀傳播高層特征到當(dāng)前幀,降低模型總體計(jì)算量,先前的變換方法主要分為兩類(lèi):
基于圖像或底層特征獲取的光流信息,跨幀傳播不同幀的語(yǔ)義分類(lèi)特征。這類(lèi)方法雖然有效,但是計(jì)算光流往往代價(jià)太大,而獲得當(dāng)前幀的語(yǔ)義標(biāo)簽并不需要嚴(yán)格的點(diǎn)到點(diǎn)映射。
平移不變性卷積。這種操作在每個(gè)位置均使用相同的卷積核來(lái)映射特征,因此不能適應(yīng)不同位置的內(nèi)容變化。
本文設(shè)計(jì)了一個(gè)位置相關(guān)的卷積操作來(lái)進(jìn)行跨幀特征傳播。它的計(jì)算量相對(duì)較低,同時(shí)又能適應(yīng)不同位置的特征進(jìn)行自適應(yīng)傳播。不同位置的卷積核參數(shù)通過(guò)一個(gè)小的網(wǎng)絡(luò)回歸學(xué)習(xí)獲得(如圖2中weight predictor所示),其能很好的適應(yīng)不同空間位置內(nèi)容的變化。整體特征傳播模塊(包含當(dāng)前幀低層網(wǎng)絡(luò)、卷積核預(yù)測(cè)和空間變化卷積)包含兩大優(yōu)勢(shì):
總體計(jì)算量相較高層網(wǎng)絡(luò)部分計(jì)算量大為減小,因而可以快速的獲得當(dāng)前幀的語(yǔ)義標(biāo)簽;
可以很好的保持視頻鄰近幀的抖動(dòng)或者其他快速變化,實(shí)驗(yàn)結(jié)果表明這種卷積操作融合方法能夠有效的提升7% mIOU的精度。
整體結(jié)果如表1所示,結(jié)果展示了本文算法復(fù)用逐幀網(wǎng)絡(luò)的優(yōu)勢(shì),可以從低層網(wǎng)絡(luò)提取的特征來(lái)互補(bǔ)跨幀傳播的特征。
表1:
不同特征傳播模塊對(duì)最終分割精度的影響
自適應(yīng)關(guān)鍵幀調(diào)度
視頻處理算法中,一個(gè)好的關(guān)鍵幀選擇算法能夠隨視頻內(nèi)容變化自適應(yīng)的調(diào)整關(guān)鍵幀選擇頻率,在視頻內(nèi)容變化大的時(shí)間區(qū)間更多的選擇關(guān)鍵幀,而在視頻變化緩慢的區(qū)間較少的選擇關(guān)鍵幀,從而在有效保持視頻流中信息的前提下,降低整體計(jì)算量。現(xiàn)有的關(guān)鍵幀調(diào)度算法分為固定長(zhǎng)度調(diào)度和基于閾值調(diào)度兩種方案,前者每隔n幀選擇一次關(guān)鍵幀,這種方式不能適應(yīng)不同視頻幀之間內(nèi)容的變化,后者則通過(guò)計(jì)算當(dāng)前幀高層特征和歷史幀高層特征之間的差值,通過(guò)設(shè)定一個(gè)閾值來(lái)決定是否是否選擇當(dāng)前幀為關(guān)鍵幀,這種方法能一定程度的適應(yīng)不同幀之間的內(nèi)容變化,但是特征的差值容易波動(dòng),較難設(shè)定一個(gè)統(tǒng)一的閾值。
本文算法使用當(dāng)前幀語(yǔ)義標(biāo)簽和前一個(gè)關(guān)鍵幀語(yǔ)義標(biāo)簽的差異值來(lái)作為視頻內(nèi)容變化程度的判斷依據(jù),如圖3所示,若當(dāng)前幀距上一個(gè)關(guān)鍵幀越遠(yuǎn),則語(yǔ)義標(biāo)簽的差值就越大。當(dāng)差值超過(guò)某個(gè)閾值的時(shí)候,則選擇該幀作為關(guān)鍵幀。但是直接計(jì)算這樣一個(gè)差異值較為困難,本文在Cityscapes和Camvid兩個(gè)數(shù)據(jù)集上發(fā)現(xiàn)低層特征和語(yǔ)義標(biāo)簽的變化值有很大的關(guān)聯(lián),因而利用低層特征來(lái)預(yù)測(cè)這樣該差值,即輸入歷史幀低層特征和當(dāng)前幀低層特征到一個(gè)回歸器來(lái)回歸該差異值。不同的關(guān)鍵幀選擇策略的結(jié)果如圖4所示,所有的策略均采用本文提出的自適應(yīng)特征傳播方法,可以看出提出的自適應(yīng)關(guān)鍵幀調(diào)度方法明顯優(yōu)于基于固定間隔和基于高層特征差值閾值的調(diào)度策略。
圖3:
自適應(yīng)的關(guān)鍵幀選擇
圖4:
不同調(diào)度策略對(duì)最終分割性能的影響
整體系統(tǒng)框架
本文算法整體框架如圖5所示,當(dāng)視頻的序列幀不斷輸入時(shí),在第一幀時(shí)刻,進(jìn)行初始化操作,即輸入圖片幀給整個(gè)網(wǎng)絡(luò),獲得低層特征和高層特征。在接下來(lái)的時(shí)刻t進(jìn)行自適應(yīng)的計(jì)算,首先計(jì)算低層特征:輸入和上一個(gè)關(guān)鍵幀低層特征至自適應(yīng)關(guān)鍵幀選擇模塊,判斷當(dāng)前幀是否為關(guān)鍵幀。若為關(guān)鍵幀,則輸入底層特征至高層網(wǎng)絡(luò)獲得高層特征;否則輸入底層特征至自適應(yīng)特征傳播模塊獲得當(dāng)前幀高層特征,進(jìn)而通過(guò)語(yǔ)義分類(lèi)獲得當(dāng)前幀語(yǔ)義標(biāo)簽。
圖5:
系統(tǒng)整體框架示意圖
該系統(tǒng)極大的減少了整體耗時(shí),其中判斷關(guān)鍵幀操作耗時(shí)僅20ms,跨幀特征傳播僅需38ms,而高層網(wǎng)絡(luò)計(jì)算高層特征則需要299ms。通過(guò)這種方式,整個(gè)系統(tǒng)可以明顯的降低系統(tǒng)的平均每幀計(jì)算量(如表2所示),自適應(yīng)調(diào)度策略和自適應(yīng)特征傳播方法可以把每幀平均計(jì)算時(shí)間由360ms減為171ms,精度僅損失3.4% mIOU。
表2:
Cityscape數(shù)據(jù)集上
與目前先進(jìn)方法結(jié)果的對(duì)比
同時(shí)本文設(shè)計(jì)了一種低延遲的調(diào)度策略進(jìn)一步減少整體系統(tǒng)的延遲,適用于自動(dòng)駕駛等需要及時(shí)響應(yīng)的系統(tǒng)。具體而言,當(dāng)前幀被判斷為關(guān)鍵幀時(shí),低延遲調(diào)度策略仍然從歷史幀傳播特征到當(dāng)前幀并將其緩存為當(dāng)前幀高層特征,同時(shí)啟用一個(gè)后臺(tái)線程來(lái)計(jì)算當(dāng)前幀高層特征(如果直接運(yùn)行高層網(wǎng)絡(luò)部分會(huì)造成299ms的延遲),一旦計(jì)算完成就取代緩存的高層特征。實(shí)驗(yàn)結(jié)果表明(如表2所示),這種低延遲的調(diào)度策略能夠?qū)⒀舆t由360ms降為119ms,同時(shí)只損失較小的分割精度(由78.84%降為75.89%)。
結(jié)論
本文提出了一個(gè)高效的低延遲視頻語(yǔ)義分割算法,其主要由自適應(yīng)特征傳播和自適應(yīng)關(guān)鍵幀調(diào)度模塊組成。該算法在關(guān)注平衡精度和計(jì)算量的同時(shí)力求降低系統(tǒng)的延遲,Cityscapes和Camvid兩個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果證明了該方法的有效性。作者希望在未來(lái)工作中在模型壓縮和模型設(shè)計(jì)方面進(jìn)一步降低算法的總體延遲和計(jì)算量。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4764瀏覽量
100542 -
視頻
+關(guān)注
關(guān)注
6文章
1934瀏覽量
72816 -
自動(dòng)駕駛
+關(guān)注
關(guān)注
783文章
13687瀏覽量
166154
原文標(biāo)題:CVPR 2018 | 商湯科技Spotlight論文詳解:極低延遲性的視頻語(yǔ)義分割
文章出處:【微信號(hào):SenseTime2017,微信公眾號(hào):商湯科技SenseTime】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論