圖形圖像論文處理_第1頁(yè)
已閱讀1頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  湖南商學(xué)院</b></p><p><b>  課 程 設(shè) 計(jì)</b></p><p>  </p><p>  A組第三題 數(shù)字車牌識(shí)別系統(tǒng)</p><p><b>  摘要</b></p>&l

2、t;p>  隨著社會(huì)的迅猛發(fā)展,人們的生活水平越來(lái)越高,各種私家車也越來(lái)越多,而車牌號(hào)碼,作為機(jī)動(dòng)車輛唯一的管理標(biāo)志符號(hào),在交通管理中具有不可替代的作用。所以高效,快速,實(shí)時(shí)地進(jìn)行車輛牌照辨認(rèn)對(duì)于構(gòu)建和諧文明的交通氛圍是至關(guān)重要的。隨著智能交通系統(tǒng)的的慢慢普及,車牌識(shí)別系統(tǒng)的實(shí)時(shí)性和準(zhǔn)確性受到了人們的廣泛關(guān)注。 </p><p>  車牌識(shí)別是數(shù)字圖像處理的范疇,它主要包括圖像的預(yù)處理,車牌定位,車牌號(hào)碼分

3、割,車牌號(hào)碼識(shí)別和結(jié)果顯示輸出。在本文中以上各方面都一一做了詳細(xì)的研究,圖像的預(yù)處理介紹了圖像的灰度化、二值化、算子邊緣檢測(cè)等方面;車牌號(hào)碼區(qū)域的定位采用了計(jì)算x、y方向車牌區(qū)域的方法;車牌號(hào)碼分割采用了直接分割法中的垂直投影法,由于字符塊在豎直方向上的投影不僅在字符間取得局部最小值,而且在字符內(nèi)的間隙處也能取得局部最小值,因此字符的正確分割位置也應(yīng)該是在上述局部最小值的附近;車牌號(hào)碼識(shí)別運(yùn)用的是模板匹配。 </p>&l

4、t;p>  本文采用了matlab編程工具來(lái)完成本文算法的實(shí)現(xiàn),編程簡(jiǎn)單易執(zhí)行,而且具有圖形用戶界面和專業(yè)工具箱。 </p><p>  關(guān)鍵詞:圖像預(yù)處理;車牌定位;車牌分割;車牌識(shí)別;</p><p><b>  1.1概述</b></p><p>  1.1.1 本課題的研究目的及意義</p><p>  車

5、牌識(shí)別系統(tǒng)的主要任務(wù)是分析和處理攝取到的復(fù)雜背景下的車輛圖像,定位分割牌照,最后自動(dòng)識(shí)別汽車牌照上的字符,車牌識(shí)別是利用車輛牌照的唯一性來(lái)識(shí)別和統(tǒng)計(jì)車輛,它是以數(shù)字圖像處理、模式識(shí)別、計(jì)算機(jī)視覺(jué)等技術(shù)為基礎(chǔ)的智能識(shí)別系統(tǒng)。在現(xiàn)代化交通發(fā)展中車牌識(shí)別系統(tǒng)是制約交通系統(tǒng)智能化、現(xiàn)代化的重要因素,車牌識(shí)別系統(tǒng)應(yīng)該能夠從一幅圖像中自動(dòng)提取車輛圖像,自動(dòng)分割牌照?qǐng)D像,對(duì)字符進(jìn)行正確識(shí)別,從而降低交通管理工作的復(fù)雜度。車牌識(shí)別系統(tǒng)將獲取的車輛圖像進(jìn)

6、行一系列的處理后,以字符串的形式輸出結(jié)果,這樣不但數(shù)據(jù)量小,便于存儲(chǔ),操作起來(lái)也更容易,因此車牌識(shí)別系統(tǒng)的便捷性是人工車牌識(shí)別所不能比擬的,它蘊(yùn)藏著很大的經(jīng)濟(jì)價(jià)值和發(fā)展空間,對(duì)車牌識(shí)別技術(shù)焦作大學(xué)畢業(yè)設(shè)計(jì)說(shuō)明書 的研究是非常有的意義的。</p><p>  車牌字符識(shí)別的實(shí)質(zhì)是對(duì)車牌上的漢字、字母和數(shù)字進(jìn)行快速準(zhǔn)確的識(shí)別并以字符串的形式輸出識(shí)別結(jié)果,字符識(shí)別技術(shù)是整個(gè)車牌識(shí)別系統(tǒng)的關(guān)鍵。車牌識(shí)別系統(tǒng)與其

7、它圖像識(shí)別系統(tǒng)相比較而言要復(fù)雜的多,在字符識(shí)別中,漢字識(shí)別是最難也是最關(guān)鍵的部分,很多國(guó)外較為成熟的車牌識(shí)別系統(tǒng)無(wú)法進(jìn)入中國(guó)市場(chǎng)的原因就在于無(wú)法有效的識(shí)別漢字。此外,由于外界環(huán)境的影響,系統(tǒng)必須保證能夠在任何天氣情況下全天不間斷的正常工作。到目前為止,在眾多的車牌自動(dòng)識(shí)別方法中還沒(méi)有一個(gè)可以達(dá)到理想的效果,因此對(duì)車牌識(shí)別技術(shù)的研究意義重大。 </p><p>  1.1.2 設(shè)計(jì)原理</p>

8、<p>  車牌識(shí)別系統(tǒng)的攝像頭通過(guò)對(duì)經(jīng)過(guò)指定區(qū)域的機(jī)動(dòng)車輛進(jìn)行拍照,因?yàn)檎掌瑫?huì)受到光照、拍攝位置和車輛行駛速度的影響,導(dǎo)致拍攝的圖片不能準(zhǔn)確的確定汽車的車牌。而車牌識(shí)別系統(tǒng)就通過(guò)對(duì)機(jī)動(dòng)車輛的照片進(jìn)行圖像預(yù)處理、車牌定位、字符分割、字符識(shí)別等技術(shù)手段,從而得到清晰的機(jī)動(dòng)車牌照的照片,從而提高現(xiàn)代智能交通的管理效率,可以說(shuō)車牌識(shí)別系統(tǒng)對(duì)于現(xiàn)代智能交通至關(guān)重要。</p><p>  1.2 matla

9、b及其圖像處理工具概述</p><p>  MATLAB是MATrix LABomtofy(矩陣實(shí)驗(yàn)室)的縮寫,是Math works公司開(kāi)發(fā)的一種功能強(qiáng)、效率高、簡(jiǎn)單易學(xué)的數(shù)學(xué)軟件。MATLAB 7.1是一套功能十分強(qiáng)大的工程計(jì)算及數(shù)據(jù)分析軟件,其應(yīng)用范圍涵蓋了數(shù)學(xué)、工業(yè)技術(shù)、電子科學(xué)、醫(yī)療衛(wèi)生、建筑、金融、數(shù)字圖像處理等各個(gè)領(lǐng)域。MATLAB的圖像處理工具箱,功能十分強(qiáng)大,支持的圖像文件格式豐富,如:<

10、/p><p>  BMP、·.JPG、·.JPEG、·.GIF、·.TIF、}.TiFF、}.PNG、·.Pcx、·.XWD、·.HDF、·.ICO、}.CUR等。本文將給出MATLAB的圖像處理工具箱中的圖像處理函數(shù)實(shí)現(xiàn)圖像處理與分析的應(yīng)用技術(shù)實(shí)例。</p><p><b>  1.3 工作流程<

11、/b></p><p>  1.3.1系統(tǒng)框架結(jié)構(gòu)和工作流程</p><p>  汽車牌照識(shí)別(LPR)系統(tǒng)通過(guò)引入數(shù)字?jǐn)z像技術(shù)和計(jì)算機(jī)信息管理技術(shù),采用先進(jìn)的圖像處理、模式識(shí)別和人工智能技術(shù),通過(guò)對(duì)圖像的采集和處理,獲得更多的信息,從而達(dá)到更高的智能化管理程度。在LPR 系統(tǒng)產(chǎn)品的性能指標(biāo)中,識(shí)別率和識(shí)別速度難以同時(shí)提高其中原因既包括圖像處理技術(shù)不夠成熟,又受到攝像設(shè)備計(jì)

12、算機(jī)等性能的限制。因此,研究高速準(zhǔn)確的定位與識(shí)別算法,是當(dāng)前的主要任務(wù)。</p><p>  汽車車牌自動(dòng)識(shí)別系統(tǒng)主要包括觸發(fā)拍照、圖像采集、圖像預(yù)處理、車牌定位、字符分割、字符識(shí)別、輸出結(jié)果等單元。</p><p>  圖1 車牌識(shí)別系統(tǒng)工作流程</p><p>  1.4各功能模塊的實(shí)現(xiàn)</p><p>  1.4.1 設(shè)計(jì)方案</

13、p><p>  該系統(tǒng)主要是由圖像處理和字符識(shí)別兩部分組成。其中圖像處理部分包括圖像預(yù)處理、邊緣提取模塊、牌照的定位以及分割模塊。字符識(shí)別部分可以分為字符分割與特征提取和單個(gè)字符識(shí)別兩個(gè)模塊。 </p><p>  字符識(shí)別部分要求照片清晰,但由于該系統(tǒng)的攝像頭長(zhǎng)時(shí)間在室外工作,加上光照條件、攝像頭角度和距離、車輛自身?xiàng)l件以及車輛的行駛速度的影響,想拍出較理想的圖片很困難。因此,我們

14、要對(duì)攝像頭拍攝的圖片進(jìn)行預(yù)處理,主要包括圖片灰度化和圖片邊緣提取等。 </p><p>  車牌定位和車牌分割是整個(gè)系統(tǒng)的關(guān)鍵,其作用是在經(jīng)圖象預(yù)處理后的灰度圖象中確定牌照的具體位置,并將包含牌照字符的一塊子圖象從整個(gè)圖象中分割出來(lái),供字符識(shí)別子系統(tǒng)識(shí)別之用,分割的準(zhǔn)確與否直接關(guān)系到整個(gè)牌照字符識(shí)別系統(tǒng)的識(shí)別率。 </p><p>  車牌識(shí)別系統(tǒng)的最終目的就是將不清楚

15、的車牌照片進(jìn)行識(shí)別,輸出清晰的圖片?,F(xiàn)在字符識(shí)別的常用方法有模板匹配法和神經(jīng)網(wǎng)絡(luò)模型法。</p><p>  1.4.2 圖像采集</p><p>  1.4.2.1 圖像的打開(kāi)與退出</p><p>  本文采用的是Matlab GUI 程序設(shè)計(jì)來(lái)設(shè)計(jì)圖形用戶界面,界面設(shè)計(jì)如下:</p><p>  圖2 用戶界面圖像打開(kāi)</p>

16、;<p>  其中圖像的打開(kāi)調(diào)用的是</p><p>  [filename,pathname]=uigetfile({'*.jpg';'*.bmp';'*.gif';'*.*'},'載入圖像');這句代碼拿到圖片的存儲(chǔ)路徑和名字,然后通過(guò)imread函數(shù)將圖片讀取出來(lái)并顯示在axes1中。退出調(diào)用代碼close all

17、;表示退出當(dāng)前的系統(tǒng)界面。</p><p>  1.4.2.2圖像的保存與另存</p><p><b>  圖3 圖像保存</b></p><p>  上圖為圖像保存與另存時(shí)彈出的界面,圖片保存時(shí)通過(guò)getframe(handles.axes1);拿到對(duì)應(yīng)的圖片,將其寫到用戶選擇的保存路徑下,本文中保存時(shí)會(huì)默認(rèn)圖片名為Undefined.bmp

18、。</p><p>  1.4.3 圖像預(yù)處理</p><p>  1.4.3.1圖像的矯正變換</p><p>  本文對(duì)汽車圖像進(jìn)行了旋轉(zhuǎn)、鄰近插值、平移等相應(yīng)的矯正變換操作,用戶輸入需要的操作參數(shù)即可得到對(duì)應(yīng)的操作效果,運(yùn)行結(jié)果截圖如下:</p><p>  圖4 原圖的各種矯正變換圖像</p><p>  1.

19、4.3.2圖像灰度化及其直方圖</p><p>  汽車圖像樣本目前大都是通過(guò)攝像機(jī)、數(shù)碼相機(jī)等設(shè)備拍攝獲取的,因而預(yù)處理前的圖像都是彩色圖像。真彩色圖像又稱RGB圖像,它是利用R、G、B分量表示一個(gè)像素的顏色,R、G、B分別代表紅、綠、藍(lán)3種不同的顏色,通過(guò)三基色可以合成出任意顏色。而每個(gè)分量有255種值可取,這樣一個(gè)像素點(diǎn)可以有,1600多萬(wàn)(255*255*255)的顏色的變化范圍。而灰度圖像是R、G、B三

20、個(gè)分量相同的一種特殊的彩色圖像,每一個(gè)像素點(diǎn)的變化范圍為255種,所以在數(shù)字圖像處理種一般先將各種格式的圖像轉(zhuǎn)變成灰度圖像以使后續(xù)的圖像的計(jì)算量變得少一些?;叶葓D像的描述與彩色圖像一樣仍然反映了整幅圖像的整體和局部的色度和亮度等級(jí)的分布和特征。</p><p>  在MATLAB中我們可以調(diào)用im2gray函數(shù)對(duì)圖像進(jìn)行灰度化處理。灰度圖及其直方圖如下:</p><p>  圖5 灰度圖

21、 圖6 灰度直方圖 </p><p>  1.4.3.3圖像的邊緣檢測(cè)</p><p>  邊緣是指圖像灰度發(fā)生空間突變或者在梯度方向上發(fā)生突變的像素的集合。用攝像機(jī)采集到的機(jī)動(dòng)車圖像由于受到噪聲干擾以及車輛本身的影響,使得獲得的圖像質(zhì)量不理想。因此,在進(jìn)行對(duì)汽車牌照的定位及字符識(shí)別之前需要先對(duì)車輛圖像進(jìn)行邊緣檢測(cè)處理,提高圖像的質(zhì)量,使其易于后面的

22、分割和識(shí)別。通過(guò)良好的邊緣檢測(cè)可以大幅度的降低噪聲、分離出復(fù)雜環(huán)境中的車輛圖像、保留完好的車牌字符信息,方便后面的車牌精確定位與字符識(shí)別。 </p><p>  由于車牌識(shí)別系統(tǒng)攝像頭安裝位置固定以及機(jī)動(dòng)車車牌的固有屬性,我們可以發(fā)現(xiàn)機(jī)動(dòng)車車牌圖像都處在水平的矩形區(qū)域,在圖像中位置較為固定,車牌中字符都是按水平方向排列。因?yàn)橛羞@些明顯的特征,經(jīng)過(guò)適當(dāng)?shù)膱D像變換,可以清晰的呈現(xiàn)出車牌的邊緣。本文采用經(jīng)典的

23、Roberts邊緣檢測(cè)算子來(lái)對(duì)圖像進(jìn)行邊緣檢測(cè)。 </p><p>  灰度化和邊緣檢測(cè)的MATLAB程序及其運(yùn)行結(jié)果如下:</p><p><b>  global I;</b></p><p>  global img;</p><p>  axes(handles.axes2);</p>&

24、lt;p>  img= rgb2gray(I);</p><p>  imshow(img);</p><p>  title('圖像灰度化');</p><p>  global BW1;</p><p>  global img; </p><p>  axes(handles.axes2);

25、</p><p>  BW1=edge(img,'robert',0.05,'both'); </p><p>  imshow(BW1); </p><p>  title('robert算子邊緣處理');</p><p>  圖七 robert算子邊緣檢測(cè)圖</p><

26、p>  1.4.3.4圖像腐蝕、平滑化及移除小對(duì)象</p><p>  邊緣檢測(cè)后圖片中仍有一些不相關(guān)的白色區(qū)域所以需要繼續(xù)對(duì)圖像進(jìn)行處理。腐蝕的過(guò)程收縮或細(xì)化二值化圖像中的對(duì)象,收縮的方式和程度由一個(gè)結(jié)構(gòu)元素控制。結(jié)構(gòu)元素(Se)是一個(gè)用來(lái)檢查輸入圖像并比其小很多的元素只有0和1的矩陣,其大小形狀并沒(méi)有特定的要求,多為二維的。本次設(shè)計(jì)中采用imerode()函數(shù)實(shí)現(xiàn)腐蝕:</p><p

27、>  global bw;</p><p>  global BW1;</p><p>  axes(handles.axes2);</p><p>  if isrgb(BW1)</p><p>  msgbox('不是灰度圖,不能進(jìn)行腐蝕操作','出錯(cuò)');</p><p>&

28、lt;b>  else</b></p><p>  se=[1;1;1];</p><p>  bw=imerode(BW1,se);</p><p>  對(duì)圖像做完腐蝕操作以后,車牌圖像往往還存在一些孤立的噪點(diǎn)。在汽車牌照?qǐng)D像處理初期,若不能有效抑制或者去除這些噪點(diǎn),將影響車牌定位的準(zhǔn)確性或者造成無(wú)法定位。通常采用圖像平滑的方法去除噪點(diǎn)。 <

29、;/p><p>  圖像平滑包括空域?yàn)V波和頻域?yàn)V波。其中空域?yàn)V波中采用平滑濾波器的中值濾波去除噪點(diǎn)的效果最好。中值濾波的主要原理是:首先確定一個(gè)以某個(gè)像素為中心點(diǎn)的鄰域,一般為方形鄰域;然后將鄰域中的各個(gè)像素的灰度值進(jìn)行排序,取其中間值作為中心點(diǎn)像素灰度的新值,這里的鄰域通常被稱為窗口;當(dāng)窗口在圖像中上下左右進(jìn)行移動(dòng)后,利用中值濾波算法可以很好地對(duì)圖像進(jìn)行平滑處理。圖像平滑化處理的代碼如下:</p>&

30、lt;p>  global pw;</p><p>  global bw;</p><p>  axes(handles.axes2);</p><p>  se=strel('rectangle',[40,40]);</p><p>  pw=imclose(bw,se);</p><p> 

31、 imshow(pw);</p><p>  title('平滑化處理');</p><p>  一般的車牌識(shí)別還要對(duì)小對(duì)象進(jìn)行移除,有時(shí)候因?yàn)榕恼赵?,即使?duì)圖像進(jìn)行了很好的預(yù)處理,還是不能排除一些比較大的又和車牌比較相像的地方,所以僅僅只進(jìn)行平滑化處理是無(wú)法排除其對(duì)車牌定位的影響的,因此需要對(duì)小對(duì)象進(jìn)行移除。</p><p>  以下為圖像進(jìn)行相

32、應(yīng)的腐蝕、平滑化以及移除小對(duì)象后的結(jié)果:</p><p>  圖 8 腐蝕后圖像 圖9 圖像平滑化</p><p>  圖10 移除小對(duì)象圖像</p><p>  1.4.4 車牌定位</p><p>  1.4.4.1 車牌的定位</p><p>  該系統(tǒng)的攝像頭拍攝的圖片是整個(gè)機(jī)

33、動(dòng)車的圖片,而只有車牌部分是對(duì)系統(tǒng)有用的。所以我們要對(duì)照片進(jìn)行車牌定位和分割。車牌的定位和分割是從經(jīng)過(guò)圖像預(yù)處理后的灰度圖像中確定牌照位置,并將車牌部分從整個(gè)圖像中分割出來(lái),從而進(jìn)行字符識(shí)別。車牌圖像的灰度圖的車牌部分是一個(gè)水平度很高的長(zhǎng)方形圖樣,在原圖中比較集中,且灰度值和周圍圖樣有明顯差異,因此很容易用邊緣檢測(cè)來(lái)對(duì)圖像進(jìn)行分割。車牌定位和分割的準(zhǔn)確度直接關(guān)系到最后的字符識(shí)別的質(zhì)量。</p><p>  圖11

34、 車牌定位流程圖</p><p>  圖像預(yù)處理中已經(jīng)對(duì)圖片進(jìn)行過(guò)腐蝕、平滑化、移除最小化等去除圖像雜質(zhì)的操作,接下來(lái)利用尋找X和Y方向的車牌區(qū)域來(lái)對(duì)車牌進(jìn)行最后的定位。</p><p>  圖12 X軸方向的車牌區(qū)域 圖13車牌定位</p><p>  將得到的X方向和Y方向的車牌區(qū)域合起來(lái)就能對(duì)最終的車牌進(jìn)行定位,即通過(guò)dw=I(PY1

35、:PY2,PX1:PX2); 其中I為原圖,dw即為我們需要的車牌圖像。</p><p>  1.4.4.2對(duì)定位后的車牌的進(jìn)一步處理</p><p>  定位后車牌圖像是彩色的,會(huì)占用較大的存儲(chǔ)空間,加重計(jì)算機(jī)負(fù)擔(dān)。且車輛圖片不可避免存在噪聲,所以要對(duì)圖像進(jìn)行灰度化,二值化以及濾波處理。圖像的二值化處理就是將圖像上的點(diǎn)的灰度置為兩個(gè)數(shù)值,通常為0或255,使整個(gè)圖像呈現(xiàn)出明顯的黑白效果

36、。也就是將256個(gè)亮度等級(jí)的灰度圖像通過(guò)適當(dāng)?shù)拈T限值選取而獲得仍然可以反映圖像整體和局部特征的二值化圖像。濾波則是為了除去圖像噪聲。濾波方法有多種,本文采取的濾波方法為均值濾波。均值濾波是典型的線性濾波算法,指在圖像上對(duì)目標(biāo)像素給一個(gè)模板,該模板包括了其周圍的臨近像素。再用模板中的全體像素的平均值來(lái)代替原來(lái)像素值。 </p><p>  圖14 車牌定位后的進(jìn)一步處理</p><p&

37、gt;  通過(guò)對(duì)牌照做以上的一些去除雜質(zhì)的處理后,開(kāi)始對(duì)車牌進(jìn)行字符分割。</p><p>  1.4.5 字符分割和歸一化處理</p><p>  圖15 字符分割與歸一化流程圖</p><p>  在汽車牌照自動(dòng)識(shí)別過(guò)程中,字符分割有承前啟后的作用。它在前期牌照定位的基礎(chǔ)上進(jìn)行字符的分割,然后再利用分割的結(jié)果進(jìn)行字符識(shí)別。將得到的車牌區(qū)域圖像進(jìn)行二值化處理后,對(duì)

38、圖像進(jìn)行垂直投影,投影圖上有明顯的類似于峰谷的波形起伏變化, 通過(guò)對(duì)投影圖上的波形從左向右進(jìn)行掃描,根據(jù)谷和峰的特征就可以判斷出每個(gè)字符的位置;計(jì)算垂直峰,檢測(cè)合理的字符高寬比。在字符切割時(shí),往往由于閾值取得不好,導(dǎo)致字符切割不準(zhǔn)確,針對(duì)這種情況,可以對(duì)切割出的字符寬度進(jìn)行統(tǒng)計(jì)分析,用以指導(dǎo)切割,對(duì)因錯(cuò)誤切割過(guò)寬的字符進(jìn)行分裂處理。</p><p>  圖16 字符歸一化后圖像</p>&

39、lt;p>  1.4.6 字符的識(shí)別</p><p>  字符的識(shí)別目前用于車牌字符識(shí)別(OCR)中的算法主要有基于模板匹配的OCR算法以及基于人工神經(jīng)網(wǎng)絡(luò)的OCR算法?;谀0迤ヅ涞腛CR的基本過(guò)程是:首先對(duì)待識(shí)別字符進(jìn)行二值化并將其尺寸大小縮放為字符數(shù)據(jù)庫(kù)中模板的大小,然后與所有的模板進(jìn)行匹配,最后選最佳匹配作為結(jié)果。模板匹配的主要特點(diǎn)是實(shí)現(xiàn)簡(jiǎn)單,當(dāng)字符較規(guī)整時(shí)對(duì)字符圖像的缺損、污跡干擾適應(yīng)力強(qiáng)且識(shí)別率

40、相當(dāng)高。綜合模板匹配的這些優(yōu)點(diǎn)我們將其用為車牌字符識(shí)別的主要方法。 </p><p>  模板匹配是圖象識(shí)別方法中最具代表性的基本方法之一,它是將從待識(shí)別的圖象或圖象區(qū)域f(i,j)中提取的若干特征量與模板T(i,j)相應(yīng)的特征量逐個(gè)進(jìn)行比較,計(jì)算它們之間規(guī)格化的互相關(guān)量,其中互相關(guān)量最大的一個(gè)就表示期間相似程度最高,可將圖象歸于相應(yīng)的類。也可以計(jì)算圖象與模板特征量之間的距離,用最小距離法判定所屬類。然

41、而,通常情況下用于匹配的圖象各自的成像條件存在差異,產(chǎn)生較大的噪聲干擾,或圖象經(jīng)預(yù)處理和規(guī)格化處理后,使得圖象的灰度或像素點(diǎn)的位置發(fā)生改變。在實(shí)際設(shè)計(jì)模板的時(shí)候,是根據(jù)各區(qū)域形狀固有的特點(diǎn),突出各類似區(qū)域之間的差別,并將容易由處理過(guò)程引起的噪聲和位移等因素都考慮進(jìn)去,按照一些基于圖象不變特性所設(shè)計(jì)的特征量來(lái)構(gòu)建模板,就可以避免上述問(wèn)題。</p><p>  圖17 字符識(shí)別流程圖</p><p

42、>  此處采用相減的方法來(lái)求得字符與模板中哪一個(gè)字符最相似,然后找到相似度最大的輸出。模板庫(kù)的合理建造是字符識(shí)別準(zhǔn)確的關(guān)鍵之一,所以在字符識(shí)別之前必須把模板庫(kù)設(shè)置好。汽車牌照的字符一般有7個(gè),大部分車牌第一位是漢字,通常代表車輛所屬省份,或是軍種警別等有特定含義的字符簡(jiǎn)稱;緊接其后的為字母與數(shù)字。車牌字符識(shí)別與一般文字識(shí)別在于它的字符數(shù)有限,十個(gè)阿拉伯?dāng)?shù)字0~9,26個(gè)大寫英文字母A~Z以及相關(guān)的車牌用漢字:京、滬、蘇、臺(tái)、港、澳

43、、甲、乙、丙、使、領(lǐng)、學(xué)、試、境、消、邊、警等,以及新式軍牌中的漢字南、蘭、廣、北、沈、濟(jì)、空、海等;車牌顏色:藍(lán)、白、黑、黃等。所以建立字符模板庫(kù)也極為方便。</p><p>  首先取字符模板,接著依次取待識(shí)別字符與模板進(jìn)行匹配,將其與模板字符相減,得到的0越多那么就越匹配。把每一幅相減后的圖的0值個(gè)數(shù)保存,即為識(shí)別出來(lái)的結(jié)果。 </p><p><b>  圖18

44、 識(shí)別結(jié)果</b></p><p>  1.5實(shí)驗(yàn)結(jié)果與分析</p><p>  本文以MATLAB7.0為實(shí)驗(yàn)平臺(tái),以攝取的彩色車牌照片為對(duì)象進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)的最終結(jié)果如圖18所示。  </p><p>  在得到這個(gè)結(jié)果之前,需要對(duì)車牌圖像進(jìn)行預(yù)處理、車牌定位、車牌分割等處理。由于攝像部分多工作于開(kāi)放的戶外環(huán)境,加之車輛牌照的整潔度

45、、自然光照條件、拍攝時(shí)攝像機(jī)與牌照的矩離和角度以及車輛行駛速度等因素的影響,牌照?qǐng)D象可能出現(xiàn)模糊、歪斜和缺損等嚴(yán)重缺陷,因此需要對(duì)原始圖象進(jìn)行識(shí)別前的預(yù)處理。預(yù)處理包括灰度化、車牌校正、平滑處理等。在本文中根據(jù)采集到的圖像本身的特點(diǎn),對(duì)它進(jìn)行了灰度化的處理。再經(jīng)過(guò)適當(dāng)?shù)膱D象變換,它在整幅中可以明顯地呈現(xiàn)出其邊緣,于是對(duì)其邊緣提取,此處邊緣的提取采用的是Roberts算子。 </p><p>  本文中對(duì)

46、圖像進(jìn)行了腐蝕、平滑處理,腐蝕和平滑都具有濾波的作用,腐蝕是對(duì)圖像內(nèi)部做濾波處理,平滑是對(duì)噪聲進(jìn)行濾波。這樣可以把字符與字符之間的雜色點(diǎn)去除,只有白色的字符和黑色的背景存在,這樣有利于的字符分割進(jìn)行。最后還用了bwareaopen來(lái)去除對(duì)象中不相干的小對(duì)象。再根據(jù)車牌底色等有關(guān)的先驗(yàn)知識(shí),采用彩色像素點(diǎn)統(tǒng)計(jì)的方法,先確定行方向的車牌區(qū)域,再確定列方向的區(qū)域,得出最終的車牌區(qū)域。車牌分割即把車牌的整體區(qū)域分割成單字符區(qū)域,具有承上啟下的作

47、用。其難點(diǎn)在于噪聲合字符粘連,斷裂對(duì)字符的影響,因此必須先將定位后的車牌進(jìn)一步處理。包括灰度化、二值化、均值濾波、膨脹或腐蝕處理。分割采用的方法為垂直投影。為滿足下一步字符識(shí)別的需要,將分割后的字符歸一化。  </p><p>  最后將分割出來(lái)的字符運(yùn)用模板匹配的方法與模板字符進(jìn)行匹配,將其與模板字符相減,得到的0越多那么就越匹配。把每一幅相減后的圖的0值個(gè)數(shù)保存,然后找數(shù)值最大的,即為識(shí)別

48、出來(lái)的結(jié)果。模板的制作很重要,必須要用精確的模板,否則就不能正確的識(shí)別。 </p><p>  總之,盡管目前牌照字符的識(shí)別率還不理想,但是只要在分割出的字符的大小、位置的歸一化,以及嘗試提取分類識(shí)別能力更好的特征值和設(shè)計(jì)分類器等環(huán)節(jié)上再完善,進(jìn)一步提高識(shí)別率是完全可行的。</p><p>  C組第一題 圖像的點(diǎn)運(yùn)算</p><p><b>

49、  1.1課程設(shè)計(jì)目的</b></p><p>  1、提高分析問(wèn)題、解決問(wèn)題的能力,進(jìn)一步鞏固數(shù)字圖像處理系統(tǒng)中的基本原理與方法。</p><p>  2、熟悉掌握一門計(jì)算機(jī)語(yǔ)言,可以進(jìn)行數(shù)字圖像應(yīng)用處理的開(kāi)發(fā)設(shè)計(jì)。</p><p><b>  1.2設(shè)計(jì)要求</b></p><p>  1、對(duì)對(duì)比度低,動(dòng)

50、態(tài)范圍較窄的圖像進(jìn)行對(duì)比度拉伸</p><p>  2、對(duì)不同的點(diǎn)運(yùn)算方法進(jìn)行研究。</p><p>  3、分析不同方法的處理效果</p><p>  1.3 圖像點(diǎn)運(yùn)算的原理</p><p>  點(diǎn)運(yùn)算也稱為對(duì)比度增強(qiáng)、對(duì)比度拉伸或灰度變換,是一種通過(guò)圖像中的每一個(gè)像素值(即像素點(diǎn)上的灰度值)進(jìn)行運(yùn)算的圖像處理方式。點(diǎn)運(yùn)算是像素的逐點(diǎn)運(yùn)算

51、,它將輸入圖像映射為輸出圖像,輸出圖像每個(gè)像素點(diǎn)的灰度值僅由對(duì)應(yīng)的輸入像素點(diǎn)的灰度值決定。點(diǎn)運(yùn)算不會(huì)改變圖像內(nèi)像素點(diǎn)之間的空間關(guān)系。點(diǎn)運(yùn)算分為線性點(diǎn)運(yùn)算和非線性點(diǎn)運(yùn)算兩種。線性點(diǎn)運(yùn)算一般包括調(diào)節(jié)圖像的對(duì)比度和灰度標(biāo)準(zhǔn)化;非線性點(diǎn)運(yùn)算一般包括閥值化處理和直方圖均衡化。</p><p>  Matlab圖像處理工具箱沒(méi)有提供對(duì)圖像進(jìn)行直接點(diǎn)運(yùn)算的函數(shù),將圖像的點(diǎn)運(yùn)算過(guò)程直接集成在某些像處理函數(shù)中(例如:直方圖均衡化函

52、數(shù)histeq和imhist)。如果用戶僅僅是希望對(duì)圖像進(jìn)行點(diǎn)運(yùn)算處理,那么可以充分利用Matlab強(qiáng)大的矩陣運(yùn)算能力,對(duì)圖像數(shù)據(jù)矩陣調(diào)用Matlab計(jì)算函數(shù)進(jìn)行處理。</p><p>  1.4幾種常用點(diǎn)運(yùn)算</p><p>  1.4.1灰度線性變換</p><p>  灰度變換,是一種通過(guò)對(duì)圖像中的每一個(gè)像素值(即像素點(diǎn)上的灰度值)進(jìn)行計(jì)算,從而改善圖像顯示效

53、果的操作。灰度變換是圖像數(shù)字化及圖像顯示的重要工具。在真正進(jìn)行像素處理之前,有時(shí)可以利用灰度變換來(lái)克服圖像數(shù)字化設(shè)備的局限性。</p><p>  設(shè)輸入圖像為A(x,y),輸出圖像為B(x,y),則灰度變換可表示為</p><p>  B(x,y)=f[A(x,y)]</p><p>  灰度變換完全由灰度映射函數(shù)f決定,f可是線性函數(shù)或非線性函數(shù)。</p&

54、gt;<p>  線性灰度變換 ,即假定原圖像f(x,y)的灰度變換范圍為[a,b],希望變換后的圖像g(x,y)的灰度變換擴(kuò)展為[c,d],則采用下述線性變換來(lái)實(shí)現(xiàn):</p><p>  上式的關(guān)系可以用圖1表示。實(shí)際上是是曝光不充分圖像中黑的更黑白的更白,從而提高圖像灰度對(duì)比度 </p><p><b>  圖1</b></p>&

55、lt;p>  1.4.2 灰度拉伸</p><p>  Matlab圖像處理工具箱中提供的imadjust函數(shù),可以實(shí)現(xiàn)圖像的灰度變換,是對(duì)比度增強(qiáng)。其語(yǔ)法格式為:</p><p>  J=imadjust(I,[low,high],[bottom,top],gamma)</p><p>  其功能是:返回圖像I經(jīng)過(guò)直方圖調(diào)整后的圖像J。[low,high]為

56、源圖像中要變換的灰度范圍,[bottom,top]指定變換后的灰度范圍,兩者的默認(rèn)值均為[0,1]。gamma為矯正量,其取值決定了輸入圖像到輸出圖像的灰度映射方式,即決定了增強(qiáng)低灰度還是增強(qiáng)高灰度。如果gamma 等于1時(shí),為線性變換;如果gamma小于1 時(shí)那么映射將會(huì)對(duì)圖像的像素值加權(quán),使輸出像素灰度值比原來(lái)大;如果gamma</p><p>  大于1時(shí),那么映射加權(quán)后的灰度值比原來(lái)小。</p>

57、;<p>  由于在設(shè)計(jì)中用到的圖片是RGB彩色圖像,所以需要用rgb2gray()函數(shù)來(lái)將圖片轉(zhuǎn)成灰度圖片,rgb2gray()函數(shù)格式:rgb2gray(R),R為RGB圖像。</p><p>  下面的代碼顯示了一幅RGB彩圖轉(zhuǎn)化后的(灰度圖、直方圖及處理后的圖像)</p><p>  R = imread(圖片1.jpg);%RGB圖像</p><

58、p>  G=rgb2gray(R);%灰度圖G</p><p>  J=imadjust(G,[0 0.3],[0 1],0.8);</p><p>  subplot(2,2,1);imhist(G);title('原圖像直方圖');</p><p>  subplot(2,2,2);imhist(J);title('轉(zhuǎn)化后的直方圖&

59、#39;);</p><p>  subplot(2,2,3);imshow(G);title('轉(zhuǎn)換前的灰度圖');</p><p>  subplot(2,2,4);imshow(J);title('轉(zhuǎn)轉(zhuǎn)后的圖像');</p><p>  圖二 線性灰度變換處理效果圖</p><p>  1.4.3 灰度均

60、衡</p><p>  Matla圖像處理工具箱提供了用于直方圖均衡化的histep。Histep函數(shù)的語(yǔ)法格式為:</p><p>  J=histeq(I,hgram)</p><p>  其功能是:將原始圖像I的直方圖變成用戶指定的向量hgram,hgram中的各元素值域?yàn)閇0 ,1]。</p><p>  J=histeq(I,n)&

61、lt;/p><p>  其功能是:指定直方圖均衡化后的灰度級(jí)數(shù)n,默認(rèn)值為64。</p><p>  [J,T]=histeq(I,....)</p><p>  其功能是:返回從能將圖像I的灰度級(jí)直方圖變換成圖像J的直方圖的變換T。</p><p>  Newmap=histeq(X,map,hgram)</p><p>

62、;  Newmap=histeq(X,map)</p><p>  [newmap,T]=histeq(X,...)</p><p>  其功能是:針對(duì)索引色圖像調(diào)色板的直方圖均衡化。其他與上面相同。</p><p><b>  直方圖均衡化處理</b></p><p>  以下的程序代碼顯示了圖像均衡化后的效果圖<

63、;/p><p>  G=imread('F:\背景圖片\background4.jpg');</p><p>  I=rgb2gray(G);%RGB圖像灰度化處理 </p><p>  J=histeq(I); </p><p>  subplot(2,2,1),imshow(I),title('灰度圖像');

64、</p><p>  subplot(2,2,2),imshow(J),title('均衡化圖像'); </p><p>  subplot(2,2,3),imhist(I,64),title('原圖直方圖');</p><p>  subplot(2,2,4),imhist(J,64),title(‘均衡化直方圖');<

65、;/p><p>  圖3 均衡化后效果圖</p><p>  由圖可見(jiàn),圖像經(jīng)過(guò)直方圖均衡化,圖像的細(xì)節(jié)更加清楚了,但是由于直方圖的均衡化沒(méi)有考慮圖像的內(nèi)容,只是簡(jiǎn)單的將圖像進(jìn)行直方圖均衡,使圖像看起來(lái)亮度過(guò)高,也就是說(shuō)直方圖的方法不夠靈活,于是又提出了直方圖規(guī)定化圖像增強(qiáng)的的方法</p><p><b>  心得體會(huì)</b></p>

66、<p>  通過(guò)此次課程設(shè)計(jì),使我更加扎實(shí)的掌握了有關(guān)數(shù)字圖像處理方面的知識(shí),在設(shè)計(jì)過(guò)程中雖然遇到了一些問(wèn)題,尤其是在做數(shù)字車牌識(shí)別系統(tǒng)設(shè)計(jì)時(shí),由于對(duì)matlab GUI不了解,需要通過(guò)自己去學(xué)習(xí)和摸索,一開(kāi)始不知道從何下手,但是通過(guò)幾天的不斷學(xué)習(xí)逐漸對(duì)自己要設(shè)計(jì)的系統(tǒng)有了一定的了解,在整個(gè)過(guò)程中,自己不斷解決問(wèn)題,不僅鍛煉了自己解決問(wèn)題的能力,還學(xué)到了新的知識(shí)。對(duì)matlab有了更深的了解和學(xué)習(xí)。</p>&

67、lt;p>  我認(rèn)為,在這次的課程設(shè)計(jì)中,不僅培養(yǎng)了獨(dú)立思考、動(dòng)手操作的能力,在各種其它能力上也都有了提高。更重要的是,在設(shè)計(jì)探索過(guò)程中,我們學(xué)會(huì)了很多學(xué)習(xí)的方法。而這是日后最實(shí)用的,真的是受益匪淺。要面對(duì)社會(huì)的挑戰(zhàn),只有不斷的學(xué)習(xí)、實(shí)踐,再學(xué)習(xí)、再實(shí)踐。這對(duì)于我們的將來(lái)也有很大的幫助。通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為

68、社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中遇到問(wèn)題,可以說(shuō)得是困難重重,但可喜的是最終都得到了解決。此次設(shè)計(jì)也讓我明白了思路即出路,有什么不懂不明白的地方要及時(shí)請(qǐng)教或上網(wǎng)查詢,只要認(rèn)真鉆研,動(dòng)腦思考,動(dòng)手實(shí)踐,就沒(méi)有弄不懂的知識(shí),收獲頗豐。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 楊杰,黃朝兵.數(shù)字圖像處理及

69、MATLAB實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2013.8.</p><p>  [2] 基于matlab的車牌識(shí)別系統(tǒng)的設(shè)計(jì)[J]</p><p>  [3] 任仙怡,周曉.彩色汽車牌照定位方法[J].紅外與激光工程,</p><p>  2002.31(3):204~207.</p><p>  [4] 許志影,李晉平.MATLAB及其在

70、圖像處理中的應(yīng)用[J].</p><p>  附錄(車牌識(shí)別系統(tǒng)源代碼)</p><p>  function varargout = test(varargin)</p><p>  gui_Singleton = 1;</p><p>  gui_State = struct('gui_Name', mfilename,

71、 ...</p><p>  'gui_Singleton', gui_Singleton, ...</p><p>  'gui_OpeningFcn', @test_OpeningFcn, ...</p><p>  'gui_OutputFcn', @test_OutputFcn, ...</p>

72、<p>  gui_LayoutFcn', [] , ...</p><p>  'gui_Callback', []);</p><p>  if nargin && ischar(varargin{1})</p><p>  gui_State.gui_Callback = str2func(varar

73、gin{1});</p><p><b>  end</b></p><p>  if nargout</p><p>  [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});</p><p><b>  else</b><

74、/p><p>  gui_mainfcn(gui_State, varargin{:});</p><p><b>  end</b></p><p>  function test_OpeningFcn(hObject, eventdata, handles, varargin)</p><p>  handles.out

75、put = hObject;</p><p>  guidata(hObject, handles);</p><p>  function varargout = test_OutputFcn(hObject, eventdata, handles) </p><p>  varargout{1} = handles.output;</p><

76、p><b>  %文件菜單</b></p><p>  function file_Callback(hObject, eventdata, handles)</p><p><b>  %編輯菜單</b></p><p>  function edit_Callback(hObject, eventdata, ha

77、ndles)</p><p><b>  %打開(kāi)圖像</b></p><p>  function open_Callback(hObject, eventdata, handles)</p><p><b>  global I;</b></p><p>  [filename,pathname]

78、=uigetfile({'*.jpg';'*.bmp';'*.gif';'*.*'},'載入圖像');</p><p>  if isequal(filename,0)|isequal(pathname,0)</p><p>  errordlg('沒(méi)有選中文件','出錯(cuò)');&

79、lt;/p><p><b>  return;</b></p><p><b>  else</b></p><p>  file=[pathname filename];</p><p><b>  s=file;</b></p><p>  I = im

80、read(file);</p><p>  axes(handles.axes1);</p><p>  imshow(I);</p><p>  title('原圖');</p><p><b>  end;</b></p><p><b>  %保存% </b&

81、gt;</p><p>  function save_Callback(hObject, eventdata, handles)</p><p>  [filename,pathname]=uiputfile({'*.*';},'保存圖像','Undefined.bmp');</p><p>  if ~isequa

82、l(filename,0)</p><p>  str = [pathname filename];</p><p>  px=getframe(handles.axes1);</p><p>  ta = getappdata(gcf,'Timg');</p><p>  imwrite(px.cdata,str,'

83、bmp');</p><p><b>  else</b></p><p>  disp('保存失敗');</p><p><b>  end;</b></p><p><b>  %另存為</b></p><p>  func

84、tion resave_Callback(hObject, eventdata, handles)</p><p>  global im;</p><p>  global im_path;</p><p>  new_f_handle=figure('visible','off');</p><p>  n

85、ew_axes=copyobj(handles.axes1,new_f_handle); set(new_axes,'units','default','position','default');</p><p>  [filename,pathname fileindex]=uiputfile({'*.jpg';'*.bmp

86、;'},'save picture as');</p><p>  if ~filename</p><p><b>  return</b></p><p><b>  else</b></p><p>  file=strcat(pathname,filename);&l

87、t;/p><p>  switch fileindex </p><p><b>  case 1</b></p><p>  print(new_f_handle,'-djpeg',file);</p><p><b>  case 2</b></p><p>

88、  print(new_f_handle,'-dbmp',file);</p><p><b>  end</b></p><p><b>  end</b></p><p>  delete(new_f_handle);</p><p><b>  %退出</b&g

89、t;</p><p>  function exit_Callback(hObject, eventdata, handles)</p><p><b>  clc</b></p><p>  close all;</p><p><b>  clear;</b></p><p&

90、gt;<b>  %鄰近插值</b></p><p>  function linjin_Callback(hObject, eventdata, handles)</p><p>  global img;</p><p>  axes(handles.axes2); </p><p>  T=getimage;<

91、;/p><p>  prompt={'請(qǐng)輸入插值參數(shù):'}; </p><p>  defans={'2'};</p><p>  p=inputdlg(prompt,'input',1,defans);</p><p>  p1=str2num(p{1}); </p><p

92、>  f=imresize(img,p1,'nearest');</p><p>  imshow(f);</p><p>  title('鄰近插值圖像');</p><p><b>  %圖像旋轉(zhuǎn)</b></p><p>  function xuanzhuan_Callback

93、(hObject, eventdata, handles)</p><p>  global img;</p><p>  axes(handles.axes2);</p><p>  T=getimage;</p><p>  prompt={'旋轉(zhuǎn)角度:'}; </p><p>  defans=

94、{'0'}; </p><p>  p=inputdlg(prompt,'input',1,defans);</p><p>  p1=str2num(p{1});</p><p>  f=imrotate(img,p1,'nearest');</p><p>  imshow(f); <

95、/p><p>  title('圖像旋轉(zhuǎn)');</p><p><b>  平移操作</b></p><p>  function pingyi_Callback(hObject, eventdata, handles)</p><p>  global img;</p><p>  

96、axes(handles.axes2);</p><p>  T=getimage; </p><p>  prompt={'請(qǐng)輸入?yún)?shù):'}; </p><p>  defans={'2'};</p><p>  p=inputdlg(prompt,'input',1,defans); <

97、;/p><p>  p1=str2num(p{1}); </p><p>  se = translate(strel(1), p1);</p><p>  J = imdilate(img,se); </p><p>  imshow(J,[]);</p><p>  title('平移操作');<

98、;/p><p><b>  圖像灰度化</b></p><p>  function huiduhuan_Callback(hObject, eventdata, handles)</p><p><b>  global I;</b></p><p>  global img;</p>

99、<p>  axes(handles.axes2);</p><p>  img= rgb2gray(I);</p><p>  imshow(img);</p><p>  title('圖像灰度化');</p><p><b>  %灰度直方圖</b></p><p>

100、;  function zhifangtu_Callback(hObject, eventdata, handles)</p><p>  global img;</p><p>  set(handles.axes2,'HandleVisibility','ON');</p><p>  axes(handles.axes2);&l

101、t;/p><p>  x=imhist(img); </p><p>  x1=x(1:10:256);</p><p>  horz=1:10:256;</p><p>  bar(horz,x1);</p><p>  set(handles.axes2,'xtick',0:50:255);</p

102、><p>  title('灰度直方圖');</p><p>  %rrobert算子邊緣處理</p><p>  function robert_Callback(hObject, eventdata, handles)</p><p>  global BW1;</p><p>  global img

103、; </p><p>  axes(handles.axes2);</p><p>  BW1=edge(img,'robert',0.05,'both'); </p><p>  imshow(BW1); </p><p>  title('robert算子邊緣處理');</p>

104、<p><b>  %圖像腐蝕</b></p><p>  function fushi_Callback(hObject, eventdata, handles)</p><p>  global bw;</p><p>  global BW1;</p><p>  axes(handles.axes2

105、);</p><p>  if isrgb(BW1)</p><p>  msgbox('不是灰度圖,不能進(jìn)行腐蝕操作','出錯(cuò)');</p><p><b>  else</b></p><p>  se=[1;1;1];</p><p>  bw=imerode

106、(BW1,se);</p><p>  imshow(bw);</p><p>  title('圖像腐蝕');</p><p><b>  end</b></p><p><b>  %平滑化處理</b></p><p>  function pinhua_

107、Callback(hObject, eventdata, handles)</p><p>  global pw;</p><p>  global bw;</p><p>  axes(handles.axes2);</p><p>  se=strel('rectangle',[40,40]);</p>&

108、lt;p>  pw=imclose(bw,se);</p><p>  imshow(pw);</p><p>  title('平滑化處理');</p><p><b>  %移除小對(duì)象</b></p><p>  function yichu_Callback(hObject, eventdat

109、a, handles)</p><p>  global yw;</p><p>  global pw;</p><p>  axes(handles.axes2);</p><p>  yw=bwareaopen(pw,200);</p><p>  imshow(yw);</p><p>

110、  title('移除小對(duì)象后');</p><p>  %x方向y方向截取車牌</p><p>  function hangfangxiang_Callback(hObject, eventdata, handles)</p><p>  global yw;</p><p><b>  global I;<

111、;/b></p><p>  global dw;</p><p>  axes(handles.axes2);</p><p>  [y,x,z]=size(yw);</p><p>  myI=double(yw); </p><p><b>  tic</b></p>&

112、lt;p>  Blue_y=zeros(y,1); </p><p>  for i=1:y </p><p>  for j=1:x </p><p>  if(myI(i,j,1)==1) </p><p>  Blue_y(i,1)= Blue_y(i,1)+1;</p><p><b>  en

113、d </b></p><p><b>  end </b></p><p><b>  end </b></p><p>  [temp MaxY]=max(Blue_y);</p><p>  PY1=MaxY; </p><p>  while ((Blu

114、e_y(PY1,1)>=130)&&(PY1>1)) </p><p>  PY1=PY1-1; </p><p><b>  end </b></p><p>  PY2=MaxY; </p><p>  while ((Blue_y(PY2,1)>=50)&&(PY

115、2<y)) </p><p>  PY2=PY2+1; </p><p><b>  end </b></p><p>  IY=I(PY1:PY2,:,:);</p><p>  Blue_x=zeros(1,x);</p><p>  for j=1:x </p>&l

116、t;p>  for i=PY1:PY2 </p><p>  if(myI(i,j,1)==1) </p><p>  Blue_x(1,j)= Blue_x(1,j)+1; </p><p><b>  end </b></p><p><b>  end </b></p>

117、<p><b>  end </b></p><p><b>  PX1=1; </b></p><p>  while ((Blue_x(1,PX1)<30)&&(PX1<x)) </p><p>  PX1=PX1+1; </p><p><b>

118、;  end </b></p><p><b>  PX2=x; </b></p><p>  while ((Blue_x(1,PX2)<84)&&(PX2>PX1)) </p><p>  PX2=PX2-1; </p><p><b>  end </b&g

119、t;</p><p>  PX1=PX1-2;</p><p>  PX2=PX2+2; </p><p>  dw=I(PY1:PY2,PX1:PX2); </p><p><b>  t=toc;</b></p><p>  imshow(dw);</p><p> 

120、 title('車牌灰度圖像');</p><p><b>  %車牌二值化</b></p><p>  function erzhihua_Callback(hObject, eventdata, handles)</p><p>  global dw;</p><p><b>  glob

121、al d;</b></p><p>  axes(handles.axes2);</p><p>  g_max=double(max(max(dw)));</p><p>  g_min=double(min(min(dw)));</p><p>  T=round(g_max-(g_max-g_min)/3);</p&g

122、t;<p>  [m,n]=size(dw);</p><p>  d=(double(dw)>=T);</p><p>  imshow(d);</p><p>  title('車牌二值化圖像');</p><p><b>  %濾波處理</b></p><p&

123、gt;  function lvbo_Callback(hObject, eventdata, handles)</p><p><b>  global d;</b></p><p>  global lb;</p><p>  axes(handles.axes2);</p><p>  h=fspecial(

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論