最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

數(shù)學(xué)實現(xiàn)信號分析 [real]: 信號過濾和壓縮

2019-11-02 13:33 作者:nyasyamorina  | 我要投稿

在計算機中, 幾乎所有信號都是離散信號, 所有對應(yīng)應(yīng)該使用離散傅里葉變換DFT, DFT和其快速算法FFT已經(jīng)在之前講述過了, 這里不再重復(fù)

在正篇開始前應(yīng)該了解一下傅里葉變換的兩個臭名昭著的效應(yīng)


循環(huán)位移

在計算機里, 數(shù)列第一個元素的索引為0, 而傅里葉變換的頻率變換范圍是取整個實數(shù)域, 那么負數(shù)部分的頻率在離散傅里葉變換后是丟失了嗎??

我們來看看 sin(20t), 范圍 [0, 2), 總?cè)狱c50? 的離散傅里葉變換? ?這個時候頻率就約等于3.18

我們可以看到一個很奇怪的現(xiàn)象, 下面圖像的右邊出現(xiàn)了一個不屬于頻率為3.18的尖峰

如果我們從中間截斷, 并把右邊移動到左邊, 得到:

而這個新圖像對應(yīng)的就是傅里葉變換

所以循環(huán)位移可以這樣理解:?一個有限數(shù)列經(jīng)過非零的位移后, 有部分數(shù)據(jù)消失在位移方向外 (即被移動出數(shù)列之外了),? 那么這部分數(shù)據(jù)會再次出現(xiàn)在與消失方向相反的地方??***

在之前發(fā)過的傅里葉小技巧里也有提到過這個效應(yīng)

向右下方向移動 (400, 400)

***? 如果真的想要糾結(jié)為什么會出現(xiàn)這個效應(yīng)的話, 這里有一些小提示:? 離散傅里葉變換實際上與傅里葉級數(shù)的關(guān)系比較密切, 而傅里葉級數(shù)就是對有限區(qū)間的已知函數(shù)作正弦余弦展開,? 而正弦余弦的出現(xiàn)也就代表著在已知區(qū)間外會形成周期性信號, 而位移對應(yīng)只是改變了正弦余弦的相位, 那么在已知區(qū)間就會出現(xiàn)原本在區(qū)間外的信號了

Gibbs現(xiàn)象

gibbs現(xiàn)象是在傅里葉級數(shù)中出現(xiàn)的,? 首先來思考一個問題: 連續(xù)光滑的正弦函數(shù)真的可以通過傅里葉級數(shù)得到不連續(xù)的函數(shù)嗎

我們來研究一個函數(shù)? f(t) = {t<0:-1, else: 1}

非常簡單的一個分段函數(shù)

然后逐項作傅里葉級數(shù)展開

展開20項的結(jié)果

可以看到虹色圈的部分確實有隨著級數(shù)的展開而逐漸收斂到原函數(shù)中

但是綠色圈部分(即間斷點處)可以看出并沒有收斂的跡象, 只不過是跳起來的地方越來越靠近間斷點罷了, Gibbs發(fā)現(xiàn), 當(dāng)級數(shù)展開非常大之后, 跳起來的值約等于間斷處差的9%, 當(dāng)無限展開后, 跳起來的地方被壓縮到間斷點這一個點


浪費了827字, 正片開始


信號濾波

實際測量得到的信號總會因為設(shè)備干擾或者外界影響造成在信號里有很高頻率的噪聲混雜在里面, 那么有沒有辦法把高頻分量過濾掉呢

1. 對信號取傅里葉變換,? 2.把高頻率的分量設(shè)置為0,? 3.取傅里葉逆變換得到濾波信號

例子: 這里有一個信號, 里面混雜著高頻的噪聲

傅里葉變換后把頻率大于5的分量設(shè)置為0,? ?注意循環(huán)位移效應(yīng), 在數(shù)列末端的也是低頻分量

藍色是過濾前的, 黃色是過濾后的

取逆變換得到新信號, 與原信號作比較

藍色是原信號, 黃色是新型號

上述過程用蛇實現(xiàn):

信號壓縮

經(jīng)常在測量信號時, 測量速度會遠遠超過某些地方的數(shù)據(jù)包傳輸速度, 為了實時傳輸整個信號, 我們必須對這個信號作有損失的壓縮, 主要實現(xiàn)思路:

1.取傅里葉變換,? 2.把比較小的大部分分量設(shè)置為0,? 3.只傳輸不為0的分量,? 4.接收分量并進行傅里葉逆變換得到壓縮后的信號

例子:

把比較小的80%分量設(shè)置為0

為了數(shù)據(jù)壓縮我們?nèi)∽蟀氩糠志鸵呀?jīng)足夠了

進行傅里葉逆變換, 注意此處出現(xiàn)了gibbs現(xiàn)象

采用這種辦法, 如果壓縮率為90%, 那么只需要傳輸原數(shù)據(jù)長度的10%數(shù)據(jù)就可以得到足夠近似的壓縮信號了

信號卷積

離散信號進行卷積的過程, 計算速度非常非常慢 (特別是py的單線程 當(dāng)然, 利用多線程和numba等gpu加速可以做到很快的計算速度, 不過眾所周知numba的一個永遠裝不上的東西), 對于無限離散序列, 卷積的定義如下

而對于有限序列的卷積還要考慮是否有循環(huán)位移, 是否取序列相交范圍等復(fù)雜的情況

幸好這里有一個非??旖莸膽腥诉m配方法:? ?假如信號序列, 卷積核序列和輸出序列一樣長度, 且可以忽略傅里葉變換帶來的一點gibbs現(xiàn)象的話, 那么:

α是一個我還沒摸清頭腦的常數(shù), 應(yīng)該是與序列長度有關(guān), 但是我不太清楚? ?在這篇專欄提交前我找到了一個數(shù)字能很好地擬合實際情況,? 這個數(shù)字的值是?α=π/N? N是序列長度

例子: 一個帶高頻噪聲的信號, 和一個非常非常早期的濾波核函數(shù)可以得到以下圖像

注意到傅里葉的gibbs現(xiàn)象和卷積濾波器的滯后現(xiàn)象


傅里葉的那么多應(yīng)用里面, 我覺得最被人熟悉的應(yīng)該就是變聲器了 (笑

那么問題來了, 這個數(shù)學(xué)實現(xiàn)信號分析完了嗎

也許沒有, 但是也許已經(jīng)完了, 說不定我以后又發(fā)現(xiàn)上面奇奇怪怪的東西可以分享給大家呢?

代碼的度盤連接:?https://pan.baidu.com/s/18OCOBWIxXYJevEDEqdqIaA

數(shù)學(xué)實現(xiàn)信號分析 [real]: 信號過濾和壓縮的評論 (共 條)

分享到微博請遵守國家法律
通江县| 合肥市| 海南省| 团风县| 宁都县| 于田县| 南充市| 通辽市| 阿勒泰市| 樟树市| 邵东县| 宣威市| 孙吴县| 白银市| 盘锦市| 大姚县| 昆山市| 赤城县| 石首市| 逊克县| 双辽市| 秦安县| 揭西县| 禹城市| 林芝县| 家居| 丹巴县| 连南| 黎川县| 钦州市| 乡城县| 盐亭县| 高安市| 灵川县| 中江县| 呼伦贝尔市| 莱阳市| 海晏县| 双峰县| 卓尼县| 泌阳县|