[数字信号处理]手动验证一维信号的卷积计算(快速记住卷积计算方法)
假设一维信号为 x(n)={1,2,3,4,5,6,7,8,9}x(n)=\{1,2,3,4,5,6,7,8,9\}x(n)={1,2,3,4,5,6,7,8,9},卷积核为 h(n)={2,1,5,7}h(n)=\{2,1,5,7\}h(n)={2,1,5,7},求卷积 x(n)⊗h(n)x(n){\otimes}h(n)x(n)⊗h(n)。
当然,我们知道有公式:
x(n)⊗h(n)=∑k=0N−1x(n)h(n−k)x(n){\otimes}h(n)=\sum\limits_{k=0}^{N-1}x(n)h(n-k)x(n)⊗h(n)=k=0∑N−1x(n)h(n−k)
不过,我们可以像小学多位数乘法一下来算,但是记住,不要进位,如下
当然了,你可以用Python代码验算一下
import numpy as np
# 定义信号 x(n) 和卷积核 h(n)
x = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
h = np.array([2, 1, 5, 7])
# 计算卷积
convolution_result = np.convolve(x, h, mode='full')
print("卷积结果:", convolution_result)