數字信號課程設計
① 數字信號處理課程設計
這個問題我來回答哈
採集系統說明:
麥克風輸入方式MiclnMATLAB函數
MATLAB中提供了強大的數據採集工具箱(DAQ-Data Acquisition Toolbox),可滿足控制音效卡進行數據採集的要求:
wavrecord(n,fs,ch,dtype) %記錄聲音
waveplay(y,fs) %發送向量信號
wavread(file) %讀取wave文件
sound(y,fs) %向揚聲器送出音頻信號
濾波函數說明:
採用Kaiser window FIR:
Sampling Frequency: 8192
Type:Lowpass
Fc:956.6
Beta:5
分幀函數說明:
語音處理工具箱:VOICEBOX Speech Processing Toolboxv5中提供了該函數:
function f=enframe(x,win,inc)
端點檢測函數說明:
zcr = sum(signs.*diffs, 2); %計算過零率
amp = sum(abs(enframe(filter([1 -0.9375], 1, x), FrameLen, FrameInc)), 2);
%計算短時能量
【參考書目】
1.《現代語音處理技術及應用》
2.《現代語音技術基礎與應用》
3.《語音信號處理》
4.《語音信號處理[專著]》
5.《Visual C++開發工具程序員參考手冊》
6. 《信號處理濾波器設計--基於MATLAB和Mathematic》
7. 《數字信號處理及其MATLAB實現》
8. 《MATLAB數字信號詳解》
原程序:
【附源程序】
1.界面:
clear
global hpop hlist
clf reset
H=axes('unit','normalized','position',[0,0,1,1],'visible','off');
set(gcf,'currentaxes',H);
str='\fontname{隸書}';
h_fig=get(H,'parent');
set(h_fig,'unit','normalized','position',[0.1,0.2,0.7,0.6]);
hlist=uicontrol(h_fig,'style','list','unit','normalized',...
'position',[0.7,0.6,0.2,0.2],...
'string','錄音|濾波|分幀|端點檢測|錄音回放','MAX',2);
hpush=uicontrol(h_fig,'style','push','unit','normalized',...
'position',[0.76,0.32,0.1,0.06],'string',{'運行'},'callback',...
'yuyin');
分幀:
function f=enframe(x,win,inc)
nx=length(x);
nwin=length(win);
if (nwin == 1)
len = win;
else
len = nwin;
end
if (nargin < 3)
inc = len;
end
nf = fix((nx-len+inc)/inc);
f=zeros(nf,len);
indf= inc*(0:(nf-1)).';
inds = (1:len);
f(:) = x(indf(:,ones(1,len))+inds(ones(nf,1),:));
if (nwin > 1)
w = win(:)';
f = f .* w(ones(nf,1),:);
end
global hlist
B=get(hlist,'value');
switch B
case 1
fs = 11025;
x = wavrecord(5*fs);
subplot('position',[0.001,0.03,1,0.8]),plot(x);...
title('原圖');
axis square;axis off
case 2
I=imread('bonemarr.tif');
J=imadjust(I,[0 1],[1 0],1.3);
subplot('position',[0.05,0.6,0.3,0.3]),subplot('position',[0.05,0.6,0.3,0.3]),imshow(I);...
title('原圖');
axis square;axis off
subplot('position',[0.38,0.6,0.3,0.3]),imshow(J),title('調整後');
case 3
f=enframe(x,10);
subplot('position',[0.05,0.6,0.3,0.3]),subplot('position',[0.05,0.6,0.3,0.3]),plot(x);...
title('原圖');
axis square;axis off
subplot('position',[0.38,0.6,0.3,0.3]),plot(f),title('分幀後');
case 4
[x1,x2] = vad(x)
case 5
wavplay(x);
end
2.檢測程序:
www.starlunwen.com
www.starlunwen.com
② 數字信號課程設計
Matlab在數字信號處理課程設計中的應用
作者:李永全 來源:現代電子技術
摘 要:分析了數字信號處理課程的重要性及特點,為了幫助學生理解與掌握課程中的基本概念、基本原理、基本分析方法,提出了用Matlab進行數字信號處理課程設計的思路,並闡述了課程設計的具體方法、步驟和內容。
關鍵詞:數字信號處理;課程設計;Matlab;頻譜分析
1 《數字信號處理》課程的特點
《數字信號處理》課程是一門理論和技術發展十分迅速、應用非常廣泛的前沿性學科,他的理論性和實踐性都很強,他的特點是:
(1)要求的數學知識多,包括高等代數、數值分析、概率統計、隨機過程等。
(2)要求掌握的基礎知識強,網路理論、信號與系統是本課程的理論基礎。
(3)與其他學科密切相關,即與通信理論、計算機、微電子技術不可分,又是人工智慧、模式識別、神經網路等新興學科的理論基礎之一。
學生在學習這門課程時,普遍感到數字信號處理的概念抽象,對其中的分析方法與基本理論不能很好地理解與掌握。因此,如何幫助學生理解與掌握課程中的基本概念、基本原理、基本分析方法以及綜合應用所學知識解決實際問題的能力,是本課程教學中所要解決的關鍵問題。為了配合《數字信號處理》專業基礎課的理論教學,我們在電子信息工程專業教學計劃中安排了二周的《數字信號處理》課程設計,他是針對《數字信號處理》的基礎理論和演算法進行實踐環節的一個綜合訓練,以便學習鞏固所學的知識,加強理論和實際結合的能力,培養學生的綜合設計能力與實際工作能力。
Matlab語言是一種廣泛應用於工程計算及數值分析 領域的新型高級語言,Matlab功能強大、簡單易學、編程效率高,深受廣大科技工作者的歡迎。特別是Matlab還具有信號分析工具箱,不需具備很強的編程能力,就可以很方便地進行信號分析、處理和設計。因此,選擇用Matlab進行課程設計。
2 基於Matlab的課程設計
為了鞏固所學的數字信號處理理論知識,使學生對信號的採集、處理、傳輸、顯示和存儲等有一個系統的掌握和理解,精心地安排了課程設計的內容:錄制一段個人自己的語音信號,並對錄制的信號進行采樣;畫出采樣後語音信號的時域波形和頻譜圖;給定濾波器的性能指標,採用窗函數法和雙線性變換設計濾波器,並畫出濾波器的頻率響應;然後用自己設計的濾波器對採集的信號進行濾波,畫出濾波後信號的時域波形和頻譜,並對濾波前後的信號進行對比,分析信號的變化;回放語音信號;最後,設計一個信號處理系統界面。下面對各步驟加以具體說明。
2.1 語音信號的採集
要求學生利用Windows下的錄音機,錄制一段自己的話音,時間在1 s內。然後在Matlab軟體平台下,利用函數wavread對語音信號進行采樣,記住采樣頻率和采樣點數。通過wavread函數的使用,學生很快理解了采樣頻率、采樣位數等概念。
2.2 語音信號的頻譜分析
要求學生首先畫出語音信號的時域波形;然後對語音號進行快速傅里葉變換,得到信號的頻譜特性,從而加深學生對頻譜特性的理解。其程序如下:
2.3 設計數字濾波器和畫出其頻率響應
給出各濾波器的性能指標:
(1)低通濾波器性能指標 fb=1 000 Hz,fc=1 200 Hz,As=100 dB,Ap=1 dB。
(2)高通濾波器性能指標 fc=4 800 Hz,fb=5 000 Hz As=100 dB,Ap=1 dB。
(3)帶通濾波器性能指標 fb1=1 200 Hz,fb2=3 000 Hz,fc1=1 000 Hz,fc2=3 200 Hz,As=100 dB,Ap=1 dB。
要求學生用窗函數法和雙線性變換法設計上面要求的3種濾波器。在Matlab中,可以利用函數fir1設計FIR濾波器,可以利用函數butte, cheby1和ellip設計IIR濾波器;利用Matlab中的函數freqz畫出各濾波器的頻率響應。程序如下:
2.4 用濾波器對信號進行濾波
要求學生用自己設計的各濾波器分別對採集的信號進行濾波,在Matlab中,FIR濾波器利用函數fftfilt對信號進行濾波,IIR濾波器利用函數filter對信號進行濾波。
2.5 比較濾波前後語音信號的波形及頻譜
要求學生在一個窗口同時畫出濾波前後的波形及頻 譜。其程序如下:
2.6 回放語音信號
在Matlab中,函數sound可以對聲音進行回放。其調用格式:sound(x,fs,bits);可以感覺濾波前後的聲音有變化。
2.7 設計系統界面
為了使編制的程序操作方便,要求有能力的學生,設計處理系統的用戶界面。在所設計的系統界面上可以選擇濾波器的類型,輸入濾波器的參數,顯示濾波器的頻率響應,選擇信號等。
3 結語
筆者在電信97,98,99,00四屆學生中,採用Matlab進行數字信號處理課程設計,實踐證明,使學生加深了對課堂抽象概念的理解,鞏固了課堂上所學的理論知識,並能很好地理解與掌握數字信號處理中的基本概念、基本原理、基本分析方法。在課程設計中,讓學生錄制自己的聲音,設計濾波器對聲音進行處理,大大激發了同學們的學習興趣,使學生很快地掌握編程方法和解決實際問題的技巧,取得了良好的教學效果。
參考文獻
〔1〕程佩青.數字信號處理教程〔M〕.北京:清華大學出版社,2002.
〔2〕劉敏,魏玲.Matlab通信模擬與應用〔M〕.北京:國防工業出版社,2001.
③ 數字信號處理《低通最小方差濾波器》課程設計
發給你QQ了,
自己慢慢看咯
別忘了加分哦
④ 數字信號處理課程設計有大神助攻嗎
數字信號處理綜合設計
一、實驗目的
1.學會MATLAB的使用,掌握MATLAB的程序設計方法;
2.掌握在Windows環境下語音信號採集的方法;
3.掌握數字信號處理的基本概念、基本理論和基本方法;
4.掌握MATLAB設計FIR和IIR數字濾波器的方法;
5.學會用MATLAB對信號進行分析和處理。
二、實驗原理
參考《數字信號處理》教材。
三、主要實驗儀器及材料
微型計算機、Matlab6.5教學版、TC編程環境。
四、實驗內容
1.語音信號的採集
要求利用windows下的錄音機(開始—程序—附件—娛樂—錄音機,文件—屬性—立即轉換—8000KHz,8位,單聲道)或其他軟體,錄制一段自己的話音,時間控制在1秒左右。然後在MATLAB軟體平台下,利用函數wavread對語音信號進行采樣,記住采樣頻率和采樣點數。通過wavread函數的使用,要求理解采樣頻率、采樣位數等概念。
⑤ 數字信號處理的課程設計怎麼做
數字信號處理綜合設計
一、實驗目的
1.學會MATLAB的使用,掌握MATLAB的程序設計方法;
2.掌握在Windows環境下語音信號採集的方法;
3.掌握數字信號處理的基本概念、基本理論和基本方法;
4.掌握MATLAB設計FIR和IIR數字濾波器的方法;
5.學會用MATLAB對信號進行分析和處理。
二、實驗原理
參考《數字信號處理》教材。
三、主要實驗儀器及材料
微型計算機、Matlab6.5教學版、TC編程環境。
四、實驗內容
1.語音信號的採集
要求利用windows下的錄音機(開始—程序—附件—娛樂—錄音機,文件—屬性—立即轉換—8000KHz,8位,單聲道)或其他軟體,錄制一段自己的話音,時間控制在1秒左右。然後在MATLAB軟體平台下,利用函數wavread對語音信號進行采樣,記住采樣頻率和采樣點數。通過wavread函數的使用,要求理解采樣頻率、采樣位數等概念。
wavread函數調用格式:
y=wavread(file),讀取file所規定的wav文件,返回採樣值放在向量y中。
[y,fs,nbits]=wavread(file),采樣值放在向量y中,fs表示采樣頻率(Hz),nbits表示采樣位數。
y=wavread(file,N),讀取前N點的采樣值放在向量y中。
y=wavread(file,[N1,N2]),讀取從N1點到N2點的采樣值放在向量y中。
2.語音信號的頻譜分析
要求首先畫出語音信號的時域波形;然後對語音信號進行頻譜分析,在MATLAB中,可以利用函數fft對信號進行快速付立葉變換,得到信號的頻譜特性;從而加深對頻譜特性的理解。
3.設計數字濾波器和畫出頻率響應
根據語音信號的特點給出有關濾波器的性能指標:1)低通濾波器性能指標,fp=1000Hz,fc=1200 Hz, As=100dB,Ap=1dB;2)高通濾波器性能指標,fc=2800 Hz,fp=3000 Hz As=100dB,Ap=1dB;3)帶通濾波器性能指標,fp1=1200 Hz,fp2=3000 Hz,fc1=1000 Hz,fc2=3200 Hz,As=100dB,Ap=1dB。要求學生首先用窗函數法設計上面要求的三種濾波器,在MATLAB中,可以利用函數fir1設計FIR濾波器,然後在用雙線性變換法設計上面要求的三種濾波器;之後再利用函數butter和cheby1設計上面要求的三種IIR濾波器。最後,利用MATLAB中的函數freqz畫出各濾波器的頻率響應。
4.用濾波器對信號進行濾波
比較FIR和IIR兩種濾波器的性能,然後用性能好的各濾波器分別對採集的信號進行濾波,在MATLAB中,FIR濾波器利用函數fftfilt對信號進行濾波,IIR濾波器利用函數filter對信號進行濾波。
5.比較濾波前後語音信號的波形及頻譜
要求在一個窗口同時畫出濾波前後的波形及頻譜。
6.回放語音信號
在MATLAB中,函數sound可以對聲音進行回放。其調用格式:
sound(x,fs,bits);
可以感覺濾波前後的聲音有變化。
五、實驗思考
1.雙線性變換法中Ω和ω之間的關系是非線性的,在實驗中你注意到這種非線性關系了嗎?從哪幾種數字濾波器的幅頻特性曲線中可以觀察到這種非線性關系?
2.能否利用公式完成脈沖響應不變法的數字濾波器設計?為什麼?
六、實驗報告要求
1.簡述實驗原理及目的。
2.按照實驗步驟及要求,比較各種情況下的濾波性能。
3.總結實驗所得主要結論。
4.簡要回答思考題。
⑥ 數字信號課程設計(採用窗函數設計一個帶阻FIR數字濾波器)
第一步:通過 |H(e^jw )|≤0.02 可以確定阻帶的衰減As<20lg0.02,通過As查表確定應該使用什麼窗版W(n)。
第二權步:將帶阻分解為全通減一個低通(截止頻率為0.5π),在加一個低通(截止頻率為0.3π),。
第三步:查表得個濾波器的延時 t1,t2
第四步:求得符合要求但沒加窗的濾波器沖擊響應hd(n)
第五步:所求h(n)=hd(n)*h(n)
⑦ 數字信號處理課程設計《數 字 化 雷 達 正 交 解 調 的 設 計 與 仿 真 實 現》
你好,,我可以的。
⑧ MATLAB 數字信號處理課程設計 FIR
ideallp is short for ideal lowpass
程序的返回值為Sa函數形式,即理想低通濾波器的單位脈沖響應。