“You Only Look Once”或“YOLO”是一個對象檢測算法的名字,這是Redmon等人在2016年的一篇研究論文中命名的。YOLO實現了自動駕駛汽車等前沿技術中使用的實時對象檢測。讓我們看看是什麼使該算法如此受歡迎,并概述其工作原理。
對象檢測示例
背景實時的重要性
人們看到圖像以後,可以立即識别其中的對象、它們的位置和相對位置。這使得我們能夠在幾乎無意識的情況下完成複雜的任務,比如開車。因此,對汽車進行自動駕駛訓練需要類似水平的反應能力和準确性。在其最基本的形式中,這樣的系統必須能夠分析實時視頻中的道路,并能夠在繼續确定路徑之前檢測各種類型的對象及其在現實世界中的位置,所有這些都必須是實時的。
在YOLO之前
先前的檢測系統使用分類器對測試圖像的不同切片進行評估。例如,Deformable Parts Model (DPM)涉及到在圖像中均勻間隔的位置上滑動窗口并在這些部件上運行分類器。R-CNN(Region-based Convolutional Neural Networks)是另一種模型,它運行一種分割算法将一幅圖像分割成一個個小塊,然後在這些小塊上運行一個分類器。但是,速度慢、優化困難一直困擾着這種YOLO之前的系統。
YOLO算法YOLO将對象檢測重新定義為一個回歸問題。它将單個卷積神經網絡(CNN)應用于整個圖像,将圖像分成網格,并預測每個網格的類概率和邊界框。例如,以一個100x100的圖像為例。我們把它分成網格,比如7x7。
然後,對于每個網格,網絡都會預測一個邊界框和與每個類别(汽車,行人,交通信号燈等)相對應的概率。
每個邊界框可以使用四個描述符進行描述:
此外,該算法還可以預測邊界框中存在對象的概率。如果一個對象的中心落在一個網格單元中,則該網格單元負責檢測該對象。每個網格中将有多個邊界框。在訓練時,我們希望每個對象隻有一個邊界框。因此,我們根據哪個Box與ground truth box的重疊度最高,從而分配一個Box來負責預測對象。
最後,我們對每個類的對象應用一個稱為“非最大抑制(Non Max Suppression)”的方法來過濾出“置信度”小于阈值的邊界框。這為我們提供了圖像預測。
重要性
YOLO非常快。由于檢測問題是一個回歸問題,所以不需要複雜的管道。它比“R-CNN”快1000倍,比“Fast R-CNN”快100倍。它能夠處理實時視頻流,延遲小于25毫秒。它的精度是以前實時系統的兩倍多。同樣重要的是,YOLO遵循的是“端到端深度學習”的實踐
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!