【正文】
算量最小。robert39。同理對白底黑字的牌照可用R 通道,綠底白字的牌照可以用G 通道就可以明顯呈現(xiàn)出牌照區(qū)域的位置,便于后續(xù)處理。利用圖像工具箱的Car_Image_RGB=imread(‘Image_Name’)。在新的版本中也加入了對C,F(xiàn)ORTRAN,C++,JAVA的支持。MATLAB和Mathematica、Maple并稱為三大數(shù)學軟件。MATLAB是一種用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算的高級技術計算語言和交互式環(huán)境。(2) Matlab語言簡單,入門容易,程序設計不嚴格,自由度大,例如用戶無需對矩陣預定義即可使用。一個完整的車牌識別系統(tǒng)應包括車輛檢測、圖像采集、圖像預處理、車牌定位、字符分割、字符識別等單元。本文主要講述我完成這次課設所經歷的三個階段:總體方案設計、相關資料查詢、軟件實現(xiàn)。技術的核心包括車牌定位算法、車牌字符分割算法和光學字符識別算法等。C programming language。車牌識別主要經過牌照定位,即定位圖片中的牌照位置;牌照字符分割,就是把牌照中的字符分割出來;牌照字符識別,也就是把分割好的字符進行識別,最終組成牌照號碼。 桂林電子科技大學課程設計(論文)報告用紙 第 3 頁 共3頁課程設計(論文)說明書題 目: 基于Matlab車牌識別 院 (系): 信息與通信學院 專 業(yè): 通信工程 摘 要近幾年,車牌識別系統(tǒng)作為智能交通的一個重要方向越來越受到重視。關鍵詞:Matlab;c語言;定位;分割;識別;Abstract In recent years, the license plate recognition system as an important direction of the intelligent transportation is more and more attention. License plate recognition system can be used in the highway speeding car park management system management system of urban intersection electronic police district vehicle management system and other fields.In this paper, based on Matlab, using c language programming to realize the license plate recognition. License plate recognition is mainly through the license plate localization, namely, positioning image of license plate location。 Positioning。一個完整的車牌識別系統(tǒng)應包括車輛檢測、圖像采集、車牌識別等幾部分。在介紹我本次課程設計的設計原理的同時,也側重同時記錄了我是如何對于設計過程中遇到的問題進行分析和解決的。本次課設的目標就是基于matlab和c語言編程,通過對車輛檢測,還有采集車輛圖片,和圖像預處理,以及對車牌的定位,和字符的分割,最后對字符進行識別,最終可以實現(xiàn)車牌的識別。 (3)Matlab語言簡潔緊湊,使用方便靈活,庫函數(shù)豐富,并且內部集成了很多工具箱,為程序開發(fā)提供現(xiàn)成模塊。除了矩陣運算、繪制函數(shù)/數(shù)據(jù)圖像等常用功能外,MATLAB還可以用來創(chuàng)建用戶界面及與調用其它語言(包括C,C++和FORTRAN)編寫的程序。它在數(shù)學類科技應用軟件中在數(shù)值計算方面首屈一指。可以直接調用,用戶也可以將自己編寫的實用程序導入到MATLAB函數(shù)庫中方便自己以后調用,此外許多的MATLAB愛好者都編寫了一些經典的程序,用戶可以直接進行下載就可以用。即可將圖像讀取出來,這樣讀取得到的是RGB圖像,RGB圖像分別用紅、藍、綠三個色度值為一組代表每個像素的顏色,因此Car_Image_RGB是一個mn3的數(shù)組,m、n表示圖像像素的行、列數(shù)。原圖、灰度圖及其直方圖見圖2與圖3。,39。因此本課題使用了Robert算子。適當取門限T,做如下判斷:G(x,y)T,(x,y)為階躍狀邊緣點。由彩色轉換為灰度的過程叫做灰度化處理。原始黑白圖像39。,13)。背景圖像39。title(39。Car_Image_Perform=imclose(Car_Image_Erode,Se)。,[25,25])。經區(qū)域確定了,即可將車牌的四個邊界值確定下來。Zero_Col=zeros(1,x)。amp。amp。剪切得到的圖像如下。 同時采集大的圖像噪點依然存在,因此可以通過處理圖像的低頻部分來銳化圖像。圖9 車牌區(qū)域圖像濾波前效果圖10車牌區(qū)域圖像濾波后效果腐蝕已經在在上文介紹,膨脹剛好與腐蝕相反,運算規(guī)則是輸出圖像的像素值是輸入圖像鄰域中的最大值,在一個二值圖像中,只要一個像素值為1,則相應的輸出像素值為1。if bwarea(License_Image_Gray_2)/m/n= License_Image_Gray_2=imerode(License_Image_Gray_2,Se)。這樣,如果平均分配每個字符在牌照中占據(jù)的寬度,那么每個字符寬度為:width/7(width 為車牌圖像的寬度)。切割線同樣采用投影法Wide=0。End切割的字符時候符合比例要求采用if((Level1WideLevel2)amp。 else Word=[]。圖13 經切割的七個字符目前字符識別的方案有使用神經網(wǎng)絡和模板匹配法進行比對。由于圖像采集時圖像的像素值不一樣,經切割出來的字符的大小也不會不一樣,所以在進行匹配前必須先進行字符圖像歸一化。圖14 經歸一化后的七個字符字符識別步驟如下,建立模板字庫表讀取分割出來的字符第一個字符與模板中的漢字模板進行匹配第二個字符與模板中的字母模板進行匹配待識別字符與模板字符相減,值越小相似度越大,找到最小的一個即為匹配的最好的識別完成,輸出此模板對應值后5個字符與模板中的字母與數(shù)字模板進行匹配圖15 字符匹配流程匹配方法采用將目標圖像與模板圖像逐點做差,得到第三幅圖像,程序實現(xiàn)如下:for ii=1:40 or jj=1:20 Word_Image_Diff(ii,jj)=Word_Image(ii,jj)Word_Image_Code(ii,jj)。做完這次車牌識別課程設計后,我感覺它的工作量的確很大,差不多花費了我數(shù)周的時間一遍遍地改參數(shù)、看圖像。這本書內容豐富,自成一體,里面的許多內容與教材形成了互補。第三,為了完成車牌識別系統(tǒng),我從網(wǎng)上找了不少源代碼進行比較,這也鍛煉了我讀程序的能力。調試的過程非常麻煩,因為有的參數(shù)只能對某一幅圖像有用,對其它圖像根本識別沒法識別,所以為了使盡量多的圖像能被識別,我著實花了不少功夫。在做這個課程設計之前,我本以為車牌識別比較簡單,但是接觸以后才發(fā)現(xiàn)限制車牌識別的因素很多,要想識別任意圖像是非常困難的。)。)?;叶葓D39。灰度圖直方圖39。,39。title(39。1]。腐蝕后圖像39。,[40,40])。平滑圖像的輪廓39。title(39。myI=double(I5)。%temp為向量white_y的元素中的最大值,MaxY為該值的索引( 在向量中的位置) PY1=MaxY。 end PY2=MaxY。 end IY=I(PY1:PY2,:,:)。 while ((Blue_x(1,PX1)3)amp。 while ((Blue_x(1,PX2)3)amp。%對車牌區(qū)域的校正 PX2=PX2+2。行方向合理區(qū)域39。)imwrite(dw,39。39。jpg=strcat(filepath,filename)。b=rgb2gray(a)。figure(8)。g_min=d