圖像處理指導書五_第1頁
圖像處理指導書五_第2頁
圖像處理指導書五_第3頁
圖像處理指導書五_第4頁
圖像處理指導書五_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、多媒體通信技術(shù)實 驗 指 導 書唐山學院信息與控制工程實驗教學中心2015年3月實驗五 車牌定位一實驗原理在matlab環(huán)境下,經(jīng)過圖像預處理技術(shù)(灰度化、二值化、邊緣化、腐蝕、連通、濾波),再配合投影法來定位所有可能為待測車牌邊緣的像素;在這些候選的像素中,再進一步限制其像素點數(shù)并利用車牌的長寬比例大約保持一定值的事實,便可以精確地取得正確的車牌區(qū)域,以實現(xiàn)車牌定位。二Matlab中圖像的基本操作1、圖像的變換 fft2:fft2函數(shù)用于數(shù)字圖像的二維傅立葉變換。ifft2::ifft2函數(shù)用于數(shù)字圖像的二維傅立葉反變換,如: i=imread(filename); j=fft2(i);k=

2、ifft2(j);2、模擬噪聲生成函數(shù)和預定義濾波器 imnoise:用于對圖像生成模擬噪聲,如: i=imread(filename); j=imnoise(i,gaussian,0,0.02);%模擬高斯噪聲 fspecial:用于產(chǎn)生預定義濾波器,如:h=fspecial(sobel);%sobel水平邊緣增強濾波器h=fspecial(gaussian);%高斯低通濾波器h=fspecial(laplacian);%拉普拉斯濾波器h=fspecial(log);%高斯拉普拉斯(LoG)濾波器h=fspecial(average);%均值濾波器2、圖像的增強直方圖:imhist函數(shù)用于數(shù)

3、字圖像的直方圖顯示。直方圖均化:histeq函數(shù)用于數(shù)字圖像的直方圖均化。對比度調(diào)整:imadjust函數(shù)用于數(shù)字圖像的對比度調(diào)整。對數(shù)變換:log函數(shù)用于數(shù)字圖像的對數(shù)變換?;诰矸e的圖像濾波函數(shù):filter2函數(shù)用于圖像濾波。線性濾波:利用二維卷積conv2濾波。中值濾波:medfilt2函數(shù)用于圖像的中值濾波。銳化(1)利用Sobel算子銳化圖像, 如:i=imread(filename);h=1,2,1;0,0,0;-1,-2,-1;%Sobel算子j=filter2(h,i);(2)利用拉氏算子銳化圖像, 如:i=imread(filename);j=double(i);h=0,1

4、,0;1,-4,0;0,1,0;%拉氏算子k=conv2(j,h,same);m=j-k;3、圖像邊緣檢測sobel算子 如:i=imread(filename);j = edge(i,sobel,thresh)prewitt算子 如:i=imread(filename);j = edge(i,prewitt,thresh)roberts算子 如:i=imread(filename);j = edge(i,roberts,thresh)log算子 如:i=imread(filename);j = edge(i,log,thresh)canny算子 如:i=imread(filename);j

5、= edge(i,canny,thresh)Zero-Cross算子 如:i=imread(filename);j = edge(i,zerocross,thresh)4、形態(tài)學圖像處理膨脹:是在二值化圖像中“加長”或“變粗”的操作,函數(shù)imdilate執(zhí)行膨脹運算,如:a=imread(filename); %輸入二值圖像b=0 1 0;1 1 1;0 1 0; c=imdilate(a,b);腐蝕:函數(shù)imerode執(zhí)行腐蝕,如:a=imread(filename); %輸入二值圖像b=strel(disk,1);c=imerode(a,b);開運算:先腐蝕后膨脹稱為開運算,用imopen

6、來實現(xiàn),如: a=imread(filename);b=strel(square,2);c=imopen(a,b);閉運算:先膨脹后腐蝕稱為閉運算,用imclose來實現(xiàn),如: a=imread(filename);b=strel(square,2);c=imclose(a,b);.對于車牌定位系統(tǒng),需要使用到的圖像處理操作有:灰度化、二值化、邊緣化、腐蝕、連通、濾波。三流程圖車牌定位過程的流程圖如下:1、載入圖片。車牌記錄圖片一般都是以jpeg格式保存,故本次設計讀取的圖片格式均為jpeg格式,如為其他格式,可先行將格式轉(zhuǎn)換成jpeg格式。操作指令:namefile,pathname=uig

7、etfile(*.jpg,Select image); if namefile=0 I=imread(strcat(pathname,namefile); imshow(I); end2、灰度化。車牌圖片一般為彩色圖片,故不應該再使用im2bw函數(shù),這里使用rgb2gray函數(shù)對彩色的圖像進行灰度化。3、邊緣化。前面已經(jīng)介紹給很多圖像邊緣檢測的方法,本次設計中才用Robert算子對車牌圖像進行邊緣化。具體命令為:I2=edge(I1,robert,0.15,both); 4、腐蝕。圖像的腐蝕操作指令為imerode。5、連通。這里我們可以使用一個開操作進行圖像的連通。具體命令為:se=stre

8、l(rectangle,25,25);I4=imclose(I3,se);6、濾波。在前面的一些列操作之后圖像可能會存在多個符合“車牌”要求的區(qū)域或者其他一些干擾信息,我們需要將之排除。濾波操作便可以達到要求。可以使用中值濾波,不過在本次設計總將直接使用bwareaopen函數(shù)對圖像進行濾波操作。7、定位。前面的操作都完了之后最后一步的定位便可以開始了。使用投影判斷法可以精確的得出車牌的具體位置并將之顯示出來。對于有些圖片可能存在車牌傾斜的現(xiàn)象,這里不再做深入研究。在定位過程預留了一些車牌信息空間以便于車牌傾斜的修正。四.程序源代碼源程序代碼及圖形(1)I=imread(yuan.bmp);f

9、igure; subplot(2,2,1);imshow(I);title(原圖);I1=rgb2gray(I);%圖像灰度化subplot(2,2,2);imshow(I1);title(灰度化圖);m2=medfilt2(I1,5,5);subplot(2,2,3);imshow(m2);title(中值濾波);w2=wiener2(I1,5,5);%維納濾波subplot(2,2,4);imshow(w2);title(維納濾波);(2)圖像二值化fmax1=double(max(max(I1);fmin1=double(min(min(I1);level=(fmax1-(fmax1-f

10、min1)/3)/255;bw2=im2bw(I1,level);bw22=double(bw2);figure,imshow(bw22),title(圖像二值化 );(3)圖像算法處理lubo=edge(bw22,log);figure;subplot(2,2,1);imshow(bw2);title(Log算子邊緣檢測);%圖像邊緣檢測 bg1=imclose(lubo,strel(rectangle,1,33);subplot(2,2,2),imshow(bg1);title(圖像閉運算1,33);bg3=imopen(bg1,strel(rectangle,1,33);subplot(

11、2,2,3),imshow(bg3);title(圖像開運算 1,33);bg2=imopen(bg3,strel(rectangle,12,1);subplot(2,2,4),imshow(bg2);title(圖像開15,1);(4)圖像標記L,num = bwlabel(bg2,8);%標注二進制圖像中已連接的部分%Feastats = imfeature(L,basic);%計算圖像區(qū)域的特征尺寸%Area=Feastats.Area;%區(qū)域面積%BoundingBox=Feastats.BoundingBox;%x y width height車牌的框架大小%RGB = label2

12、rgb(L, spring, k, shuffle); %標志圖像向RGB圖像轉(zhuǎn)換figure,imshow(L);title(圖像標記 );%輸出框架的彩色圖像(5)形態(tài)濾波I5=bwareaopen(L,1000);%去除聚團灰度值小于2000的部分figure,imshow(I5),title(形態(tài)濾波后圖像);(6) y,x,z=size(I5);I6=double(I5); Y1=zeros(y,1); for i=1:y for j=1:x if(I6(i,j,1)=1) Y1(i,1)= Y1(i,1)+1; end end end temp MaxY=max(Y1); figu

13、re(); subplot(3,2,1),plot(0:y-1,Y1),title(行方向像素點灰度值累計和 ),xlabel(行值),ylabel(像素); PY1=MaxY; while (Y1(PY1,1)=50)&(PY11) PY1=PY1-1; end PY2=MaxY; while (Y1(PY2,1)=50)&(PY2y) PY2=PY2+1; end IY=I(PY1:PY2,:,:); X1=zeros(1,x); for j=1:x for i=PY1:PY2 if(I6(i,j,1)=1) X1(1,j)= X1(1,j)+1; end end end subplot(

14、3,2,2),plot(0:x-1,X1),title(列方向像素點灰度值累計和 ),xlabel(列值),ylabel(像數(shù)); PX1=1; while (X1(1,PX1)3)&(PX1x) PX1=PX1+1; end PX2=x; while (X1(1,PX2)PX1) PX2=PX2-1; end PX1=PX1-1; PX2=PX2+1; %分割出車牌圖像%dw=I(PY1:PY2,PX1:PX2,:); subplot(3,2,3),imshow(dw),title(定位剪切后的彩色車牌圖像) if isrgb(dw) II1 = rgb2gray(dw); %將RGB圖像轉(zhuǎn)

15、化為灰度圖像else II1=dw;endg_max=double(max(max( II1);g_min=double(min(min( II1);T=round(g_max-(g_max-g_min)/3); % T 為二值化的閾值m,n=size(II1);% d:二值圖像%h=graythresh(I1);II=im2bw(II1,T/256);subplot(3,2,4);imshow(II),title(二值化車牌圖像); I2=bwareaopen(II,20);subplot(3,2,5);imshow(I2),title(形態(tài)學濾波后的二值化圖像); y1,x1,z1=siz

16、e(I2);I3=double(I2);TT=1;%去除圖像頂端和底端的不感興趣的區(qū)域 %Y1=zeros(y1,1); for i=1:y1 for j=1:x1 if(I3(i,j,1)=1) Y1(i,1)= Y1(i,1)+1 ; end end endPy1=1;Py0=1;while (Y1(Py0,1)20)&(Py0=20)&(Py1y1) Py1=Py1+1; endI2=I2(Py0:Py1,:,:);subplot(3,2,6);imshow(I2),title(目標車牌區(qū)域);(7)% 分隔字符按行累計值%X1=zeros(1,x1);for j=1:x1 for i=1:y1 if(I3(i,j,1)=1) X1(1,j)= X1(1,j)+1; end end endfigure;plot(0:x1-1,X1),title(列方向像素點灰度值來計和 ),xlabel(列值),ylabel(累計像素量 ); Px0=1;Px1=1;(8) %分割字符%for i=1:7 while (X1(1,Px

溫馨提示

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

評論

0/150

提交評論