概述
在汽車自動駕駛中,物體檢測演算法的使用變得越來越重要,而物體高精度和快速推理速度的檢測對於安全的自動駕駛至關重要。誤報(FP)來自自動駕駛過程中的錯誤定位,這會導致致命事故並阻礙安全高效的駕駛。因此,可以應對的檢測演算法在自動駕駛應用中需要定位錯誤。
作者提出了一種在支援實時操作的同時提高檢測精度的方法。
為YOLOv3的邊界框(bbox)建模最有代表性的一級探測器,具有高斯分佈引數並重新設計損耗函式。此外,這篇文章提出了一種預測定位的方法表示bbox可靠性的不確定性。通過使用檢測期間的預測定位不確定性過程中,建議的方案可以大大減少FP並增加真實正值(TP),從而提高準確性。
與傳統的YOLOv3相比,提出的演算法高斯YOLOv3提高了均值KITTI的平均精度(mAP)分別為3.09和3.5伯克利深層驅動器(BDD)資料集。儘管如此,提出的演算法仍能夠以每秒超過42幀(fps)的速度進行實時檢測,並顯示
與以前類似的方法相比,其準確性更高fps。因此,所提出的演算法是最合適的
適用於自動駕駛應用。
YOLO3
首先我們來看看YOLO3的相關介紹:
YOLOv3的網路架構
Yolov3採用跳轉截圖的操作模式,打破了網路太深造成的梯度。Yolov3使用up-sample操作,將特徵對映與大特徵對映和小特徵對映進行上取樣,使網路具有一個融合特徵層,既包含豐富的高層抽象特徵,又包含精確的位置資訊特徵。Yolov3採用特徵金字塔結構,使網路能夠在三種不同尺度的特徵下進行目標檢測,並能適應各種不同尺度的目標檢測任務。預測特徵圖的屬性
RGB3通道影象被輸入到yolov3網路。檢測結果在三個不同的尺度下輸出,包括目標的座標位置、目標是正樣本還是負樣本、目標屬於某一類置信度。對於每個比例尺分支,在每個網格單元中預測三個結果(每個比例尺三個錨)。結合三個尺度的結果,進行非最大抑制(NMS),輸出最終的測試結果。如yolov3的輸出所述,目標類別有一個概率值,但目標框只有一個位置,沒有概率值,即無法從結果預測當前目標幀的可靠性。在此基礎上,本文采用高斯模型對網路輸出進行建模,在不改變yolov3的結構和計算量的情況下,可以輸出每個預測幀的可靠性,使演算法的整體效能提高了3個點。地圖。
高斯 YOLOv3
Gaussian yolov3通過增加網路的輸出和改善網路的損耗函式來實現預測幀可靠性的輸出,如下圖所示:
擬議演算法的預測框中的元件
由此我們可以看出,與原始yolov3在座標預測中輸出4維不同,高斯yolov3在邊界框的座標預測輸出中包含8維。
這八個維度相當於預測框的中心座標和長寬,以及相應預測框的不確定性。以目標盒的位置為高斯分佈的均值,相應的不確定度為方差,將手指建模為四個高斯分佈。如下面的對準程式碼所示,高斯yolov3通過預測每個座標位置的不確定性來提高最終預測prob值的精度。
由於高斯yolov3的輸出被調整,相應的損失函式的計算將相應地被調整。與原yolov3相比,只調整了預測幀座標位置的迴歸策略。如下面的程式碼比較所示,當原始yolov3執行box迴歸時,由於網路預測輸出是座標本身,因此在計算梯度時使用均方誤差。由於高斯yolov3輸出均值和方差,因此在計算梯度時結合高斯分佈策略。
高斯yolov3的損失函式如下:
高斯yolov3演算法結果:
在KITTI驗證集中的基線和建議演算法的檢測結果。第一列顯示檢測YOLOv3的結果,
而第二欄顯示高斯YOLOv3的檢測結果
BDD測試集中的基線檢測結果和建議的演算法。 第一和第二行顯示檢測
YOLOv3和高斯YOLOv3的結果,每種顏色都與特定的物件類相關。
結論
目標檢測演算法的高精度和實時檢測速度對於自動駕駛汽車的安全性和實時控制。與基於攝像頭的自動駕駛相關的各種研究雖然已經進行了一些操作,但是基於精度和操作速度之間的權衡,這並不令人滿意。對於因此,本文提出了一種目標檢測演算法,該演算法在精度和自動駕駛的速度。通過高斯建模,損失函式重構以及定位不確定性,改進演算法精度,提高TP並顯著降低FP,同時保持實時功能。與基線相比,建議的高斯YOLOv3演算法將KITTI的mAP提高了3.09和3.5和BDD資料集。此外,因為提出的演算法具有比以前的研究相似的fps更高的精度,該演算法是在精度和檢測速度之間的權衡方面表現出色。結果,所提出的演算法可以顯著改善用於自動駕駛的基於相機的物體檢測系統。
論文地址:
https://arxiv.org/pdf/1904.04620.pdf
-
1 #
YOLO好像只能檢測已知物體?那也沒法保證路上出現的東西都在訓練資料集裡啊