自動駕駛入門日記-5-視頻語義分割
來自專欄小白自動駕駛之路9 人贊了文章
相比於圖像語義分割,視頻語義分割具有高幀數(15-30幀/s),前後幀之間高相關性的特點。並且在自動駕駛任務中,對RGB攝像頭傳入的視頻幀信號處理具有很高的實時性要求,因此針對視頻語義分割任務來講,需要在圖像語義分割的任務上做進一步的工作。
如何有效利用視頻幀之間的時序相關性將對視頻分割結果產生很大影響,目前主流分為兩派,一類是利用時間連續性增強語義分割結果的準確性,另一種則關注如何降低計算成本,以達到實時性要求。接下來的文章內容就根據近幾年針對視頻語義分割所進行的優秀工作進行簡單闡述。
Improve the accuracy
1.STFCN: Spatio-Temporal FCN for Semantic Video Segmentation
本篇論文是在FCN的基礎上進行改進的,利用LSTM將FCNs並聯成為一個叫做時空卷積網路的結構(spatio-temporal CNNs)。
論文主要貢獻:
1.該方法提升了原有的語義分割結果。
2.提出一種結合時間特徵與空間特徵的端到端架構。
網路結構論文想法比較簡單,對於時序特徵的處理也選擇了經典的LSTM,整篇論文寫的中規中矩,個人覺得沒什麼亮眼的地方(或者我沒看出來)。
論文不足:
1.沒有充分利用幀與幀之間的相關性,由於攝像機採樣頻率很高的話,會導致相鄰幀之間差異很小,所以對每一幀都進行處理會浪費計算資源。
2.模型過於複雜,無法達到實時的要求。
2.Semantic Video Segmentation by Gated Recurrent Flow Propagation(基於門控遞歸流傳播的語義視頻分割 )
在視頻語義分割問題當中,還有一個無法避免的問題就是確少高質量的標註數據,因為視頻任務數據量大(假設一秒30幀,一分鐘的數據就是1800幀)而語義分割的數據標註極為繁瑣耗時(大約30分鐘可以標註一張)。因此,如何有效利用視頻語義分割任務中少量高質量標註數據集達到好的分割效果也是一個很好的研究方向。針對少量標註樣本問題,主要解決方案就是進行弱監督或者半監督學習,弱監督學習方法不適用完整標註數據集進行訓練,而是使用大量的分類或者檢測數據集進行訓練,從而減少標註成本提高分割準確率;半監督學習則是使用少量標註數據集訓練網路以求得到一個較好的泛化模型,在視頻語義分割任務當中就是關鍵幀提取,只針對視頻中少量關鍵幀的標註數據進行訓練,使模型適用於整個視頻流。
在本篇論文中,作者設計了一個叫做Spatio-Temporal Transformer Gated Recurrent Unit(不會翻譯)的單元來融合各幀信息,作者認為相鄰兩幀之間包含大量冗餘信息,但是兩幀之間差異較大(漂移形變)的區域包含的信息將十分有意義,作者使用了光流來衡量漂移形變比較明顯的區域。
STGRUGRFP該網路使用標註幀的前後相鄰幾幀的特徵對當前幀的特徵進行修正,具體訓練方法可以細讀論文。
3.Video scene parsing with predictive feature learning(PEARL)
這篇文章是融合了單幀的信息與temporal context信息得到更好的測試結果。作者開篇酒就用三行結果把論文思想講的很清楚了,四行圖片中,第一行為輸入的四幀相鄰圖片。
第二行為單獨對每一幀進行語義分割得到的結果,可見紅框標示的區域用很多不一致的內容。
為了利用temporal信息的連續性改善分割結果,作者共進行了三個部分的主要工作:
1.Predictive Feature Learning: 在這部分中,作者利用時序信息進行了unsupervised pre-training,即輸入連續的4幀圖片,去預測接下來一幀的內容。通過這樣的預測,可以使這樣的網路學習到時序上的連續性,並使用這樣的信息進行預測。網路結構上標準的GAN做法,唯一區別在於generator其實是一個conditional generator,即需要輸入前4幀圖片。所以genetator基於現有常見網路結構,只是在其上增加一個輸出層。在loss設計方面,一方面是要求輸出的圖像和下一幀l2距離接近,另一方面訓練了一個discriminator來判斷當前圖像是真實的還是網路預測的。優化目標即要最小化l2距離,並迷惑discriminator真假。
2.Predictive Parsing: 在這部分中,作者使用在前面步驟中學到的Encoder預測下一幀的特徵來預測下一幀的分割結果。所以在原網路結構上去掉了discriminator,加上了新的decoder輸出分割結果(上圖第三行)。可見,單純通過預測得到的結果可以保持良好的一致性,但是和單幀預測比起來會失去節信息。所以需要將這兩種方法結合。
3.將預測結果和當前幀分割結果結合起來,得到最終的分割結果。
上圖中的第四行。
雖然本文需要用到GAN網路進行特徵預測,但考慮到GAN網路可以離線訓練,因此實際應用當中並不需要消耗大量計算資源,根據作者的描述,處理一張1024*2048的圖片只需要0.8s,但還遠遠達不到實時的要求。
啟發:
1.使用GAN進行數據增強可以得到較好的效果,或者利用GAN做一些出色的工作。
2.如何更高效的利用相鄰視頻幀之間的一致性還值得深入思考。
4.Semantic Video CNNs through Representation Warping
也是一篇利用相鄰幀之間的光流場來進行模型優化的工作,以較小的計算量增加為代價來提升性能,適用於許多基於CNN的網路架構。作者把這項技術稱為NetWarp,用來對CNN網路中的中間層進行進行優化。
啟發:
1.傳統的計算機視覺發放(光流、角點檢測、邊緣檢測方法等)可能會對深度學習方法有幫助,如何結合經典方法與深度學習是一個值得思考的方向。
2.深度學習模型中,相鄰幀之間的特徵在模型中的表達相差並不大,尤其是高層特徵,如何利用這個特點減少計算量?
關於利用幀間相關性信息進行語義分割的優秀文章還有很多,但其實在自動駕駛任務中,對實時性的要求可能更高一些,因此接下來介紹幾篇解決實時性問題的文章。
祝好!願與諸君一起進步。
推薦閱讀:
※嬰兒出生的全過程(視頻)
※老葯新用:中西成藥治凍瘡 視頻:治凍瘡 熱凍靈 視頻:雞蛋的妙用-除污漬 治凍瘡
※二胡入門基本演奏技法教學視頻
※中醫養生視頻【全集】上
※?內部視頻!(剛出來,必看)