FFT卷积是什么?FFT卷积基本过程描述

信号与系统基础之卷积定理:频域乘积相当于时域卷积,千万不要问我什么,可以去看看教材上的公式推导。
运算效率对比分析,使用fft快速卷积法(实线)明显比时域卷积乘法次数要少,一般而言64点以上,fft法就具有优势。
fft卷积基本过程描述:设信号x长度n,卷积系数h长度为k,则时域卷积结果长度为l=n+k-1,为了采用高效的基2型fft算法,需要将信号和系数均在末尾补零扩展到最接近的2的n次方长度m(比如n=32,k=16,则l=32+16-1=47,最近的2的n次方为64),然后分别做m点fft变换到频域后再复乘,最后ifft变回时域。
从上理论就讲说这么多,更详细的可看看相关专著书籍,接下来用matlab仿真来看看运算过程的中间环节是什么样;
clc;clear;%%设定信号参数t=10e-6; %信号长度:usf0=3e6; %信号1:3mhzf1=8e6; %信号2:8mhzfs=80e6; %信号采样率:mhzt=-t/2:1/fs:t/2-1/fs; %时间序列%加载fdatool设计的滤波器fir系数load(coef.mat);%滤波器频率响应freqz(coef,1,200,fs);%低通滤波器参数:3mhz带宽,截止频率4mhz,带外抑制80dbc
信号和变量长度
信号长度800,系数长度134,则卷积结果长度为800+134-1=933,因此需要补零扩展到1024点;
%生成信号:模拟采样过程if_sig=cos(2*pi*f0*t)+cos(2*pi*f1*t);%加入白噪声snr=30dbif_sig=awgn(if_sig,30,'measured'); % if_sig=round(8192*if_sig); %中频信号plot(if_sig);title('原始信号');
plot(coef);title('滤波器系数的时域');coef_fft = fft(coef,1024);len=length(coef_fft);f_x=(0:len-1)*fs/len;%频率序列f_x=f_x/1e6;plot(f_x(1:len/2+1),10*log10(abs(coef_fft(1:len/2+1))));title('滤波器系数的频域');xlabel('频率/mhz');ylabel('幅度/db');
此处留一个坑,下回继续
sig_fft = fft(if_sig,1024);plot(f_x,20*log10(abs(sig_fft)));title('原始信号做1024点fft');xlabel('频率/mhz');ylabel('幅度/db');
%频域相乘,注意此处为复数乘法conv_fft = sig_fft.*coef_fft;plot(f_x,20*log10(abs(conv_fft)));title('信号和系数频域乘积后');xlabel('频率/mhz');ylabel('幅度/db');
上图为频域滤波后结果,可以看到8mhz的带外信号被滤除,剩下3mhz的带内信号;接下来就是变换回时域波形。
%ifft变换还原到时域fft_filter_out = ifft(conv_fft);plot(fft_filter_out);title('fft卷积频域滤波后的信号波形');
为了方便对比,下边给出通过时域卷积方式的运算结果
%时域卷积方式滤波conv_filter_out = conv(if_sig,coef);plot(conv_filter_out);xlim([1,1200]);title('时域卷积方式滤波后的信号波形');
从上面时域处理、频域处理的结果可以看到,两者处理后时域处理的结果和频域处理后的前933个点的结果相同。

[组图]晶振的几种接法
良胜温度保险丝:防火卫士
Arbe宣布推出用于量产感知雷达的准量产芯片组
如何使用区块链在供应链数据上进行协作
弥补TD-SCDMA短板 RF芯片国产化在即
FFT卷积是什么?FFT卷积基本过程描述
华为任正非表示未来两年华为会减产估计会下降300亿美元
森林草原火灾视频监控,就是在不断的实践中完善方针策略
协作机器人在教育领域的应用
4层以上的PCB设计,如何选取合适的叠层方案?
iPhone4s使用教程_iPhone4s新手激活教程
联盟表扬-获Matter年度优秀赋能者奖,展现设计支持实力和成果
国星光电与华为联合创新中心挂牌成立
独立一体化芯片设计的性能与特征
关于CPU深夜狂飙的小故事
SIM卡手机卡要被取消了_中国联通宣布正式启动eSIM业务
深度测评东风A9
到2024年,太阳能容量跟踪支架的安装将超过150GW
锂离子电池的平准化度电成本(LCOE)已下跌35%
开箱即用!教你玩转CodeArts Board!