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

2019-07-14 14:03发布

在调用STM32的DSP库做fft运算的时候发现,要进行fft运算的输入数据在运算之前,需要对数据一隔一个补零,比如实际要进行fft运算的数据为1,2,3,4.需要变为1,0,2,0,3,0,4,0才能运算。官方找到资料里对这方面的描述只有一句:All the signal samples must be 32-bit data containing the 16-bit real part followed by the 16-bit imaginary part (in the little Endian order: imaginary_real).而官方库里面的fft运算函数只有cfft,只能进行复数的fft运算,这里的补零是为了补充虚部吗?还做了一个测试,就是将补零数据放到实际采样数据的前面,变为0,1,0,2,0,3,0,4,如果补零是为了补充虚部的话,这里虚部实部对调了,但是计算出来的结果是一致的。想知道数据补零的正真原因,求高人指点迷津,谢谢啦
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
gan5482
1楼-- · 2019-07-15 12:21
guanrui1202 发表于 2019-2-22 12:38
FFT返回的结果是什么?是不是虚部和实部的均方根。

FFT返回的是结果的实部和虚部,求模需要调用另一个函数
guanrui1202
2楼-- · 2019-07-15 13:06
单从英文翻译的角度是32位中,前半部分放实部后半部分放虚部。

一周热门 更多>