【信号处理】卷积、点积与sinc插值的关系

1 离散卷积

离散时间的卷积本质上是求两个序列的乘积和,公式为:

y(n)=s(n)\otimes h(n) =\sum_{i=1}^{m}s(n-i)h(i)=\sum_{j=n-m}^{n}s(i)h(n-i)

m为卷积核h(n)的长度,以序列s(n)={1,3,-1,5,2,6,4,-2}和序列h(n)={1,2,3}为例,m=8,对两个序列进行卷积时,需要将h(n)从左至右通过s(n),在通过时对两个序列的公共部分相乘求和,即:

y(1)=\sum_{i=0}^{2}s(1-i)h(i)\newline y(2)=\sum_{i=0}^{2}s(2-i)h(i)\newline y(3)=\sum_{i=0}^{2}s(3-i)h(i)\newline

\vdots

y(n)=\sum_{i=0}^{n}s(n-i)h(i)

以上两个序列的计算结果为{1,5,8,12,9,25,22,24,8,-6},其中{1,5}、{8,-6}为部分卷积,中间6个位全卷积[1]。


2 卷积与点积

MATLAB conv函数是一种快速的卷积计算方式,可以进行类似于矩阵A(1×n)与B(n×1)的相乘累加的操作,求出的结果为一个数。

差别在于

  • 矩阵乘法中两个向量的维度需要一致,且只会输出一个值
  • 而卷积过程中两个序列的维度可以不同,会输出多个值。即conv函数定义的“卷积和多项式乘法”

且在计算过程中,可以选择‘full’,‘same’,‘valid’,差别在于对弃置区(未全卷积)的处理方式,功能如下:

‘full’

全卷积(默认值)。{1     5     8    12     9    25    22    24     8    -6}

‘same’

与s(n)大小相同的卷积的中心部分。{5     8    12     9    25    22    24     8}

‘valid’

仅计算的没有补零边缘的卷积部分。{8    12     9    25    22    24}

3 卷积与插值

采样定理表明,可以通过卷积重建信号,核函数为sinc(x)函数,插值信号为:

g(x)=\sum_{i}g_d(i)sinc(x-i)

其中x为待插值点,i为原始采样点。插值的原理为卷积,但是这里并不能直接使用conv进行卷积计算,由于conv只能对两个已知的序列进行计算,而不会产生新的待插值点,因此这里不能使用原始信号序列与sinc核序列进行conv计算,实际上这里插值计算需要通过上面的点积来实现。例如8点sinc需要计算8点插值核与8点原始数据的点积,至于插值核如何确定,原始数据如何选取下一篇再讲。

[1] Lan G.Cumming Frank H.Wong.合成孔径雷达成像: 算法与实现[M].电子工业出版社,2012.


以上个人理解,欢迎交流讨论。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值