第三篇:系統的整體架構
LPR系統大體上可由圖像采集系統,圖像處理系統,數據庫管理系統三個子系統組成。它綜合了通訊、信息、控制、傳感、計算機等各種先進技術,構成一個智能電子系統。
圖像采集系統:圖像采集系統主要由傳感器、輔助照明設備和圖像采集設備組成,主要功能是采集車輛圖像。當有車輛經過時會觸發感應裝置,感應裝置一般為地感線圈,觸發成功后攝像機或照相機會自動采集當前的圖像,最后將采集到的圖像傳送到計算機或手持的嵌入式系統進行處理。
圖像處理系統:圖像處理系統即為本文主要討論的算法處理模塊,為整個系統的軟件部分。它主要包括圖像預處理、車牌定位、字符分割和字符識別四個部分,它的任務是運用數字圖像處理、模式識別等學科對獲得的車輛圖像進行處理以獲得車牌上的字符內容信息,后面章節講對它每一個部分做一個粗略的介紹。
數據管理系統:數據管理系統是一個后端管理數據庫,它包含了幾乎所有的圖像輸入是指利用攝像機或者數碼相機采集到的車牌圖像。車牌圖像的質量與采集圖像的設備和實際環境有關。性能好的攝像機能夠得到質量更好的車牌圖像,有利於識別車牌圖像中的字符。在光照不均、惡劣天氣的環境下,采集到的車牌圖像的像質較差,導致車牌識別系統的性能降低。車牌登記信息,車牌中的字符信息被識別出來后就輸入到這個系統進行查找對比,以方便公安機關追查被盜車輛,打擊犯罪分子。
其中圖像處理模塊主要包括六個部分:預處理、車牌定位、傾斜校正、字符分割、字符識別。其中,車牌定位、字符分割、字符識別是車牌識別的關鍵技術。流程圖如下:
圖像預處理是指對采集到的圖像進行二值化、邊緣檢測、去除噪聲、圖像灰度化等操作。經過預處理的車牌圖像增能夠強目標圖像,提高目標和背景圖像的對比度,方便車牌識別的后續工作。
車牌定位是從一幅拍攝到的圖片中定位出車牌的位置,並從圖片中提取出車牌圖像。車牌定位正確與否直接影響到字符分割和識別的工作,是所有關鍵技術中的第一步。
傾斜校正是指檢測車牌圖像的傾斜角度,並校正車牌圖像。傾斜的車牌圖像會導致車牌中的字符傾斜,直接影響到車牌字符的分割和識別,因此必須對傾斜的車牌圖像進行校正。
字符分割是對提取出的車牌圖像進行切割,從車牌圖像中提取出單個車牌字符的圖像。由於字符識別是以分割出的單個字符為輸入,所以字符分割的准確與否直接影響到字符識別。
字符識別是指對分割出的字符進行處理,識別出車牌中的字符。因為我國的車牌號碼的字符包含:漢字、英文字母、數字,增加了對字符識別的難度。字符識別直接影響到整個車牌識別系統結果的准確性。
這是一個LPR系統最基本的結構組成,每個模塊的功能也清晰的給出來了,這對於后續我們的分工有很大的幫助,模塊與模塊之間耦合度也比較小。
基於Linux的車牌識別系統,界面基於qt開發,圖像處理模塊基於opencv,數據庫使用的mysql,基本上是在原有的系統上進行修改。原有的系統是在window平台下,使用MFC,opencv的版本是之前的C版本,按照新的架構重新修改代碼,數據庫部分基本沒變,重點更新的是圖像處理部分。
最后,在開發 LPR 算法之前,要確定算法的目的和要求。LPR 算法的最終目的是識別車輛的車牌號碼,所以識別正確率自然是系統設計中應該首要考慮的因素。影響識別正確率的因素有很多,主要的有以下幾點:一是定位的准確性;二是識別前字符的預處理;三是字符識別的算法。為了提高識別正確率,需要對現有的車牌字符識別算法進行改進,在后面的章節中會有詳細的介紹。
其次,LPR 算法在工作時需要實時處理交通流量信息,所以系統的工作效率——即識別時間也是系統設計時必須要考慮的因素,一般要求在 1s 內能夠完成識別,這就要求識別算法的復雜度、運算量不能太大。
除了算法識別正確率和識別時間外,算法軟件的操作界面應盡量簡單、友好,還要考慮系統的無故障運行時間,系統體積的大小等因素。最后,算法設計要面向現場、面向終端客戶的需求,考慮到 LPR 系統在戶外工作,所以要克服外面環境的復雜性及光照條件的變化,設計出一套適應性較強的算法。