数字信号处理
ysc_11
这个作者很懒,什么都没留下…
展开
-
数字信号处理2.3.2公式证明
原创 2021-01-09 09:52:36 · 312 阅读 · 0 评论 -
蝶形图的画法(使用蝶形图画n点基2DIT-FFT与DIF-FFT运算流图)
在进行DIT-FFT将N点序列DFT拆分成M次时需要应用到蝶形图,在这里我将详细的描述蝶形图该如何绘制这里将有N=16点进行举例①首先我们得得到初始时序序列的排序。即x(0−15)x(0-15)x(0−15)的时域序列的排序。这里推荐使用二进制高位到低位进位法进行判决。即从最高位开始加1,若最高位已经是1了向次高位进位,直到加满。如:那么我们已经明白该如何进行最初的时域序列的排序了,接下来可以先画上第一次的蝶形运算。如图:这时我们需要知道蝶形图的下脚的C为多少,这里引进一个公式(公式在这就不原创 2021-01-08 15:15:16 · 41036 阅读 · 3 评论 -
FFT快速傅里叶算法——基2FFT时域抽取基本原理解析
学习数字信号处理时学到如果直接对有限长的序列进行N点DFT,那么其需要进行N2N^2N2次的复数乘以及复数加运算,其算法复杂度十分高,将会浪费大量时间在计算过程中。为此研究了FFT(快速傅里叶算法)这里给大家介绍两种:时域抽取法(DIT-DFT)和频域抽取法(DIF-FFT)。时域抽取法:设有一序列x(n)x(n)x(n)的长度为N,且满足N=2MN=2^MN=2M,M为自然数。按nnn的奇偶性分成两个N/2N/2N/2的子序列。x1(r)=x(2r)r=0,1,2…N/2−1x_1(r)=x(2r)原创 2021-01-08 14:41:04 · 7031 阅读 · 0 评论 -
MATLAB实现矩阵计算进行循环卷积计算(矩阵法)
在学习数字信号处理时遇到需要进行高点数的循环卷积处理时,不可能进行人工计算。这里借用matlab进行矩阵循环卷积。这里放出我自用的matlab函数。下面展示 matlab源代码。function yn=circonv(hn,xn,N)%先要根据N点数的长度对矩阵进行补零%然后对hn进行处理获得其循环矩阵hn_f%最后将hn_f与xn相乘获得yn%YSC 2021.1.7 数字信号处理x1 = length(hn); %先获得hn与xn的长度值x2 = length(xn);hn(x1+原创 2021-01-07 20:49:17 · 4392 阅读 · 2 评论 -
数字信号处理:用DFT进行谱分析的误差问题
在实际中用DFT,FFT对信号进行谱分析时,要对信号进行采样和截断,由此可能引起分析误差。分别会产生:混叠、栅栏效应以及截断效应。下面对这三种情况进行详细讨论;①混叠现象:在采样过程中采样速率Fs必须满足采样定理(Fs>=Fc Fc为信号的最高频率)若不满足会在w=Π附近发生频谱混叠现象。一般解决方法:采样前进行预滤波,滤波高于折叠频率Fs/2的频率成分。②栅栏效应:N点DFT是在频率区间[0,2Π]上对时域离散信号的频谱进行N点等间隔采样,而采样点之间的频谱是看不见的。就像栅栏之间一样。为了原创 2021-01-07 19:37:19 · 12810 阅读 · 0 评论