读书人

如果提高SIFT算法的速度,该怎么解决

发布时间: 2012-02-09 18:22:27 作者: rapoo

如果提高SIFT算法的速度
本人最近学习使用SIFT算法进行图像匹配,主要资料都来源于www.vlfeat.org。本人按vlfeat的代码和介绍进行操作,先生成一个SIFT filter ,然后开始生成每一个分组。
且每用vl_sift_process_first_octave()或vl_sift_process_next_octave() 生成一个分组都会直接在分组中用vl_sift_detect()检测关键点 ,然后用 vl_sift_calc_keypoint_orientations()获得关键点的方向,随后计算每个关键点在每个方向上的特征描述并存入一个数组中保存。
然后用vl_sift_process_next_octave() 获得下个分组,并在下个分组中进行以上操作,直到所有关键点的特征描述都获得并存入数组中。


最后我能成功提取到所有关键点的特征描述,并成功实现了图像关键点匹配,但是这个方法时间耗费实在太长。有的图我就能找到并记录3000个左右的关键点特征描述,处理一张图片居然要20秒左右!!!求高手指点下,如何改进能较大的提高速度。谢谢了。。。。。。。。



[解决办法]
据说sift最慢的部分是做高斯卷积.
[解决办法]
SURF算法就是SIFT的快速算法,OpenCV有实现。
[解决办法]
SIFT特征点的慢是主要是因为多尺度的原因吧?
[解决办法]
你可以少几个尺度求极点。

读书人网 >图形图像

热点推荐