0. 筆者個(gè)人體會(huì)
在低紋理區(qū)域,傳統(tǒng)的基于特征點(diǎn)的SfM/SLAM/三維重建算法很容易失敗。因此很多算法會(huì)嘗試去提取線特征來(lái)提高點(diǎn)特征的魯棒性,典型操作就是LSD。
但在一些帶噪聲的低光照環(huán)境下,LSD很容易失效。而且線特征檢測(cè)的難點(diǎn)在于,由于遮擋,線端點(diǎn)的精確定位很難獲得。
它使用深度學(xué)習(xí)來(lái)處理圖像并丟棄不必要的細(xì)節(jié),然后使用手工方法來(lái)檢測(cè)線段。
因此,DeepLSD不僅對(duì)光照和噪聲具有更強(qiáng)魯棒性,同時(shí)保留了經(jīng)典方法的準(zhǔn)確性。整篇文章的推導(dǎo)和實(shí)驗(yàn)非常詳實(shí),重要的是算法已經(jīng)開(kāi)源!
2. 摘要
線段在我們的人造世界中無(wú)處不在,并且越來(lái)越多地用于視覺(jué)任務(wù)中。由于它們提供的空間范圍和結(jié)構(gòu)信息,它們是特征點(diǎn)的補(bǔ)充。
基于圖像梯度的傳統(tǒng)線檢測(cè)器非??焖俸蜏?zhǔn)確,但是在噪聲圖像和挑戰(zhàn)性條件下缺乏魯棒性。他們有經(jīng)驗(yàn)的同行更具可重復(fù)性,可以處理具有挑戰(zhàn)性的圖像,但代價(jià)是精確度較低,偏向線框線。
我們建議將傳統(tǒng)方法和學(xué)習(xí)方法結(jié)合起來(lái),以獲得兩個(gè)世界的最佳效果:一個(gè)準(zhǔn)確而魯棒的線檢測(cè)器,可以在沒(méi)有真值線的情況下在野外訓(xùn)練。
我們的新型線段檢測(cè)器DeepLSD使用深度網(wǎng)絡(luò)處理圖像,以生成線吸引力場(chǎng),然后將其轉(zhuǎn)換為替代圖像梯度幅度和角度,再饋入任何現(xiàn)有的手工線檢測(cè)器。
此外,我們提出了一個(gè)新的優(yōu)化工具,以完善基于吸引力場(chǎng)和消失點(diǎn)的線段。
這種改進(jìn)大大提高了當(dāng)前深度探測(cè)器的精度。我們展示了我們的方法在低級(jí)線檢測(cè)度量上的性能,以及在使用多挑戰(zhàn)數(shù)據(jù)集的幾個(gè)下游任務(wù)上的性能。
3. 算法解讀
作者將深度網(wǎng)絡(luò)的魯棒性與手工制作的線特征檢測(cè)器的準(zhǔn)確性結(jié)合起來(lái)。具體來(lái)說(shuō),有如下四步:
(1) 通過(guò)引導(dǎo)LSD生成真實(shí)線距離和角度場(chǎng)(DF/AF)。
(2) 訓(xùn)練深度網(wǎng)絡(luò)以預(yù)測(cè)線吸引場(chǎng)DF/AF,然后將其轉(zhuǎn)換為替代圖像梯度。
(3) 利用手工LSD提取線段。
(4) 基于吸引場(chǎng)DF/AF進(jìn)行細(xì)化。
圖1 方法概述
作者所做主要貢獻(xiàn)如下:
(1) 提出了一種自舉當(dāng)前檢測(cè)器的方法來(lái)在任意圖像上創(chuàng)建真實(shí)線吸引場(chǎng)。
(2) 引入了一個(gè)優(yōu)化過(guò)程,可以同時(shí)優(yōu)化線段和消失點(diǎn)。這種優(yōu)化可以作為一種獨(dú)立的細(xì)化來(lái)提高任何現(xiàn)有的深度線檢測(cè)器的精度。
(3) 在多個(gè)需要線特征的下游任務(wù)中,通過(guò)結(jié)合深度學(xué)習(xí)方法的魯棒性和手工方法在單個(gè)pipeline中的精度,創(chuàng)造了新的記錄。
3.1 線吸引場(chǎng)
最早通過(guò)吸引場(chǎng)表示線段的方法是AFM,為圖像的每個(gè)像素回歸一個(gè)2D向量場(chǎng),來(lái)表示直線上最近點(diǎn)的相對(duì)位置。
該方法允許將離散量(線段)表示為適合深度學(xué)習(xí)的平滑2通道圖像。然而,這種表示方法并不是獲得精確線段的最佳方法。
如圖2所示,比如HAWP那樣直接預(yù)測(cè)端點(diǎn)的位置需要很大的感受野,以便能夠從遙遠(yuǎn)的端點(diǎn)獲取信息。
圖2 吸引場(chǎng)參數(shù)化。(a)對(duì)二維向量進(jìn)行參數(shù)化可能會(huì)對(duì)小向量模產(chǎn)生噪聲角。(b) 向端點(diǎn)添加偏移量需要長(zhǎng)程信息且對(duì)噪聲端點(diǎn)不具有魯棒性。作者提出將距離場(chǎng)(c)和線角度場(chǎng)(d)解耦。
而DeepLSD這項(xiàng)工作的巧妙之處在于,作者提出將網(wǎng)絡(luò)限制在一個(gè)較小的感受野,并使用傳統(tǒng)的啟發(fā)式方法來(lái)確定端點(diǎn)。
DeepLSD采用和HAWP類(lèi)似的吸引場(chǎng),但沒(méi)有額外的兩個(gè)指向端點(diǎn)的角度,只保留線距離場(chǎng)(DF)和線角度場(chǎng)(AF)。其中線距離場(chǎng)DF給出當(dāng)前像素到直線上最近點(diǎn)的距離,線角度場(chǎng)AF返回最近直線的方向:
3.2 真值生成
為了學(xué)習(xí)線吸引場(chǎng),需要ground truth。AFM和HAWP都是使用線框數(shù)據(jù)集的真值來(lái)監(jiān)督。但DeepLSD的作者探索了一種新的方法,即通過(guò)引導(dǎo)先前的線檢測(cè)器來(lái)獲取真值。
具體來(lái)說(shuō),就是通過(guò)單應(yīng)性自適應(yīng)生成真值吸引場(chǎng)。給定單幅輸入圖像I,將其與N個(gè)隨機(jī)單應(yīng)矩陣Hi進(jìn)行wrap,在所有wrap后的圖像Ii中使用LSD檢測(cè)直線段,然后將其wrap回到I來(lái)得到線集合Li。
下一步是將所有的線聚合在一起,這一部分是個(gè)難點(diǎn)。作者的做法是將線條集合Li轉(zhuǎn)換為距離場(chǎng)Di和角度場(chǎng)Ai,并通過(guò)取所有圖像中每個(gè)像素(u, v)的中值來(lái)聚合:
通過(guò)取中值,可以去除僅在少數(shù)圖像中檢測(cè)到的噪聲,結(jié)果如圖3所示。
圖3 偽GT可視化
3.3 學(xué)習(xí)線吸引場(chǎng)
為了回歸距離場(chǎng)和角度場(chǎng),DeepLSD使用了UNet架構(gòu),尺寸為HxW的輸入圖像經(jīng)多個(gè)卷積層處理,并通過(guò)連續(xù)3次平均池化操作逐步降采樣至8倍。
然后通過(guò)另一系列卷積層和雙線性插值將特征放大回原始分辨率。得到的深度特征被分成兩個(gè)分支,一個(gè)輸出距離場(chǎng),一個(gè)輸出角度場(chǎng)。最后距離場(chǎng)通過(guò)反歸一化得到:
其中r是像素中的一個(gè)參數(shù),它定義了每條線周?chē)膮^(qū)域。由于手工方法主要需要線段附近的梯度信息,因此DeepLSD只對(duì)距離線段小于r個(gè)像素的像素進(jìn)行監(jiān)督。
總損失為距離場(chǎng)和角度場(chǎng)的損失之和:
這里就沒(méi)啥可說(shuō)的了,LD為歸一化距離場(chǎng)之間的L1損失,LA為L(zhǎng)2角度損失:
3.4.提取線段
由于LSD是基于圖像梯度的,因此需要將距離場(chǎng)和角度場(chǎng)轉(zhuǎn)換為替代圖像梯度幅度和角度:
AFM和LSD方法的一個(gè)重要區(qū)別是梯度方向。對(duì)于黑暗與明亮區(qū)域分離的邊緣,LSD跟蹤從暗到亮的梯度方向,而AFM不跟蹤。
如圖4所示,當(dāng)幾條平行線以暗-亮-暗或亮-暗-亮的模式相鄰出現(xiàn)時(shí),這就變得很重要。
為了更好的精度和尺度不變性,DeepLSD檢測(cè)這些雙邊緣,并構(gòu)造角度方向:
圖4 區(qū)分雙邊緣。(a) 亮-暗-亮邊緣和定向角度場(chǎng)的示例。(b) HAWP將其視為一條直線。(c) 為了準(zhǔn)確,DeepLSD將其檢測(cè)為兩條線。
為了使線特征更加精確,作者還提出了一個(gè)優(yōu)化步驟,即利用第二步預(yù)測(cè)的DF和AF來(lái)細(xì)化。需要注意的是,這種優(yōu)化方法也可以用來(lái)增強(qiáng)任何其他深度探測(cè)器的線特征。
優(yōu)化的核心思路是,在3D中平行的線將共享消失點(diǎn)。因此DeepLSD將其作為軟約束融入到優(yōu)化中,有效地降低了自由度。
首先利用多模型擬合算法Progressive-X計(jì)算一組與預(yù)測(cè)線段相關(guān)的消失點(diǎn)(VPs)。然后對(duì)每條線段獨(dú)立進(jìn)行優(yōu)化,損失函數(shù)是三種不同成本的加權(quán)無(wú)約束最小二乘最小化:
4. 實(shí)驗(yàn)
作者訓(xùn)練了DeepLSD的兩個(gè)版本,一個(gè)在室內(nèi)Wireframe數(shù)據(jù)集,沒(méi)有使用GT線,一個(gè)室外MegaDepth數(shù)據(jù)集。
MegaDepth數(shù)據(jù)集保留150個(gè)場(chǎng)景用于訓(xùn)練,17個(gè)場(chǎng)景用于驗(yàn)證,每個(gè)場(chǎng)景只采集50張圖像。
在實(shí)驗(yàn)細(xì)節(jié)上,使用Adam優(yōu)化器和初始學(xué)習(xí)率為1e3,學(xué)習(xí)率調(diào)整策略為,當(dāng)損失函數(shù)到達(dá)一定數(shù)值時(shí)學(xué)習(xí)率/10。
硬件條件為,在NVIDIA RTX 2080 GPU上訓(xùn)練時(shí)間12小時(shí)。
4.1 直線檢測(cè)性能
作者首先在HPatches數(shù)據(jù)集和RDNIM數(shù)據(jù)集上評(píng)估直線檢測(cè)性能,其中HPatches數(shù)據(jù)集具有不同的光照和視點(diǎn)變化,RDNIM數(shù)據(jù)集具有挑戰(zhàn)性的晝夜變化相關(guān)的圖像對(duì)。
評(píng)價(jià)指標(biāo)為重復(fù)性、定位誤差以及單應(yīng)估計(jì)分?jǐn)?shù)。重復(fù)性(Rep)衡量匹配誤差在3個(gè)像素以下的直線的比例,定位誤差(LE)返回50個(gè)最準(zhǔn)確匹配的平均距離。表1和圖5所示是與經(jīng)典線特征檢測(cè)器的對(duì)比結(jié)果。
表1 在HPatches和RDNIM數(shù)據(jù)集上的直線檢測(cè)評(píng)估
圖5 線段檢測(cè)示例
從結(jié)果來(lái)看,以TPLSD為首的學(xué)習(xí)方法具有較好的可重復(fù)性,但存在較低的定位誤差和不準(zhǔn)確的單應(yīng)矩陣估計(jì)。
手工方法和DeepLSD由于不直接對(duì)端點(diǎn)進(jìn)行回歸,而是利用非常低的細(xì)節(jié)逐步增長(zhǎng)線段,因此精度更高。
當(dāng)變化最具挑戰(zhàn)性時(shí),DeepLSD比LSD表現(xiàn)出最好的改善,即在晝夜變化強(qiáng)烈的RDNIM上。
可以顯著提高定位誤差和單應(yīng)性估計(jì)分?jǐn)?shù)。LSDNet由于通過(guò)將圖像縮放到固定的低分辨率而失去了準(zhǔn)確性。
總體而言,DeepLSD在手工方法和學(xué)習(xí)方法之間提供了最佳的權(quán)衡,并且在單應(yīng)性估計(jì)的下游任務(wù)中始終排名第一。
4.2 重建及定位
這項(xiàng)工作除了評(píng)估自身的線特征生成質(zhì)量外,還進(jìn)行了三維重建對(duì)比。作者利用Line3D++獲取一組已知姿態(tài)的圖像和相關(guān)的2D線段,并輸出線條的三維重建。
作者在Hypersim數(shù)據(jù)集的前4個(gè)場(chǎng)景上將DeepLSD與幾個(gè)基線進(jìn)行比較。其中召回R為距離網(wǎng)格5 mm以內(nèi)的所有線段的長(zhǎng)度,單位為米,越高意味著許多線條被重建。精度P是距離網(wǎng)格5毫米以內(nèi)的預(yù)測(cè)線的百分比,越高表明大部分預(yù)測(cè)的直線在真實(shí)的三維表面上。
結(jié)果如表2所示,DeepLSD總體上獲得了最好的召回和精度。TP-LSD雖然在召回上排名第一,但是能夠恢復(fù)的直線很少,其平均精度比DeepLSD小71 %。
值得注意的是,DeepLSD比LSD能夠重建更多的直線,且精度更高。
表2 線三維重建對(duì)比結(jié)果
作者在7Scenes數(shù)據(jù)集上進(jìn)行了定位實(shí)驗(yàn),估計(jì)位姿精度,其中Stairs場(chǎng)景對(duì)于特征點(diǎn)的定位非常具有挑戰(zhàn)性。
圖6表明,DeepLSD在這個(gè)具有挑戰(zhàn)性的數(shù)據(jù)集上獲得了最好的性能。
與僅使用點(diǎn)相比,可以突出線特征帶來(lái)的性能的大幅提升。在室內(nèi)環(huán)境中,線特征提取并定位的性能良好,即使在低紋理場(chǎng)景中也可以匹配。
圖6 7Scenes數(shù)據(jù)集樓梯的視覺(jué)定位結(jié)果
4.3 線優(yōu)化的影響
作者還研究了優(yōu)化步驟的影響。對(duì)于每種方法,作者將原始線條與優(yōu)化后的線條和VP進(jìn)行比較。
表3展示了線檢測(cè)器在Wireframe測(cè)試集的462張圖像上的檢測(cè)結(jié)果。結(jié)果顯示,優(yōu)化可以顯著改善不精確方法的定位誤差和單應(yīng)性得分,并顯著提高評(píng)價(jià)直線精度的所有指標(biāo)。
特別是對(duì)于HAWP和TP-LSD,兩者的定位誤差都下降了32 %,單應(yīng)性得分提高了27 %和39 %。
注意,優(yōu)化并沒(méi)有給DeepLSD帶來(lái)多大提升,這是因?yàn)樗脑碱A(yù)測(cè)線已經(jīng)是亞像素精確的,并且優(yōu)化受到DF和AF分辨率的限制。
表3 Wireframe數(shù)據(jù)集上的線優(yōu)化
4.4 消融研究
作者在HPatches數(shù)據(jù)集上用低級(jí)別檢測(cè)器指標(biāo)驗(yàn)證了設(shè)計(jì)選擇,將DeepLSD與單邊相同模型進(jìn)行比較。表4展示了各組成部分的重要性。
值得注意的是,在DeepLSD上重新訓(xùn)練HAWP會(huì)導(dǎo)致較差的結(jié)果,因?yàn)榕c線框線相比,線條的數(shù)量更多,而且一般的直線往往有噪聲的端點(diǎn),因此預(yù)測(cè)到兩個(gè)端點(diǎn)的角度也是有噪聲的。
表4 HPatches數(shù)據(jù)集上的消融實(shí)驗(yàn)
5. 結(jié)論
作者提出了一種混合線段檢測(cè)器,結(jié)合了深度學(xué)習(xí)的魯棒性和手工檢測(cè)器的準(zhǔn)確性,并使用學(xué)習(xí)的替代圖像梯度作為中間表示。還提出了一種可以應(yīng)用于現(xiàn)有深度檢測(cè)器的優(yōu)化方法,彌補(bǔ)了深度檢測(cè)器和手工檢測(cè)器之間的線局部化的差距。
審核編輯:劉清
-
檢測(cè)器
+關(guān)注
關(guān)注
1文章
870瀏覽量
47795 -
SLAM
+關(guān)注
關(guān)注
23文章
426瀏覽量
31936 -
AFM
+關(guān)注
關(guān)注
0文章
59瀏覽量
20218
原文標(biāo)題:DeepLSD:基于深度圖像梯度的線段檢測(cè)和細(xì)化
文章出處:【微信號(hào):GiantPandaCV,微信公眾號(hào):GiantPandaCV】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論