張 嵐(廣東省技師學院,惠州,516100)
?
基于DSP的自動車牌識別系統(tǒng)的設計
張 嵐
(廣東省技師學院,惠州,516100)
摘要:圖像處理技術的應用領域越來越廣泛,隨著智能交通的發(fā)展,車牌的自動識別系統(tǒng)在智能交通中發(fā)揮了重要作用。本文探究的主要內容是將DSP芯片圖像處理技術應用在車牌的自動識別系統(tǒng)中,重點介紹自動車牌識別系統(tǒng)的總體設計、硬件開發(fā)及程序編寫,為智能交通的實現(xiàn)提供理論基礎。
關鍵詞:車牌;DSP;圖像處理
現(xiàn)代電子技術的飛速發(fā)展給我們的生活帶來了極大的便利,智能交通是人們現(xiàn)代生活的重要保證,高效率的生活節(jié)奏需要智能化電子系統(tǒng)的支持。城市人口增加給城市交通帶來了巨大的壓力,智能化、自動化的管理系統(tǒng)是智能交通的發(fā)展方向。國內大部分車牌識別系統(tǒng)是基于PC機平臺,基于嵌入式系統(tǒng)的車牌識別系統(tǒng)研究較少?;谇度胧降能嚺谱R別系統(tǒng)可以脫機運行,在運算速度和識別的穩(wěn)定性方面優(yōu)于PC機識別系統(tǒng)。本文采用TI公司TMS320DM6437設計車牌識別系統(tǒng),完成車牌識別的電路設計和軟件開發(fā),完成車牌的自動識別。
1.1車牌識別流程
自動車牌識別系統(tǒng)主要由四部分組成:車輛檢測、車牌圖像獲取、車輛圖像處理識別、識別結果輸出。車輛檢測分為地感線圈和圖像觸發(fā)兩種方式,地感線圈式要求加裝外部觸發(fā)來發(fā)出信號給圖像采集裝置,圖像觸發(fā)不必加裝外部裝置,但是技術要求高,需要準確捕捉過往車輛圖像;車牌圖像獲取,利用圖像采集裝置采集車牌信息并上傳到車牌識別系統(tǒng);車輛圖像處理識別,處理器DSP將圖像采集裝置上傳的圖像進行算法處理,包括車牌區(qū)域分割、圖像位置校正、車牌圖像二值化處理等實現(xiàn)車牌的正確識別,車輛圖像處理是整個車牌識別系統(tǒng)的核心;識別結果輸出,通過DSP經過嵌入式系統(tǒng)的外部接口在顯示終端上進行顯示輸出。車牌識別系統(tǒng)的總體流程如圖1所示。
1.2基于DSP的識別系統(tǒng)
目前車牌識別系統(tǒng)主要有兩種方式:基于PC機和基于嵌入式系統(tǒng)。嵌入式系統(tǒng)具有不同的架構,ARM架構、FPGA架構和DSP架構。不同的平臺具有各自的特點,具有不同的硬件設計。
基于PC機的系統(tǒng)存儲量大,外圍設備豐富,具有很強的擴展性,非常方便搭建檢測系統(tǒng),并且具有強大的軟件功能,方便設計人員進行軟件開發(fā)。但是PC機對環(huán)境的要求高,長時間運行過程中容易出現(xiàn)問題,并且成本較高,造成了硬件資源和軟件資源的浪費。
基于嵌入式的車牌識別系統(tǒng)已經成為主要的發(fā)展方向。不同架構的嵌入式系統(tǒng)具有不同的特點,基于ARM架構的平臺在控制方面具有明顯的優(yōu)勢,但是不適合處理數(shù)字信號?;贔PGA架構的平臺在數(shù)字信號處理方面優(yōu)勢明顯,具有很高的靈活性,但是入門難,成本高。基于DSP架構的在數(shù)字信號處理方面性能優(yōu)良,并且具有很好的圖像處理功能,同時系統(tǒng)的適應能力強,能夠在范圍內工作,操作系統(tǒng)采用DSP/BIOS,具有很高的穩(wěn)定性。車牌系統(tǒng)模塊框圖如圖2所示。
圖1 車牌識別流程
圖2 車牌系統(tǒng)模塊框圖
車牌的圖像質量受到多種因素的影響:生銹、污損、油漆剝落、車牌傾斜、高亮放光等,這些不利因素直接影響車牌的識別率。為了提高識別率,進行車牌圖像處理,圖像的處理過程包括:圖像的灰度化、二值化、邊緣檢測、濾波去噪、位置校正等。
2.1圖像的灰度化處理
圖像的灰度化處理是將彩色圖像轉變?yōu)榛叶葓D像,減小系統(tǒng)的存儲量,提高系統(tǒng)的執(zhí)行速度?;叶葓D像只包含有亮度信息,沒有色彩信息。灰度圖像時所有的像素顏色信息通過0到255之間的灰度值來表示,灰度化處理后的圖像會放大噪聲信號的影響,干擾信息會占據圖像的大部分,需要對灰度化的圖像進行濾波去噪。對灰度化處理后的圖像擴展取對比度,能夠使黑白的圖像變的清晰、細膩,提高了車牌的識別率。
圖3 車牌原始彩色圖像
圖4 車牌原始黑白圖像
圖5 車牌增強黑白圖像
2.2圖像濾波去噪處理
圖像濾波去噪能夠提高圖像特征提取、邊緣檢測和圖像分割的圖像處理效果。腐蝕和膨脹是圖像去噪的兩種方法。腐蝕能夠消除邊界點,消除圖像的孤立點;膨脹能夠填充圖像的空洞,使得圖像更加細膩。先腐蝕后膨脹為開運算,先膨脹后腐蝕為閉運算。開運算能夠消除圖像的細小顆粒,閉運算能夠使圖像的輪廓更加光滑,消除圖像的間隔。
圖6 圖像開運算
圖7 圖像閉運算
2.3圖像二值化處理
圖像的二值化處理,選擇合適的閾值,使得整幅圖像內僅為黑、白二值圖像,將字符同背景分割。車牌的二值化處理能夠大大提高車牌的處理效率,滿足自動化車牌識別系統(tǒng)和智能交通的需求。閾值的選取是二值化圖像處理的關鍵,二值化圖像處理的目的是將字符同背景分割,處理后的圖像具備良好的完整性,保存有用的形狀信息。本文選取的為基于Laplacian-Gauss的局部動態(tài)閾值,車牌圖像的背景、光線等因素,固定的閾值不能滿足車牌識別二值化的區(qū)別,所謂選用了動態(tài)的局部閾值,能夠保持很好的二值化處理效果。二值化處理得到的圖像如圖8所示。
圖8 二值化處理后的圖像
2.4圖像位置識別
車牌位置的識別選用了統(tǒng)計投影直方圖的方法,利用采集圖像的水平和垂直方向的灰度投影直方圖,推斷出車牌位置。該方法的優(yōu)點是對采集的圖像的噪聲點不敏感,能夠很好的識別出車牌的位置,檢測結果如圖9所示。檢測到圖像的位置后,利用Hough變換進行傾角校正修正圖像的位置。
Hough變換是利用圖像的全局特性直接檢測目標輪廓的常用方法,Hough變換不容易受到噪聲的影響。變換的思路是:對于x-y坐標系中的一條直線通過兩個參數(shù)(θ和)來表示,其中表示原點到直線的距離,θ為垂線與x軸的夾角,直線的參數(shù)方程可以轉化為:
圖9 水平和垂直方向投影直方圖
圖10 車牌校正結果
圖11 校正后水平方向投影直方圖
圖12 校正后垂直方向投影直方圖
2.5字符分割與識別
車牌區(qū)域準確定位后,需要對車牌進行字符分割與識別。字符分割通過識別每個字符的上下邊界、左右邊界。通過投影處理得到的波峰和波谷,檢測出車牌的左右邊界,每個波谷的位置即為分解的邊界線。由圖12的波谷可以明顯得到粵AIW985的字符邊界,識別的圖像如圖13所示。
圖13 字符分割與識別結果
完整的嵌入式系統(tǒng)包括硬件設計和軟件開發(fā)兩大模塊,DSP作為數(shù)字信號處理的核心已經應用到了各個領域。本文選用的處理芯片TMS320DM6437為C64X+架構,主頻700MHz,通用32位寄存器64個,功耗低,最大功耗為1.5W。處理器采用兩級存儲結構和兩級數(shù)據緩沖區(qū),一級緩沖區(qū)具有獨立的程序存儲區(qū)和數(shù)據存儲區(qū)。此外,TMS320DM6437具有豐富的外設結構,可以外接多種外設設備來滿足設計的需要。
本文以TMS320DM6437作為核心功能模塊,數(shù)據采集設備將采集的信號經過A/D轉換將圖像轉換為數(shù)字信號輸入到DSP中,DSP處理模塊將該數(shù)字信號保存到存儲空間并進行處理,識別車牌信息,將得到的信息通過網絡以字符串的形式發(fā)送到上位機,上位機根據需要實現(xiàn)數(shù)據庫存儲、查詢等功能。整個自動車牌識別系統(tǒng)可以分為三大模塊:圖像采集模塊、DSP處理模塊和上位機管理模塊。
圖像采集電路是車牌識別系統(tǒng)的前端,通過CCD攝像機進行車牌圖像的捕捉,輸出PAL制式的模擬信號(25幀/秒),通過視頻解碼芯片進行A/D轉換成數(shù)字信號輸入到處理DSP芯片中。視頻解碼芯片選用的是TI公司的TVP5150,該芯片采用先進的COMS工藝,超低功耗,能夠自動檢測50Hz和60Hz的場頻信號,具有4路模擬信號輸入端口,同時具有多種數(shù)字信號輸出格式。DSP控制芯片TMS320DM6437和視頻解碼芯片互聯(lián)的電路原理圖如圖14所示。
DSP處理模塊的圖像處理與識別單元采用C語言和匯編語言混合編程實現(xiàn),為了防止系統(tǒng)掉電造成程序丟失,進行TMS320DM6437和FLASH的接口設計。RAM上進行讀寫雖然速度快,有利于程序讀寫的實時性,但是掉電后會造成數(shù)據丟失,不滿足設計穩(wěn)定性的要求。為了解決該問題,本文進行拓展FLASH存儲器設計,系統(tǒng)上電后會啟動整個程序,實現(xiàn)了整個系統(tǒng)的自動化。FLASH分為NOR和NAND兩種類型,NOR型帶有SRA接口,能夠繼續(xù)實現(xiàn)引腳尋址,有利于讀取內部每個字節(jié)的存儲空間。本文選用的是4M*8bit的NOR型FLASH,該類型的存儲器能夠滿足本設計在讀取速度和位寬上的使用要求。TMS320DM6437和FLASH的連接電路如圖15所示。
圖14 控制芯片與視頻解碼芯片連接電路圖
圖15 TMS320DM6437和FLASH的連接電路
DSP的處理結果能夠實時顯示,并且能夠通過以太網傳輸?shù)缴衔粰C。本文設計的自動車牌識別系統(tǒng)目的是應用在智能交通管理系統(tǒng),不僅需要在傳輸距離上滿足要求,還應該能夠有效區(qū)分分機地址,并且具有較強的拓展性,所以選用具有EMAC標準的10/100M的以太網進行數(shù)據傳輸,采用DAVICOM公司的DM9164A作為自動車牌識別的以太網收發(fā)器,與TMS320DM6437連接的示意圖如圖16所示。
圖16 TMS320DM6437與DM9164A連接示意圖
DSP芯片軟件應用平臺為Code Composer Studio(CCS),該平臺是TI公司為開發(fā)TMS320系列DSP軟件的集成開發(fā)環(huán)境。CCS在Windows操作系統(tǒng)下,采用圖形接口界面,將匯編器、鏈接器、C/C++編譯器、建庫工具集成在該平臺中。CCS集成了代碼調試功能,包括C源代碼調試器和模擬器具備的全部功能,還提供了豐富的輸入和輸出庫函數(shù),開發(fā)界面如圖17所示。軟件的開發(fā)流程為新建源程序、目標文件、庫文件、連接命令文件和包含文件,軟件開發(fā)流程如圖18所示。
首先拓展程序存儲區(qū),修改DSP的配置CFG文件,激活新的存儲區(qū)。以在0x48000處增長0x02000的存儲配置為例,配置過程為:
//On Chip SARAM8-11 Organization On Prog 3 Begins
//---------------------------------------------------------
//SARAM4 XPC=4
MEMORY MEM24;
START 0x48000;
LENGTH 0x02000;
PAGE 0;
TYPE SARAM;
END MEM24;
圖17 CCS開發(fā)平臺界面
-------------------------------------------------------------------------------------------------------------------------
END C5416;
END C54S
為了提高程序開發(fā)的效率,采用C語言和匯編語言混合編程,只利用匯編語言實現(xiàn)功能比較困難,采用C語言對DSP的外設進行訪問又比較麻煩,所以綜合兩種程序的優(yōu)點進行連接編程。同時采用TI公司的程序庫來簡化程序的編寫,使用內聯(lián)函數(shù)intrinsics,優(yōu)化C代碼,以絕對值函數(shù)為例,C語言實現(xiàn)的程序為:
int abs(int src)
{
if (src==0x8000000)
return src;
else if(src<0)
return —src;
else
return src
}
圖18 軟件開發(fā)流程圖
如果采用內部函數(shù),通過_abs(src)就可以實現(xiàn)絕對值函數(shù)功能,不僅可以大大提高程序開發(fā)和運行的效率,還能夠有效減少代碼的長度。
TI還提供了C64x系列的圖像處理庫IMGLIB,庫中的函數(shù)可以通過C語言代碼直接調用,采用這些圖形處理函數(shù)相比采用C語言代碼方便很多。例如在自動車牌識別系統(tǒng)中,需要得到采集圖像的灰度直方圖,利用IMGLIB庫中的IMG-histogram()函數(shù)實現(xiàn)的程序為:
Void IMG_histogram(
unsigned char*in_data,
int n,
//1:add to existing histogram in hist[]
//-1:subtract from existing histogram in hist[]
int accumulate,
//Array of temporary histogram bins. Must be initialized to zero
unsigned short t_hist[1024],
// Array of updated histogram bins
Unsigned short*hist[256]
)
在車牌的識別過程中,光照強度、車身顏色、拍攝的角度等會對車牌的識別具有一定的影響。車牌檢測的效果如圖19所示。
圖19 自動車牌檢測圖
本文基于DSP的自動車牌檢測系統(tǒng)的設計,在對采集的車牌信息進行圖像處理的基礎上,采用TI公司DSP TMS320DM6437車牌圖像的信息處理,得到車牌的識別結果上傳到上位機,通過實驗發(fā)現(xiàn)該檢測系統(tǒng)具有較好的檢測效果,并且能夠成功的應用到不同的場合。
參考文獻
[1] 張旭東. TI DSP 在視頻傳輸和處理中的應用.第一版.北京:電子工業(yè)出版社,2009. 15-75.
[2] 遲曉春,孟慶春. 基于投影特征值的車牌字符分割方法.計算機應用研究,2006,(7):256-257.
[3] 王躍宗,劉京會. TMS320DM642 DSP 應用系統(tǒng)設計與開發(fā).第一版.北京:人民郵電出版社,2009. 20-35.
[4] 何鐵軍,張寧,黃衛(wèi).車牌識別算法的研究與實現(xiàn). 公路交通科技,2006,23(8):147-149.
[5] 林志煌.車牌識別硬件系統(tǒng)的研究與設計:[D]. 成都:電子科技大學 2008.38-50.
The Design of Automatic License Plate Recognition System Based on DSP
Zhang Lan
(Guangdong Province Technician College Institute,Huizhou,516100)
Abstract:Image processing technology widely used in different field,with the development of intelligent transportation,license plate automatic recognition system plays an important role in intelligent transportation.The main content of this paper is to explore that the image processing technology is used in the automatic license plate recognition system on the basis of DSP,focusing on the introduction of the automatic license plate recognition system's overall design,hardware development and program written,providing a theoretical basis for the realization of intelligent transportation.
Keywords:License plate;DSP;Image processing