0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于FFT的信号补零操作

冬至子 来源:雷达系统工程师 作者:忠于梦想 2023-07-04 10:41 次阅读

在做信号处理的过程中,常遇到将信号补零后再做FFT等操作,比如频域脉冲压缩算法中,一般距离维PRT数据和脉压系数需要填零使长度相等且满足2的N次方,但是填零操作能做什么,不能做什么呢?

先说结论:补零不会改变频谱的样子(轮廓),也就是不会改变频率分辨率,但会减弱栅栏效应,提高频谱分辨率,也就是频谱采样点会增加,导致频谱采样间隔减小。注意,频谱分辨率和频率分辨率的区别。

示例中使用100Hz采样率产生两个单频点正弦信号,频率分别为11、12Hz;接着两者分别做FFT运算,以及两信号叠加后做FFT;

图片

图片

图片

图片

图片

图片

图片

图片

从以上各图可以看出,随着填零数量的增加,频谱的基本轮廓并未改变,只是变得更细腻(提高了频率颗粒度,即频谱分辨率),但是并不能提高频率分辨率,从图形上直观体现为主瓣尖峰宽度不变,图中11Hz和12Hz的正弦信号频谱峰值难以分辨;

从原理上分析,采样率100Hz,N=32点,则FFT频率分辨率fs/N=3.125Hz,则本例中1Hz的差异是无法分辨的,不断的填充0相当于在频域进行插值,随着填零数量的增加,32点的FFT信号频谱将不断逼近离散时间傅里叶变换(DTFT)的结果;反过来理解(将图按从下往上的顺序看),在N=32不变的情况下,填零后FFT相当于在32点信号DTFT结果中一个频域周期内进行等间隔采样而来。

提高频率分辨率需要增加观测时间(即有效数据长度),如需要分辨1Hz的频率,就需要至少1/1Hz=1s的有效观测时长;下面看看增加采样点数后频谱的变化,图中分别有11、12Hz两个频率的独立频谱和时域叠加后的频谱,可以看到在N大于128点开始,叠加信号主瓣上开始出现两个非相邻独立峰值点,N越大,区分越明显。单频信号的主瓣宽度随着N增加而变窄。

图片

图片

图片

图片

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FFT
    FFT
    +关注

    关注

    15

    文章

    434

    浏览量

    59299
  • PRT
    PRT
    +关注

    关注

    0

    文章

    9

    浏览量

    8747
  • 频谱仪
    +关注

    关注

    7

    文章

    339

    浏览量

    35985
  • 傅里叶变换
    +关注

    关注

    6

    文章

    437

    浏览量

    42562
收藏 人收藏

    评论

    相关推荐

    STM32的DSP库函数FFTarm_fft_bin_example里面,为什么.arm_fft_bin_data.c的数据都是隔一个位置补0的?

    ( arm_cfft_sR_f32_len1024, testInput_f32_10khz, ifftFlag, doBitReverse);里面是1024个,是不是因为只用了实部?所以隔位补零
    发表于 05-08 07:02

    Matlab关于FFT算法的编程及原理详细讲解

    附件1是关于直接运行FFT工具箱进行频谱分析,请大家可以参考对照,对理解FFT算法肯定有帮助!希望对大家有帮助!附件2是关于FFT算法的详细
    发表于 11-14 11:25

    BLE一次广播的字节数一定是32个吗,剩余自动补零

    小白问2个问题:BLE一次广播的字节数一定是32个吗,剩余自动补零?广播数据的位数对功耗有没有影响。广播数据的位数少,功耗会不会低一点?
    发表于 04-07 09:37

    有关fft做相关运算问题,求大神帮帮

    复共轭相乘用的什么方法??第二个是我的fft点数2048点,输入数据是1024点,我需要对输入数据进行补零,是在tb里面我的1024个数据输完后,在输入1024个,还是怎么补零?麻烦
    发表于 12-23 21:14

    调用STM32的DSP库做fft运算补零是为了补充虚部吗?

    在调用STM32的DSP库做fft运算的时候发现,要进行fft运算的输入数据在运算之前,需要对数据一隔一个补零,比如实际要进行fft运算的数据为1,2,3,4.需要变为1,0,2,0,
    发表于 02-22 07:16

    FFT返回的峰值频率总是

    问题…我已经有了示例FFT代码(CE018),但是当我应用来自ADC的真实信号时,FFT返回的峰值频率总是。问题似乎是因为ADC没有产生足够大的值来满足
    发表于 09-18 10:12

    为什么要用傅里叶变换?FFT你不知道的细节

    。这时FFT分辨率为12.5kHz,所以谱线同时经过1MHz和1.05MHz这两个频率点,对其做FFT结果如下: 从上图中可以看到,两个频点的幅值均与原信号一致,这也是补零
    发表于 06-20 16:07

    labview补零小功能

    labview补零小功能
    发表于 08-19 09:14

    应用FFT信号进行频谱分析

    实验 应用FFT信号进行频谱分析一、 实验目的1、在理论学习的基础上,通过本次实验,加深对快速傅里叶变换的理解,熟悉FFT算法及其程序的编写。2、熟悉
    发表于 05-10 10:00 64次下载

    理解FFT信号加窗原理及意义

    学习信号时域和频域、快速傅立叶变换(FFT)、加窗,以及如何通过这些操作来加深对信号的认识。 1. 理解时域、频域、FFT 傅立叶变换有助于
    发表于 11-16 18:07 19.3w次阅读
    理解<b class='flag-5'>FFT</b>和<b class='flag-5'>信号</b>加窗原理及意义

    基于FFT的正弦信号频率估计算法

    为了进一步提高加性高斯白噪声背景中正弦信号的频率估计精度,提出了一种新的基于插值快速傅里叶变换( FFT)的正弦信号频率估计算法。首先,对Ⅳ点正弦采样序列进行等长度时域补零延长,再进行
    发表于 12-29 16:56 5次下载

    数字信号处理 FFT分析信号频谱

    在DFT谱分析中,当DFT点数N大于数据本身的实际点数L时,相当于在数据后面补上了L-N个0再做DFT,称为“补零DFT“。
    的头像 发表于 05-07 14:09 1.4w次阅读
    数字<b class='flag-5'>信号</b>处理 <b class='flag-5'>FFT</b>分析<b class='flag-5'>信号</b>频谱

    FFT帮你快速定位干扰信号来源

    信号分析与处理中,FFT可以将时域信号转换至频域,以获得信号的频率结构、幅度、相位等信息。正确使用FFT功能可以帮助工程师快速定位干扰
    的头像 发表于 08-27 16:56 2182次阅读
    <b class='flag-5'>FFT</b>帮你快速定位干扰<b class='flag-5'>信号</b>来源

    信号基础:频域、时域、FFT和加窗

    学习信号时域和频域、快速傅立叶变换(FFT)、加窗,以及如何通过这些操作来加深对信号的认识。
    的头像 发表于 04-11 14:02 2831次阅读

    傅里叶变换补零到底有什么用,什么时候需要补零呢?

    我们知道,快速傅里叶变换 (FFT) 是信号处理的重要数学工具。一般而言,n点信号的离散傅里叶变换 (DFT) 的变换结果(频域)也是n个数据点。
    的头像 发表于 08-09 14:46 1.2w次阅读
    傅里叶变换<b class='flag-5'>补零</b>到底有什么用,什么时候需要<b class='flag-5'>补零</b>呢?