如何用matlab求傅立葉變換,怎麼用matlab做傅立葉變換

2021-08-25 09:05:50 字數 4933 閱讀 7853

1樓:藤原子大雄

123456789101112fs=100;n=128; %取樣頻率和資料點數n=0:n-1;t=n/fs; %時間序列x=0.5*sin(2*pi*15*t)+2*sin(2*pi*40*t); %訊號y=fft(x,n); %對訊號進行快速fourier變換mag=abs(y); %求得fourier變換後的振幅f=n*fs/n; %頻率序列subplot(1,2,1),plot(f,mag); %繪出隨頻率變化的振幅xlabel('頻率/hz');ylabel('振幅');title('n=128');grid on;subplot(1,2,2),plot(f(1:

n/2),mag(1:n/2)); %繪出nyquist頻率之前隨頻率變化的振幅xlabel('頻率/hz');ylabel('振幅');title('n=128');grid on;

2樓:樂夏侯真

dgdfgfgfdgfd

怎麼用matlab做傅立葉變換

3樓:沒錯這是暱稱

1、我們使用matlab開發的傅立葉變換程式**如下:內

syms x

f = exp(-2*x^2);  %our function

ezplot(f,[-2,2])  % plot of our function

ft = fourier(f) % fourier transform

將其寫容入到我們的matlab程式模組中。

2、我們執行上面的傅立葉變換程式**,將得出執行結果:ft = (2^(1/2)*pi^(1/2)*exp(-w^2/8))/2。

3、如果我們需要更高階的顯示,我們修改上述**即可,如使用ezplot(ft)作傅立葉變換折線圖。

以上就是如何用matlab做傅立葉變換的解決步驟。

4樓:匿名使用者

opencv計算機視覺14(傅立葉變換)

5樓:珞珈山石

fs=100;n=128;   %取樣頻率和資料bai

點數n=0:n-1;t=n/fs;   %時間序列du

x=0.5*sin(2*pi*15*t)+2*sin(2*pi*40*t); %訊號

y=fft(x,n);    %對訊號進行快速

zhifourier變換

mag=abs(y);     %求得daofourier變換後的振幅回

f=n*fs/n;    %頻率序列

subplot(1,2,1),plot(f,mag);   %繪出隨頻率變化

答的振幅

xlabel('頻率/hz');

ylabel('振幅');title('n=128');grid on;

subplot(1,2,2),plot(f(1:n/2),mag(1:n/2)); %繪出nyquist頻率之前隨頻率變化的振幅

xlabel('頻率/hz');

ylabel('振幅');title('n=128');grid on;

6樓:人文漫步者

你想利用這一個軟體來實現福利業函式的一個變化過程,就需要了解他的一些具體工作情況。

用matlab 如何實現傅立葉變換

7樓:晴雨微暖

使用者任意輸入一個函式,然後,輸出函式的傅立葉變換函式,然後輸出振幅頻率 。

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

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

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

函式(function)表示每個輸入值對應唯一輸出值的一種對應關係。這種關係使一個集合裡的每一個元素對應到另一個(可能相同的)集合裡的唯一元素。函式f中對應輸入值的輸出值x的標準符號為f(x)。

包含某個函式所有的輸入值的集合被稱作這個函式的定義域,包含所有的輸出值的集合被稱作值域。若先定義對映的概念,可以簡單定義函式為,定義在非空數集之間的對映稱為函式。

傅立葉變換能將滿足一定條件的某個函式表示成三角函式(正弦和/或餘弦函式)或者它們的積分的線性組合。在不同的研究領域,傅立葉變換具有多種不同的變體形式,如連續傅立葉變換和離散傅立葉變換。

8樓:匿名使用者

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

y=fft(x); %傅立葉變換函式

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

9樓:凌居診拙

matlab傅立葉變換**:

統計資料後怎麼用matlab傅立葉變換

10樓:志當存高遠

把你的資料儲存到data.txt,放到matlab工作目錄裡,然後打下面命令,或者儲存成m檔案

a=load('data.txt');%讀資料

t=a(:,1)';%時間

x=a(:,2)';%資料

dt=t(2)-t(1);%用diff(t)看了下,你的取樣時間間隔一樣,就只算了一個差值

fs=1/dt;%傅立葉變換後的座標軸的最大值就是取樣頻率fs,與dt是倒數關係

ax=abs(fft(x));%fft是matlab中傅立葉變換的命令,abs是求模,我畫的是幅值譜

f=(0:length(t)-1)*fs/length(t);%頻譜圖橫軸,總共49個點,最大值是fs,每個點就是fs/49

figure();%畫在一起了

subplot(211);plot(t,x);%上:時域圖

subplot(212);plot(f(1:25),ax(1:25));%下

關於如何用matlab做傅立葉變換的問題

11樓:匿名使用者

不需要擬合 :

設抽樣頻率為fs(hz),訊號點數為n,訊號序列為x。

x=imread(『』)

f = fftshift(fft(x));

w = linspace(-fs/2, fs/2, n);%頻率座標,單位hz

plot(w,abs(f));

title('訊號的頻譜');

xlabel('頻率(hz)');

12樓:凌居診拙

matlab傅立葉變換

y = fft(y,512);

pyy = y.* conj(y) / 512;

f = 1000*(0:256)/512;

plot(f,pyy(1:257))

title('frequency content of y')xlabel('frequency (hz)')

如何用matlab對函式求傅立葉變換

13樓:匿名使用者

用matlab 實現傅立葉變換:

使用者任意輸入一個函式,然後,輸出函式的傅立葉變換函式,然後輸出振幅頻率 。

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

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

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

如何用matlab程式設計求函式的傅立葉變換頻譜函式

14樓:幻想餘

fs = 128; % 取樣頻率

t = 1/fs; % 取樣時間

l = 256; % 訊號長度

t = (0:l-1)*t; % 時間

x = 5 + 7*cos(2*pi*15*t - 30*pi/180) + 3*cos(2*pi*40*t - 90*pi/180); %cos為底原始訊號

y = x + randn(size(t)); %新增噪聲

figure;

plot(t,y)

title('加噪聲的訊號')

xlabel('時間(s)')

n = 2^nextpow2(l); %取樣點數,取樣點數越大,分辨的頻率越精確,n>=l,超出的部分訊號補為0

y = fft(y,n)/n*2; %除以n乘以2才是真實幅值,n越大,幅值精度越高

f = fs/n*(0:1:n-1); %頻率

a = abs(y); %幅值

p = angle(y); %相值

figure;

subplot(211);plot(f(1:n/2),a(1:n/2)); %函式fft返回值的資料結構具有對稱性,因此我們只取前一半

title('幅值頻譜')

xlabel('頻率(hz)')

ylabel('幅值')

subplot(212);plot(f(1:n/2),p(1:n/2));

title('相位譜頻')

xlabel('頻率(hz)')

ylabel('相位')

如何用matlab完成傅立葉變換和逆變換?

15樓:匿名使用者

用matlab進行傅立葉變換用fft()函式來變換,其逆變換用ifft()函式來變換。變換要求x為向量,而不是變數。

根據題主的**應這樣來處理。

>> t=-pi:pi/100:pi;

>> x=sin(2*pi*t);

>> y=fft(x);  %傅立葉變換

>> plot(abs(y))

x=ifft(y); %傅立葉逆變換

>> plot(t,x)

用matlab進行傅立葉變換傅立葉變換得到的相位譜

對速度訊號進行傅立葉譜分析之後,其縱座標對應的幅值的物理意義是頻率。傅立葉變換廣泛應用於物理 電子 數論 組合數學 訊號處理 概率論 統計學 密碼學 聲學 光學 海洋學 結構動力學等領域。例如在訊號處理中,傅立葉變換的典型用法是將訊號分解成頻譜 顯示與頻率對應的振幅的大小。擴充套件資料 訊號處理的基...

如何用matlab實現morlet楔變換資料為

前4圖沒啥難度吧,後兩張是最大尺度是4滴cwt,其縱座標是尺度,其實還可以做出比這更好滴時頻圖,縱座標是頻率值。不知你要問啥,如果懶得做,想要現成 那就算了吧,俺划不來,太麻煩,沒意思,哇咔咔!不就是matlab 演示文件裡面的嗎?這東西沒啥水平。連結給你吧,人家直接有 的,你改下引數就好了。網頁連...

如何用matlab畫出橢球體,如何用matlab畫出一個橢球體?

補充bai 3 你用這個吧,因為開du方使zhiz0成為複數了。dao ezsurf sqrt 1 x.x 9 y.y 4 4 或改變x y的取值範回圍 x 2 0.1 2 y 1 0.1 1 x,y meshgrid x,y z0 sqrt 1 x.x 9 y.y 4 surf x,y,z0 1 ...