《matlab r2016a完全自學一本通》455頁,例14-19,下面的命令對乙個以50hz和120hz為主要成分的訊號進行傅利葉變換。
**如下:
fs=1000;結果圖如下:t=1/fs;
l=1000;
t=(0:l-1)*t;
x=0.7*sin(2*pi*50*t)+sin(2*pi*120*t);
y=x+2*randn(size(t));
subplot(121);
plot(fs*t(1:50),y(1:50));
title('原始訊號');
xlabel('time (ms)');
nfft=2^nextpow2(l);
y=fft(y,nfft)/l;
f=fs/2*linspace(0,1,nfft/2+1);
subplot(122);
plot(f,2*abs(y(1:nfft/2+1)));
title('幅值譜');
xlabel('frequency (hz)');
ylabel('|y(f)|');
注釋:快速傅氏變換的點數n要取最接近資料長度的2的整數次方。命令是2^nextpow2(n),其中n是實際資料長度,因為這樣的n可以使fft更快。比如n=1021,執行n=2^nextpow2(n)後,n=2^10=1024。
第二幅圖中,因為要畫單邊幅值,所以×2。
復加性高斯白雜訊訊號的maltab實現
參考 高斯分布方差與功率的關係 awgn函式 英文復高斯分布詳解 新增復高斯白雜訊的驗證 matlab復訊號新增高斯加性白雜訊 利用awgn函式,並驗證 clear n 1000 sig 2 randint 1,n 3 j randint 1,n 訊號 y2 awgn sig,10,measured...
用FFT估計單頻正弦訊號的幅度
用fft估計單頻正弦訊號的幅度 fft是數字訊號處理中最常用,也是最重要的演算法。在實踐中,人們常用fft來估計訊號的頻率。但有時候,也需要估計單頻正弦訊號的幅度,這時候用fft還能做得到嗎?答案是顯然的,用fft同樣可以估計單頻正弦訊號的幅度。假定訊號的幅度為a,頻率為f,訊號取樣點數為n。fft...
訊號處理除去加性噪音的乙個方法
原理 在訊號採集時,經常有工業噪音的干擾,比如打樁機引起的震動等,這裡噪音一般為高頻分量,可以利用傅利葉變換,在巴特沃斯低通濾波器下進行濾波處理,並且需要設定相應的通帶截止頻率和阻帶截止頻率。下圖為對訊號處理後及處理前的頻域和時域分布 a xlsread c users legion documen...