![基于MATLAB的卷積演示系統(tǒng)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/44397276-a625-4203-88b7-a1cdaf1c565a/44397276-a625-4203-88b7-a1cdaf1c565a1.gif)
![基于MATLAB的卷積演示系統(tǒng)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/44397276-a625-4203-88b7-a1cdaf1c565a/44397276-a625-4203-88b7-a1cdaf1c565a2.gif)
![基于MATLAB的卷積演示系統(tǒng)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/44397276-a625-4203-88b7-a1cdaf1c565a/44397276-a625-4203-88b7-a1cdaf1c565a3.gif)
![基于MATLAB的卷積演示系統(tǒng)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/44397276-a625-4203-88b7-a1cdaf1c565a/44397276-a625-4203-88b7-a1cdaf1c565a4.gif)
![基于MATLAB的卷積演示系統(tǒng)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/44397276-a625-4203-88b7-a1cdaf1c565a/44397276-a625-4203-88b7-a1cdaf1c565a5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)字信號處理課程設(shè)計題目: 基于MATLAB的卷積演示系統(tǒng) 學(xué)院: 專業(yè): 班級: 學(xué)號: 姓名: 指導(dǎo)教師: 目 錄摘要3ABSTRACT4第一章 背景51.1MATLAB的優(yōu)點51.2 MATLAB的組成6第二章 設(shè)計原理及分析82.1 卷積的定義82.2線性卷積的運算82.3 循環(huán)卷積的運算9第三章 設(shè)計內(nèi)容與分析103.1設(shè)計內(nèi)容103.2線性卷積的分析103.3循環(huán)卷積的分析10第四章 實驗代碼及結(jié)果114.1線性卷積的 MATLAB 設(shè)計源程序114.2循環(huán)卷積的 MATLAB 設(shè)計源程序124.3 分析兩類卷積關(guān)系144.4動態(tài)演示基于重疊相加法的長序列快速卷積144.5用MAT
2、LAB設(shè)計一個卷積演示界面17第五章 收獲與體會20致謝21參考文獻22摘要本文講述的是運用MATLAB軟件編寫線性卷積和循環(huán)卷積,運行程序并得到正確結(jié)果,附上運行結(jié)果圖讓大家參照對比。MATLAB是一款在數(shù)學(xué)類科技應(yīng)用軟件中特別是在數(shù)值計算方面首屈一指的軟件,它可以進行矩陣運算、繪制函數(shù)和數(shù)據(jù)、實現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等,主要應(yīng)用于工程計算、控制設(shè)計、信號處理與通訊、圖像處理、信號檢測、金融建模設(shè)計與分析等領(lǐng)域。而線性卷積和循環(huán)卷積在工程上的應(yīng)用亦非常廣泛,在MATLAB軟件處理下,實現(xiàn)任意兩個序列的線性和循環(huán)卷積對于工程上的輔助是相當(dāng)重要的。卷積關(guān)系最重要的一種情況,
3、就是在信號與線性系統(tǒng)或數(shù)字信號處理中的卷積定理。利用該定理,可以將時間域或空間域中的卷積運算等價為頻率域的相乘運算,從而利用FFT等快速算法,實現(xiàn)有效的計算,節(jié)省運算代價。本文從線性卷積和循環(huán)的定義出發(fā),分析其運算原理以及相關(guān)的公式、程序,著重介紹并分析了卷積的運算過程,讓大家明白什么是卷積。程序運行之后得到正確的結(jié)果,將運行后正確的波形圖放在本次論文中讓大家直觀的做比較。關(guān)鍵詞:MATLAB、線性卷積、循環(huán)卷積、波形圖AbstractThis is about using MATLAB software linear convolution and cyclic convolution, o
4、peration procedure and get the right result, enclosed operation result diagram let everybody referenceMATLAB is a type of technology in applications of mathematics, especially in numerical calculation of the leading software, which can be matrix calculation, and data mapping function, the realizatio
5、n of algorithms, creation of user interface, connected to other procedures, such as programming languages, the main application in engineering computing, control design, signal processing and communications, image processing, signal detection, financial modeling in areas such as design and analysis.
6、 And linear convolution in the application of engineering has a very wide range of software in MATLAB, the realization of any two sequences of linear convolution support for projects is very important. Convolution relationship between the most important case, that is linear in the signal and digital
7、 signal processing system or the convolution theorem. Use of the theorem can be time-domain or space domain to the convolution operation in frequency domain equivalent of the multiplication operation, thus the use of FFT and other fast algorithms, the calculation of effective, cost-saving operation.
8、From linear convolution and circulation of the definition, analyzes its operation principle and relevant formula, procedures, and emphatically introduces and analyses the convolution operation process, let everyone know what convolution. After the program is running properly after operation, the res
9、ults will be put on the right of the waveform Desmond tutu paper let everybody intuitive to compare.Key words:MATLAB;Linear convolution;Circular convolution;Sequence Wave第一章 背景1.1MATLAB的優(yōu)點MATLAB編程語言又稱為M語言,是一種交互式的高級編程語言,一種高階的矩陣/數(shù)組語言。它具有以下的特點和優(yōu)勢:(1)語法簡單和編程效率高(2)便于用戶使用和擴充(3)方便高校的矩陣和數(shù)組運算(4)方便的圖形和圖像操作功能(
10、5)功能強大的工具箱1.1.1 語法簡單編程效率高MATLAB是一個高級的矩陣/陣列語言,它包含控制語句、函數(shù)、數(shù)據(jù)結(jié)構(gòu)、輸入和輸出和面向?qū)ο缶幊烫攸c。新版本的MATLAB語言是基于最為流行的C+語言基礎(chǔ)上的,因此語法特征與C+語言極為相似,而且更加簡單,更加符合科技人員對數(shù)學(xué)表達式的書寫格式。使之更利于非計算機專業(yè)的科技人員使用。1.1.2 便于用戶使用和補充新版本的MATLAB可以利用MATLAB編譯器和C/C+數(shù)學(xué)庫和圖形庫,將自己的MATLAB程序自動轉(zhuǎn)換為獨立于MATLAB運行的C和C+代碼。允許用戶編寫可以和MATLAB進行交互的C或C+語言程序 作為強大的科學(xué)計算軟件,MATLA
11、B提供了圖形界面的設(shè)計與開發(fā)功能,MATLAB中的基本圖形用戶界面對象分為三類:用戶界面控制對象、下拉式菜單對象和內(nèi)容式菜單對象。 1.1.3 方便高效的矩陣和數(shù)組運算MATLAB是一個包含大量計算算法的集合。其擁有600多個工程中要用到的數(shù)學(xué)運算函數(shù),可以方便的實現(xiàn)用戶所需的各種計算功能。函數(shù)所能解決的問題其大致包括矩陣運算和線性方程組的求解、微分方程及偏微分方程的組的求解、符號運算、傅立葉變換和數(shù)據(jù)的統(tǒng)計分析、工程中的優(yōu)化問題、稀疏矩陣運算、復(fù)數(shù)的各種運算、三角函數(shù)和其他初等數(shù)學(xué)運算、多維數(shù)組操作以及建模動態(tài)仿真等。在高校中,MATLAB以成為數(shù)學(xué),信息,控制等諸多學(xué)科有關(guān)課程的有效教學(xué)工
12、具 1.1.4 方便圖形和圖像操作功能MATLAB自產(chǎn)生之日起就具有方便的數(shù)據(jù)可視化功能,以將向量和矩陣用圖形表現(xiàn)出來,并且可以對圖形進行標(biāo)注和打印。它對一些特殊的可視化要求,例如圖形對話等,MATLAB也有相應(yīng)的功能函數(shù),保證了用戶不同層次的要求。1.1.5 功能強大的工具箱MATLAB對許多專門的領(lǐng)域都開發(fā)了功能強大的模塊集和工具箱。一般來說,它們都是由特定領(lǐng)域的專家開發(fā)的,用戶可以直接使用工具箱學(xué)習(xí)、應(yīng)用和評估不同的方法而不需要自己編寫代碼。1.2 MATLAB的組成MATLAB很重要的特點,是附加了一個解決專門問題的應(yīng)用程序大家族,叫工具箱。它對于MATLAB用戶是非常重要的,能讓用戶
13、學(xué)習(xí)和應(yīng)用專門的技術(shù)。工具箱是MATLAB函數(shù)的全面集合,擴展了MATLAB解決特殊類型問題的環(huán)境。工具箱可以應(yīng)用的領(lǐng)域包括信號處理、控制系統(tǒng)、神經(jīng)網(wǎng)絡(luò)、磨具邏輯、子波、模擬等方面。MATLAB這個名字,代表MATRIX LABOROATOR.MATLAB系統(tǒng)由5個主要部分組成:1.2.1 開發(fā)環(huán)境這是一組工具程序,幫助用戶使用MATLAB功能和文件。許多工具是圖形用戶界面,包括MATLAB桌面和命令窗口,命令的歷史窗口,編輯器和差錯程序,觀看幫助信息的瀏覽器,工作區(qū),文件和收索路徑。1.2.2 MATLAB的數(shù)學(xué)函數(shù)庫這是一個計算算法的巨大集合,范圍從初等函數(shù),入求和、正弦、余弦和復(fù)數(shù)運算,
14、到更高級別的函數(shù),像矩陣求逆、矩陣特征值、貝賽爾函數(shù)和快速傅里葉變換。1.2.3 MATLAB語言一個高級的矩陣和數(shù)組運算,具有控制流語句、函數(shù)、數(shù)據(jù)結(jié)構(gòu)、輸入和輸出、面向?qū)ο蟮某绦蛱攸c。用這種語言能夠快速建立運行快且短小的程序,也能建立大的和復(fù)雜的應(yīng)用程序。1.2.4 圖形MATLAB有廣泛的程序,用于把向量和矩陣顯示為圖形,以及注解和打印這些圖像。它包括高級功能,用于二維和三維數(shù)據(jù)的形象化、圖像處理、動畫和演示圖形;包括低級功能,讓用戶完全定制圖形外觀,以及為用戶的應(yīng)用程序建立完全的圖形用戶界面。1.2.5 MATLAB應(yīng)用程序接口(API)這是一個程序庫,允許用戶寫C和FORTRAN程序
15、與MATLAB交互。其中包含的程序,用于從MATLAB調(diào)用例行程序,調(diào)用MATLAB作為計算引擎,以及讀取MAT文件。第二章 設(shè)計原理及分析 2.1 卷積的定義任意信號f(t)都可以根據(jù)不同需要進行不同的分解。如信號f(t)可以分解為直流分量和交流分量,也可以分解為奇分量和偶分量,或分解為實部分量和虛部分量。如果信號費解為沖擊信號,那么信號分解為一系列不同強度,不同時延的沖擊信號的疊加,這個過程稱為卷積積分。一般而言,如果有兩個函數(shù)和,則它們的積分稱為與的卷積積分,簡稱卷積,表達式為:,即:2.2線性卷積的運算卷積運算是線性時不變系統(tǒng)分析的重要工具,很多濾波器的設(shè)計中都要用到卷積運算。給出線性
16、卷積運算的定義,設(shè)有離散信號x(n)和y(n),其線性卷積為: 線性卷積有四步運算:卷積運算時,y(n)要先反折得到y(tǒng)(-n);m0表示y(-n)序列右移, m=1&kN);x1=x1,zeros(1,N-length(x1); %把序列x1按點數(shù)擴展,不足補零x2=x2,zeros(1,N-length(x2); %把序列x1按點數(shù)擴展,不足補零 m=0:N-1;x=zeros(N,N); %N行N列矩陣for n=0:N-1 %n取1、2、N-1,每個值都執(zhí)行for循環(huán)中的代碼一次 x(:,n+1)=x2(mod(n-m),N)+1);end;yn=x1*x;subplot(3,1,3);
17、 %畫出運行結(jié)果圖形stem(m,yn,r,.);title(序列x1和序列x2的循環(huán)卷積結(jié)果); %圖形命名運行程序,輸入序列x1,x2x1=-1 2 3 -5x2=6 7 -10 4 12N=10循環(huán)卷積結(jié)果如圖2: 圖2:N=10時循環(huán)卷積運行結(jié)果圖當(dāng)輸入序列x1=-1 2 3 -5,x2=6 7 -10 4 12,N=8時。結(jié)果如圖3 圖3:N=8時循環(huán)卷積運行結(jié)果圖4.3 分析兩類卷積關(guān)系循環(huán)卷積是線性卷積進行循環(huán)移位后的結(jié)果,當(dāng)循環(huán)卷積的點數(shù)N=線性卷積兩個信號長度的和減1,則循環(huán)卷積與線性卷積的結(jié)果是一樣的。假設(shè)lfm信號長度是N,lfm_back長度是N,循環(huán)卷積的長度是L,則
18、L應(yīng)該=2*N-1.4.4動態(tài)演示基于重疊相加法的長序列快速卷積1.重疊相加法快速卷積源程序如下:N=8; %分段的長度,也就是做fft的長度h=1,3,2,1; %系統(tǒng)沖擊響應(yīng)h(n) for i=0:9 %定義x(n) x(i+1)=5-i;endfor i=10:18 x(i+1)=i-15;endLenx=length(x);M=length(h);M1=M-1; %重疊部分的長度L=N-M1; %不重疊部分的長度h=fft(h,N);K=ceil(Lenx/L); %分的段數(shù)for i=Lenx:K*L-1 %將x(n)補成長度為K*L的序列 x(i+1)=0;endY=zeros(
19、K,N); %保存結(jié)果矩陣初始化YY=zeros(1,(K-1)*L+N);%最終結(jié)果矩陣初始化for k=0:K-1 xk=x(k*L+1:k*L+L),zeros(1,M1); Y(k+1,:)=(ifft(fft(xk).*h); YY(k*L+1:k*L+N)=YY(k*L+1:k*L+N)+Y(k+1,:)end運行后結(jié)果如下:4.5用MATLAB設(shè)計一個卷積演示界面(1)啟動MATLAB R2010a 在正確完成MATLAB的安裝并啟動計算機之后,選擇“開始”|“所有程序”|MATLAB|R2010a|MATLAB R2010a命令,或者直接雙擊桌面上的MATLAB的快捷方式圖標(biāo),
20、啟動MATLAB R2010a。(2)MATLAB R2010a的主界面 MATLAB的默認(rèn)窗口如圖4所示,其中包括主菜單欄、工具欄、命令窗口、歷史命令窗口、工作區(qū)瀏覽器和當(dāng)前路徑窗口等。圖4:MATLAB默認(rèn)窗口(3)點擊工具欄的按鈕,將彈出以下的菜單,如圖5。 圖5:MATLAB窗口在空白處寫下所要實現(xiàn)的卷積源程序代碼,如圖6。 圖6:程序輸入窗口(4)源程序代碼寫好后,此時按下F5按鈕,將彈出以下的菜單,如圖7。 圖7:保存程序窗口點擊保存按鈕,將彈出以下界面,如圖8。 圖8:運行程序窗口(5)輸入X1=-1 2 3 -5,X2=6 7 -10 4 12后,按下Enter鍵:出現(xiàn)以下結(jié)果
21、:同時彈出以下的運行界面,如圖9 圖9:程序運行結(jié)果圖第五章 收獲與體會總結(jié)本次數(shù)字信號處理課程設(shè)計,我受益匪淺。首先就是方案的確定。由于這個學(xué)期我學(xué)習(xí)了數(shù)字信號處理這門課程,課程中我了解到要實現(xiàn)兩信號的卷積,可以通過定義來實現(xiàn),也可以通過DFT來計算線性卷積。對于有限長序列,存在兩種形式的卷積:線性卷積與循環(huán)卷積。由于循環(huán)卷積可以采用DFT的快速算法快速傅里葉變換進行運算,運算速度上有很大的優(yōu)越性。其中,設(shè)計線性卷積有4個步驟,翻轉(zhuǎn)、移位 、相乘、求和,而循環(huán)卷積則是通過循環(huán)移位后得到的矩陣與序列相乘。根據(jù)上數(shù)字信號處理課上老師講的求法,畫出了思路的流程圖,然后根據(jù)流程圖寫出程序,事半功倍。將結(jié)果與直接調(diào)用MATLAB自帶的函數(shù)比較,結(jié)果顯示,自己設(shè)計的程序是正確的。通過這次課程設(shè)計,我對線性卷積和循環(huán)的定義、原理、以及實現(xiàn)方法都有了深入的認(rèn)識。同時也對MATLAB軟件產(chǎn)生了更加濃厚的興趣。在做完本次課程設(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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國動態(tài)圖像分析儀行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國自動粉末噴涂系統(tǒng)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球可生物降解微膠囊解決方案行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球生物分析測試行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國高壓清洗機噴槍行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 幼兒園科學(xué)討論活動概述模塊二幼兒園科學(xué)探究活動講解
- 必殺08 第九、十單元 西半球的國家和極地地區(qū)(綜合題20題)(解析版)
- 猜想02 重難點(70道題25個重難點)【考題猜想】(解析版)
- 2025我國合同法對合同效力的規(guī)定
- 合法的房屋租賃合同
- 消防維保服務(wù)方案及實施細則
- 保衛(wèi)管理員培訓(xùn)課件
- 香港朗文4B單詞及句子
- 數(shù)據(jù)中心運維方案
- 小龍蝦啤酒音樂節(jié)活動策劃方案課件
- 運動技能學(xué)習(xí)與控制課件第五章運動中的中樞控制
- 財務(wù)部規(guī)范化管理 流程圖
- 蘇教版2023年小學(xué)四年級數(shù)學(xué)下冊教學(xué)計劃+教學(xué)進度表
- 斷絕關(guān)系協(xié)議書范文參考(5篇)
- 量子力學(xué)課件1-2章-波函數(shù)-定態(tài)薛定諤方程
- 最新變態(tài)心理學(xué)課件
評論
0/150
提交評論