含噪正弦波和三角波訊號的短時傅利葉變換,用matlab如何實現啊 10

2024-12-27 02:35:12 字數 3130 閱讀 2246

含噪正弦波和三角波訊號的短時傅利葉變換,用matlab如何實現啊

1樓:一切皆有不可能

對正弦訊號有:2*pi*fc = , 正弦訊號的頻率fc=, 可以用2*fc以上取樣率對其進行取樣,然後進行傅利葉變換即可。

三角訊號的頻率大致為1/1000,比正弦訊號頻寬更小,所以可以用正弦訊號的取樣率進行取樣,這樣得到的訊號的傅利葉變換不會在頻域發生混疊。

從這裡的條件來看,fc= <,取樣間隔ts > 10s,因此你給出的 t=1:n,如果以1s為單位的話,可以對 x 直接進行傅利葉變換即可,即 y = fft(x); 得到的 y 即 x 的傅利葉變換;

另外,如果需要畫變換後的幅度譜,需要用 plot(20*log10(abs(fftshift(y)))就可以了。

祝好運!

用matlab 如何實現傅利葉變換

2樓:網友

x=sin(2*pi*t); 任意輸入乙個函式。

y=fft(x); 傅利葉變換函式。

plot(abs(y));振幅頻率。

如何用matlab實現矩形脈衝訊號的傅利葉變換

3樓:網友

首先 產生矩形脈衝訊號,可以使用 rectpuls(t,w) 函式產生乙個幅值為1,以t=0為中心對稱,半寬度為專w/2的矩形脈衝。

然後 傅裡屬葉變換 是用 fft() 命令的。如果要得到頻譜的話還要再處理一下,具體就不多說了,給個程式樣例:

t=-20:20;

w=10;y=rectpuls(t,w); 矩形脈衝訊號yy=fft(y);

n=size(y);

n=n(2);

fy=abs(fft(y))/n*2; %頻譜subplot(2,1,1)

plot(y);

subplot(2,1,2)

plot(fy);

挺粗糙的,最後得到的兩個圖分別是方波脈衝和頻譜圖。。

順帶一提:1) 三角波是tripuls(t,w);

2) 矩形波也可以通過ones()和zeros生成乙個訊號矩陣3) 具體的函式使用和引數規則請參閱help 「command」

4) 其實這些用simulink做,裡面都有現成的模組。這樣倒是很簡潔,但也不容易看懂。

請問一組集散點的短時傅利葉變換怎麼用matlab實現

4樓:匿名使用者

那是因為fft的結果數值之間差異很大,所以在圖上顯示不出來,可以只顯示部分割槽間的數值,就是限定座標值範圍。

matlab中給訊號加入白雜訊,如何利用傅利葉變換去噪

5樓:我是舞三

總體思路:設定篩選條件,將陣列中符合條件的元素篩選出來(可以篩選出元素值也可以篩選出元素對應的下標),然後將元素值賦值給另外乙個陣列的元素。

close all

x = randi(10, 1, 5); 原始資料。

disp('x=');

disp(x);

y1 = -1 * ones(1, length(x));儲存篩選出的結果,並初始化成不可能出現的結果。

- 篩選符合條件的元素下標,並將對應元素存到y1 --

ix = find(x>=3); 例如,篩選出原始資料中大於3的元素的下標。

if(isempty(ix))

disp('x的元素均不符合條件');

elsey1(1:length(ix)) = x(ix); 將符合條件的元素存到y1中。

y1( find(y1==-1) )= ; 剩餘元素刪除。

disp('y1=');

disp(y1);

y2 = -1 * ones(1, length(x));儲存篩選出的結果,並初始化成不可能出現的結果。

- 篩選符合條件的元素值,並存入y2 --

for i=1:length(x)

if(x(i)>=3) %逐個檢測x的元素是否符合條件,把符合條件的元素值賦值給y2

y2(i) = x(i);

endend

y2( find(y2==-1) )= ; 剩餘元素刪除。

disp('y2=');

disp(y2);

輸出結果。x=7 1 9 10 7

y1=7 9 10 7

y2=7 9 10 7

6樓:我想呆會兒

小波的閾值去噪效果比較好。可以呼叫wden函式,比較簡單。

本題中前面改一下比較直觀,可以把原始訊號輸出來subplot(2,2,1)後面去噪訊號subplot(2,2,2)頻譜圖subplot(2,2,3)後面可加程式。

xd=wden(x,'rigrsure','s','sln',5,'sym8');

subplot(2,2,4);plot(xd);

title('去噪訊號');

err=x-xd;

函式wden的呼叫格式有以下兩種:

1)[xd,cxd,lxd]=wden(x,tptr,sorh,scal,n,'wname')

2)[xd,cxd,lxd]=wden(c,l,tptr,sorh,scal,n,'wname')

函式wden用於一維訊號的自動消噪。x為原始訊號,[c,l]為訊號的小波分解,n為小波分解的層數。

thr為閾值選擇規則:

tptr='rigrsure',自適應閾值選擇使用stein的無偏風險估計原理。

tptr='heursure',使用啟發式閾值選擇。

tptr='sqtwolog',閾值等於sqrt(2*log(length(x)))

tptr='minimaxi',用極大極小原理選擇閾值。

sorh是軟閾值或硬閾值的選擇(分別對應's'和'h')。

scal指所使用的閾值是否需要重新調整,包含下面三種:

scal='one' 不調整;

scal='sln' 根據第一層的係數進行雜訊層的估計來調整閾值。

scal='mln' 根據不同的雜訊估計來調整閾值。

xd為消噪後的訊號,[cxd,lxd]為消噪後訊號的小波分解結構。

7樓:匿名使用者

山科同跟張老師上小波分析的路過。

有效值為2V的正弦波,方波,三角波,其峰峰值分別為多少

0 方波的有效來 值是2.5 cos 25v 這自不難 2 cos0 5,否則都是0 1 2.25 峰值肯定都是2.5v 2.5v.5sintdt 2,算面積即可 正弦波的平均值 v 3,5 方波的絕對平均值是2.5t 2dt 6.5v,1 2平均值應該指的是絕對平均值吧 2 v 三角波的有效值 2...

正弦波逆變器和方弦波逆變器怎麼分出來

在交流電源輸出端加個二極體整流再加個幾百微法的電容若果電壓升高的華為正弦波反而為方波 一是 差距比較大,方波便宜,正弦波貴。二是方波逆變器帶額定功率50 的感性負載 電機類電器 帶不動,正弦波則可以帶動標稱功率的感性負載。三是輸出電壓,方波一般輸出電壓小於220v,正弦波輸出電壓在230v.方波便宜...

兩個訊號是怎麼相加的,例如正弦波和方波或鋸齒波是怎麼相加的

就是算術和,如圖中的兩例,波形1和波形2是兩個原始訊號波形,紅紫色為相加後的波形。把兩個原始波形在每個時點的幅度逐一進行算術相加 同方向的相加 方向不同的就相減 就生成了一個新的波形,這就是結果 合成波形。在示波器裡,當選擇y1 y2時,就是把兩個輸入訊號y1和y2按上述方法進行相加,在螢幕上顯示相...