數字信號處理之信號的合成、分解、相關性及傅里葉係數的計算



一、信號的合成和分解


  • 任何信號都可以由正弦波合成,反之,任何信號都可以分解爲正弦波的疊加,這是傅里葉變化告訴我們的。

(一)傅里葉級數

  • 由公式

在這裏插入圖片描述

  • 可以知道一個信號可以由正弦波疊加而成

(二)將正弦波合成方波

  • 使用matlab生成基波及3、5、7、9、11次諧波
w=1000;%基波頻率,單位Hz
f1=sin(2*pi*w*t);%基波信號
f3=sin(2*pi*3*w*t)/3;%3次諧波信號
f5=sin(2*pi*5*w*t)/5;%5次諧波信號
f7=sin(2*pi*7*w*t)/7;%7次諧波信號
f9=sin(2*pi*9*w*t)/9;%9次諧波信號
f11=sin(2*pi*11*w*t)/11;%11次諧波信號

matlab生成及次諧波

  • 將基波及3、5、7、9、11次諧波進行疊加
f=f1+f3+f5+f7+f9+f11;

幾次諧波疊加而成的方波

  • 這裏只是使用了基波及3、5、7、9、11次諧波來疊加,已經可以看得出方波的雛形了,如果使用更多的13、15、17、19。。。次諧波來疊加則會更向方波,事實上一個完整的方波是無限多、無限高次諧波的疊加。另外提一點,即使使用無限多、無限高次諧波來合成方波仍會發現會在間斷點出現劍鋒,大概是9%的偏差,這個現象叫做吉伯斯現象,因爲當諧波次數取得很大時,間斷點尖峯下的面積趨近於零,在均方的意義上合成波形與原方波真值沒有區別。
    回到頂部

二、信號的相關性及傅里葉係數的計算


(一)信號的相關性

  • 所謂信號的相關性,就是一個信號與一個固定頻率信號相乘,如果該信號含有固定頻率信號的頻率成分,那麼乘積的結果作積分不爲零,反之爲零。因爲隨機信號不含有固定的頻率,所以一個隨機信號與任意一個固定頻率信號相乘做積分結果爲零,這正是傅里葉變換能消除隨機干擾的原因

(二)傅里葉係數

  • 由傅里葉係數計算公式
    在這裏插入圖片描述
  • 可知要計算傅里葉係數就是將原信號與一個固定頻率的信號進行相乘然後求積分,我們知道任何一個信號都是由正弦波疊加而成的,我們只要將一個信號與一個已知頻率的信號相乘求積分,就知道了在該信號中這個頻率的分量,這個過程其實就是求傅里葉係數
    回到頂部

(三)相關性的驗證及幅值、相位的計算

  • 使用matlab生成相關函數,該相關函數的頻率與合成信號的三次諧波頻率相同
f_cos=cos(2*pi*3*w*t);%相關函數,用於與合成信號作相關
f_sin=sin(2*pi*3*w*t);%相關函數,用於與合成信號作相關

相關函數

  • 將相關信號與合成信號相乘
f_relaven_cos=f.*f_cos;%將合成信號與相關函數相乘,得到實部
f_relaven_sin=f.*f_sin;%將合成信號與相關函數相乘,得到虛部

在這裏插入圖片描述

  • 將相乘後的信號求積分
sum_data_cos=sum_len(f_relaven_cos,N);%實部求和
sum_data_cos=sum_data_cos/N;
sum_data_sin=sum_len(f_relaven_sin,N);%虛部求和
sum_data_sin=sum_data_sin/N;

在這裏插入圖片描述

  • 求幅值,我們的三次諧波中的幅值正好是一除以三再除以二也就是1.66666666666666…,得出結論原信號與該頻率的信號相關,並且原信號中該頻率成分分量的幅值爲1.666666666666666,
sum_data=sqrt(sum_data_cos^2+sum_data_sin^2);

在這裏插入圖片描述
在這裏插入圖片描述

  • 若要從能量的角度解釋,就是原信號中該頻率分量的成分所佔能量爲0.0278
sum_data_energy=sum_data_cos^2+sum_data_sin^2;

在這裏插入圖片描述

  • 再來求一下相角
angle_data=atan(sum_data_sin/sum_data_cos)*180/pi;

在這裏插入圖片描述

  • 初始相位是零看不出結果,我們將三次諧波進行移相,再求相角,注意這時候可能合成的已經可能不是正弦波了

在這裏插入圖片描述
在這裏插入圖片描述

三、信號的分解


從信號合成到信號分解

  • 前面的驗證我們知道任何一個信號都可以由正弦波合成,那麼反過來,任何信號都可以分解爲正弦波的疊加。那麼問題來了,怎樣分解呢?答案就是傅里葉變換。但是傅里葉變換太複雜了,有沒有更簡單的理解方式呢?我們可以從傅里葉級數出發。
  • 我們知道,欲求一個信號中某種頻率的分量,只要將這個信號與欲求頻率的信號相乘求積分就能得到這個信號中該頻率的含量
  • 再反過來,欲知一個信號中含有那些頻率成分及各成分的分量,那就將這個信號與任意頻率的信號相乘求積分(作相關),就能得到該信號中所含的所有頻率成分及各個分量大小。
  • 但是,與任意頻率作相關,這個計算量也太大了吧。。。所以只需要對那奎斯特採樣頻率一半的信號作相關就夠了,並且將任意頻率抽取,即每隔多少頻率求一次相關,這就是頻譜分辨率,怎麼越來越像傅里葉變換,沒錯這就是傅里葉變換。但是傅里葉變換是連續的,在數字系統中無法使用,所以要用離散傅里葉變換,但是離散傅里葉變換計算量還是很大,於是根據離散傅里葉變換的奇、偶、虛、實特特性,快速傅里葉變換誕生了,並且加速了數字信號處理的發展。

最後

  • 本文從信號的合成、分解、相關及傅里葉級數的計算,一非常淺顯的方式對信號進行分析,最後引出傅里葉變換、離散傅里葉變換和快速傅里葉變換,之後的內容便是對傅里葉變換、離散傅里葉變換和快速傅里葉變換進行探討和實現,欲知後事如何請待下回分解。

聲明:本文僅作爲個人技術交流,所述如有不當之處,歡迎讀者批評指正!
轉載請註明出處:https://blog.csdn.net/qq_39432978/article/details/89391212
請勿用於商業用途!


回到頂部

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章