辛淏炎



摘 ? 要:本文詳細介紹了基于人工智能的智能交通系統的系統設計,以及該系統所運用的核心算法。該智能交通系統分為鳴笛聲檢測定位系統、車牌號識別系統、用戶系統三大模塊,可實現準確定位鳴笛車輛,識別鳴笛車輛車牌信息,以及能夠及時將用戶違章信息上傳至數據庫,同時告知用戶違章信息。該系統可幫助交通部門提高執法精確度,節省人力物力和財力,同時也使環境噪聲污染得到有效的控制。
關鍵詞:鳴笛聲識別 ?聲源定位 ?圖像識別 ?智能交通 ?人工智能
中圖分類號:TP18 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A ? ? ? ? ? ? ? ? ? ? ? ?文章編號:1674-098X(2019)09(a)-0099-04
1 ?引言
人們日常出行首選的交通工具便是汽車了,在這個家家戶戶都有車的時代,汽車帶來的環境噪聲污染問題也不可忽視。環境噪聲對人類的危害不僅體現在對聽力系統的損害,還可能使人類煩惱、易怒、激動,嚴重者則產生精神錯亂。噪聲控制被我國列為環境保護的重點,國家方面也出臺了相關法律法規,禁止機動車輛在禁止鳴笛的區域或者路段鳴笛。由于噪聲的特點,噪聲源一旦停止發聲,噪聲就會消失,這給工作人員監測車輛鳴笛增加了很大的難度。因此,一系列先進的科學技術研究被應用于提高噪聲污染防治的工作中。本文基于人工智能設計出了一套功能完善的智能交通系統并應用到鳴笛車輛治理的場景中,其功能表現為可以準確定位鳴笛的車輛隨后識別出車牌號。該智能交通系統提高了執法準確度,使交通部門的管理得到加強,同時也減少了人力物力與財力。
本文所闡述的智能交通系統主要涉及基于麥克風陣列的鳴笛聲源定位以及車牌號識別兩大主要技術。常用的基于麥克風陣列的鳴笛聲源定位方法有以下四種[1-2]:基于最大輸出功率的可控波束形成法、高分辨率譜估計法、基于到達時間差(TDOA)的聲源定位法和基于卷積神經網絡的聲源定位法。基于最大輸出功率的可控波束形成法的基本思想是,設置一個麥克風陣列,用來接收所有聲源假定位置處的聲源信號,將接收到的信號進行加權求和,所得值最大的位置即為聲源的預測位置。高分辨率譜估計法利用麥克風陣列接收信號之間的相關矩陣來確定方向角,從而達到定位目標聲源的目的。但以上提到的兩個算法計算量均較大,較難滿足本文構建的智能交通系統對于實時性的要求。基于到達時間差(TDOA)的聲源定位法主要思想是將同聲源信號到達不同麥克風的時間差求出即時間延遲估計,已知聲音傳播的速度,可將時間差輕易轉化為聲程差,進而結合麥克風陣列中麥克風的位置通過幾何法或者搜索法定位目標聲源。基于深度神經網絡的聲源定位法將聲源可能存在的空間按一定的角度平均分為若干個區域,輸入聲音的相位譜和幅度譜計算出每個區域內聲源存在的概率,輸出概率最大的區域即可定位目標聲源。車牌號識別則主要涉及對鳴笛車輛圖像進行預處理、對車牌區域進行定位與分割,最后對分割的字符進行識別。傳統的車牌定位方法將數學形態學進行的粗定位與投影法進行的細定位結果相結合,并運用Hough變換解決水平區域存在夾角的問題[10],以便后續進一步分割。基于模板的車牌分割法和基于投影的車牌分割法是目前較為傳統的兩種車牌分割方法。但由于實際捕捉到的車牌圖像狀態十分復雜,極易存在車牌扭曲的情況,以上兩種方法在該情況下分割效果不是特別理想。由于在使用以上兩種方法進行車牌分割之前首先要對車牌首字符進行定位,若該定位存在偏差,將會對分割效果產生很大的影響[3]。分割效果相對較好的是基于投影和先驗知識的車牌分割法,同時也解決了首字符的準確定位問題[3]。基于神經網絡的字符識別算法依據我國車牌特點,分別建立漢字神經網絡、字母神經網絡和字母數字神經網絡對系統進行訓練,通過增加動量提高系統的學習速率,從而減少系統的學習時間,實現對分割后的車牌進行精準的字符識別[13]。
本文將主要闡述該智能交通系統的設計,系統各個模塊之間的聯系,以及系統功能實現的核心算法。
2 ?智能交通系統設計
該智能交通系統包括鳴笛聲監測定位系統、車牌號識別系統和用戶系統三個子系統。其子系統之間的聯系示意圖如圖1所示。
2.1 鳴笛聲監測定位系統
鳴笛聲監測定位系統主要實現對道路上鳴笛聲音的監測和定位,并截取鳴笛車輛的圖像上傳至服務器,以進行后續的車牌號識別。該系統構成如圖2所示。
(1)鳴笛聲監測程序:該程序用于監測麥克風陣列所在道路上是否存在違法鳴笛的行為,該程序功耗較小,故放于本地一直循環運行,若鳴笛聲存在則繼續執行鳴笛聲定位程序。
(2)鳴笛聲定位程序:該程序用于確定鳴笛聲源的位置。在一定區域內判斷麥克風陣列的位置,將位置坐標轉換成圖像坐標輸入攝像裝置中,攝像裝置截取相應區域內的圖像信息,并將該圖像信息上傳至服務器。
2.2 車牌號識別系統
車牌號識別系統下載服務器上的車輛信息圖像,經過一系列處理后輸出精準識別后的車牌號[3]。該系統的構成如圖3所示。
(1)圖像預處理:車牌號識別系統從服務器上獲取車輛圖像信息作為輸入。將服務器中存儲的截獲的鳴笛車輛圖像信息作為系統的圖像輸入到車牌號識別系統中。截取的圖像質量受光照條件、車牌與攝像頭角度、車牌與攝像頭距離等不可控因素的影響,通常含有很多噪點,在該處主要對圖像有效信息進行增強和保留處理,對不必要的圖片信息進行刪減,為后續流程提供便利,同時也節約了存儲空間。主要處理方法為灰度化,灰度拉伸,邊緣檢測,二值化等。
(2)車牌定位:該模塊的目的是將車牌區域準確地從經過預處理后的汽車圖像中分離出來,同時解決車牌區域與水平方向存在夾角的問題,便于后續進行分割以及字符識別。
(3)車牌分割:定位后的車牌圖像被分割,組成車牌號的一系列單個字符被分割出來用于后續識別。
(4)字符識別:將上一步驟中分離出的單個車牌字符導入訓練好的神經網絡模型中,識別出相應的漢字字母數字,最后將識別結果即車牌號發送至用戶系統頁面[6]。
2.3 用戶系統
用戶系統作為智能交通子系統,其主要功能為實現智能交通系統與用戶的交互。該系統可將違章時間,地點等信息通過短信方式發送至識別后的車牌號對應車主的手機,同時將違章信息記錄進車主信息數據庫,更加便于管理。用戶系統的構成如圖4所示。
(1)車主提醒:從數據庫中獲取車主信息,將違章信息通過短信或其他方式發送給車主。可以讓車主及時了解自己車輛的違章信息,同時防止此類違法行為再次發生。
(2)數據庫:用于實時記錄并存儲車主的違章信息,包括時間、地點、圖像、違章次數等。實現對車主違章數據的管理,并作為后續對車主違法行為進行處罰的主要證據。
3 ?系統關鍵技術
3.1 鳴笛聲識別
本系統通過深度神經網絡模型來實現鳴笛聲識別的核心算法[1]。不同于傳統的算法的是,本系統采用的算法沒有明確的對聲源信息特征進行提取的步驟,而是直接將傅里葉變換系數中的相位譜和幅度譜輸入到訓練好的卷積神經網絡模型中,在卷積運算層中,通過若干個不同的卷積核得到對應的特征圖,在全連接層中融合特征圖,實現維度的轉換,最后輸出聲源發生在每個區域的概率,概率最大的區域即為目標聲源的定位區域。使用過濾器保證了在麥克風陣列的位置有微小變動時,仍然可以計算出較準確的概率。在訓練過程中,加入了存在與麥克風陣列不同方向和距離的噪聲的干擾,保證了該系統在有噪聲干擾的情況下仍有較好的定位效果。
3.2 車牌號識別核心算法
車牌號識別算法主要包括圖像預處理算法、車牌定位算法、車牌分割算法和字符識別算法。
3.2.1 預處理算法
車牌號識別系統從服務器下載圖像信息,然后對圖像信息進行灰度化、二值化等一系列預處理[3]。灰度化處理的主要思想為將圖像的RGB值設為相同的三個數值。該具體數值可以通過最大值法,平均值法,加權平均值法三種方法中任意一種來確定。圖片灰度處理后,由于車牌區域與非車牌背景區域對比度不高,難以準確地從邊緣提取車牌界限,因此需要將車牌區間進行灰度拉伸,將原圖像的點(x , y)的灰度f(x , y) 通過特定映射關系轉化為灰度g(x , y), 以增強車牌區域與背景區域的對比度。進而將所得圖像進行二值化,呈現出明顯的黑白效果[7]。
3.2.2 定位算法
本系統采用傳統車牌定位算法,將數學形態學與投影法相結合,并通過Hough變換消除車牌與水平方向存在夾角的影響,為后續分割做準備[3]。利用膨脹,腐蝕,開啟和閉合四個結構元素,度量形態特征,提取蘊含在圖像里的信息,分析其拓撲和結構特點,從而對車牌進行數學形態法的粗定位。進行投影法的細定位之前首先要判斷車牌是否傾斜,若車牌傾斜,則采用Hough變換將其進行矯正處理,若車牌沒有傾斜,則可省去Hough變換這一步驟。利用Hough變換將傾斜車牌矯正的基本思想是統計出車牌圖像在參數空間中與對應曲線的交點數最多的點[11-12],該點映射到原圖像中最長的直線與X軸的夾角即為車牌的傾斜角度。通過極坐標運算得到新的矯正過后的像素點。同時由于二值化的車牌圖像在垂直方向的投影呈現出顯著的波峰-波谷特性,因此可利用改波峰-波谷特性特點對于車牌進行左右邊界的精確的定位[8-9]。
3.2.3 分割算法
對汽車車牌進行掃描,將汽車車牌的左右邊框基于字符處黑白跳變次數多于邊框上黑白跳變次數這一特性進行去除,然后對車牌進行分割[4]。采用從中間字符右邊界向左向右進行掃描的方法實現對字符的分割,可以降低邊框去除不準確對字符分割產生的影響。對放入矩陣m[i] (1*n)(其中n為車牌區域的整體寬度)中的像素點進行掃描,當連續發現三個像素點均小于垂直投影灰度閾值Q1后,即可判斷該處達到了字符邊界位置。由于首字符為車牌所屬地區,存在左右結構,易產生漢字分割不連續問題,故對漢字采用起始終點做差法比較與閾值Q2的差,若差值大于Q2,則為完整字符,若差值小于Q2,則繼續掃描尋找首字符邊界。
3.2.4 識別算法
將分割后的字符通過網格特征提取法(即建立網格系統,選擇網格中白色像素的點作為特征值)與筆劃密度特征提取法(即從水平方向和垂直方向掃描字符,統計掃描線與筆劃線的相交情況)提取的特征相結合,根據字符位置輸入到訓練好的三層神經網絡中(向漢字網絡輸入分割產生的第一位字符,字母網絡輸入分割產生的第二位字符,字母數字網絡輸入第三到七位字符),經一系列運算后得到車牌號識別的結果[5]。網格特征提取法減小了車牌上污點造成的干擾,筆劃密度特征提取法則解決了字符微微變形的問題,二者互補,以實現對車牌字符的精確識別。
4 ?結語
本文設計了一個基于人工智能的智能交通系統,該系統分為鳴笛聲檢測定位系統,車牌號識別系統以及用戶系統三個子系統,分別實現對鳴笛聲音的識別與定位,對車牌號的識別,以及與用戶的交互三大功能。描述了系統中各模塊的具體作用以及模塊之間的聯系,鳴笛聲檢測定位系統識別出鳴笛車輛并且將聲源位置坐標以及車輛對應圖像信息上傳至服務器。服務器內的車輛圖像信息被車牌識別系統獲取,在識別系統內完成識別工作后,將識別結果上傳至用戶系統。同時用戶系統從服務器上下載鳴笛位置坐標以及截取的汽車圖像,將違章信息發送給對應的車主,并且將違章信息上傳至數據庫。簡要闡述了該系統主要模塊采用的核心算法。鳴笛聲檢測系統通過構建深度神經網絡模型并加入噪聲訓練來實現鳴笛聲的準確識別與定位,車牌識別系統灰度處理和二值化處理得到的圖像信息,數學形態學、投影法以及Hough變換相結合對車牌進行定位,繼而通過掃描和與垂直投影灰度閾值進行比較實現對車牌的分割,提取分割后的車牌特征,輸入漢字神經網絡、字母神經網絡以及字母數字神經網絡進行字符的識別。由于鳴笛聲噪聲環境復雜和車輛圖像信息較復雜,未來仍需要對該算法繼續進行優化,同時根據需求進一步對系統進行設計。
參考文獻
[1] Brandstein M S, Sliverman H F. A practical methodology for speech source localization with microphone arrays[J]. Computer, Speech and language, 1997, 11(2): 91-126.
[2] Chakrabarty S , Habets, Emanu?l. A. P. Broadband DOA estimation using Convolutional neural networks trained with noise signals[J]. 2017.
[3] 白明雷. 基于神經網絡的車牌號識別方法研究[D].
[4] 遲曉君, 孟慶春. 基于投影特征值的車牌字符分割算法[J]. 計算機應用研究, 2006(7):256-257.
[5] 韓力群. 人工神經網絡理論、設計及應用(第二版)[M].化學工業出版社,2007.
[6] 肖坤平. 車牌字符自動識別方法的研究[D]. 重慶大學, 2011.
[7] 潘梅森, 張奮, 雷超陽. 一種車牌號碼圖像二值化的新方法[J]. 計算機工程, 2008, 34(4):209-211.
[8] 吳煒, 楊曉敏, 何小海,等. 一種邊緣檢測與掃描線相結合的車牌定位算法[J]. 電子技術應用, 2005, 31(2):43-46.
[9] 劉麗新, 劉京剛, LiuLixin,等. 行掃描進行車牌上下邊界定位的研究[J]. 儀器儀表學報, 2005, 26(z2):177-179.
[10]包明, 路小波. 基于Hough變換的車牌傾斜檢測算法[J]. 交通信息與安全, 2004, 22(2):57-60.
[11]王良紅, 王錦玲, 梁延華. 改進的Hough變換在校正汽車牌照傾斜中的應用[J]. 太赫茲科學與電子信息學報, 2004, 2(1):45-48.
[12]Kesidis A L , Papamarkos N . On the inverse Hough transform[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1999, 21(12):0-1343.
[13]陸鋒. 基于改進的BP神經網絡進行車牌定位的研究[J]. 蘇州大學學報(工科版), 2004, 24(6):5-8.