matlab的很简单,都是一些简单的命令。文件中的readme也介绍的很清楚。这里就不赘述了
但说关键的sift被 David Lowe 封装成了一个exe文件。头疼啊!
而且发现c代码似乎只能处理pgm格式的图片
matlab中则是仅仅能处理1channels的灰度图片。
实验总我大部分用到的是3层的rgb图片,因此对源代码做了小小的改动
把原先的:
[html] view plain copy
fwrite(f, image', 'uint8')
换成了:
[html] view plain copy
if(z == 3)
image = rgb2gray(image)
fwrite(f, image', 'uint8')
else
fwrite(f, image', 'uint8')
end
这样就不会局限图片的格式(matlab中的代码)
程序中发现有很多错检点,需要提出。
本来想根据距离去判断,但如果过检测点很多,那么这样的判断计算量将会非常大。
网上看了一些算法,感觉都不是很好,不能满足项目的要求。
这段matlab是个空壳,其核心是调用siftWin32.exe。(对windows)Q1 这是pgm文件的格式要求。可以自己查去
Q2 !表示后面执行的命令是在系统shell里执行的。对windows来说就是命令提示符
Q3 那是可执行程序siftWin32.exe需要的参数
Q4 那是可执行程序siftWin32.exe需要的
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)