《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于DSP和ARM的車牌識別系統(tǒng)設(shè)計
基于DSP和ARM的車牌識別系統(tǒng)設(shè)計
來源:微型機與應(yīng)用2012年第22期
劉永春
(四川理工學(xué)院 自動化與電子信息學(xué)院,四川 自貢643000)
摘要: 研究了一種基于DSP和ARM的嵌入式車牌識別系統(tǒng),通過DSP實現(xiàn)視頻圖像數(shù)據(jù)采集、車牌識別算法處理、網(wǎng)絡(luò)傳輸?shù)热蝿?wù);ARM處理器使用Linux系統(tǒng)調(diào)度和管理視頻接收、視頻顯示、識別結(jié)果顯示等控制任務(wù)。整個系統(tǒng)通過網(wǎng)絡(luò)實現(xiàn)通信與同步。
Abstract:
Key words :

摘  要: 研究了一種基于DSPARM的嵌入式車牌識別系統(tǒng),通過DSP實現(xiàn)視頻圖像數(shù)據(jù)采集、車牌識別算法處理、網(wǎng)絡(luò)傳輸?shù)热蝿?wù);ARM處理器使用Linux系統(tǒng)調(diào)度和管理視頻接收、視頻顯示、識別結(jié)果顯示等控制任務(wù)。整個系統(tǒng)通過網(wǎng)絡(luò)實現(xiàn)通信與同步。
關(guān)鍵詞: 車牌識別;嵌入式系統(tǒng);DSP;ARM

    車牌識別系統(tǒng)采用數(shù)字圖像處理技術(shù),通過車牌圖像采集、圖像預(yù)處理、車牌定位、字符分割和字符識別5個模塊來實現(xiàn)車牌自動識別。傳統(tǒng)的車牌識別系統(tǒng)主要由攝像頭、視頻采集卡、PC機等主要模塊組建而成,其特點是系統(tǒng)容易實現(xiàn),但是成本較高、實時性較差、體積龐大、安裝和維護不方便。本文討論了一種基于DSP和ARM的嵌入式車牌識別系統(tǒng)的硬件平臺設(shè)計及其典型模塊的驅(qū)動程序設(shè)計。與傳統(tǒng)的車牌識別系統(tǒng)不同,該系統(tǒng)無需計算機即可實現(xiàn)車牌圖像的采集、處理和識別、結(jié)果輸出,具有識別率高、實時性好、環(huán)境適應(yīng)性強、安裝維護簡單、成本低等特點。
1 系統(tǒng)硬件平臺設(shè)計
    硬件平臺包括DSP和ARM兩個獨立的硬件平臺, 利用DSP強大的信號處理能力完成車牌識別算法運算,使用ARM處理器實現(xiàn)人機交互控制功能。由于車牌識別系統(tǒng)需要很高的識別率和識別速度,且車牌識別算法的運算量又比較大,為了滿足系統(tǒng)的實時性和精度要求,DSP平臺采用TI公司C6000系列的TMS320DM642作為核心控制模塊,利用其豐富的片上資源以及快速的圖像處理能力來實現(xiàn)車牌圖像采集和算法處理。ARM平臺運行于Linux系統(tǒng)上,選用三星公司的ARM9處理器S3C2410 作為控制中心,由于其功耗低并具有豐富的片內(nèi)資源,能夠滿足本系統(tǒng)的設(shè)計要求。系統(tǒng)硬件平臺將電源管理、圖像采集、SDRAM、Flash、網(wǎng)絡(luò)通信、觸摸屏顯示控制等功能模塊集于一體,如圖1所示。

    本系統(tǒng)的結(jié)構(gòu)設(shè)計可實現(xiàn)多種用途,具有很好的靈活性和擴展性。其中,可以根據(jù)需要選擇DSP平臺來實現(xiàn)車牌識別算法處理,并通過網(wǎng)絡(luò)將識別處理結(jié)果發(fā)送到上位機,組成一個分布式的車牌識別局域網(wǎng),從而實現(xiàn)分布式智能交通管理。也可以選擇DSP和ARM平臺共同實現(xiàn)便攜手持式車牌識別系統(tǒng),并通過在ARM平臺上開發(fā)人機交互界面,為用戶提供相應(yīng)的交互控制功能,以完成系統(tǒng)的控制和設(shè)置。
    其中,觸摸屏顯示模塊采用2.4寸TFT彩色觸摸屏,其分辨率為320×240,可在Linux環(huán)境中開發(fā)GUI接口實現(xiàn)系統(tǒng)的人機交互功能,包括接收DSP網(wǎng)絡(luò)接口傳輸來的視頻信號,并在顯示屏上實時顯示,同時用戶可通過觸摸屏控制車牌圖像的抓圖等操作。本文將重點討論車牌圖像采集和網(wǎng)絡(luò)通信模塊的設(shè)計。
1.1 車牌圖像采集
    車牌識別系統(tǒng)所采集到的車牌圖像質(zhì)量對整個系統(tǒng)的識別效果起著關(guān)鍵作用。系統(tǒng)中DM642的3個視頻接口支持視頻捕獲模式和視頻顯示模式,可以與視頻解碼芯片直接連接,系統(tǒng)采用TI公司的TVP5150高性能視頻解碼芯片,其可以將 PAL、NTSC 信號轉(zhuǎn)換成 BT.656-YUV4:2:2信號。通過DSP的I2C總線可以實現(xiàn)對 TVP5150工作模式的配置,電路連接情況如圖2所示。

    DM642的視頻模塊支持多種視頻捕獲模式,本系統(tǒng)采用10 bit BT.656模式,利用DSP的VP0通道對視頻解碼芯片輸出的BT.656信號進行采集。DSP 視頻采集模塊利用BT.656數(shù)據(jù)流中嵌入的行、場同步信號,以及視頻解碼芯片TVP5150提供的GPCL使能信號完成對車牌圖像的采集。
1.2 網(wǎng)絡(luò)通信模塊設(shè)計
    網(wǎng)絡(luò)通信模塊包括DSP和ARM兩個網(wǎng)絡(luò)模塊。其中,DSP網(wǎng)絡(luò)模塊主要功能是把采集到的車牌圖像的處理結(jié)果發(fā)送到ARM模塊,并接收來自ARM模塊的控制信號;ARM網(wǎng)絡(luò)模塊主要功能是接收DSP網(wǎng)絡(luò)模塊發(fā)送來的數(shù)據(jù)以及向DSP網(wǎng)絡(luò)模塊發(fā)送控制信號。
1.2.1 DSP網(wǎng)絡(luò)模塊
    利用Intel公司的以太網(wǎng)控制器LXT971將DSP傳輸來的數(shù)據(jù)轉(zhuǎn)換為以太網(wǎng)物理層接收到數(shù)據(jù),并通過雙絞線連接到隔離變壓器PE65745和RJ45接口然后再連接到網(wǎng)絡(luò),如圖3所示。使用隔離變壓器的原因是增強信號耦合,使信號的傳輸距離更遠;同時起到隔離保護作用,防止外界對芯片的干擾。

    其中,DSP網(wǎng)絡(luò)通信的驅(qū)動基于DSP/BIOS和網(wǎng)絡(luò)開發(fā)包DNK等資源開發(fā)。硬件驅(qū)動程序庫的函數(shù)以及數(shù)據(jù)結(jié)構(gòu)都符合DNK的標準應(yīng)用程序編程接口,由DNK進行提前控制。底層硬件驅(qū)動與TCP/IP協(xié)議棧的接口包含TCP/IP協(xié)議棧與硬件驅(qū)動層之間的應(yīng)用程序編程接口和驅(qū)動環(huán)境與TCP/IP協(xié)議棧直接傳遞狀態(tài)監(jiān)測信息接口。
1.2.2 ARM網(wǎng)絡(luò)模塊
    由于S3C2410沒有集成網(wǎng)絡(luò)接口,需要用外擴CS8900A以太網(wǎng)芯片來實現(xiàn)網(wǎng)絡(luò)底層的數(shù)據(jù)傳輸,并通過隔離變壓器PE65745將數(shù)據(jù)傳輸?shù)絉J45接口,電路連接如圖4所示。

    圖4中門電路主要實現(xiàn)以下邏輯關(guān)系式功能:
    IOW=ADDR24+new
    IOR=ADDR24+nOE
    MEMR=ADDR24+nOE
    MEMW=ADDR24+new
    在CS8900A中IOW、IOR、MEMW、MEMR 4個信號都是低電平有效。CS8900A片選信號AEN連接到nGCS3,I/O模式下的nOE和nWE通過門電路連接到A24,中斷信號INTRQ0連接到EINT9。CS8900A的基地址為x19000000。在I/O模式下,CS8900A的內(nèi)部寄存器默認地址為0x300h,在S3C2410的地址空間中的地址為0x19000300。通過CS8900內(nèi)部寄存器的設(shè)置,實現(xiàn)網(wǎng)絡(luò)底層數(shù)據(jù)的接收和發(fā)送,實現(xiàn)通信。
2 系統(tǒng)軟件設(shè)計
    系統(tǒng)軟件設(shè)計包括DSP系統(tǒng)底層程序、ARM系統(tǒng)底層程序和系統(tǒng)應(yīng)用程序開發(fā)。DSP系統(tǒng)程序的開發(fā)是在TI公司的CCS集成開發(fā)環(huán)境中進行的,利用CCS提供的圖像顯示、MEMORY窗口、寄存器查看、斷點設(shè)置、DSP/BIOS分析等工具實現(xiàn)程序的開發(fā)。DSP系統(tǒng)程序流程圖如圖5所示。

 

 

    系統(tǒng)上電后首先對DSP資源進行初始化,包括資源配置、EMIF口配置、中斷設(shè)置、CACHE使能、I2C 配置視頻解碼芯片、DSP 視頻采集口初始化等。然后DSP通過視頻采集口VP0采集車牌視頻圖像信號,當(dāng)每完成一行數(shù)據(jù)采集時,DSP 就會觸發(fā)一次 EDMA,同時通過 EDMA 把相應(yīng)的行視頻數(shù)據(jù)從片內(nèi)搬移到片外 YUV_SDRAM 存儲空間中。完成一幀車牌視頻圖像采集后,系統(tǒng)調(diào)用YUV轉(zhuǎn)RGB子程序,把YUV原始圖像轉(zhuǎn)換成RGB圖像,然后調(diào)用圖像處理算法,包括圖像預(yù)處理和車牌字符分割、識別等算法,最后系統(tǒng)把車牌識別結(jié)果通過網(wǎng)絡(luò)發(fā)送到ARM系統(tǒng)中,若此時系統(tǒng)接收到來自ARM系統(tǒng)的車牌圖像采集控制信號,系統(tǒng)就進入到下一次圖像采集和處理過程。
    Linux內(nèi)核是開源的實時操作系統(tǒng),具有很好的任務(wù)調(diào)度及管理功能,可以通過內(nèi)核配置對內(nèi)核進行裁剪。ARM系統(tǒng)程序都是運行在Linux操作系統(tǒng)中,需要在ARM平臺上搭建Linux系統(tǒng)環(huán)境,包括交叉編譯器、Uboot移植、Linux內(nèi)核移植和文件系統(tǒng)開發(fā)。程序設(shè)計的重點是各功能模塊的驅(qū)動程序設(shè)計,包括觸摸屏驅(qū)動、網(wǎng)絡(luò)驅(qū)動等。
    應(yīng)用程序是整個系統(tǒng)最上層的程序,為用戶提供良好的人機界面,實現(xiàn)系統(tǒng)交互功能,通過在ARM上移植Linux系統(tǒng),并在此基礎(chǔ)上設(shè)計GUI交互界面。應(yīng)用程序主要由Socket網(wǎng)絡(luò)通信和觸摸屏控制程序兩部分組成。網(wǎng)絡(luò)通信主要完成接收DSP系統(tǒng)發(fā)送過來的實時視頻圖像以及牌照識別結(jié)果,同時也實現(xiàn)給DSP系統(tǒng)發(fā)送車牌圖像采集觸發(fā)信號。觸摸屏控制程序主要完成采集觸摸點的坐標,當(dāng)用戶點擊GUI界面上的控制按鈕時,觸摸屏控制程序會相應(yīng)地給DSP發(fā)送圖像采集觸發(fā)信號。
    本嵌入式車牌識別系統(tǒng)充分利用了DSP強大的數(shù)據(jù)運算處理能力和ARM的控制處理能力,采用DSP+ARM的體系架構(gòu),將車牌圖像采集、圖像處理算法、網(wǎng)絡(luò)傳輸、實時顯示、觸摸控制等功能模塊集成為一體,提高了系統(tǒng)的穩(wěn)定性、可靠性和靈活性。系統(tǒng)具有良好的人機交互功能,并實現(xiàn)了系統(tǒng)的觸摸控制功能,人機交互界面可以實時顯示系統(tǒng)所采集到的車牌圖像信息,并可以實現(xiàn)對系統(tǒng)的控制和設(shè)置。在系統(tǒng)的網(wǎng)絡(luò)傳輸過程中,若增加視頻圖像壓縮和解碼功能模塊,還可提高圖像傳輸?shù)乃俣?,改善系統(tǒng)的實時性。
參考文獻
[1] 李亞峰.ARM嵌入式Linux設(shè)備驅(qū)動實例開發(fā)[M].北京:中國電力出版社,2008.
[2] Texas Instruments.TMS320DM642 video/imaging fixed-point digital signal processor[S].2004.
[3] 張龍,李霽野.基于DM642的視頻采集與傳輸系統(tǒng)設(shè)計[J].微計算機信息,2011,27(06):61-62.
[4] 陳振學(xué),汪國有,劉成云.一種新的車牌圖像字符分割與識別算法[J].微電子學(xué)與計算機,2007,24(2):42-44.
[5] 劉忠杰,宋小波.基于MATLAB的車牌識別系統(tǒng)設(shè)計與實現(xiàn)[J].微型機與應(yīng)用,2011,30(14):37-40.
[6] 何汶靜,黃子強.嵌入式系統(tǒng)的顯卡方案設(shè)計[J].電子技術(shù)應(yīng)用,2010,36(02):36-39.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。