交通标志的检测与标定
交通標志的檢測與標定
文章目錄
- 交通標志的檢測與標定
- 1 問題定義
- 2 問題分析
- 3 實驗步驟
- 3.1 顏色空間中提取紅色
- 3.2 預處理
- 3.3 深加工
- 3.4 提取限速標志
- 3.4.1 目標量度
- 3.4.2 目標提取
- 3.5 目標糾正
- 3.6 數字標定
- 3.6.1 基于雙峰的閾值分割
- 3.6.2 不足點
- 4 未來展望
1 問題定義
本次實驗要求如下:用同一種算法標定出給定的20圖片中的所有的限速標識和標識中的數字。以下是本次實驗中給出的20張圖片。
圖1.1 20張給定的圖片
2 問題分析
通過查閱相關資料,主流的交通標志的檢測方法分成兩類。一類是利用機器學習算法,通過端對端的網絡識別與標定交通標志,通常需要一定規模的訓練數據。本文擬用第二類的方法,通過圖像的基本操作與圖像的特征來提取標志。
通過對給定樣張的分析,可以發現,限速標志做為警告示標語,邊框通常常用紅色,而且標識框均為圓形。本文以此為基礎將一步步分析如何提取限速標志以及提取過程遇到問題(針對這20張樣張,并沒有對其他數據進行測試)以及解決策略。
通過上文給出限速標志的基本特征(外邊框為紅色且為圓形),本文利用顏色空間的方法,先提取出紅色區域,在通過圖像的開閉運算,膨脹腐蝕操作進行預處理,最后在利用不同區域是目標的可能性進行逐一篩選。這里要指出目標的可能性這一說法,是指該區域類圓的概率以及該區域的面積的加權和。最后,針對一些紅的目標可能重疊的情況,進行最后的加工。
緊接著提取標志中的數字,通過對給定的圖像進行統計,可以發現如果是限速標志,其直方圖通常是雙峰,一個峰為目標區域,另一個則為背景。這樣就可以分理處數字了。其中遇到的一些問題將會在后續的小節中展開。
3 實驗步驟
3.1 顏色空間中提取紅色
由于RGB空間中R,G,B三個分量不是能較好的刻畫紅色,這里先轉換到HSV空間,在進一步提取。
圖 3.1.1 提取紅色
3.2 預處理
這一步對結果有這舉足輕重的作用,由 圖 3.1.1 可知疑似目標均以圓環形式呈現,但是我們知道,這種比較細的紋理在進行圖像運算過程中,很可能斷裂,甚至缺失,那么為了防止目標的丟失,首先需要填充圓環。這樣就可以通過腐蝕重建減少椒鹽噪聲的影響。
圖 3.2.1 預處理的結果
但是這也帶來一定的問題,圖 3.2.1 Figure4中,一些堆積在一起的噪音點形成了較的一塊區域,如果不是噪音點,而是目標呢?后續小節將給出一種解決方案。
3.3 深加工
顯然通過預處理,大部分目標已經聚集成塊,那樣就可以得到各個區域的面積,這樣一來,便可以通過這一信息自適應構造結構元素,進一步消噪。
這里先指出類圓度定義:
CS=4πS/C;CS=4πS/C; CS=4πS/C;
S 指該區域的面積,C指該區域的周長
由于目標大多為圓形,這里自然采用圓形結構元素,半徑Radius定義如下
Radius=(∑(S∣CS>threshold))nπRadius= \sqrt {\frac{(∑(S|CS>threshold))}{n\pi} }Radius=nπ(∑(S∣CS>threshold))??
thresholdthresholdthreshold 為給定的一個閾值,n指滿足分子區域塊個數。
[之前版本筆誤,目前已更正]
這個半徑的提出,認為圓形的區域是目標的概率更大。利用這種方式既可以保證較大的非目標區域不會對小目標造成干擾,也可以有效的去除相對可能目標的較小的噪音點。
圖 3.3.1 深加工的結果
3.4 提取限速標志
3.4.1 目標量度
目標量度有兩個方面衡量,一個是面積,面積越大越有可能是目標;另一個是類圓度,越圓越有可能是目標。
TP=w1CS+w2S/SmaxTP=w_1 CS+w_2 S/S_{max}TP=w1?CS+w2?S/Smax?
其中w1指類圓度權重,w2指面積權重 且 w1+w2=1w1 + w2 = 1w1+w2=1
3.4.2 目標提取
求出每個區域的TP值,當大于閾值時,則該目標被初步認定為限速標志。
圖 3.4.1 預標定的結果
3.5 目標糾正
上文提到,比較靠近的目標極有可能粘連,為了解決這一情況,做了以下說明
當區域中已存在目標,將忽視粘連情況
若不存在目標,我們認為目標可能粘連,且發生在最大區域
造成這種現象原因如下,我在填充時,為了盡可能保留細節的同時,也縮小目標之間的距離,這里假定目標相對較大,解決方案:不去進行預處理,而是直接利用深加工中構造的結構元素直接腐蝕重建原圖,然后再進行膨脹填充。效果如下
圖 3.5.1 預標定的結果
圖 3.5.2 預標定的結果
從對比圖可以看出,從一定程度上緩解了目標黏連問題。
3.6 數字標定
3.6.1 基于雙峰的閾值分割
通過3.1 – 3.5的工作,以及可以較好的扣出目標,現在放在面前的工作便是數字標定。本質上就是在分割的過程,經過實驗發現,圈定的目標的直方圖是雙峰的,于是,本文采用基于雙峰閾值的分割方法。
圖 3.6.1 標定的結果
3.6.2 不足點
在進行分割時,發現框定的目標的光照不均勻,或者對比度不明顯時,遇到了以下情況,礙于時間,這里僅提供一個思路(筆者已使用同態濾波做過嘗試,效果不理想),筆者仍建議通過標定的區域建立光照模型,然后在進行雙峰閾值分割。
圖 3.6.2 標定的不足
4 未來展望
代碼傳送門:有C幣這邊請
代碼傳送門:github這邊請
總結
以上是生活随笔為你收集整理的交通标志的检测与标定的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 五子棋对弈程序c语言,五子棋程序纯C语言
- 下一篇: 暖通毕业设计总结系列1——设计手段