scipy.signal.
去卷积#
- scipy.signal.deconvolve(signal, divisor)[源代码][源代码]#
使用反滤波从
signal
中解卷积divisor
。返回商和余数,使得
signal = convolve(divisor, quotient) + remainder
- 参数:
- 信号(N,) 数组类
信号数据,通常是记录的信号
- 除数(N,) 数组类
除数数据,通常是应用于原始信号的脉冲响应或滤波器
- 返回:
- 商ndarray
商,通常是恢复的原始信号
- 余数ndarray
剩余部分
参见
numpy.polydiv
执行多项式除法(相同的操作,但也接受 poly1d 对象)
示例
对已被滤波的信号进行反卷积:
>>> from scipy import signal >>> original = [0, 1, 0, 0, 1, 1, 0, 0] >>> impulse_response = [2, 1] >>> recorded = signal.convolve(impulse_response, original) >>> recorded array([0, 2, 1, 0, 2, 3, 1, 0, 0]) >>> recovered, remainder = signal.deconvolve(recorded, impulse_response) >>> recovered array([ 0., 1., 0., 0., 1., 1., 0., 0.])