- 回首頁
- 機械工業雜誌
機械工業雜誌
購物提醒:當您要離開或跳轉頁面時,請先將您想要購買的文章加入購物車,以便快速紀錄完成購買流程!
摘要
近年來,自駕車的開發為相當熱門的研究領域,目的在於使車輛能夠判斷各種可能的道路狀況,並做出正確的反應。其中,交通號誌燈的狀態與位置偵測是非常重要的課題之一,必須滿足正確性以及即時性。本文將針對交通燈偵測技術所遭遇到的困難,以及實物上解決的方法進行說明。
Abstract
In recent years, the development of autonomous carshas become a popular research topic. The vehicles must be able to understand a wide range of road conditions and make correct responses. One of the important techniques is to detect the location and state of the traffic light,and provide the real-time and correct recognition results. In this article, the difficulties of the traffic light detection technique are discussed and the practical solutions are described.
前言
除了降低交通事故,自動駕駛技術影響的範圍非常廣泛,且可能會顛覆許多行業,例如:運輸物流、保險業、汽車修理業等。從自駕車雛形 NavLab 1、DARPA 無人車挑戰賽[1-2],到Mobileye公司將先進駕駛輔助系統(Advanced Driver Assistance Systems, ADAS) 商用化,再到 Google 與 Tesla 的投入,對於單純場景,例如高速公路、封閉園區等,已大幅減少駕駛人的控制。能依據目的地進行路徑規劃並控制車輛前往,同時迴避周遭的障礙物。若要進一步提升自動駕駛的技術,則必須解決更加複雜的場景。
由於交通信號燈位於戶外環境,許多原因造成準確率不理想,例如:因陽光或氣候條件影響,造成光線干擾問題,如圖1(a);因其他物體或視線角度,導致遮擋或部分遮擋問題,如圖1(b);因反射、車尾燈、廣告招牌等等,造成誤判問題,如圖1(c)。這些都是偵測交通燈號必須面臨的挑戰。
傳統對於交通信號燈的偵測方式,大多基於電腦視覺技術。藉由將輸入影像轉換至不同的色彩空間,例如:HSV、YCrCb,再以顏色、形狀、灰階值等特徵為依據進行判斷[3]。隨著深度學習的技術在電腦視覺領域趨於成熟,2016年開始將深度學習應用到交通信號燈的偵測。大多使用主流的物件偵測方式,例如:YOLOv3 [4]、Faster R-CNN[5],以應付戶外環境中,不同場景、不同光線的情況。
除此之外,大多數燈號辨識的方式主要著重在圓形燈的部分上,對於指向燈則大多忽略不予考慮。然而在台灣的街道中,這種燈號非常普遍,許多路口僅仰賴指向燈做為交通狀況的判斷依據,是不可忽略的類別。
交通信號燈偵測
為了解決上述所提到的問題,本研究提出適合台灣場景的交通訊號燈偵測及辨識系統,細節如下:
地圖輔助
由於交通燈影像在整張影像所佔的比例較小,在深度學習的過程中,會因為卷積層與池化層的操作,造成特徵消失而不利於偵測。因此,一般多會採用不同方法來解決這個問題,像是將輸入影像的上半部裁切成三等份,分別送入 YOLO偵測[6]。或是如[7],選擇ResNet50做為特徵提取網路,並且搭配擴張卷積將網路的步伐從 16 改為 8;使用Kmeans演算法,定義先驗框的大小與長寬比。種種修改都是企圖保留交通燈的特徵,使交通燈能順利偵測。
本研究則是採用事先依照行駛路線所建立的HD地圖 (High Definition map, HD map)的輔助[8],縮小偵測的範圍,減少因為背景造成誤判的情形,如圖2。由於光達感測器的特性,無法準確得知交通燈位置與燈號,所以這部分視為初步的位置偵測,接著由影像資訊找出確切位置,並且判斷交通燈燈號。
兩階段網路架構
為了提高偵測準確率,採取兩階段方式進行偵測:第一階段偵測燈箱位置,採用YOLOv3;第二階段辨識燈號,使用Tiny-YOLOv3偵測,將交通燈的燈號視為待偵測的物件。其中,為了能夠應付不常見的指向燈情況,特別將其區分出,額外接上LeNet以辨識指向燈方向。若是遇到歪斜的指向燈,如圖3,僅需要重新訓練LeNet之權重,而不需要將整個架構的網路都重新訓練,更具彈性。
更完整的內容歡迎訂購
2020年04月號
(單篇費用:參考材化所定價)