基于MATLAB的數(shù)字信號處理實(shí)驗(yàn)報(bào)告_第1頁
基于MATLAB的數(shù)字信號處理實(shí)驗(yàn)報(bào)告_第2頁
基于MATLAB的數(shù)字信號處理實(shí)驗(yàn)報(bào)告_第3頁
基于MATLAB的數(shù)字信號處理實(shí)驗(yàn)報(bào)告_第4頁
基于MATLAB的數(shù)字信號處理實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、西北工業(yè)大學(xué)基于matlab的數(shù)字信號處理實(shí)驗(yàn)報(bào)告學(xué) 院: 學(xué)號: 姓名: 專 業(yè): 實(shí)驗(yàn)時(shí)間: 2014年7月 指導(dǎo)教師: 西北工業(yè)大學(xué)2014年 07 月實(shí)驗(yàn)一 matlab基本編程實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康募耙?熟悉matlab運(yùn)行環(huán)境;2. 掌握matlab的基本語法和函數(shù);3. 掌握matlab的基本繪圖功能二、實(shí)驗(yàn)設(shè)備(環(huán)境)及要求1 計(jì)算機(jī)2 matlab軟件編程實(shí)驗(yàn)平臺三、實(shí)驗(yàn)內(nèi)容與步驟1求下列線性方程組的解 2. 分別用for或while循環(huán)結(jié)構(gòu)編寫程序,求出 。并考慮一種避免循環(huán)語句的程序設(shè)計(jì)算法實(shí)現(xiàn)同樣的運(yùn)算。 3. 在同一坐標(biāo)系下繪制以下3條曲線,并作標(biāo)記。 四、設(shè)計(jì)思想設(shè)計(jì)思

2、想1.1:對于ax=b類型的方程組求解,需要先對非奇異矩陣a求逆,若存在逆矩陣,然后與b相乘即為所求設(shè)計(jì)思想1.2:用for或while循環(huán)結(jié)構(gòu)編寫程序時(shí),首先對k初始化為0,確定循環(huán)的起始條件、步長和終值條件;用非循環(huán)語句時(shí),先確定首項(xiàng)、公比,然后帶入到等比數(shù)列求和公式中設(shè)計(jì)思想1.3:首先確定繪制曲線的每兩點(diǎn)之間的間隔,然后在一幅圖上繪制出所有曲線,并進(jìn)行標(biāo)注五、程序代碼及注釋程序代碼1:>> a=6 3 4; -2 5 7;8 -4 -3; %矩陣a>> x=inv(a) x = 0.1300 -0.0700 0.0100 0.5000 -0.5000 -0.50

3、00 -0.3200 0.4800 0.3600>> b=3 -4 -7' x=x*b程序代碼2:方法1:for循環(huán)結(jié)構(gòu)實(shí)現(xiàn)%結(jié)果初始化0k= 0.0;for i = 1: 106 %默認(rèn)步長為1k=k+sqrt(3)/(2i);end;fprintf('k=%fn',k);方法2:while循環(huán)結(jié)構(gòu)實(shí)現(xiàn)k = 0.0;i = 1;while i < 107k = k +sqrt(3)/(2i);i = i + 1;end;fprintf('k=%fn',k);方法3:不使用循環(huán),利用等比數(shù)列的前106項(xiàng)和公式實(shí)現(xiàn)k = sqrt(3)

4、/2.0; %數(shù)列首項(xiàng)k = k *(1-0.5106)/(1-0.5);%公比為0.5fprintf('k=%fn',k);程序代碼3:x=0:0.01:pi; %步長0.01y1=sin(x); y2=sin(x).*sin(10*x);y3=-cos(x);grid on%顯示網(wǎng)格hold on %在一幅圖中繪制多條曲線plot(x, y1, 'r','linewidth',2); %y1紅線表示,線寬為2plot(x, y2, 'g','linewidth',2); %y2綠線表示,線寬為2plot(x,

5、y3, 'b','linewidth',2); %y3藍(lán)線表示,線寬為2%x軸范圍03.5,y軸范圍-1.21.2 axis(0,3.5,-1.2,1.2); %圖例注釋自動(dòng)放在最佳位置legend('sin(x)','sin(x)sin(10x)','-cos(x)'); xlabel('x坐標(biāo)軸'); %標(biāo)注橫坐標(biāo)ylabel('y坐標(biāo)軸'); %標(biāo)注縱坐標(biāo)title('三曲線對比圖'); %標(biāo)注標(biāo)題六、實(shí)驗(yàn)結(jié)果實(shí)驗(yàn)結(jié)果1:x = 0.6000 7.0000 -5

6、.4000所以,x=x1,x2,x3= 0.6000, 7.0000, -5.4000實(shí)驗(yàn)結(jié)果2:k=1.732051實(shí)驗(yàn)結(jié)果3:三曲線的對比圖如下所示: 圖1.1 三曲線的對比實(shí)驗(yàn)二 基于matlab信號處理實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康募耙?. 回顧數(shù)字信號處理的主要內(nèi)容;2. 掌握利用matlab進(jìn)行信號處理的方法;3. 了解信號處理工具箱中一些函數(shù)的功能;二、實(shí)驗(yàn)設(shè)備(環(huán)境)及要求1 計(jì)算機(jī)2 matlab軟件編程實(shí)驗(yàn)平臺三、實(shí)驗(yàn)內(nèi)容1 設(shè)序列 其中, 2 . 一數(shù)字濾波器由 頻率響應(yīng)函數(shù)描述 1)寫出其差分方程表示; 2)畫出上面濾波器的幅頻和相頻圖; 3)產(chǎn)生信號 的200個(gè)樣本,通過該濾波器

7、得到輸出y(n), 試將輸出y(n)的穩(wěn)態(tài)部分與x(n)作比較,說明這兩個(gè)正弦信號的幅度和相位是如何受該濾波器影響的。3. 設(shè)計(jì)fir濾波器(帶通濾波器,四種窗函數(shù), fs2000hz, 帶通頻率300hz600hz,階數(shù)自選, 畫頻率特性并分析比較)。四、設(shè)計(jì)思想設(shè)計(jì)思想2.1:將求互相關(guān)問題轉(zhuǎn)化為求卷積的問題,互相關(guān)的區(qū)間大小為兩信號的區(qū)間端點(diǎn)分別相加,區(qū)間長度為兩信號區(qū)間長度之和設(shè)計(jì)思想2.2:由系統(tǒng)的差分方程,得到方程的各個(gè)項(xiàng)的系數(shù),進(jìn)而可求出系統(tǒng)的幅頻和相頻響應(yīng)設(shè)計(jì)思想2.3:首先選定帶通濾波器的階數(shù),根據(jù)采樣頻率、上、下限截止頻率求得濾波器的各個(gè)參數(shù),然后得出窗函數(shù)的頻率特性五、程

8、序代碼及注釋程序代碼2.1:clc;clear all;x=3,1,7,0,-1,4,2;%沖擊信號x的幅度nx=-3:3; %沖擊信號x的取值范圍%對x進(jìn)行右移2個(gè)單位,得到 x(n-2)ny=nx+2;y=x;w=normrnd(0,1,1,7); %w為均值為0,方差為1的高斯隨機(jī)序列nw=ny; %得到 y(n)=x(n-2)+w(n)%對x進(jìn)行翻折x=fliplr(x);nx=-fliplr(nx);%卷積nyb=ny(1)+nx(1);nye=ny(length(y)+nx(length(x);nrxy=nyb:nye;rxy=conv(y,x);subplot(1,1,1);st

9、em(nrxy,rxy);axis(-5,9,0,90);xlabel('x');title('x(n)與y(n)的互相關(guān)');程序代碼2.2.2:clcclear allfs=1000;b=1 0 0 0 1;a=1 0 0 0 -.8145;h,f=freqz(b,a,512,fs);mag=abs(h);%幅度ph=angle(h);%相位subplot(2,1,1);ph=ph*180/pi;%由弧度轉(zhuǎn)換為角度plot(f,mag);grid;xlabel('frequency/hz');ylabel('magnitude'

10、;);title('幅頻響應(yīng)');subplot(2,1,2);plot(f,ph);grid;xlabel('frequency/hz');ylabel('phase');title('相頻響應(yīng)');程序代碼2.2.3:clcclear alln=200;n=linspace(-100,100,n);x=sin(pi*n/2)+5*cos(pi*n);n_fft=2nextpow2(2*n);w=linspace(0,2*pi,n_fft);h_fft=(1+exp(-1j*4*w)./(1-0.8145*exp(-1j*4*w

11、);x_fft=fft(x,n_fft);y_fft=x_fft.*h_fft;y_temp=fftshift(ifft(y_fft);y=y_temp(n_fft/2:n_fft/2+n-1);figure;plot(w,abs(h_fft),'b','linewidth',2);hold on;plot(w,angle(h_fft),'g','linewidth',2);legend('幅度','相位')figure;plot(n,x,'b');hold on;plot(n,re

12、al(y),'g');legend('x(n)','y(n)穩(wěn)態(tài)部分')程序代碼2.3:fs=2000; %采樣頻率fc1=300; %下限截止頻率fc2=600;%上限截止頻率n=31; % 濾波器的階數(shù) wlp=fc1/(fs/2);whp=fc2/(fs/2);wn=wlp,whp; %濾波器歸一化后的上下限截止頻率w1=boxcar(n); %矩形窗的時(shí)域響應(yīng)w2=hanning(n); %漢寧窗的時(shí)域響應(yīng)w3=hamming(n); %海明窗的時(shí)域響應(yīng)w4=blackman(n); %布萊克窗的時(shí)域響應(yīng)%用不同的窗函數(shù)設(shè)計(jì)n階的濾波器b

13、1=fir1(n-1,wn,w1); b2=fir1(n-1,wn,w2); b3=fir1(n-1,wn,w3); b4=fir1(n-1,wn,w4); %求出濾波器的頻率響應(yīng)h1 f1=freqz(b1,1,512,fs);h2 f2=freqz(b2,1,512,fs);h3 f3=freqz(b3,1,512,fs);h4 f4=freqz(b4,1,512,fs);figure;subplot(2,1,1); plot(f1,20*log10(abs(h1);xlabel('頻率/hz');ylabel('振幅/db'); title('矩形

14、窗的幅頻特性');grid on;subplot(2,1,2); plot(f1,180/pi*unwrap(angle(h1);xlabel('頻率/hz');ylabel('相位'); title('矩形窗的相頻特性');grid on;figure;subplot(2,1,1);plot(f2,20*log10(abs(h2);xlabel('頻率/hz');ylabel('振幅/db'); title('漢寧窗的幅頻特性');grid on;subplot(2,1,2); plot(

15、f2,180/pi*unwrap(angle(h2);xlabel('頻率/hz');ylabel('相位'); title('漢寧窗的相頻特性');grid on;figure;subplot(2,1,1);plot(f3,20*log10(abs(h3);xlabel('頻率/hz');ylabel('振幅/db'); title('海明窗的幅頻特性');grid on;subplot(2,1,2);plot(f3,180/pi*unwrap(angle(h3);xlabel('頻率/h

16、z');ylabel('相位'); title('海明窗的相頻特性');grid on;figure;subplot(2,1,1);plot(f4,20*log10(abs(h4);xlabel('頻率/hz');ylabel('振幅/db');title('布萊克窗的幅頻特性');grid on;subplot(2,1,2); plot(f4,180/pi*unwrap(angle(h4); xlabel('頻率/hz');ylabel('相位'); title('

17、布萊克窗的相頻特性');grid on;六、實(shí)驗(yàn)結(jié)果實(shí)驗(yàn)結(jié)果2.1:圖2-1 x(n)與y(n)的互相關(guān)序列圖由實(shí)驗(yàn)結(jié)果可知,x(n)與y(n)的互相關(guān)只在區(qū)間-4,8上有能力,剛好是區(qū)間-3,3與右移后的區(qū)間-1,5兩端點(diǎn)之和,與結(jié)論一致。且互相關(guān)在2處達(dá)到最大。實(shí)驗(yàn)結(jié)果2.2.1:其表示的差分方程為:y(n)-0.8145y(n-4)=x(n)+x(n-4)實(shí)驗(yàn)結(jié)果2.2.2:濾波器的幅頻和相頻圖如下所示:圖2-2 濾波器的幅頻與相頻圖實(shí)驗(yàn)結(jié)果2.2.3:由下圖實(shí)驗(yàn)結(jié)果可知,輸出信號相對于輸入信號有一小小的延遲,基本上x(n)的頻點(diǎn)都通過了,濾波器是個(gè)梳狀filter,正好在想通過

18、的點(diǎn)附近相位為0,也就是附加延遲為0圖2-3 濾波器的幅度和相位變化圖2-4 兩信號波形實(shí)驗(yàn)結(jié)果2.3:四種帶通濾波器的窗函數(shù)的頻率響應(yīng)如下所示: 圖2-5 矩形窗的頻率特性 圖2-6 漢寧窗的頻率特性 圖2-7 海明窗的頻率特性圖2-8 布萊克曼窗的頻率特性實(shí)驗(yàn)三 基于matlab的圖像處理實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康募耙?了解圖像處理的基本概念和功能;2. 掌握利用matlab進(jìn)行圖像處理的方法;3. 了解圖像處理工具箱中一些函數(shù)的功能;二、實(shí)驗(yàn)設(shè)備(環(huán)境)及要求1 計(jì)算機(jī)2 matlab軟件編程實(shí)驗(yàn)平臺三、實(shí)驗(yàn)內(nèi)容1對一幅分別添加了椒鹽噪聲和高斯白噪聲的圖象進(jìn)行均值和中值濾波(取三種不同大小的模板

19、),并分析實(shí)驗(yàn)結(jié)果。2對一幅圖像進(jìn)行dct變換,分別將小于5、10、20的變換系數(shù)置為0,進(jìn)行反dct得到重構(gòu)圖像,顯示原圖像和各重構(gòu)圖像并分別計(jì)算重構(gòu)圖像的峰值信噪比和置為0的變換系數(shù)的個(gè)數(shù)。 四、設(shè)計(jì)思想設(shè)計(jì)思想3.1:任意讀取一幅圖像,利用matlab自帶函數(shù)imnoise()向圖像中加入椒鹽噪聲和高斯噪聲,并分別用3*3、5*5、7*7模板進(jìn)行均值、中值濾波處理。均值濾波是一種線性濾波,也是低通濾波。中值濾波是一種統(tǒng)計(jì)濾波器,是非線性的。分別向圖像中加入高斯噪聲和椒鹽噪聲,利用不同的濾波方法,以及不同大小的窗口模板進(jìn)行濾波,比較結(jié)果,得出結(jié)論。由實(shí)驗(yàn)可以看出,中值濾波對椒鹽噪聲的處理效

20、果好,均值濾波對高斯噪聲的處理效果好。無論是中值濾波還是均值濾波,都是其模板越大,圖像越模糊。所以選擇模板大小時(shí),以處理圖片效果最佳為宜。設(shè)計(jì)思想3.2:由于dct變換有使圖像能量幾種在左上方的特性,因此重構(gòu)圖像保留了原始圖像大部分的圖像特征,其視覺效果與原始圖像相差不大。對比重構(gòu)前后的圖像易知,重構(gòu)后的圖像稍顯模糊,這是因?yàn)樵搲嚎s算法為有損壓縮,壓縮后的圖像丟失了原始圖像部分?jǐn)?shù)據(jù)信息。五、程序代碼及注釋程序代碼3.1:%讀取源圖像i = imread('cameraman.tif');%向圖像中加入椒鹽噪聲j = imnoise(i,'salt & peppe

21、r',0.1);%向圖像中加入高斯噪聲k = imnoise(i,'gaussian',0.02);figure;subplot(2,2,1);imshow(i);title('原圖像');subplot(2,2,3);imshow(j);title('加入椒鹽噪聲');subplot(2,2,4);imshow(k);title('加入高斯噪聲');%進(jìn)行3*3均值濾波j_average1=filter2(fspecial('average',3),j)/255;%進(jìn)行5*5均值濾波j_average2=

22、filter2(fspecial('average',5),j)/255;%進(jìn)行7*7均值濾波j_average3=filter2(fspecial('average',7),j)/255;figure;subplot(2,2,1);imshow(j); title('加入椒鹽噪聲');subplot(2,2,2);imshow(j_average1);title('3*3模板均值濾波');subplot(2,2,3);imshow(j_average2);title('5*5模板均值濾波');subplot(2,

23、2,4);imshow(j_average3);title('7*7模板均值濾波');%進(jìn)行3*3中值濾波j_med1=medfilt2(j,3 3);%進(jìn)行5*5中值濾波j_med2=medfilt2(j,5 5);%進(jìn)行5*5中值濾波j_med3=medfilt2(j,7 7);figure;subplot(2,2,1);imshow(j); title('加入椒鹽噪聲');subplot(2,2,2);imshow(j_med1);title('3*3模板中值濾波');subplot(2,2,3);imshow(j_med2);title(

24、'5*5模板中值濾波');subplot(2,2,4);imshow(j_med3);title('7*7模板中值濾波');%進(jìn)行3*3均值濾波k_average1=filter2(fspecial('average',3),k)/255;%進(jìn)行5*5均值濾波k_average2=filter2(fspecial('average',5),k)/255;%進(jìn)行7*7均值濾波k_average3=filter2(fspecial('average',7),k)/255;figure;subplot(2,2,1);im

25、show(k); title('加入高斯噪聲');subplot(2,2,2);imshow(k_average1);title('3*3模板均值濾波');subplot(2,2,3);imshow(k_average2);title('5*5模板均值濾波');subplot(2,2,4);imshow(k_average3);title('7*7模板均值濾波');%進(jìn)行3*3中值濾波k_med1=medfilt2(k,3 3);%進(jìn)行5*5中值濾波k_med2=medfilt2(k,5 5);%進(jìn)行5*5中值濾波k_med3=m

26、edfilt2(k,7 7);figure;subplot(2,2,1);imshow(k); title('加入高斯噪聲');subplot(2,2,2);imshow(k_med1);title('3*3模板中值濾波');subplot(2,2,3);imshow(k_med2);title('5*5模板中值濾波');subplot(2,2,4);imshow(k_med3);title('7*7模板中值濾波');程序代碼3.2:%讀取源圖像i=imread('cameraman.tif');%第2題 離散余弦

27、變換及反變換%對圖像進(jìn)行離散余弦變換j=dct2(i);%小于5的變換系數(shù)的索引值col row = size(find(abs(j)< 5);a=col*row;%置為0的變換系數(shù)的個(gè)數(shù)%小于10的變換系數(shù)的索引值col row= size(find(abs(j)< 10);b=col*row;%置為0的變換系數(shù)的個(gè)數(shù)%小于20的變換系數(shù)的索引值col row= size(find(abs(j)< 20);c=col*row;%置為0的變換系數(shù)的個(gè)數(shù)%將小于5的變換系數(shù)置為0后做離散余弦反變換j(abs(j) < 5 ) = 0;i1=idct2(j);%將小于10的

28、變換系數(shù)置為0后做離散余弦反變換j(abs(j) < 10) = 0;i2=idct2(j);%將小于20的變換系數(shù)置為0后做離散余弦反變換j(abs(j) < 20) = 0;i3=idct2(j);%顯示原圖及反變換結(jié)果figure(2);subplot(2,2,1);imshow(i);title('原圖');subplot(2,2,2);imshow(i1,0,255);title('系數(shù)置0的個(gè)數(shù)小于5');subplot(2,2,3);imshow(i2,0,255);title('系數(shù)置0的個(gè)數(shù)小于10');subplo

29、t(2,2,4);imshow(i3,0,255);title('系數(shù)置0的個(gè)數(shù)小于20');%計(jì)算反重構(gòu)時(shí),dct的變換系數(shù)的置0個(gè)數(shù)小于5時(shí)的峰值信噪比及置為0的變換系數(shù)的個(gè)數(shù)i = double(i);i1 = double(i1);row,col = size(i);row,col = size(i1);mse1 = sum(sum(i-i1).2)/(row * col);psnr1 = 10 * log10(2552/mse1);fprintf('圖像的峰值信噪比:mse1=%fn',mse1);fprintf('置為0的變換系數(shù)的個(gè)數(shù)為:p

30、snr1=%fn',psnr1);%計(jì)算反重構(gòu)時(shí),dct的變換系數(shù)的置0個(gè)數(shù)小于10時(shí)的峰值信噪比及置為0的變換系數(shù)的個(gè)數(shù)i = double(i);i2 = double(i2);row,col = size(i);row,col = size(i2);mse2 = sum(sum(i-i2).2)/(row * col);psnr2 = 10 * log10(2552/mse2);fprintf('圖像的峰值信噪比:mse2=%fn',mse2);fprintf('置為0的變換系數(shù)的個(gè)數(shù)為:psnr2=%fn',psnr2);%計(jì)算反重構(gòu)時(shí),dct的

31、變換系數(shù)的置0個(gè)數(shù)小于20時(shí)的峰值信噪比及置為0的變換系數(shù)的個(gè)數(shù)i = double(i);i3 = double(i3);row,col = size(i);row,col = size(i3);mse3 = sum(sum(i-i3).2)/(row * col);psnr3 = 10 * log10(2552/mse3);fprintf('圖像的峰值信噪比:mse3=%fn',mse1);fprintf('置為0的變換系數(shù)的個(gè)數(shù)為:psnr3=%fn',psnr3);六、實(shí)驗(yàn)結(jié)果實(shí)驗(yàn)結(jié)果3.1:由實(shí)驗(yàn)結(jié)果可以看出,對于椒鹽噪聲,中值濾波效果明顯優(yōu)于均值濾波

32、,對于高斯噪聲,上圖中中值濾波比均值濾波效果略佳。隨著模板從3*3增加到7*7,對于均值濾波,濾噪效果變好,但圖像變模糊;對于中值濾波,圖像細(xì)節(jié)丟失變多,濾除高斯噪聲的效果變好。 圖3-1 加噪前、后圖像對比圖3-2 加椒鹽噪聲的圖像均值濾波前、后的圖像對比圖3-3 加椒鹽噪聲的圖像中值濾波前、后的圖像對比 圖3-4加高斯噪聲的圖像均值濾波前、后的圖像對比圖3-5 加高斯噪聲的圖像中值濾波前、后的圖像對比實(shí)驗(yàn)結(jié)果3.2:圖3-6 原圖及重構(gòu)圖像圖3-7 程序運(yùn)行結(jié)果由實(shí)驗(yàn)結(jié)果可知,當(dāng)dct變換的系數(shù)置0個(gè)數(shù)小于5時(shí),重構(gòu)圖像與原圖像的峰值信噪比為2.768259,重構(gòu)圖像置為0的變換系數(shù)的個(gè)數(shù)

33、個(gè)數(shù)為:43.708737;當(dāng)dct變換的系數(shù)置0個(gè)數(shù)小于10時(shí),重構(gòu)圖像與原圖像的峰值信噪比15.922448,重構(gòu)圖像置為0的變換系數(shù)的個(gè)數(shù)個(gè)數(shù)為:36.110705;當(dāng)dct變換的系數(shù)置0個(gè)數(shù)小于5時(shí),重構(gòu)圖像與原圖像的峰值信噪比為2.768259,重構(gòu)圖像置為0的變換系數(shù)的個(gè)數(shù)個(gè)數(shù)為:30.366348;可以發(fā)現(xiàn),在拋棄部分dct系數(shù)后,重構(gòu)圖像時(shí)不會帶來其畫面質(zhì)量的顯著下降,采用這種方法來實(shí)現(xiàn)壓縮算法時(shí),可以通過修改mask變量中的dct系數(shù)來更好地比較仿真結(jié)果。對比重構(gòu)前后的圖像易知,重構(gòu)后的圖像稍顯模糊,這是因?yàn)樵搲嚎s算法為有損壓縮,壓縮后的圖像丟失了原始圖像部分?jǐn)?shù)據(jù)信息。實(shí)驗(yàn)四

34、 基于matlab神經(jīng)網(wǎng)絡(luò)編程實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康募耙?了解神經(jīng)網(wǎng)絡(luò)的基本概念和原理;2. 掌握用matlab實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的思路和方法;3. 了解神經(jīng)網(wǎng)絡(luò)工具箱函數(shù)的功能。二、實(shí)驗(yàn)設(shè)備(環(huán)境)及要求1 計(jì)算機(jī)2 matlab軟件編程實(shí)驗(yàn)平臺三、實(shí)驗(yàn)內(nèi)容1、 利用2輸入的mp模型是否可實(shí)現(xiàn)“與”、“或”、“非”和“異或”功能?若能,編程實(shí)現(xiàn)并給出實(shí)現(xiàn)各種功能的權(quán)值和實(shí)驗(yàn)結(jié)果,若不能,請說明原因。2、用人工神經(jīng)網(wǎng)絡(luò)擬合函數(shù) 說明:1)網(wǎng)絡(luò)結(jié)構(gòu)為三層(輸入層、1個(gè)隱層和輸出層) 2)獲取兩組數(shù)據(jù),一組作為訓(xùn)練集,一組作為測試集 3)用訓(xùn)練集訓(xùn)練網(wǎng)絡(luò) 4)用測試集檢驗(yàn)訓(xùn)練結(jié)果 四、設(shè)計(jì)思想設(shè)計(jì)思想4.1

35、:如果能夠找到一條直線將輸入數(shù)據(jù)分開,則此功能可以利用2輸入的mp模型實(shí)現(xiàn),否則,此功能不可以利用2輸入的mp模型實(shí)現(xiàn)設(shè)計(jì)思想4.2:bp神經(jīng)網(wǎng)絡(luò)是誤差反向傳播神經(jīng)網(wǎng)絡(luò)的簡稱,是神經(jīng)網(wǎng)絡(luò)的一個(gè)重要分支,是有監(jiān)督學(xué)習(xí)網(wǎng)絡(luò),也是在實(shí)際應(yīng)用中最常見的網(wǎng)絡(luò)?;诓⑿械木W(wǎng)絡(luò)結(jié)構(gòu),主要由輸入層、隱含層、輸出層組成,能夠?qū)崿F(xiàn)m到n維的非線性映射,網(wǎng)絡(luò)的學(xué)習(xí)方法采用梯度下降法。當(dāng)一對學(xué)習(xí)模式提供給網(wǎng)絡(luò)后,各神經(jīng)元獲得網(wǎng)絡(luò)的輸入響應(yīng)并產(chǎn)生神經(jīng)元之間的連接權(quán)值,然后按照減小希望輸出與實(shí)際輸出誤差的方向傳播,這個(gè)過程即為前向傳播。網(wǎng)絡(luò)連接的權(quán)值的修改從輸出層開始,經(jīng)各中間層到輸入層(誤差的反向傳輸過程)。正向傳輸和

36、反向傳輸過程反復(fù)進(jìn)行j直到網(wǎng)絡(luò)的全局誤差趨向于設(shè)定的極小值,這就是bp算法,采用這種算法的多級非循環(huán)網(wǎng)絡(luò)被稱之為bp神經(jīng)網(wǎng)絡(luò)。所以設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)時(shí),首先要確定隱層層數(shù)、隱層節(jié)點(diǎn)數(shù),設(shè)置網(wǎng)絡(luò)參數(shù),同時(shí)選定訓(xùn)練集。若要提高判斷或識別的準(zhǔn)確率,可適當(dāng)?shù)卦龃鬁y試集數(shù)據(jù)。五、程序代碼及注釋程序代碼4.1:clc; clear all; close all; % p為輸入矢量 p1 = 0 0 1 1;0 1 0 1; p2 = 0 1; % t為目標(biāo)矢量 t1 = 0 0 0 1;0 1 1 1; t2 = 1 0;% 與門clc;p=p1;t=t1(1,:);% 定義感知器神經(jīng)元并對其初始化 net=n

37、ewp(0 1;0 1,1);net.initfcn='initlay'net.layers1.initfcn='initwb'net.inputweights1,1.initfcn='rands'net.layerweights1,1.initfcn='rands'net.biases1.initfcn='rands'net=init(net);% 訓(xùn)練感知器神經(jīng)元net=train(net,p,t);cell2mat(net.iw)cell2mat(net.b)% 繪制結(jié)果分類曲線figure(1);plotp

38、v(p,t)plotpc(net.iw1,1,net.b1);title('與門結(jié)果分類曲線');% 利用訓(xùn)練完的感知器神經(jīng)元分類for i=0:1 for j=0:1 p= i;j a= sim(net,p) endend% pause;%或門clc;p=p1;t=t1(2,:);% 定義感知器神經(jīng)元并對其初始化 net=newp(0 1;0 1,1);net.initfcn='initlay'net.layers1.initfcn='initwb'net.inputweights1,1.initfcn='rands'net.l

39、ayerweights1,1.initfcn='rands'net.biases1.initfcn='rands'net=init(net);% 訓(xùn)練感知器神經(jīng)元net=train(net,p,t);cell2mat(net.iw)cell2mat(net.b)% 繪制結(jié)果分類曲線figure(2);plotpv(p,t)plotpc(net.iw1,1,net.b1);title('或門結(jié)果分類曲線');% 利用訓(xùn)練完的感知器神經(jīng)元分類for i=0:1 for j=0:1 p=i;j a = sim(net,p) endend% pause;

40、%非門clc;p=p2;t=t2;% 定義感知器神經(jīng)元并對其初始化 net=newp(0 1,1);net.initfcn='initlay'net.layers1.initfcn='initwb'net.inputweights1,1.initfcn='rands'net.layerweights1,1.initfcn='rands'net.biases1.initfcn='rands'net=init(net);% 訓(xùn)練感知器神經(jīng)元net=train(net,p,t);cell2mat(net.iw)cell2

41、mat(net.b)% 繪制結(jié)果分類曲線figure(3);plotpv(p,t)plotpc(net.iw1,1,net.b1);title('非門結(jié)果分類曲線');% 利用訓(xùn)練完的感知器神經(jīng)元分類for i=0:1 p=i a = sim(net,p)end代碼4.2:clc;clear all;% 產(chǎn)生訓(xùn)練樣本與測試樣本x1=-3 :0.36:3;x2=-2:0.24:2;p1 = (x1.2-2*x1).*exp(-x1.2-x2.2-x1.*x2); % 訓(xùn)練樣本t1 = p1; % 訓(xùn)練目標(biāo)x3=-3:0.15:3;x4=-2:0.1:2;p2 = (x3.2-2*

42、x3).*exp(-x3.2-x4.2-x3.*x4); % 測試樣本t2 = p2; % 測試目標(biāo)% 歸一化pn1,minp,maxp,tn1,mint,maxt = premnmx(p1,t1);pn2 = tramnmx(p2,minp,maxp);tn2 = tramnmx(t2,mint,maxt);% 設(shè)置網(wǎng)絡(luò)參數(shù)hidenum=1; % 隱層層數(shù)nodenum = 5; % 隱層節(jié)點(diǎn)數(shù) typenum = 1; % 輸出維數(shù)tf1 = 'tansig'tf2 = 'purelin' % 判別函數(shù)(缺省值)net = newff(minmax(pn1

43、),nodenum typenum,tf1 tf2);net.trainfcn = 'trainlm' net.trainparam.show = 20; % 訓(xùn)練顯示間隔net.trainparam.lr = 0.3; % 學(xué)習(xí)步長 - traingd,traingdmnet.trainparam.mc = 0.95; % 動(dòng)量項(xiàng)系數(shù) - traingdm,traingdxnet.trainparam.mem_reduc = 1; % 分塊計(jì)算hessian矩陣net.trainparam.epochs = 1000; % 最大訓(xùn)練次數(shù)net.trainparam.goal

44、= 1e-8; % 最小均方誤差net.trainparam.min_grad = 1e-20; % 最小梯度net.trainparam.time = inf; % 最大訓(xùn)練時(shí)間net = train(net,pn1,tn1); % 訓(xùn)練yn1 = sim(net,pn1); % 訓(xùn)練樣本實(shí)際輸出yn2 = sim(net,pn2); % 測試樣本實(shí)際輸出mse1 = mean(tn1-yn1).2) % 訓(xùn)練均方誤差mse2 = mean(tn2-yn2).2) % 測試均方誤差y2 = postmnmx(yn2,mint,maxt); % 反歸一化% 結(jié)果作圖plot(1:length(

45、t2),t2,'r',1:length(y2),y2,'b');legend('測試集','訓(xùn)練集'); title('期望輸出與實(shí)際輸出對比');六、實(shí)驗(yàn)結(jié)果實(shí)驗(yàn)結(jié)果4.1: 圖4-1 與門結(jié)果分類權(quán)值及實(shí)驗(yàn)結(jié)果:net.iw = 1.8116 1.2540net.b = -2.3706p =00a =0p =01a =0p =10a =0p =11a =1圖4-2 或門結(jié)果分類權(quán)值及實(shí)驗(yàn)結(jié)果:net.iw = 0.2647 0.1951net.b = -0.1732p =00a =0p =01a =1p =10

46、a =1p =11a =1圖4-3 非門結(jié)果分類權(quán)值及實(shí)驗(yàn)結(jié)果:net.iw = -0.9062net.b = 0.5570p =0a =1p =1a =0由實(shí)驗(yàn)結(jié)果可知,與門、或門和非門都能夠找到一條直線將結(jié)果分開,所以可以利用2輸入的mp模型是否可實(shí)現(xiàn)“與”、“或”、“非”功能。然而異或門卻不能找到一條曲線將結(jié)果分開,所以無法使用mp模型來實(shí)現(xiàn)異或功能。實(shí)驗(yàn)結(jié)果4.3:圖4-4 bp神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)圖4-5 bp神經(jīng)網(wǎng)絡(luò)的誤差性能曲線圖4-6 神經(jīng)網(wǎng)絡(luò)的實(shí)際值與期望值對比從實(shí)驗(yàn)結(jié)果可知,由于訓(xùn)練集比較多,所以期望值與實(shí)際值的差別不是很大。若要提高準(zhǔn)確性,可以適當(dāng)?shù)卦龃笥?xùn)練集。實(shí)驗(yàn)五 ma

47、tlab的綜合實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康募耙笈囵B(yǎng)學(xué)生利用matlab解決專業(yè)問題的能力。二、實(shí)驗(yàn)設(shè)備(環(huán)境)及要求1 計(jì)算機(jī)2 matlab軟件編程實(shí)驗(yàn)平臺三、實(shí)驗(yàn)內(nèi)容(三題中選擇一題)1、實(shí)現(xiàn)一個(gè)數(shù)字信號處理的仿真系統(tǒng),通過該系統(tǒng)可以方便的驗(yàn)證信號處理所學(xué)的內(nèi)容,要求程序具有界面并實(shí)現(xiàn)以下功能: 1)能產(chǎn)生或得到各種數(shù)字信號(sin、方波、三角波、語音、噪聲及其疊加); 2)用濾波器實(shí)現(xiàn)低通、高通、帶通和帶阻濾波,得到輸出信號的頻域特性和時(shí)間序列; 3)具有dft、dct和dwt變換功能; 4)輸入一段(1000采樣點(diǎn))語音信號,顯示其頻譜特性,在這個(gè)語音信號上疊加一個(gè)噪聲,通過濾波器對其降噪,得到

48、輸出信號的頻域特性和時(shí)間序列。2、編程實(shí)現(xiàn)一個(gè)簡單的孤立詞(09)語音識別仿真系統(tǒng)。要求具有界面并實(shí)現(xiàn)以下功能: 1)讀入語音信號; 2)預(yù)處理和端點(diǎn)檢測; 3)多種特征提取方法;4)孤立詞識別并給出識別結(jié)果。3、基于數(shù)字圖像處理,實(shí)現(xiàn)一個(gè)汽車車牌字符分割的仿真系統(tǒng)。要求系統(tǒng)具有界面并實(shí)現(xiàn)以下功能:1)讀入車牌圖像;2)預(yù)處理及車牌定位;3)多種圖像分割功能;4)形態(tài)學(xué)濾波等功能;5)對車牌中的數(shù)字進(jìn)行識別。4、結(jié)合專業(yè),實(shí)現(xiàn)一個(gè)神經(jīng)網(wǎng)絡(luò)應(yīng)用的實(shí)例,要求具有多種方法所得結(jié)果的比較.四、設(shè)計(jì)思想車牌字符識別系統(tǒng)的關(guān)鍵技術(shù)包括數(shù)字圖像預(yù)處理、車牌定位、車牌字符分割和字符識別技術(shù)。車牌識別的基本流程

49、圖為:原圖像預(yù)處理區(qū)域定位形態(tài)學(xué)處理字符分割字符識別預(yù)處理過程中首先需對彩色的車牌圖像進(jìn)行灰度化;根據(jù)牌照字符區(qū)域的固定寬度和高度對車牌區(qū)域進(jìn)行初定位,初定位結(jié)束后對定位區(qū)域進(jìn)行修正;然后對車牌區(qū)域進(jìn)行濾波處理;接著根據(jù)字符的寬高比對字符進(jìn)行分割;最后用bp神經(jīng)網(wǎng)絡(luò)對字符進(jìn)行識別。bp神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)步驟:第一步:隱層數(shù)。一般認(rèn)為,增加隱層數(shù)可以降低網(wǎng)絡(luò)誤差(也有文獻(xiàn)認(rèn)為不一定能有效降低),提高精度,但也使網(wǎng)絡(luò)復(fù)雜化,從而增加了網(wǎng)絡(luò)的訓(xùn)練時(shí)間和出現(xiàn)“過擬合”的傾向。hornik等早已證明:若輸入層和輸出層采用線性轉(zhuǎn)換函數(shù),隱層采用sigmoid轉(zhuǎn)換函數(shù),則含一個(gè)隱層的mlp網(wǎng)絡(luò)能夠以任意精度逼近

50、任何有理函數(shù)。顯然,這是一個(gè)存在性結(jié)論。在設(shè)計(jì)bp網(wǎng)絡(luò)時(shí)可參考這一點(diǎn),應(yīng)優(yōu)先考慮3層bp網(wǎng)絡(luò)(即有1個(gè)隱層)。所以在對集裝箱號進(jìn)行識別的過程中,選用三層bp網(wǎng)絡(luò)。第二步:相關(guān)參數(shù)的設(shè)置及網(wǎng)絡(luò)的訓(xùn)練。通過設(shè)置權(quán)值和閾值的相關(guān)參數(shù),網(wǎng)絡(luò)的輸入、輸出,對網(wǎng)絡(luò)進(jìn)行訓(xùn)練,最終完成網(wǎng)絡(luò)的學(xué)習(xí)過程。設(shè)置網(wǎng)絡(luò)的訓(xùn)練模式為自適應(yīng)lr動(dòng)量梯度下降法。權(quán)值訓(xùn)練步長為0.05, 最大訓(xùn)練次數(shù)為5000,均方誤差為0.001,訓(xùn)練顯示間隔為10。第三步:測試網(wǎng)絡(luò)。網(wǎng)絡(luò)訓(xùn)練完成后,系統(tǒng)生成了字母及數(shù)字網(wǎng)絡(luò)系統(tǒng),此時(shí)某一幅將被分割出來的車牌字符圖片輸入網(wǎng)絡(luò),觀察網(wǎng)絡(luò)的輸出,最終得到車牌號。五、程序代碼(界面除外)及注釋程序

51、代碼:%讀入圖像%function pushbutton1_callback(hobject, eventdata, handles)% hobject handle to pushbutton1 (see gcbo)% eventdata reserved - to be defined in a future version of matlab% handles structure with handles and user data (see guidata) global i;filename ,pathname=uigetfile('*.jpg''*.bmp&

52、#39;'*.bmp','選擇圖片');str=pathname filename;i=imread(str);axes(handles.axes1);imshow(i);guidata(hobject, handles);%圖像預(yù)處理及車牌定位%function pushbutton2_callback(hobject, eventdata, handles)% hobject handle to pushbutton2 (see gcbo)% eventdata reserved - to be defined in a future version of

53、matlab% handles structure with handles and user data (see guidata)global i;i1=rgb2gray(i);i2=edge(i1,'roberts',0.15,'both');se=1;1;1;i3=imerode(i2,se);se=strel('rectangle',25,25);i4=imclose(i3,se);i5=bwareaopen(i4,2000);y,x,z=size(i);myi=double(i);% 在y 方向收縮車牌區(qū)域 %blue_y=zeros(

54、y,1);for i=1:y for j=1:x if(myi(i,j,1)<=30)&&(myi(i,j,2)<=62)&&(myi(i,j,2)>=51)&&(myi(i,j,3)<=142)&&(myi(i,j,3)>=119) % 藍(lán)色rgb的灰度范圍 blue_y(i,1)= blue_y(i,1)+1; % 藍(lán)色象素點(diǎn)統(tǒng)計(jì) end end endtemp maxy=max(blue_y); % y方向車牌區(qū)域確定py1=maxy;while (blue_y(py1,1)>=5)&&(py1>1) py1=py1-1;end py2=maxy;while (blue_y(py2,1)>=5)&&

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論