車道線檢測 | End-to-end Lane Detection through Differentiable Least-Squares Fitting

會議:CVPR 2019

標題:《End-to-end Lane Detection through Differentiable Least-Squares Fitting 》

論文鏈接: https://arxiv.org/abs/1902.00293v1

代碼鏈接: https://github.com/wvangansbeke/LaneDetection_End2End

1. 摘要

車道檢測通常採用兩步傳遞法進行處理,其中首先預測車道標記的分割部分,然後在之前得出的分割區域上運行車道線模型(如拋物線或樣條曲線)。這種兩步方法的問題在於,網絡參數不是針對真正感興趣的任務(估計車道曲率參數)進行優化,而是針對代理任務(分割車道標記),從而導致性能次優。這裏,我們提出中一種端到端且直接回歸車道參數的訓練車道線檢測器的方法。該體系結構由兩部分組成:一個深層網絡,預測每條車道線的分段式權重圖;一個可微分最小二乘擬合模塊,該模塊爲每個圖返回加權最小二乘擬合出的最佳擬合曲線的參數,這些參數隨後可通過選擇的損失函數進行監督。我們的方法依賴於觀察到有可能通過最小二乘擬合程序進行反向傳播。這就導致了一種端到端的方法,在這種方法中,特性是爲真正感興趣的任務而優化的:與需要通過啓發式處理異常值的兩步法相比,此網絡在隱式的學習生產特徵防止在模型擬合步驟中的不穩定。

**論文的主要特色在於:

  1. 預測每條車道線的分段式權重圖的深層網絡
  2. 可微分最小二乘擬合
  3. 可選擇的幾何損失函數**

2 方法

我們提出了一個可端到端訓練的車道線檢測方法。這個框架包括以下三個部分,如圖1所示。一個生成加權像素座標的深度網絡,可微分的加權最小二乘擬合模塊和幾何損失函數。

在這裏插入圖片描述

2.1 生成加權像素座標的深度網絡

圖像中每個像素在座標參考系中都有唯一一個與之相關的(x,y)座標。在標準化座標系中,左上像素的座標爲(0,0),右下像素的座標爲(1,1)。這些座標可以表示爲兩個與圖像大小相同的固定特徵映射:一個包含每個像素的標準化x座標,另一個包含標準化y座標,由圖1中的兩個白色映射圖表示。

我們可以爲每個座標配置一個權重W,由一個深度神經網絡根據輸入圖像進行預測。這是通過設計網絡以生成與輸入圖像具有相同空間尺寸(因此也與x和y座標圖有相同空間尺寸)的特徵圖來實現的,該特徵圖表示每個像素座標的權重。任何現成的密集預測體系結構都可以用於此。爲了將權重映射限制爲非負值,網絡的輸出是平方值。如果我們對生成的權重圖和兩個座標圖進行平面化,則得到圖像中每個像素i的x座標、y座標和座標權重的m個三元組(Xi,Yi,Wi)的列表。如果圖像具有高度h和寬度w,則列表包含m=h·w的三元組。此列表是接下來討論的加權最小二乘擬合模塊的輸入。

對於車道檢測的任務,網絡必須生成多個權重映射:每個權重映射對應一條需要檢測的車道線。車道線(有時也稱爲曲線)是指分隔兩條車道的線,通常由道路上的車道標記表示。例如,在當前車道檢測的情況下,網絡輸出兩個權重圖;一個用於車輛左側的車道線,另一個用於右側的車道線,因爲這些線構成了當前車道的邊界

2.2 加權最小二乘擬合模塊

擬合模塊列表包括m組(Xi,Yi,Wi),可將它們理解爲二維空間中的加權點。其目的是通過加權最小二乘對座標列表擬合曲線(如拋物線、樣條曲線或其他多項式曲線),並輸出最佳擬合曲線的n個參數。

最小二乘擬合法

許多傳統的計算機視覺方法都將曲線擬合作爲一個關鍵步驟。一個基本而簡單的擬合過程是線性最小二乘法。考慮一個線性方程組如下形式:

在這裏插入圖片描述
在m個方程有n個未知數中。如果m>n,則系統超定,不存在精確解。我們求助於最小二乘法找到解決方案,即將數據值與其對應的模型值之間的平方差之和最小化的解決方案:

在這裏插入圖片描述

加權最小二乘擬合

我們可以將前面的公式擴展到加權最小二乘問題。設w∈r m×m爲一個對角矩陣,其中包含每次觀測的權重wi。在我們的框架中,觀測值將對應於圖像參考框架中的固定(x,y)座標,權重將由基於圖像的深度網絡生成。加權最小二乘問題就是公式(3)所示。

在這裏插入圖片描述
在這裏插入圖片描述
圖2,在0到點t之間,使預測曲線和真實曲線之間的幾何損失最小化。

通過擬合程序進行反向傳播

回憶一下前面的部分,我們有一個加權像素座標的列表(Xi,Yi,Wi),其中座標(Xi,Yi)是固定的,權重Wi是由輸入圖像上的深度網絡生成的。利用這些值構造矩陣X、Y和W,求解加權最小二乘問題,通過加權像素座標得到最佳擬合曲線的參數β。

這項工作的貢獻在於:我們不把擬合過程當作一個單獨的後處理步驟,而是通過它進行反向傳播,並在感興趣的參數β上應用一個損失函數,而不是在由網絡得出的權重圖上間接應用。
這樣,我們就可以的的得到一個處理車道線檢測的以端到端的方式的深度學習框架。

注意,方程2和3只涉及可微矩陣運算。因此,可以計算β相對於w的導數,因此也可以計算關於深度網絡參數。通過矩陣變換進行反向傳播的細節已經被很好地理解了。我們參考論文[11]來使用Cholesky分解來推導這個問題的梯度。可以在TensorFlow和PyTorch[26]中實現。

通過求解加權最小二乘問題進行反向傳播損失,深度學習網絡可以學習生成一個權重圖,當採用最小二乘法時,給出準確的車道線參數,而不是像曲線擬合作爲單獨的後處理步驟的車道線分割那樣優化代理目標的權重圖。

作爲曲線擬合步驟輸出的模型參數可以直接用均方誤差準則或通過下一節討論的更爲基本的幾何損失函數來監督。

2.3 幾何損失函數

曲線擬合步驟輸出的n個曲線的參數βi可通過將其與地面真值參數^βi進行比較,並採用均方誤差準則進行監督,從而得出以下L2損失:
在這裏插入圖片描述

問題在於,曲線參數具有不同的靈敏度:一個參數值中的小誤差對曲線形狀的影響可能比另一個參數中相同大小的誤差更大。

最終,損失函數的設計取決於任務:它必須爲感興趣的任務優化相關度量。對於車道檢測,我們選擇具有幾何解釋的損失函數:它將預測曲線yβ(x)和地面真值曲線^y_β(x)之間的平方面積最小化。(x)在圖像平面中,直到t點(見圖2)

在這裏插入圖片描述

2.4 可選擇性變換到其他參考框架

(Optional Transformation to Other Reference Frame)

在將加權座標表(xi,yi,wi)對於輸入到擬合模塊之前,可以選擇將座標與變換矩陣h相乘,將其轉換爲另一個參照系。該乘法也是一種可微操作,通過該操作可以進行反向傳播。

在車道檢測中,例如,車道線在正視圖(即自頂向下視圖)中可以被更好的估算,而不是在原始圖像參考幀中近似爲拋物線。我們可以通過簡單地將座標從圖像參考框架轉換爲正交視圖,將它們與一個同構矩陣H相乘。在這種情況下,同構矩陣被認爲是已知的。注意,不是輸入圖像被轉換成正視圖,而是座標列表。

3 實驗

我們所提出的方法本質上是通用的。爲了更好地瞭解通過最小二乘擬合進行反向傳播的動態,我們首先提供了一個簡單的玩具實驗。接下來,我們對車道檢測的實際任務進行了評估。我們的目標不是廣泛地調整方法,以在車道檢測基準上達到最先進的性能,而是說明在公平的比較中,我們端到端的訓練方法優於經典的兩步法。

3.1 玩具實驗

在這裏插入圖片描述

如圖3所示。藍點代表座標,大小代表權重。在加權最小二乘法中,藍線是穿過藍點的最佳擬合直線(即一階多項式)。綠線代表最佳實線,是目標。如果我們按照第2.3節設計損失函數,並通過擬合模塊進行反向傳播,我們可以通過梯度下降迭代最小化損耗,從而使預測線收斂到目標線。這有三種方式:

1) 通過更新座標(Xi,Yi),同時保持它們的權重 Wi固定。這與圖中的第一行相對應,其中藍點四處移動,但大小保持不變。
2) 通過更新權重Wi,同時保持座標(Xi,Yi)固定。這與圖中的第二行相對應,其中藍點會改變大小,但保持在同一位置。
3) 通過同時更新權重Wi和座標(Xi,Yi)。這與圖中的第三行相對應,其中藍點會改變大小同時藍點四處移動。

對於下一節中的車道檢測任務,我們將重點關注第二種情況,即座標位置是固定的,因爲它們表示位於規則網格上的圖像像素座標。因此,以輸入函數爲條件,損失只會反向傳播到座標權重上,並從座標權重進一步傳播到生成它們的網絡中。

3.2 當前車道線的檢測

現在開始現實場景中當前車道的檢測任務。更準確的說,任務是在汽車正面攝像頭拍攝的圖像中預測當前車道的兩條邊界線(即汽車行駛的車道)的參數。如前所述,處理此任務的傳統方法是使用兩步法,即首先檢測到車道特徵,然後對這些特徵進行車道線模型擬合;車道線模型通常是多項式或樣條曲線。在本實驗中,直線在正視圖中被建模爲拋物線y=ax**2+bx+c。網絡必須從未變換的輸入圖像預測每個曲線的參數A、B和C。該誤差測量爲正視圖中預測曲線y(x)和地面真值曲線_y(x)之間的歸一化面積,距離車輛的固定距離t。

在這裏插入圖片描述
該誤差在自我車道的兩條車道線和數據集中的圖像上取平均值。

同樣,我們的目標不是要超越文獻中的車道檢測框架的複雜性和準確性,而是要提供一個與經典的兩步法相比較的端到端方法。數據擴充、更真實的車道線模型和優化的基礎網絡體系結構等擴展與我們的方法是正交的。爲了提供公平的比較,我們以兩種不同的方式訓練同一網絡,並根據誤差度量來測量其性能。

我們比較以下兩種方法:

交叉熵訓練

在此設置中,生成像素座標權重(兩個權重圖:每條車道線一個)的網絡以類似分段的方式進行訓練,每像素的標準二進制交叉熵損失。這對應於兩步法中的特徵檢測步驟。分割標籤是根據地面真值曲線參數創建的,只需繪製一個固定厚度的對應曲線作爲一個密集標籤。在測試時,通過最小二乘意義上的預測特徵擬合拋物線。這相當於兩步法中的擬合步驟。

端到端訓練(論文中的)

在這種情況下,利用我們提出的方法,通過加權最小二乘擬合和幾何損失函數對網絡進行訓練。無需創建任何代理分段標籤,因爲監控直接位於曲線參數上。它對應於第3.1節中的第二種情況。

數據集和訓練設置

我們在Tusimple車道檢測數據集上運行了我們的實驗。手動選擇並清除數據集2535個圖像的註釋,過濾掉無法明確檢測到當前車道的圖像(例如,當車輛正在轉換車道時)。20%的圖像被保存下來進行驗證,注意不要在訓練和驗證集中包含單一時間序列的圖像

網絡結構用ERFNet。最後一層用於輸出兩個特徵圖,當前車道的每個車道線一個。在交叉熵和端到端實驗中,圖像分辨率爲256x512、batch_size爲8, epoch=350,以及學習率爲1e-4的單個GPU的Adam上訓練優化器。採用一種簡單的數據增廣技術,圖像被隨機地水平翻轉。在端到端實驗中,我們使用固定的轉換矩陣H將加權像素座標轉換爲正視圖。請注意,輸入圖像本身不會轉換爲正視圖,儘管這也是一個選項。該系統在PyTorch中實現。

在這裏插入圖片描述

在這裏插入圖片描述
圖4顯示了兩種方法在訓練期間的誤差(即地面真值和預測曲線之間的標準化區域)。左邊爲訓練集,右邊驗證集。

表1總結了這些結果,並報告了幾何損失值(見第2.3節),這是我們端到端方法不管是在訓練集還是在驗證集上都能得到更低的誤差

我們發現,無論在訓練集還是驗證集上,我們的端到端方法都比交叉熵損失訓練的方法收斂到更低的誤差。收斂速度較慢,但這並不奇怪:端到端方法中的監督信號比交叉熵方法弱得多,每個像素標籤都很密集。要了解這一點,請考慮到端到端方法沒有顯式地強制權重映射分割圖像中的實際車道線。即使網絡生成了一個看似隨機的權重圖,只要通過加權座標擬合的最小二乘符合地面真值曲線,損失(以及梯度)仍然爲零。例如,根據圖像的地平線和左角的消失點等圖像特徵,網絡可能陷入局部最小值,生成權重圖,仍然會產生相對較好的曲線,但很難改進。將交叉熵方法的快速收斂性與端到端方法的優越性能相結合的一種選擇是先對網絡進行預訓練,後對網絡進行微調。

在這裏插入圖片描述
圖5顯示了我們的方法的一些定性結果。儘管監控信號較弱,但網絡似乎最終發現,滿足損失函數的最一致的方法是聚焦於圖像中可見的車道標記,並將其映射到權重圖中的分段表示。網絡學習如何處理車道標誌的巨大差異,並能夠處理諸如圖5底部示例中的褪色標誌等具有挑戰性的情況。

爲了在擬合步驟中對異常值具有魯棒性,經典方法通常採用迭代優化過程,如RANSAC、迭代加權最小二乘法和迭代最近點法。在我們的端到端框架中,網絡學習從輸入圖像到權重映射的映射,從而使擬合步驟變得穩健。這將複雜性從後處理步驟轉移到網絡中,從而實現簡單的一次擬合步驟。

4總結

我們提出了一種通過解求解網絡中的加權最小二乘法問題來估計車道線的曲率參數的方法,該問題的權重是輸入圖片在深度網絡中生成的。使用幾何損失函數訓練網絡,使預測車道線和實際車道線之間的面積最小化。我們通過加權最小二乘擬合程序使反向傳播動態可視化,並對實際車道線檢測任務進行分類實驗,結果表明,儘管監視信號很弱,但我們的端到端的方法優於兩步法。通過網絡內優化步驟進行反向傳播的想法也可以證明在其他計算機視覺任務中是有效的,例如在活動輪廓模型框架中。在這種情況下,最小二乘擬合模塊可能會被更通用的可微梯度下降模塊所替代,這將在今後的工作中加以探討。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章