This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于C6657 FFT 与 快速卷积

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

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

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

用TI的库实现

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

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

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

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

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

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

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

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

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

  •  您好!

    您说的那两个函数我还没有调用过,不过我用过官方提供的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”就是原数组的虚部!

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

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

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

  •  您好!

    您说的那两个函数我还没有调用过,不过我用过官方提供的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”就是原数组的虚部!

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

  • 搞定了,谢谢你!