數(shù)字圖像處理課程設(shè)計車牌分割與識別_第1頁
數(shù)字圖像處理課程設(shè)計車牌分割與識別_第2頁
數(shù)字圖像處理課程設(shè)計車牌分割與識別_第3頁
數(shù)字圖像處理課程設(shè)計車牌分割與識別_第4頁
數(shù)字圖像處理課程設(shè)計車牌分割與識別_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、車牌定位與分割研究PS:可以直接使用摘要 車牌識別技術(shù)是計算機視頻圖像識別技術(shù)在車輛牌照識別中的一種應(yīng)用。車牌識別技術(shù)要求能夠?qū)⑦\動中的汽車牌照從復(fù)雜背景中提取并識別出來,通過車牌提取、圖像預(yù)處理、特征提取、車牌字符識別等技術(shù),識別車輛牌號。本次課程設(shè)計內(nèi)容是車牌定位與分割,主要實現(xiàn)了對車牌的位置的提取以及車牌符號的分割。關(guān)鍵詞:車牌,識別,分割License plate location and segmentationAbstract License plate recognition technology is a kind of application of image recogni

2、tion technology of computer video in vehicle license recognition. License plate recognition technology can request the vehicle number plate from the complex background extraction and identified, the license plate extraction, image pre-processing, feature extraction, character recognition of license

3、plate recognition technology, vehicle number. The design content of this course is the license plate location and segmentation, the main achievement of the license plate location and segmentation of license plate extraction of symbol.Keyword:licence plate,distinguish,division目錄1緒論11.1車牌識別技術(shù)的應(yīng)用背景及前景1

4、1.2車牌識別系統(tǒng)的工作原理及組成22設(shè)計內(nèi)容32.1寶馬汽車“魯A 88888”車牌定位與分割32.1.1讀入汽車圖像并直方圖均衡化32.1.2邊緣提取52.1.3 選取最佳閾值二值化圖像72.1.4 形態(tài)學(xué)操作82.1.5確定車牌位置并保存車牌圖像92.1.6讀入車牌圖像并二值化車牌122.1.7對車牌字符進行分割132.1.8顯示分割字符后車牌并存儲172.2標志汽車“川A PK110”車牌定位與分割182.3大眾汽車“豫F WY222”車牌定位與分割202.4寶馬汽車“蘇B QA220”車牌定位與分割212.5奧迪汽車“京A 88731”車牌定位與分割233實驗分析234實驗改進245

5、實驗總結(jié)256致謝257參考文獻258 附錄261緒論隨著世界經(jīng)濟的快速發(fā)展,以及汽車制造技術(shù)的提高,汽車迅速成為人們?nèi)粘I钪械囊粋€必需品。這造成全球的汽車數(shù)量猛增,而隨之也導(dǎo)致城市的交通壓力越來越大,城市的交通狀況也因此得到了更多的關(guān)注。如何有效地對交通進行管理,也成為各國政府和相關(guān)部門所關(guān)注的焦點和熱點。針對這些問題,人們開始將計算機技術(shù)、通信技術(shù)、計算機網(wǎng)絡(luò)技術(shù)和自動化信息處理等很多新的科學(xué)技術(shù)用于交通道路的監(jiān)視和管理系統(tǒng),以此提高車輛管理和運輸?shù)男?。它主要是通過對過往車輛實施檢測,提取有關(guān)的交通數(shù)據(jù)來達到對交通的監(jiān)控、管理和指揮。車牌自動識別技術(shù)是指能夠檢測到受監(jiān)控路面的車輛并自動

6、提取車輛車牌信息(含漢字字符、英文字母、阿拉伯數(shù)字)進行處理與識別的技術(shù)。它以計算機技術(shù)、圖像處理技術(shù)、模糊識別技術(shù)為基礎(chǔ),識別車輛特征。本次設(shè)計是在以往的車牌定位與分割算法的基礎(chǔ)上介紹了車牌識別技術(shù)中的一種定位與字符分割算法。1.1車牌識別技術(shù)的應(yīng)用背景及前景隨著21 世紀經(jīng)濟全球化和信息時代的到來,迅猛發(fā)展的計算機技術(shù)、通信技術(shù)和計算機網(wǎng)絡(luò)技術(shù),水平不斷提高的自動化信息處理技術(shù)在人們社會活動和生活的各個領(lǐng)域得到廣泛應(yīng)用。同時,高速度、高效率的生活節(jié)奏,使汽車普及成為必然趨勢。伴隨著世界各國汽車數(shù)量的增加,城市的交通狀況越來越受到人們的重視。如何有效地進行交通管理日益成為各國政府相關(guān)部門所關(guān)

7、注的焦點。針對這一問題,人們相繼研發(fā)了各種道路交通監(jiān)管系統(tǒng)、車輛控制系統(tǒng)及公共交通管理系統(tǒng)。這些系統(tǒng)將車輛和道路綜合起來進行考慮,運行先進的技術(shù)解決道路交通的問題,統(tǒng)稱為智能交通系統(tǒng)(Intelligent Transportation System,簡稱ITS)。車牌識別(License Plate Recognition, LPR)技術(shù)作為智能交通系統(tǒng)(ITS)的重要組成部分,在交通管理和控制中占有著很重要的地位,可以應(yīng)用到以下一些領(lǐng)域:(1)封閉式居民小區(qū)物業(yè)管理以及重要部門的安保管理。車牌識別技術(shù)的推廣普及,必將對加強城市道路管理,減少交通事故、車輛失竊案件的發(fā)生,以及保障社會穩(wěn)定等方

8、面產(chǎn)生重大而深遠的影響。(2)城市交通路口的“電子警察”。(3)公路布控管理系統(tǒng)。該系統(tǒng)采用車牌識別技術(shù)可實現(xiàn)對重點車輛的自動識別、快速報警處理,不僅可以有效防止機動車輛被盜,而且為公安、監(jiān)察機關(guān)對犯罪嫌疑人所駕駛的車輛進行自動監(jiān)控、跟蹤提供了有效手段。(4)高速公路超速監(jiān)管系統(tǒng)。該系統(tǒng)以車牌識別技術(shù)為核心技術(shù),輔助其他高科技手段,建立高速公路無人值守的自動監(jiān)測和自動布控系統(tǒng),可以有效地獲取超速車輛的圖像,并得到該車的牌照號碼,便于對違規(guī)車輛進行處罰。從而降低因超速引起的交通事故的發(fā)生率。(5)路橋、隧道等卡口的自動收費系統(tǒng)。(6)高速公路收費管理系統(tǒng)。在高速公路收費入、出口分別完成車牌號碼識

9、別和車牌匹配工作,實現(xiàn)不停車收費;還可以根據(jù)識別出的車牌號碼從數(shù)據(jù)庫中調(diào)出該車檔案,可發(fā)現(xiàn)沒有及時交納養(yǎng)路費的車輛。隨著車牌識別技術(shù)的不斷成熟,高效、識別率高的車牌識別技術(shù)還將應(yīng)用于一些對性能要求比較高的單片機上。還提供一個可以對車輛信息實時采集的公共平臺,使各管理部門間能夠協(xié)調(diào)統(tǒng)一的對車輛及道路情況進行監(jiān)控管理,從根木上解決了目前全國交通及公安系統(tǒng)信息采集的多渠道、事件信息收集的單一性以及互不溝通、互不兼容的信息管理方式,車牌識別技術(shù)具有廣泛的應(yīng)用前景。1.2車牌識別系統(tǒng)的工作原理及組成車牌識別(LPR)系統(tǒng)是智能交通系統(tǒng)(ITS)的一個重要組成部分,該系統(tǒng)能從一幅車輛圖像中自動提取車牌圖像

10、,自動分割字符,進而對字符進行識別,得到車牌的號碼?;赑C的車牌識別系統(tǒng)是利用PC機及攝像機等電子設(shè)備采集某一路段的汽車圖像,對圖像進行處理,獲取車牌的位置及字符信息,完成車牌目標的自動定位與識別。圖1為車牌識別系統(tǒng)流程:采集圖像車牌定位字符分割信息存儲圖1 車牌識別系統(tǒng)流程其工作流程是:當系統(tǒng)發(fā)現(xiàn)有車輛通過時,觸發(fā)圖像采集部分工作,通過對車輛進行抓拍,獲取車輛的前視或后視圖。然后將所采集的車輛數(shù)字圖像送入計算機系統(tǒng),通過車牌定位、字符分割三個環(huán)節(jié)的處理,最終得到車牌號碼。其中的計算機處理系統(tǒng)主要涉及了兩個關(guān)鍵技術(shù):車牌區(qū)域定位技術(shù)、車牌字符分割技術(shù)。2設(shè)計內(nèi)容2.1寶馬汽車“魯A 8888

11、8”車牌定位與分割2.1.1讀入汽車圖像并直方圖均衡化直方圖均衡化處理的“中心思想”是把原始圖像的灰度直方圖從比較集中的某個灰度區(qū)間變成在全部灰度范圍內(nèi)的均勻分布。直方圖均衡化就是對圖像進行非線性拉伸,重新分配圖像像素值,使一定灰度范圍內(nèi)的像素數(shù)量大致相同。直方圖均衡化就是把給定圖像的直方圖分布改變成“均勻”分布直方圖分布。讀入需要處理的汽車圖像并直方圖均衡化:clear;clc;close allI=imread('E:數(shù)字圖像處理課程設(shè)計car1.jpg');figure(1),imshow(I);title('汽車原圖');I=rgb2gray(I); i

12、mwrite(I,'汽車灰度圖.jpg'); figure(2),imshow(I);title('汽車灰度圖');figure(3),subplot(2,1,1),imhist(I);title('汽車灰度圖直方圖');J,T=histeq(I,256); %有256個灰度級subplot(2,1,2),imhist(J);%均衡化后的直方圖title('直方圖均衡化');讀入的圖像為:將它轉(zhuǎn)換為灰度圖:汽車圖像直方圖均衡化前后的直方圖:2.1.2邊緣提取邊緣是圖像中亮度突然變化的區(qū)域,是圖像灰度構(gòu)成的曲面上的陡峭區(qū)域,是像素灰

13、度存在階躍變化或屋脊狀變化的像素的集合?;叶葓D像邊緣提取,主要的思想是:抑制噪聲(低通濾波、平滑、去噪、模糊),邊緣特征增強(高通濾波、銳化),邊緣定位。常用的算子如Prewitt算子:Sobel算子(四鄰域的權(quán)重更大):tic %計時開始height,width=size(J);%灰度圖長寬%求梯度I_edge=zeros(height,width);%創(chuàng)建height*width的矩陣for i=2:width-1%對每一列開始遍歷 I_edge(:,i)=abs(J(:,i+1)-J(:,i-1);%每列的值賦為原圖像中左右兩列相減的絕對值第十章圖像分割P456Prewitt算子endI

14、_edge=(255/(max(max(I_edge)-min(min(I_edge)*(I_edge-min(min(I_edge);% 歸一化處理(0255) figure(4),imshow(I_edge);title('梯度算子檢測邊緣');2.1.3 選取最佳閾值二值化圖像 取得最佳閾值,將圖像二值化。二值圖像是指整幅圖像畫面內(nèi)僅黑、白二值的圖像。在實際的車牌處理系統(tǒng)中,進行圖像二值變換的關(guān)鍵是要確定合適的閥值,使得字符與背景能夠分割開來,二值變換的結(jié)果圖像必須要具備良好的保形性,不丟掉有用的形狀信息,不會產(chǎn)生額外的空缺等等。車牌識別系統(tǒng)要求處理的速度高、成本低、信息

15、量大,采用二值圖像進行處理,能大大地提高處理效率。閾值處理的操作過程是先由用戶指定或通過算法生成一個閾值,如果圖像中某中像素的灰度值小于該閾值,則將該像素的灰度值設(shè)置為0或255,否則灰度值設(shè)置為255或0。function y,y1=select(ImageData,h,w)thr=0.5;delta=0.05;y=(ImageData>=thr*mean(max(ImageData);%max(a)找出矩陣a每一列的最大值BW2=bwareaopen(y,10);%刪除面積小于10的對象SE=strel('square',15);%創(chuàng)建一個15*15正方形結(jié)構(gòu)元素IM

16、2=imdilate(BW2,SE);%腐蝕IM3=imerode(IM2,SE);%膨脹%等效于開運算,消除小物體,在纖細點處分離物體,平滑較大物體邊界,但同時并不明顯改變原來物體的面積average=sum(sum(IM3)/(h*w);%sum(a),對a矩陣每一列求和while(average<0.03|average>0.08) if(average<0.03) thr=thr-delta; else thr=thr+delta; end y=(ImageData>=thr*mean(max(ImageData);%求向量元素平均值 BW2=bwareaope

17、n(y,10);%刪除面積小于10的對象 IM2=imdilate(BW2,SE);%腐蝕 IM3=imerode(IM2,SE);%膨脹 %等效于開運算 average=sum(sum(IM3)/(h*w);%求灰度平均值endy1=y;y=IM3;2.1.4 形態(tài)學(xué)操作 數(shù)學(xué)形態(tài)學(xué)(Mathematical Morphology)誕生于1964年,是由法國巴黎礦業(yè)學(xué)院博士生賽拉(J. Serra)和導(dǎo)師馬瑟榮,在從事鐵礦核的定量巖石學(xué)分析及預(yù)測其開采價值的研究中提出“擊中/擊不中變換”, 并在理論層面上第一次引入了形態(tài)學(xué)的表達式,建立了顆粒分析方法。他們的工作奠定了這門學(xué)科的理論基礎(chǔ), 如

18、擊中/擊不中變換、開閉運算、布爾模型及紋理分析器的原型等。數(shù)學(xué)形態(tài)學(xué)的基本思想是用具有一定形態(tài)的結(jié)構(gòu)元素去量度和提取圖像中的對應(yīng)形狀以達到對圖像分析和識別的目的。 數(shù)學(xué)形態(tài)學(xué)是由一組形態(tài)學(xué)的代數(shù)運算子組成的,它的基本運算有4個: 膨脹、腐蝕、開啟和閉合,它們在二值圖像和灰度圖像中各有特點?;谶@些基本運算還可推導(dǎo)和組合成各種數(shù)學(xué)形態(tài)學(xué)實用算法,用它們可以進行圖像形狀和結(jié)構(gòu)的分析及處理,包括圖像分割、特征抽取、邊界檢測、 圖像濾波、圖像增強和恢復(fù)等。數(shù)學(xué)形態(tài)學(xué)方法利用一個稱作結(jié)構(gòu)元素的“探針”收集圖像的信息,當探針在圖像中不斷移動時, 便可考察圖像各個部分之間的相互關(guān)系,從而了解圖像的結(jié)構(gòu)特征。

19、數(shù)學(xué)形態(tài)學(xué)基于探測的思想,與人的FOA(Focus Of Attention)的視覺特點有類似之處。作為探針的結(jié)構(gòu)元素,可直接攜帶知識(形態(tài)、大小、甚至加入灰度和色度信息)來探測、研究圖像的結(jié)構(gòu)特點。 I_edge,y1=select(I_edge,height,width); %調(diào)用select函數(shù)減小車牌范圍BW2 = I_edge;figure(5),subplot(2,2,1),imshow(BW2);title('二值化圖像');%開操作(腐蝕+膨脹)消除小物體SE=strel('rectangle',10,10);%創(chuàng)建10*10的矩形結(jié)構(gòu)元素%SE

20、 = strel(shape, parameters),根據(jù)shape指定的類型創(chuàng)建一個結(jié)構(gòu)元素SE。IM2=imerode(BW2,SE);%腐蝕subplot(2,2,2),imshow(IM2);title('汽車腐蝕后圖像');IM2=bwareaopen(IM2,50);%BW2 = bwareaopen(BW,P)刪除二值圖像BW中面積小于P的對象,默認情況下conn使用8鄰域%川APK110將P改為100以上效果較好subplot(2,2,3),imshow(IM2);title('刪除小面積圖像');IM3=imdilate(IM2,SE);%膨

21、脹subplot(2,2,4),imshow(IM3);title('汽車膨脹后圖像'); 2.1.5確定車牌位置并保存車牌圖像 為了確定車牌的位置,首先通過水平方向以及垂直方向的掃描粗略地估測車牌的位置,然后根據(jù)長寬比例確定車牌位置。投影子函數(shù):function y=projection(I,s)if(s='h')%水平投影 y=sum(I');%I',I轉(zhuǎn)置endif(s='v')%垂直投影 y=sum(I);end%投影以粗略估計車牌位置p_h=projection(double(IM3),'h');%調(diào)用p

22、rojection函數(shù),水平方向,輸出IM3的轉(zhuǎn)置if(p_h(1)>0) p_h=0,p_h;endp_v=projection(double(IM3),'v');%調(diào)用projection函數(shù),垂直方向if(p_v(1)>0) p_v=0,p_v;endp_h=double(p_h>5);%水平方向p_h=find(p_h(1:end-1)-p_h(2:end)=0);%a(i)=0,邏輯判斷,a(i)不為0則為真(1),find返回不為0的位置len_h=length(p_h)/2;p_v=double(p_v>5);%垂直方向p_v=find(p

23、_v(1:end-1)-p_v(2:end)=0);len_v=length(p_v)/2;%粗略計算車牌候選區(qū)k=1;for i=1:len_h for j=1:len_v s=IM3(p_h(2*i-1):p_h(2*i),p_v(2*j-1):p_v(2*j); if(mean(mean(s)>0.1)%求每一列的均值 pk=p_h(2*i-1),p_h(2*i)+1,p_v(2*j-1),p_v(2*j)+1; k=k+1; end endendk=k-1;%進一步縮小車牌候選區(qū)for i=1:k edge_IM3=double(edge(double(IM3(pi(1):pi(

24、2),pi(3):pi(4),'canny'); x,y=find(edge_IM3=1); pi=pi(1)+min(x),pi(2)-(pi(2)-pi(1)+1-max(x),. pi(3)+min(y),pi(4)-(pi(4)-pi(3)+1-max(y); p_centeri=fix(pi(1)+pi(2)/2),fix(pi(3)+pi(4)/2); p_ratio(i)=(pi(4)-pi(3)/(pi(2)-pi(1);end%對上面參數(shù)和變量的說明:p為一胞元,用于存放每個圖像塊的左上和右下兩個點的坐標;%存放格式為:pk=x1,x2,y1,y2;x1,x2

25、分別為行坐標,y1,y2為列坐標%p_center為一胞元,用于存放每個圖像塊的中心坐標,p_centerk=x,y;x,y分別為行,列坐標%p_ratio為一矩陣,用來存放圖像塊的長寬比例%合并臨近區(qū)域%如果有多個區(qū)域則執(zhí)行合并if k>1 n=0; ncount=zeros(1,k); for i=1:k-1 if(abs(pi(1)+pi(2)-pi+1(1)-pi+1(2)<=height/30&&abs(pi+1(3)-pi(4)<=width/15) pi+1(1)=min(pi(1),pi+1(1); pi+1(2)=max(pi(2),pi+1

26、(2); pi+1(3)=min(pi(3),pi+1(3); pi+1(4)=max(pi(4),pi+1(4); %向后合并 n=n+1; ncount(n)=i+1; end end %如果有合并,求出合并后最終區(qū)域 if(n>0) d_ncount=ncount(2:n+1)-ncount(1:n);%避免重復(fù)記錄臨近的多個區(qū)域。 index=find(d_ncount=1); m=length(index); for i=1:m ppi=pncount(index(i); %重新記錄合并區(qū)域的比例 pp_ratio(i)=(ppi(4)-ppi(3)/(ppi(2)-ppi(1

27、); end p=pp;%更新區(qū)域記錄 p_ratio=pp_ratio; %更新區(qū)域比例記錄 clear pp;clear pp_ratio; %清除部分變量 endendk=length(p); %更新區(qū)域個數(shù)%根據(jù)區(qū)域比例判斷是否為車牌區(qū)域m=1;T=0.6*max(p_ratio); for i=1:k if(p_ratio(i)>=T&p_ratio(i)<20) p1m=pi; m=m+1; endendp=p1;clear p1;k=m-1; %更新區(qū)域數(shù)toc %計時結(jié)束clear edge_IM3;clear x; clear y; % 清空部分變量fig

28、ure(6);for i=1:k subplot(1,k,i); index=pi; imshow(I(index(1)-2:index(2),index(3):index(4);endif(k=1) imwrite(I(index(1)-2:index(2),index(3):index(4),'11.jpg');end %存儲車牌圖像 2.1.6讀入車牌圖像并二值化車牌由于前面已經(jīng)定位到車牌的位置,下一步要做的是將存儲的車牌照片的七個符號分割,首先讀入車牌的灰度圖。J=imread('E:數(shù)字圖像處理課程設(shè)計cardetec11.jpg');figure(7

29、);subplot(2,1,1),imshow(J),title('車牌灰度圖像')g_max=double(max(max(J);g_min=double(min(min(J);T=round(g_max-(g_max-g_min)/3); %T為二值化的閾值,round四舍五入m,n=size(J);d=(double(J)>=T); %二值化imwrite(d,'車牌二值化圖像.jpg');figure(7);subplot(2,1,2),imshow(d),title('車牌二值化圖像')2.1.7對車牌字符進行分割 圖像分割就是把

30、圖像分成若干個特定的、具有獨特性質(zhì)的區(qū)域并提出感興趣目標的技術(shù)和過程。它是由圖像處理到圖像分析的關(guān)鍵步驟?,F(xiàn)有的圖像分割方法主要分以下幾類:基于閾值的分割方法、基于區(qū)域的分割方法、基于邊緣的分割方法以及基于特定理論的分割方法等。閾值分割灰度閾值分割法是一種最常用的并行區(qū)域技術(shù),它是圖像分割中應(yīng)用數(shù)量最多的一類。閾值分割方法實際上是輸入圖像f到輸出圖像g的如下變換:gi,j=1 fi,jT0 fi,jT其中,T為閾值,對于物體的圖像元素g(i,j)=1,對于背景的圖像元素g(i,j)=0。由此可見,閾值分割算法的關(guān)鍵是確定閾值,如果能確定一個合適的閾值就可準確地將圖像分割開來。閾值確定后,將閾值

31、與像素點的灰度值逐個進行比較,而且像素分割可對各像素并行地進行,分割的結(jié)果直接給出圖像區(qū)域。閾值分割的優(yōu)點是計算簡單、運算效率較高、速度快。在重視運算效率的應(yīng)用場合(如用于硬件實現(xiàn)),它得到了廣泛應(yīng)用。人們發(fā)展了各種各樣的閾值處理技術(shù),包括全局閾值、自適應(yīng)閾值、最佳閾值等等。全局閾值是指整幅圖像使用同一個閾值做分割處理,適用于背景和前景有明顯對比的圖像。它是根據(jù)整幅圖像確定的:T=T(f)。但是這種方法只考慮像素本身的灰度值,一般不考慮空間特征,因而對噪聲很敏感。常用的全局閾值選取方法有利用圖像灰度直方圖的峰谷法、最小誤差法、最大類間方差法、最大熵自動閾值法以及其它一些方法。在許多情況下,物體

32、和背景的對比度在圖像中的各處不是一樣的,這時很難用一個統(tǒng)一的閾值將物體與背景分開。這時可以根據(jù)圖像的局部特征分別采用不同的閾值進行分割。實際處理時,需要按照具體問題將圖像分成若干子區(qū)域分別選擇閾值,或者動態(tài)地根據(jù)一定的鄰域范圍選擇每點處的閾值,進行圖像分割。這時的閾值為自適應(yīng)閾值。在本次課程設(shè)計中,分割的主要思想是若某處兩個部分之間的長度大于閾值,則認為該塊有兩個字符組成,需要分割;反之,如果兩個部分之間的長度小于閾值,則認為這兩個部分是屬于同一字符的,不應(yīng)該分割。分割子函數(shù):function e=fenge(d)m,n=size(d);top=1;bottom=m;left=1;right=

33、n; % initwhile sum(d(top,:)=0 && top<=m %切割出白色區(qū)域(橫切) top=top+1;endwhile sum(d(bottom,:)=0 && bottom>1 %同上 bottom=bottom-1;endwhile sum(d(:,left)=0 && left<n %切割出白區(qū)域(縱切) left=left+1;endwhile sum(d(:,right)=0 && right>=1right=right-1;enddd=right-left;hh=bott

34、om-top;e=imcrop(d,left top dd hh); %在一個數(shù)字窗口顯示圖像d調(diào)用fenge函數(shù):%分割% 尋找連續(xù)有文字的塊,若長度大于某閾值,則認為該塊有兩個字符組成,需要分割d=fenge(d);%調(diào)用fenge進行分割m,n=size(d);k1=1;k2=1;s=sum(d);j=1;while j=n while s(j)=0 j=j+1; end k1=j; while s(j)=0 && j<=n-1 j=j+1; end k2=j-1; if k2-k1>=round(n/6.5) val,num=min(sum(d(:,k1+5

35、:k2-5); d(:,k1+num+5)=0; % 分割 endend% 再分割d=fenge(d);% 分割出 7 個字符y1=10;y2=0.25;flag=0;word1=;while flag=0 m,n=size(d); left=1;wide=0; while sum(d(:,wide+1)=0 wide=wide+1; end if wide<y1 % 認為是左側(cè)干擾 d(:,1:wide)=0; d=fenge(d); else temp=fenge(imcrop(d,1 1 wide m); m,n=size(temp); all=sum(sum(temp); two

36、_thirds=sum(sum(temp(round(m/3):2*round(m/3),:); if two_thirds/all>y2 flag=1;word1=temp; % WORD 1 end d(:,1:wide)=0;d=fenge(d); endend% 分割出第二個字符word2,d=getword(d);% 分割出第三個字符word3,d=getword(d);% 分割出第四個字符word4,d=getword(d);% 分割出第五個字符word5,d=getword(d);% 分割出第六個字符word6,d=getword(d);% 分割出第七個字符word7,d=

37、getword(d);figure(8),imshow(word1),title('第一個字符');figure(9),imshow(word2),title('第二個字符');figure(10),imshow(word3),title('第三個字符');figure(11),imshow(word4),title('第四個字符');figure(12),imshow(word5),title('第五個字符');figure(13),imshow(word6),title('第六個字符');fig

38、ure(14),imshow(word7),title('第七個字符'); 從分割結(jié)果可以看到,七個字符均被分開。2.1.8顯示分割字符后車牌并存儲將上一步得到的各個字符在同一圖中作出,并將它們存儲起來m,n=size(word1);% 字體大小40*20word1=imresize(word1,40 20);word2=imresize(word2,40 20);word3=imresize(word3,40 20);word4=imresize(word4,40 20);word5=imresize(word5,40 20);word6=imresize(word6,40

39、20);word7=imresize(word7,40 20);figure(15),subplot(3,7,8),imshow(word1),title('1');subplot(3,7,9),imshow(word2),title('2');subplot(3,7,10),imshow(word3),title('3');subplot(3,7,11),imshow(word4),title('4');subplot(3,7,12),imshow(word5),title('5');subplot(3,7,13

40、),imshow(word6),title('6');subplot(3,7,14),imshow(word7),title('7');imwrite(word1,'字符1.jpg');imwrite(word2,'字符2.jpg');imwrite(word3,'字符3.jpg');imwrite(word4,'字符4.jpg');imwrite(word5,'字符5.jpg');imwrite(word6,'字符6.jpg');imwrite(word7,'

41、;字符7.jpg');從圖中可以看到,對包含有車牌號“魯A88888”的汽車能夠較好的定位到車牌位置,而且分割處車牌符號較為準確。2.2標志汽車“川A PK110”車牌定位與分割將car1改為car2,即車牌從“魯A88888”改為“川APK110”,此時,要將figure(5)中去掉面積小于50的圖像塊改為去掉面積小于100(或更大)的圖像塊,才能得到效果較好的圖像。即把去除小面積塊代碼更改為:IM2=bwareaopen(IM2,50);%BW2 = bwareaopen(BW,P)刪除二值圖像BW中面積小于P的對象,默認情況下conn使用8鄰域其他代碼不變。汽車原圖像如下:車牌定

42、位準確:分割車牌字符:從圖中可以看出,“川”字右面分割出現(xiàn)問題,數(shù)字“1”分離不清晰。2.3大眾汽車“豫F WY222”車牌定位與分割由于car3、car4、car5車牌中均包含數(shù)字“1”,與“川APK110”類似,故不再列出。現(xiàn)將car2改為car6,即車牌從“川APK110”改為“豫F WY222”。汽車原圖像如下:車牌定位準確:分割車牌字符:從圖中可以看出,各字符分開的較為清晰,但“豫”字出現(xiàn)斷裂現(xiàn)象。2.4寶馬汽車“蘇B QA220”車牌定位與分割將car6改為car7,即車牌從“豫F WY222”改為“蘇B QA220”。這種情況下,在figure(7)中讀入車牌灰度圖后進行二值化時

43、,需要將閾值改小,這樣才能不至于將圖像二值化為0,即將閾值改為:T=round(g_max-(g_max-g_min)/1.7); %T為二值化的閾值,round四舍五入其他代碼不變。汽車原圖像如下:車牌定位準確:分割車牌字符:2.5奧迪汽車“京A 88731”車牌定位與分割將car7改為car8,即車牌從“蘇B QA220”改為“京A P88731”。汽車原圖像如下:車牌定位出錯:從圖中可以看出,對奧迪車牌定位時出現(xiàn)錯誤。car9與car8類似。3實驗分析在本次課程設(shè)計中,通過對不同的汽車進行提取,我發(fā)現(xiàn)對于不同的汽車圖像,需要進行不同的操作。課程設(shè)計主要做的是在較復(fù)雜環(huán)境下(汽車其他部件干

44、擾)對車牌的定位以及對識別出的車牌進行字符分割。定位的主要思想是用長寬比來確定車牌的位置,如我國汽車車牌大小為440mm*140mm,一半來說,這個長寬比是車牌所特有的特征,故可以用來定位車牌。但這個特征也并非是車牌所特有的,例如,對于car8即 “京A 88731”,由于奧迪汽車的標志與車牌長寬比相近,故圖像輸出即包含車牌的一部分,又包含奧迪汽車的標志,因此出現(xiàn)錯誤,不能繼續(xù)后面的車牌字符分割操作。分割的主要思想是兩個部分之間的長度大于某一閾值時,就認為它們是屬于兩個不同的符號,應(yīng)該分割;而當兩個部分之間的長度小于某一閾值時,就認為它們是同一個符號,不應(yīng)該分割。按照這樣的思想,確實能夠成功地

45、分割處一部分車牌,如car1,分割效果很好,但它也存在一些問題。如對于car2,即“川A PK110”,由于在定位車牌時,左邊界一部分仍保留在提取出的車牌中,且左邊界距離“川”字左一撇距離比較近,故分割時將左邊界與“川”字左一撇以及中間一豎劃分到一起,這顯然是不正確的;而更大的不足之處在于,這樣的方法不能完成對數(shù)字“1”的劃分,由于數(shù)字“1”占據(jù)的面積很小,在分割時,它與臨近的部分距離較大,故1的不同部分被多次認為是獨立的符號,因此被多次賦值為白塊,造成“1”明顯展寬,有時甚至?xí)懈用黠@的畸變,以至于不能識別。其次,在實驗過程中,某些汽車圖像需要不同的閾值處理。如對于car7,即“蘇B QA

46、220”,若閾值不改變,則車牌二值化效果很差,原因在于car7車牌灰度值較低,因此二值化的閾值也應(yīng)該降低,實驗結(jié)果也證明,在減小閾值之后,car7能夠正常進行分割操作。此外,實驗中,部分復(fù)雜的漢字經(jīng)過多次處理之后不太清晰,如car6,即“豫F WY222”,最后分割的字符中“豫”字不太清晰,盡管能夠看出輪廓,但視覺效果并不好。4實驗改進針對于以上提出的幾個問題,本次課程設(shè)計還有以下幾個方面可以改進:(1)定位車牌的特征可以增加幾個,例如車牌的灰度變化與汽車其他部分存在著差異,可以用來作為車牌定位的參考之一;(2)分割算法可以再次精細一些,譬如可以用神經(jīng)網(wǎng)絡(luò)的方法;(3)對提取出的車牌進行二值化

47、時可以考慮使用自適應(yīng)的閾值方法;(4)實驗過程中部分復(fù)雜字符經(jīng)過多次處理變換后不太清晰,可以考慮用小結(jié)構(gòu)元素膨脹的方法連接斷裂處。5實驗總結(jié)在學(xué)習(xí)數(shù)字圖像處理課程之前,我對于車牌自動識別系統(tǒng)很感興趣,這樣可以極大地方便人們的生活,被系統(tǒng)允許停車的人員將不再需要一張會員卡,而是可以通過系統(tǒng)對駛近的車輛進行照相,再進行圖像處理,提取出車牌,并分割出各字符加以識別,這將為人們節(jié)省下許多時間。在課程設(shè)計中,我主要完成了對簡單汽車圖像的車牌定位以及對定位到的車牌進行字符分割??偟脕碚f,在一幅汽車圖像中(有些圖像還會有其他物體)正確的找到車牌是比較難辦到的,我所做的也只是較為容易的圖像定位,真正運用在實際

48、生活中的自動識別系統(tǒng)要比這個復(fù)雜得多。其次,對于字符的分割,我基本做到了能夠分離出各個字符,同樣,對于實際應(yīng)用,這是不夠的,因為分割出的字符怎么讓計算機能夠識別出來,怎樣使計算機控制整個系統(tǒng)保證識別的準確性等等問題都是很具有挑戰(zhàn)性的,這還需要我們付出更多的努力。6致謝···························

49、3;·················································

50、3;······················7參考文獻【1】Rafael C.Gonzalez,Richard E.Woods,阮秋琦,阮宇智等譯,數(shù)字圖像處理(第三版),電子工業(yè)出版社,2011.【2】孫兆林. MATLAB 6.X 圖像處理M.北京,清華大學(xué)出版社,2002:175230【3】王宏民,宋瑩瑩,付源. 空域法進行圖像增強處理在MATLAB中的仿真與分析J,

51、煤礦機械,2005,5:5658【4】劉惠燕,何文章,馬云飛. 基于數(shù)學(xué)形態(tài)學(xué)的霧天圖像增強算法J. 天津工程師范學(xué)院學(xué)報, 2009.【5】余成波. 數(shù)字圖像處理及MATLAB實現(xiàn). 重慶:重慶大學(xué)出版社, 2003.8 附錄(一)主函數(shù)clear;clc;close allI=imread('E:數(shù)字圖像處理課程設(shè)計car1.jpg');figure(1),imshow(I);title('汽車原圖');I=rgb2gray(I); imwrite(I,'汽車灰度圖.jpg'); figure(2),imshow(I);title('

52、汽車灰度圖');figure(3),subplot(2,1,1),imhist(I);title('汽車灰度圖直方圖');J,T=histeq(I,256); %有256個灰度級subplot(2,1,2),imhist(J);%均衡化后的直方圖title('直方圖均衡化');tic %計時開始height,width=size(J);%灰度圖長寬%求梯度I_edge=zeros(height,width);%創(chuàng)建height*width的矩陣for i=2:width-1%對每一列開始遍歷 I_edge(:,i)=abs(J(:,i+1)-J(:,i-

53、1);%每列的值賦為原圖像中左右兩列相減的絕對值第十章圖像分割P456Prewitt算子endI_edge=(255/(max(max(I_edge)-min(min(I_edge)*(I_edge-min(min(I_edge);% 歸一化處理(0255) figure(4),imshow(I_edge);title('梯度算子檢測邊緣');I_edge,y1=select(I_edge,height,width); %調(diào)用select函數(shù)二值化圖像BW2 = I_edge;figure(5),subplot(2,2,1),imshow(BW2);title('二值化

54、圖像');%開操作(腐蝕+膨脹)消除小物體SE=strel('rectangle',10,10);%創(chuàng)建10*10的矩形結(jié)構(gòu)元素%SE = strel(shape, parameters),根據(jù)shape指定的類型創(chuàng)建一個結(jié)構(gòu)元素SE。IM2=imerode(BW2,SE);%腐蝕subplot(2,2,2),imshow(IM2);title('汽車腐蝕后圖像');IM2=bwareaopen(IM2,50);%BW2 = bwareaopen(BW,P)刪除二值圖像BW中面積小于P的對象,默認情況下conn使用8鄰域%川APK110將P改為100以上效果較好subplot(2,2,3),imshow(IM2);title('刪除小面積圖像');IM3=imdilate(IM2,SE);%膨脹subplot(2,2,4),imshow(IM3);title('汽車膨脹后圖像');%投影以粗略估計車牌位置p_h=projection(double(IM3),'h');%調(diào)用projection函數(shù),水平方向,輸出

溫馨提示

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

評論

0/150

提交評論