发布网友 发布时间:2022-04-23 08:49
共1个回答
热心网友 时间:2022-06-18 14:16
数字信号处理算法 一、信号的时域参数 1.均值 均值E[x(t)]表示集合平均值或数学期望值. E[x(t)]= x(n)/N 均值E[x(t)]计算机编程实现很简单,用Signal VBScript实现的程序代码为: E=0 For i="0" To N-1 E="E"+x(i) Next E=E/N 2.均方值 信号x(t)的均方值E[x 2 (t)]( ),或称为平均功率,其表达式为: E[x 2 (t)]= x 2 (n)/N 均方值表达了信号的强度,其正平方根值,又称为有效值,也是信号的平均能量的一种表达。在工程信号测量中一般仪器的表头示值显示的就是信号的均方值。均值E[x(t)]计算机编程实现很简单,用Signal VBScript实现的程序代码为: RMS=0 For i="0" To N-1 RMS="RMS"+x(i)*x(i) Next E=sqrt(E)/N 二、信号的相关函数 在离散情况下,信号x(n)和y(n)的相关函数定义为: R(k)=[ x(n)y(k+i)]/N,k=0,1,2,.... 在不考虑计算效率的情况下计算也很容易: For i="0" To N/2 R(i)=0 For j="0" To N/2 R(i)=R(i)+x(j)*x(j+i) Next R(i)=R(i)/N Next 三、数字滤波 数字滤波器的作用是利用离散时间系统的特性对输入信号波形(或频谱)进行加工处理,或者说利用数字方法按预定的要求对信号进行变换。把输入序列 x(n) 变换成一定的输出序列 y(n) 从而达到改变信号频谱的目的。从广义讲,数字滤波是由计算机程序来实现的,是具有某种算法的数字处理过程。 数字滤波主要分为有限冲击响应滤波器(FIR)和无限冲击响应滤波器两种,FIR滤波器的滤波计算公式为: y(k)=a 0 x(k)+a 1 x(k+1)+a 2 x(k+2)+...+a m x(k+m),k=0,1,.........N-m 式中N为信号采样长度,m为数字滤波器长度,{a 0 ,a 1 ,a 2 ,...a m }为滤波器系数。 FIR数字滤波器和IIR数字滤波器都有专用的设计软件,给出数字滤波器的频率特性就可以求出滤波器的系数。下面是一个低通滤波器和一个高通滤波器的实例: 低通滤波器 高通滤波器 M=7 -0.02216042 -0.05067773 0.26974228 0.596165 0.26974228 -0.05067773 -0.02216042 N=7 0.02211721 -0.0509717 -0.26960272 0.59038 -0.26960272 -0.0509717 0.02211721 数字低通滤波的实现代码为: For i="0" To N-7 Y(i)=-0.02216042X(0)-0.05067773X(1)+0.26974228X(2)+0.596165X(3) +0.26974228X(4)-0.05067773X(5)-0.02216042X(6) Next 十分简单,但作用却与一个RC低通滤波器相当。