TI中文支持网
TI专业的中文技术问题搜集分享网站

关于C6657 FFT 与 快速卷积

本人正在用C6657做图像识别项目,现在遇到了实时性的瓶颈。

现需要做快速卷积(卷积核心为复数 (单精度)),和频域分析 需要做FFT

图像大小:640*480 (256级灰度图)

用TI的库实现

这两种算法都耗时几十毫秒,是我用法错了吗?还是硬伤呢?请TI员工解答

Andy Yin1:

dsplib中FFT模块有标准c及基于C66x优化的,请确定调用优化的函数,另外确认工程属性的优化选项配置-o3

jimmy cui:

回复 Andy Yin1:

你好ANDY YIN,感谢您的回复。

》》dsplib中FFT模块有标准c及基于C66x优化的,请确定调用优化的函数,另外确认工程属性的优化选项配置-o3

可是DSPLIB里的FFT只是一维的FFT,我要做图像的FFT,我需要每行每列调用一维的FFT来完成吗?这样的效率不是很低吗?

jianwen tong:

回复 Andy Yin1:

你好,我在dsp6455中调用官方的fft库函数DSP_fft16x16_i和DSP_fft16x16r_i计算一个信号的FFT,,出来的结果都有问题;我的原始输入数据是8bit AD采样的信号,有以下几个问题:

1.输入时,数据是否一定要是小数,然后用库函数转换成Q.15格式;

2fft输出的结果是不是正常顺序的,还是需要进行比特位反转;

最好能给个例程,万分感激!

jimmy cui:

回复 jianwen tong:

 您好!

您说的那两个函数我还没有调用过,不过我用过官方提供的DSPF_sp_fftSPxSP函数,刚开始试用时也是发现跟MATLAB的结果不一样,后来发现,输入的数组要是复数,包括实部和虚部,如:

你要做{1,2,3,4,5,6,7,8}的FFT,你需要把输入数组改成{1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0} 数组中的“0”就是原数组的虚部!

不知道我这个回答帮不帮到你,但愿可以!

jimmy cui:

关于FFT ,本人总结了一些,请参考

http://www.deyisupport.com/question_answer/dsp_arm/c6000_multicore/f/53/t/79279.aspx

jimmy cui:

回复 jianwen tong:

 您好!

您说的那两个函数我还没有调用过,不过我用过官方提供的DSPF_sp_fftSPxSP函数,刚开始试用时也是发现跟MATLAB的结果不一样,后来发现,输入的数组要是复数,包括实部和虚部,如:

你要做{1,2,3,4,5,6,7,8}的FFT,你需要把输入数组改成{1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0} 数组中的“0”就是原数组的虚部!

不知道我这个回答帮不帮到你,但愿可以!

jianwen tong:

回复 jimmy cui:

搞定了,谢谢你!

赞(0)
未经允许不得转载:TI中文支持网 » 关于C6657 FFT 与 快速卷积
分享到: 更多 (0)