当前位置: 首页 > news >正文

MATLAB仿真多相滤波抽取与插值的频谱变化(可视化混叠和镜像)

MATLAB画图仿真多相滤波抽取与插值的频谱变化

可视化多速率信号处理抽取与插值的频谱变化

实信号/复信号

可视化混叠和镜像

目录

前言

一、抽取的基本原理

二、MATLAB仿真抽取运算

三、内插的基本原理

四、MATLAB仿真内插运算

总结


前言

        在多速率系统中增加信号采样率的运算叫做内插(Interpolation)或上采样(Up-sampling),降低采样率的运算叫做抽取(Decimation)或下采样(Down-sampling)。抽取和内插均会对信号本身和其频谱产生一定影响,需要通过加低通滤波器去除这种影响。本人在MATLAB软件上仿真了抽取和插值对频谱造成的影响,并在此记录一下,记录一是为了传播知识,二是方便自己回顾。


提示:以下是本篇文章正文内容,引用请附上链接!

一、抽取的基本原理

        所谓整数因子抽取,就是把原序列x(n)每隔 (D-1) 个点抽取一个点,组成一个新序列,即:

从频域看,抽取序列的频谱是原序列频谱D倍展宽后,按2π的整数倍位移并叠加而成。公式如下:

        为保证抽取后不丢失信息,应该保证抽取后信号的频谱不发生混叠,所以在抽取前对信号的频谱应该加以限制。所以在抽取前要先用一个数字低通滤波器(滤波器的带宽为π/D)进行滤波,使得满足:

        下面是2个示例:

图1   未低通滤波 2抽取造成频谱混叠
图2   加低通滤波 3抽取未造成频谱混叠

        为了提高运算速度,抽取滤波有多相结构,详见文章 多相滤波器MATLAB仿真---抽取&插值-CSDN博客 。

二、MATLAB仿真抽取运算

        抽取就以以下实信号为例说明:

fc=0;                  % 载波为0

Pn=1;                % 噪声功率

D=4;                  % 抽取因子

fs=120e6;          % 采样频率

K=100000;         % 采样点数

signal_SNR=20; % 信噪比

signal_f=6e6;      % 信号频率

原信号频谱如下图所示:

图3 抽取前120MHz采样速率信号频谱

不加低通滤波抽取后信号频谱如下:可见,噪底明显提高了,这就是因为频谱混叠了,与图1示意图类似。因为是4倍抽取,噪声频谱相当于叠加了4次,所以提高约10*log10(4)=6dB。虽然信号的频谱也会混叠,但由于其在可视化频率之外,显示不出来。

图4 不加低通滤波抽取后30MHz采样速率信号频谱

加低通滤波抽取后信号频谱如下,可见噪底明显降低了,不过带内的噪声抑制的没有带外多。所以在数字信号处理中,进行抽取运算的时候,不可避免地要加低通滤波器抗频谱混叠。为保证抽取后不丢失信息,应该保证抽取后信号的频谱不发生混叠,所以在抽取前对信号的频谱应该加以限制。所以是抽取前低通滤波,那采样频率自然就是抽取前的信号速率

图5 抽取低通滤波器
图6 加低通滤波抽取后30MHz采样速率信号频谱

下面是计算得到的信号功率,加滤波后功率减小,一方面是抑制了噪声,另一方面是通带内有纹波抖动导致信号掉了不到1dB。未加低通滤波噪底抬高但功率不变是因为频谱可视化范围随抽取因子变窄,类似于功率谱变大带宽变小乘起来功率不变。

三、内插的基本原理

        I倍插值是在x(n)的每两个点之间补 I-1 个0,再进行平滑滤波。完成插零功能的叫做内插器或上采样器。内插器的输出

从频域上看内插后信号频谱被压缩了 I 倍,公式如下:

为了能得到基带信号,需要通过低通滤波消除内插带来的镜像。低通滤波器的幅度响应为:

下面是示例:

图7 2倍内插频谱变化示例

为了提高运算速度,插值滤波也有多相结构, 详见文章 多相滤波器MATLAB仿真---抽取&插值-CSDN博客 。

四、MATLAB仿真内插运算

内插就以以下复信号为例说明:

fc=0;                  % 载波为0

Pn=1;                % 噪声功率

I=4;                    % 插值因子

fs=30e6;            % 采样频率

K=25000;          % 采样点数

signal_SNR=20; % 信噪比

signal_f=10e6;    % LFM信号带宽

原信号频谱如下图所示:

图8 内插前30MHz采样速率信号频谱

不加低通滤波内插后信号频谱如下:可见,整个频谱幅度明显降低了,这是因为插了0的,导致功率下降。因为是4倍内插,插0点数增加了4倍,所以幅度谱降低约10*log10(4)=6dB。另外,显然产生了4个镜像频率成分,这时产生的镜像频率就在可视化频率之内来了。

图9 不加低通滤波内插后120MHz采样速率信号频谱

加低通滤波内插后信号频谱如下,可见镜像频率明显被抑制了。所以在数字信号处理中,进行内插运算的时候,不可避免地要加低通滤波器抑制镜像频率。因为是内插后低通滤波,那采样频率自然就是内插后的信号速率

图10 内插低通滤波器
图11 加低通滤波内插后120MHz采样速率信号频谱

下面是计算得到的信号功率,需要注意的是由于插了几倍的0值,要想前后功率不变,记得在多相滤波时加一个乘积因子I。这里算出来一样是因为根据内插因子I对幅度进行了补偿。


总结

        抽取和内插均会对信号本身和其频谱产生一定影响,需要通过加低通滤波器去除这种影响。本人在MATLAB软件上仿真了抽取和插值对频谱造成的影响,可视化展现了出来。得出结论:在插值和内插处理操作时一定要加上一个低通滤波器。

相关文章:

  • TypeScript 进阶指南 - 使用泛型与keyof约束参数
  • spark简介和核心编程
  • spark-sql核心
  • 试一下阿里云新出的mcp服务
  • 鸿蒙动画与交互设计:ArkUI 3D变换与手势事件详解
  • 【字节跳动AI论文】Seaweed-7B:视频生成基础模型的高成本效益培训
  • 栈与队列习题分享(精写)
  • chrome无法访问此网站怎么回事 分享5种解决方法
  • 模拟集成电路设计与仿真 : PLL
  • CentOS DVD完整版与Minimal版的区别
  • 筛选条件在on和where中的区别(基于hivesql)
  • 数据结构·树
  • Upwork全球化战略:用“文化套利”收割国际客户
  • Spark-SQL核心编程
  • 无人机气动-结构耦合技术要点与难点
  • API:科技赋能,引领智能文字识别、身份认证与发票查验真伪变革
  • centos yum install environment-modules
  • 初识Redis · list和hash类型
  • 速卖通商品详情API接口:功能、应用与开发指南
  • 一文了解:北斗短报文终端是什么,有哪些应用场景?
  • 书法需从字外看,书法家、学者吴本清辞世
  • 央行等印发《关于金融支持广州南沙深化面向世界的粤港澳全面合作的意见》
  • 淡马锡辟谣:淡马锡和太白投资未在中国销售任何投资产品或金融工具
  • 左娅︱悼陈昊
  • 毕赣新作《狂野时代》入围戛纳主竞赛单元,易烊千玺舒淇主演
  • 人民日报整版聚焦:铭记二战历史,传承深厚友谊