干货 | 信号的相关运算及在单片机程序运用中算法分析

相关函数是鉴别信号的有力工具,被广泛应用于雷达回波的识别,通信同步信号的识别等领域。相关是一种与卷积类似的运算。与卷积不同的是没有一个函数的反转。
互相关运算
互相关函数给出了在频域内两个信号是否相关的一个判断指标,把两测点之间信号的互谱与各自的自谱联系了起来。它能用来确定输出信号有多大程度来自输入信号,对修正测量中接入噪声源而产生的误差非常有效。
互相关是表示两个不同函数的相似性参数。可证明,R12(τ)=R21(–τ)。
相关与卷积的关系如下:
R12(t)= f1(t)* f2(–t)
R21(t) = f1(–t)* f2(t)
若f1(t)和 f2(t)均为实偶函数,则卷积与相关完全相同。
在单片机中处理的信号为数字信号,所以从离散的角度来讲就涉及到卷积和。已知定义在区间( – ∞,∞)上的两个函数f1(k)和f2(k),则定义和
为f1(k)与f2(k)的卷积和。下面借助MATLAB工具来定性感受一下。matlab中的参数都是以数组的形式存储的,标量可以看作是一维数组。
a、b的结果大家应该不会困惑吧,结果就是卷积求得的结果,在此处a、b可以看成数组,我给大家举个例子:
图片
其他的结果大家可以依次类推。
自相关运算
自相关函数是描述随机信号X(t)在任意两个不同时刻t1,t2的取值之间的相关程度;若互相关函数中f1(t)= f2(t) = f(t),则得自相关函数。
显然,R(-τ)= R(τ)偶函数。
生成图像如下所示:
图片
参数’unbiased’的作用在于基于缺省参数时的计算结果,每个组的计算再除上该组的序号组数,比如b(1)时组数为1,记为N=1,则a(1)=1*5/N=5;b(2)时就是a(2)=18/N=18/2=9;类似等等;
图片
参数’biased’的作用在于缺省参数的基础上除以序列x的长度,即a(1)=5/3;
图片
此时用于求序列x的自相关序列,其结果是针对’biased’的情况进行归一化,使得b=0时即中间的值a(3)=1,因此a(1)=5/11.6667,所有的分组数据在’biased’基础上都通过11.6667归一运算。
不进位乘法求卷积和
实际在单片机中要处理的为2048个长度的Chirp信号,对有限长序列,卷积和的计算用:不进位乘法。不进位乘法的算法思想是这样的,对于两个序列,将两序列样值以各自k的最高值按右端对齐,然后把逐个样值对应相乘,但不进位,最后把同一列上的乘积值按对位求和。例如:
图片
总结
图片