之前寫過一篇車道線檢測的綜述,得到了一些朋友的認(rèn)可恶复,也因此結(jié)識了幾個做車道線檢測任務(wù)的朋友怜森。也歡迎更多自動駕駛感興趣的朋友加入自動駕駛交流群,和更多朋友一起玩谤牡,群里分享相關(guān)學(xué)習(xí)資料副硅、行業(yè)資訊、崗位信息等翅萤。
之前的車道線檢測綜述可以點擊閱讀:
http://www.reibang.com/p/0c3fd07a9fba
最近看到了一篇發(fā)表在ICCV2021上得車道線檢測的新工作——VIL-100: A New Dataset and A Baseline Model for Video Instance Lane Detection恐疲,效果不錯,并且提出來了新的車道線數(shù)據(jù)集套么,而且文章說是目前第一個視頻實例車道線檢測數(shù)據(jù)集培己,并提供了baseline方案MMA-Net。學(xué)習(xí)了一下胚泌,簡單整理如下省咨,感興趣的朋友可以看一下,希望能起到一點幫助玷室。
1 文章及數(shù)據(jù)集信息
原文鏈接:
https://arxiv.org/abs/2108.08482arxiv.org/abs/2108.08482
代碼:
https://github.com/yujun0-0/MMA-Net
車道線數(shù)據(jù)集網(wǎng)盤鏈接:( 提取碼:iy16)
https://pan.baidu.com/s/1NkP_5LMLTn6qsu9pSbyi0g
2 研究背景與內(nèi)容
近年來零蓉,自動駕駛在學(xué)術(shù)界和工業(yè)界都受到了廣泛的關(guān)注。其中最基本和最具有挑戰(zhàn)性的任務(wù)是在真實場景中進(jìn)行車道線檢測從而輔助駕駛穷缤。但是由于惡劣場景的存在敌蜂,如遮擋、霧霾津肛、黑暗章喉、強(qiáng)光反射等,準(zhǔn)確地進(jìn)行車道線檢測極具挑戰(zhàn)性。
現(xiàn)有的車道線檢測方法大多集中在單幀圖像的車道線檢測上秸脱,而在真實的駕駛中汽車獲取的是駕駛視頻落包。因此將車道線檢測從圖像級別擴(kuò)展到視頻級別是非常重要的,因為后者可以利用時域一致性來解決單幀無法解決的問題撞反,如車道線遮擋妥色、破損等問題。但是進(jìn)行視頻車道線檢測的主要障礙是缺乏具有連續(xù)車道線實例標(biāo)注的(視頻)數(shù)據(jù)集《羝現(xiàn)有的車道線檢測數(shù)據(jù)集(例如,TuSimple撮竿、Culane吮便、ApolloScape和BDD100K), 只支持單幀車道線標(biāo)注(TuSimple、Culane)幢踏,或者缺乏連續(xù)的實例標(biāo)注(ApolloScape和BDD100K)髓需。
針對以上問題,在這項工作中:
1)首先收集和標(biāo)注了一個新的視頻車道線檢測(VIL-100)數(shù)據(jù)集房蝉。它包含100個視頻僚匆,具有10,000幀圖像,涵蓋擁擠路況搭幻、車道線破損咧擂、霧霾、夜晚等10類經(jīng)典場景檀蹋。我們將所有視頻的幀率從最初的30fps下采樣到10fps松申,對每幀中的所有車道線提供了實例級標(biāo)注。
2)設(shè)計開發(fā)了一個新的baseline模型俯逾,即多級記憶聚合網(wǎng)絡(luò)(MMA-Net)贸桶。文章提出的網(wǎng)絡(luò)聚合局部和全局記憶信息增強(qiáng)當(dāng)前幀的CNN特征。具體來說桌肴,將原始視頻中歷史幀作為局部記憶皇筛,時序打亂視頻中的歷史幀作為全局記憶。局部和全局記憶(LGMA)模塊以注意力機(jī)制分別對多尺度的局部和全局記憶信息進(jìn)行聚合坠七,并結(jié)合當(dāng)前幀的特征得到車道線實例分割結(jié)果水醋。
3)最后,在VIL-100數(shù)據(jù)集上對該方法和10個相關(guān)方法進(jìn)行了全面評估灼捂。結(jié)果表明离例,文章提出的模型明顯優(yōu)于現(xiàn)有方法,包括單張圖像車道線檢測方法悉稠、視頻實例分割方法宫蛆。
3 車道線數(shù)據(jù)集
當(dāng)前的深度學(xué)習(xí)方法中,數(shù)據(jù)十分重要。當(dāng)前的車道線檢測數(shù)據(jù)集主要有Caltech Lanes耀盗、TuSimple 想虎、Culane、BDD100K叛拷、ApolloScape等舌厨,各數(shù)據(jù)集相關(guān)信息如上表所示。但這些數(shù)據(jù)集都存在一定的局限:
Caltech Lanes?only contains 1,224 images and is usually not used for training deep networks.
TuSimple?and?Culane?provide large-scale image data with instance-level lane annotations. However, both TuSimple and Culane are?not applicable for video instance lane detection.
BDD100K?and?ApolloScape?are two large-scale video datasets for driving.However, these two datasets do?not provide annotations of lane instances?– on each frame, multiple lanes of the same kind are not separated and annotated with one label. Lane instance detection is important for regular/emergency lane change, trajectory planning, autonomous navigation in autonomous driving.
基于此背景忿薇,這篇文章提出了第一個視頻級實例車道線數(shù)據(jù)集VIL-100?裙椭。
3.1 VIL-100數(shù)據(jù)集
VIL‐100詳情:
共包含100個視頻,每個視頻有100幀署浩,總計10,000幀揉燃。
其中97個視頻是通過車載前置攝像機(jī)拍攝,3個則從網(wǎng)絡(luò)上獲取筋栋。所有視頻的幀率從最初的30fps下采樣到10fps炊汤。
收集了10個典型場景:正常路況、擁擠路況弊攘、彎道抢腐、受損道路、陰影襟交、道路標(biāo)志迈倍、強(qiáng)光、霧霾婿着、夜晚和十字路口授瘦。
按照8:2的比例將數(shù)據(jù)集分割為訓(xùn)練集和測試集,所有場景均會在訓(xùn)練集和測試集中包含竟宋。
將每幀中的所有車道線的中心點坐標(biāo)存儲在json文件中提完。其中每條車道線被存儲為一組,從而提供了實例級車道線注釋丘侠。然后將每組點用三階多項式擬合成一條曲線徒欣,并將其擴(kuò)展為具有一定寬度的車道線區(qū)域。在1920 × 1080的圖片上蜗字,將其拓寬為30像素打肝。對于低分辨率的幀,擴(kuò)展寬度等比例減少挪捕。
每條車道線標(biāo)注了車道線類型粗梭,共10種,即: 單白色實線级零、單白色虛線断医、單黃色實線、單黃色虛線、雙白實線鉴嗤、雙黃實線斩启、雙黃虛線、雙白實虛線醉锅、雙白虛實線兔簇、白黃實線。
每一幀中標(biāo)注了車道線與自身車輛的相對位置硬耍,即2i 表示車輛右側(cè)的第 i 條車道線垄琐,2i-1 表示車輛左側(cè)的第 i 條車道線。
圖2 (a)(b)分別展示了上述10個典型場景的混合情況和出現(xiàn)次數(shù)默垄。圖3 (a)(b)分別統(tǒng)計了車道線的線型和每幀存在條數(shù)此虑。
4 baseline方案——MMA-Net
本文提出的視頻車道線檢測baseline方案MMA-Net是在ICCV2019發(fā)表的處理視頻目標(biāo)分割任務(wù)的《Video Object Segmentation using Space-Time Memory Networks》一文的基礎(chǔ)上加以改進(jìn)的,因此先簡要補(bǔ)充介紹一下這篇文章口锭。
4.1 Video Object Segmentation using Space-Time Memory Networks
如上圖所示,在視頻分割任務(wù)中網(wǎng)絡(luò)從視頻幀中獲取到的目標(biāo)信息會隨著分割的進(jìn)行逐漸豐富起來介杆,現(xiàn)有的一些分割方法確實或多或少地采用了之前幀的分割結(jié)果鹃操,但是并沒有將當(dāng)前幀之前的所有幀得到的信息進(jìn)行融合,幫助當(dāng)前幀進(jìn)行分割春哨。
因而這篇文章就是從這角度出發(fā)荆隘,構(gòu)建一個大的memory池子從而提出了一種半監(jiān)督的視頻分割方法STM(Spatial-Time Memory Network ),將當(dāng)前幀的信息與之前幀的所有信息在空間與時序維度上進(jìn)行特征匹配赴背,從而得到超過之前方法的性能表現(xiàn)椰拒,由于采用了之前幀的所有信息自然其對遮擋和目標(biāo)外表變化的魯棒性能更加出色。文章的這個方法在DAVIS與Youtube-VOS數(shù)據(jù)集上性能表現(xiàn)都是很強(qiáng)的凰荚。
PS:將當(dāng)前幀之前的所有幀及其mask都保存到Memory里面是很低效的燃观,文章中默認(rèn)保存前一楨與首幀,其它的幀則是間隔 N = 5 進(jìn)行采樣
上圖可以看到便瑟,無論是之前的幀和當(dāng)前幀都會將數(shù)據(jù)編碼成為鍵值對的形式(Key和Value):
1)Key:它被用于評估當(dāng)前幀和之前幀的相似性缆毁,用以判斷memory中那些特征應(yīng)該被采樣出來,因而其編碼了視覺語義用以實現(xiàn)對目標(biāo)外表變化的魯棒到涂;
2)Value:相比key中保存的信息脊框,Value中保存的信息則更加的細(xì)致,它是用來生成最后mask精細(xì)結(jié)果的践啄。這里Value在Memory和Query中是由些許不同的:在Query中value包含詳細(xì)的當(dāng)前幀的外表信息從而用于解碼生成細(xì)致的mask浇雹;而Memory中的value則包含了詳細(xì)的目標(biāo)外表信息與區(qū)分前景背景mask信息。這是由于他們進(jìn)行編碼的對象不一樣導(dǎo)致的屿讽;
4.2 視頻級實例車道線檢測 MMA-Net
和4.1節(jié)中介紹的baselise方案類似昭灵,MMA-Net網(wǎng)絡(luò)輸入包括作為Memory的歷史幀和作為Query的當(dāng)前幀。
Memory中,首先將原始視頻中歷史五幀和亂序的視頻中的歷史五幀分別輸入到編碼器虎锚,得到對應(yīng)的高級特征和低級特征硫痰。之后分別將高級特征圖和低級特征圖輸入局部-全局記憶聚合(LGMA)模塊,得到低級和高級的記憶聚合特征窜护。
Query中效斑,當(dāng)前幀通過編碼器得到低級特征和高級特征,與Memory中得到的記憶聚合特征共同分別傳遞給記憶讀取(MR)模塊柱徙。
最后缓屠,采用U-Net解碼器來融合不同CNN層的特征,預(yù)測當(dāng)前幀的車道線實例檢測結(jié)果护侮。
5 實驗
5.1 評價指標(biāo)
單幀的車道線檢測評價指標(biāo)敌完,小湯之前在之前的綜述里已經(jīng)介紹過:
而對于視頻級車道線檢測的評價指標(biāo),這篇文章采用的MJ羊初、OJ滨溉、MF、OF长赞、MT等指標(biāo)是出自另一篇視頻實例分割文章——A benchmark dataset and evaluation methodology for video object segmentation. CVPR2016
時間關(guān)系晦攒,小湯沒有去看,網(wǎng)上搜了一下得哆,大概是從區(qū)域相似度脯颜、邊沿精度、時間穩(wěn)定性等方面進(jìn)行評價贩据,感興趣的朋友可以自己去仔細(xì)看一下栋操。
ps:以下兩張圖片來自他人博客截圖,表示感謝饱亮。
5.2 實驗結(jié)果
效果在幀級和視頻級都表現(xiàn)sota矾芙。
5.3 可視化結(jié)果
6 致謝
本博客參考了 VIL-100: A New Dataset and A Baseline Model for Video Instance Lane Detection原文及相關(guān)網(wǎng)絡(luò)資料,在此表示感謝近尚,因當(dāng)時PPT制作距今已有兩周蠕啄,忘記了一些參考來源,所以無法一一羅列致謝戈锻,望理解歼跟,再次表示感謝!