當前位置:
首頁 > 最新 > scipy.signal 信號-卷積

scipy.signal 信號-卷積

數字信號處理作為 信息與計算科學專業與電子信息科學專業的基礎課, 可以說尤為重要, 而且覆蓋面廣. 對數學分析功底的要求較為深刻.

scipy.signal 將其分為如下小塊

Convolution卷積

B-splinesB 樣條

Filter Design濾波設計

Continuous-Time Linear Systems連續時間線性系統

Discrete-Time Linear Systems離散時間線性系統

LTI RepresentationsLTI 表示

Wavelets小波分析

Peak finding峰值點

Spectral Analysis譜分析

以及電腦系統的彈窗包 Windows

# 卷積:

#一維卷積signal.convolve(in1, in2, mode="full", method="auto")

參數介紹

in1第一信號

in2第二信號

mode輸出模式

``full`` 輸出為滿離散線性卷積

``valid`` 與 in1或in2 相同維度,輸出不依賴於 小波零填充

``same``與in1維度相同

method 卷積方法

"fft" 快速傅立葉法

""direct"" 定義法

"auto" 自動選擇fft或者direct法

from scipy import signal

import numpy as np

import matplotlib.pyplot as plt

t=np.arange(-1,1,0.1)

n=t.size

in1=1-t**2

in2=np.zeros(n)

for i in range(n):

in2[i]=1-abs(round(t[i]))

filtered=signal.convolve(in1, in2, mode="same")/sum(in2)

plt.plot(filtered)

plt.plot(in1,"o-")

plt.plot(in2,"o-")

plt.show()

# 二維卷積 convolve2d(in1, in2, mode="full", boundary="fill", fillvalue=0) 通常用於圖像處理

from scipy import misc

ascent = misc.ascent()

scharr = np.array([[ 1, 3, 1],[3, 10, 3],[1,3,1]]) # Gx + j*Gy

grad = signal.convolve2d(ascent, scharr, boundary="symm", mode="same")

fig, (ax_orig, ax_mag, ax_ang) = plt.subplots(1, 3, figsize=(12, 30))

ax_orig.imshow(ascent, cmap="gray")

ax_ang.imshow(, cmap="gray")

plt.show()

調用自己的圖像請參照鏈接:scipy.misc 圖像處理包

fftconvolve與convolve用法類似, 但是只能使用傅立葉卷積

一維互相correlate(in1, in2, mode="full", method="auto")

調用參數基本與convolve類似

二維互相關 correlate2d(in1, in2, mode="full", boundary="fill", fillvalue=0)

調用參數基本與convolve2d類似

#sepfir2d()可分卷積變換

from scipy import signal

from scipy import misc

import numpy as np

import matplotlib.pyplot as plt

ascent = misc.ascent()

hrol=np.sin(np.linspace(0,np.pi*2,64))

hcol=np.cos(np.linspace(0,np.pi*2,64))

g=signal.sepfir2d(ascent,hrol,hcol)

plt.subplot(1,2,1)

plt.imshow(g)

plt.title("sepfir2d")

plt.subplot(1,2,2)

plt.imshow(ascent)

plt.title("origin")

plt.show()

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 shuxueyun 的精彩文章:

TAG:shuxueyun |