日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

互相关函数python实现的三种方法

發布時間:2024/3/26 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 互相关函数python实现的三种方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ?本人前段時間在做地震波分析的時候用到互相關函數的計算,所以做了一些具體的研究和分析。用python實現信號的互相關可以有三種方法:一、直接用時域法。二、用頻域法。三、python提供的numpy.correlate函數。現在把這三種方法都用于具體數據計算,并得到了幾乎一致的結果。具體python源代碼已經上傳,可以在CSDN免費下載。

互相關函數pyhton實現的三種方法-Python文檔類資源-CSDN下載

互相關函數計算的基本原理

1、對于信號 ,它們的互相關公式為:

????????????????????????

在時域方法中,我們可以將上面的公式進行離散化,就可以做具體計算。

2、但時域法的計算量比較大,我可以用頻域法做計算,它的原理如下:

如果 為 、 互相關函數的傅里葉變換:

? ? ? ? ? ? ? ? ? ? ? ? ?

根根據積分交換性質和卷積定理:

? ? ? ? ? ? ? ? ? ? ? ??

它的傅里葉逆變換就是我們所需要的互相關函數:

? ? ? ? ? ? ? ? ? ? ? ? ?

所以只要根據傅里葉變換計算出 ,就可以得到 。那么它的傅里葉逆變換就是兩個信號的互相關函數。

3、python的numpy.correlate也提供的具體的計算函數,(很簡單,不需要涉及細節)。

具體實現:

現在把各種方法進行的過程,用圖像的方法展示一下,可以參考源代碼獲得更多的處理細節。

程序運行的結果如下:

[xxxxx@localhost corraltion]# ./cmpcor.py

time out Maxvalue: 98449.9225242

fft out Maxvalue: 98449.9225242

two mode max bias between using fft and using Time: 1.45519152284e-10

two mode max bias between using np.correlate and using Time: 0.0

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?圖1? 時域法和頻域法實現的細節和結果?

對比用時域法和python提供的correlate計算結果完全一致,用頻域法會有和時域法計算結果有極其

微小的偏差。?

總結

以上是生活随笔為你收集整理的互相关函数python实现的三种方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。