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.

关于dsp上做图像sift特征提取



大家好,小弟近来在做dsp上的sift特征提取,自己实现的纯c代码,600*400的图片pc端运行花费4秒。

移植到c6748上运行,做了一些优化(编译选项设置,使用内联函数,循环优化等)后,仍然要花费2分钟,这个速度实在是太慢了。

由于sift算法数据量较大,为了有足够的空间,我运行在外扩RAM(ddr2)中,这个应该对速度有一定影响。

现在不知道在什么地方改进,把经常调用的函数放在片内RAM中运行应该会快一点吧?

请问一下有做过相关的工作的吗?希望能给一些改进的建议,在此非常感谢。

  • SIFT的第一步是Gaussian金字塔,Gaussian这块算法本身的优化就要花很长的时间

    至于后面需要提取什么样的特征,需要根据实际情况确定

    根据你说“600*400的图片pc端运行花费4秒”,这个有点离谱了,算法本身应该就需要优化

    算法本身的优化到适应DSP的代码及优化,是一个循序渐进的过程

    以上希望对你有用

  • 非常感谢你的回复。我会进一步修改我的算法。

    我还想请教一下,cmd文件中,我把所有的代码和数据放在了外扩DDR2中,而不是片内RAM,片内RAM放不下,这是否会影响到速度,DDR2貌似主频比片内RAM低。如果我把部分频繁调用的代码和数据放入片内RAM,是否能适当提高速度?

  • 答案是肯定的