導航:首頁 > 五金知識 > matlab短時傅里葉變換工具箱

matlab短時傅里葉變換工具箱

發布時間:2021-03-04 04:37:04

❶ matlab里有什麼工具箱,可以用FFT(快速傅立葉變換)做頻譜分析

1、采樣數據導入Matlab 。
采樣數據的導入至少有三種方法。
第一就是手動將數據整理成Matlab支持的格式,這種方法僅適用於數據量比較小的采樣。
第二種方法是使用Matlab的可視化交互操作,具體操作步驟為:File --> Import Data,然後在彈出的對話框中找到保存采樣數據的文件,根據提示一步一步即可將數據導入。這種方法適合於數據量較大,但又不是太大的數據。
第三種方法,使用文件讀入命令。數據文件讀入命令有textread、fscanf、load等,如采樣數據保存在txt文件中,則推薦使用 textread命令。如[a,b]=textread('data.txt','%f%*f%f'); 這條命令將data.txt中保存的數據三個三個分組,將每組的第一個數據送給列向量a,第三個數送給列向量b,第二個數據丟棄。命令類似於C語言,詳細可查看其幫助文件。文件讀入命令錄入采樣數據可以處理任意大小的數據量,且錄入速度相當快,一百多萬的數據不到20秒即可錄入。
2、對采樣數據進行頻譜分析 。
頻譜分析自然要使用快速傅里葉變換FFT了,對應的命令即 fft ,簡單使用方法為:Y=fft(b,N),其中b即是采樣數據,N為fft數據采樣個數。一般不指定N,即簡化為Y=fft(b)。Y即為FFT變換後得到的結果,與b的元素數相等,為復數。以頻率為橫坐標,Y數組每個元素的幅值為縱坐標,畫圖即得數據b的幅頻特性;以頻率為橫坐標,Y數組每個元素的角度為縱坐標,畫圖即得數據b的相頻特性。典型頻譜分析M程序舉例如下: clc fs=100;
t=[0:1/fs:100];
N=length(t)-1;%減1使N為偶數 %頻率解析度F=1/t=fs/N
p=1.3*sin(0.48*2*pi*t)+2.1*sin(0.52*2*pi*t)+1.1*sin(0.53*2*pi*t)... +0.5*sin(1.8*2*pi*t)+0.9*sin(2.2*2*pi*t);
%上面模擬對信號進行采樣,得到采樣數據p,下面對p進行頻譜分析
figure(1) plot(t,p); grid on
title('信號 p(t)'); xlabel('t') ylabel('p') Y=fft(p);
magY=abs(Y(1:1:N/2))*2/N; f=(0:N/2-1)'*fs/N; figure(2)
%plot(f,magY);
h=stem(f,magY,'fill','--');
set(h,'MarkerEdgeColor','red','Marker','*') grid on
title('頻譜圖 (理想值:[0.48Hz,1.3]、[0.52Hz,2.1]、[0.53Hz,1.1]、[1.8Hz,0.5]、[2.2Hz,0.9]) '); xlabel('f (Hz)') ylabel('幅值')
對於現實中的情況,采樣頻率fs一般都是由采樣儀器決定的,即fs為一個給定的常數;另一方面,為了獲得一定精度的頻譜,對頻率解析度F有一個人為的規定,一般要求F<0.01,即采樣時間ts>100秒;由采樣時間ts和采樣頻率fs即可決定采樣數據量,即采樣總點數N=fs*ts。這就從理論上對采樣時間ts和采樣總點數N提出了要求,以保證頻譜分析的精準度。

❷ matlab中如何使用短時傅里葉

網上都有現成程序的,很簡單的。

❸ 怎樣在MATLAB中做短時傅立葉變換

matlab有STFT的自帶函數,你可以help下spectrogram,裡面有常式。下面這個小程序就是一個STFT的小示例:

T = 0:0.001:2;
X = chirp(T,100,1,200,'q');
spectrogram(X,128,120,128,1E3);
title('Quadratic Chirp');

❹ 如何對我測得的一個信號用matlab進行短時傅里葉變換

你的數據就是10kHz采樣下的結果,幅度序列就是具體樣本值。剩下的加窗啊,重疊長度,fft長度等等都是信號處理基礎知識,你都做時頻分析了,應該不需要過多解釋基礎知識了

❺ 怎麼用matlab實現離散短時傅里葉變換

離散傅里葉變換函數:fft,help一下就可以

❻ Matlab中短時傅里葉變換中一些函數變換步驟不明,求解釋!

(1)matlab是按列儲存的,當然可以使1*256的了,不過需要自己設。傅里葉變化是對稱變化,一般都回要求數據個數是答2的冪次。
(2)tfr對誰做fft變換,fft就和誰是同樣大小的矩陣。
(3)上面說了,fft變換後的波譜是對稱的,如果tfr是256的話,只需取256/2=128個就行。
(4)隨機數組或原數據體中數據之間無關的話,那麼變換後的振幅圖和相點陣圖都是上下波動的,密集線就是波動情況,密集程度與點距和線長有關。

❼ 如何用matlab實現語音信號的短時傅里葉變換

matlab自帶了短時傅復里葉變換的分制析函數,也即spectrogram函數。
其使用方式有兩種
1. [S,F,T,P]=spectrogram(x,window,noverlap,nfft,fs)
2. [S,F,T,P]=spectrogram(x,window,noverlap,F,fs)
x---輸入信號的向量;Window---窗函數;Noverlap---各段之間重疊的采樣點數;Nfft---計算離散傅里葉變換的點數;Fs---采樣頻率Hz;F---在輸入變數中使用F頻率向量。
對應題主的問題
假設語音信號保存在wave變數中,那麼,對其做短時傅里葉變換的函數語句為
[S,F,T,P]=spectrogram(wave,window,noverlap,nfft,fs)
參數可以根據具體信號的特點進行設定。

❽ 怎樣在MATLAB中做短時傅立葉變換

matlab有STFT的自帶函數,你可以help下spectrogram,裡面有常式。下面這個小程序就是一個回STFT的小示例:答

T = 0:0.001:2;
X = chirp(T,100,1,200,'q');
spectrogram(X,128,120,128,1E3);
title('Quadratic Chirp');

❾ 用matlab 做時間序列分析應該用什麼工具箱

用matlab 做時間序列分析應該用什麼工具箱
短時傅里葉變換在Signal Processing Toolbox里,你一定是沒裝這個工具箱,再裝一次MATLBA

閱讀全文

與matlab短時傅里葉變換工具箱相關的資料

熱點內容
m320軸承是什麼 瀏覽:432
離心泵為什麼要關閥門啟動 瀏覽:429
機械中hg是什麼單位 瀏覽:1000
零一工具箱電腦端下載 瀏覽:629
煤氣閥門要關嗎 瀏覽:846
機床編碼器怎麼接線 瀏覽:383
吉安五金市場在哪裡 瀏覽:492
如何清理儀表台灰塵 瀏覽:307
廚房閥門關上怎麼辦 瀏覽:37
石墨盤根怎麼壓閥門密封 瀏覽:636
自來水管道用哪種閥門 瀏覽:868
電動汽車儀表盤上的v代表什麼意思 瀏覽:220
科沃茲儀表盤上出現code是什麼意思 瀏覽:998
空調單獨製冷有什麼區別 瀏覽:204
達爾優機械鍵盤顏色怎麼改 瀏覽:246
膠帶式運輸機傳動裝置簡介 瀏覽:951
尼桑軒逸經典儀表亮度怎麼調 瀏覽:920
卷膜機超聲波怎麼調試 瀏覽:861
採暖分戶都有什麼閥門 瀏覽:614
離心泵的軸封裝置作用是 瀏覽:176