本篇文章主要介绍卷积的作用以及卷积在计算机上两种不同角度的输入算法:输入端算法与输出端算法
1. 冲激响应与卷积
冲激响应指的是输入信号为δ函数时系统的输出,一般来说,冲激响应可以描述线性系统的特征。冲激响应在许多系统中有不同的名称:若系统为滤波器,则冲激响应可以叫做滤波器内核或卷积核;在图像处理中冲激响应叫做点扩散函数。
那么冲激响应与卷积又有什么关系呢?
从系统输入输出之间的关系来看,冲激响应可以看作系统中权重系数的集合,从输出端来看,卷积这种运算可以看作输入信号与对应的权重系统分别相乘后相加,得到输出信号的各个样点。在线性系统中,卷积主要描述输入信号、冲激响应以及输出信号之间的关系。从离散信号来看,若输入信号有M个样点,冲激响应有N个样点,则前两个信号通过卷积后得到的输出信号有M+N-1个样点。
上述代码中的操作可以理解为把输入信号x进行反转,不断地往右移,索引到h不为零的地方则相乘再相加。
卷积的正式定义简写为 y [ n ] = x [ n ] ∗ h [ n ] y[n] = x[n]*h[n] y[n]=x[n]∗h[n