概述
SIFT特征提取:
角点检测:
Morvavec角点检测算子:基于灰度方差的角点检测方法,该算子计算图像中某个像素点沿水平、垂直方向上的灰度差异,以确定角点位置
Harris角点检测算子:不止考察水平,垂直4个方向上的灰度差异,而是考察了所有方向上的灰度差异,并且具有旋转不变性和部分放射变换的稳定性。
Shi-Tomasi角点检测算子:通过考察自相关矩阵M的两个特征值中的较小者来确定角点,大部分情况下,有比Harris更好的检测效果。
FAST算子:通过考察像素点与其邻域内16个像素点的差异来确定特征点(角点),并且通过分割测试算法对检测效率做了极大的提升。
SIFT算子(Scale Invariant Feature Transform):尺度不变特征变换(尺度不变:按比例缩放)
基于尺度空间的,对图像缩放,旋转,甚至仿射变换保持不变性的图像局部特征描述算子。SIFT提取图像的局部特征,在尺度空间中寻找极值点,并提取出其位置,尺度,方向信息。
算法实质:在不同的尺度空间中查找关键点(特征点),计算关键点的大小,方向,尺度信息,利用这些这些信息组成关键点对特征点进行描述,sift所查找的关键点都是十分突出,不会因为光照,仿射和噪声等因素而变换的稳定的特征点。匹配的过程就是匹配关键点(特征点)的过程。流程如下:
参考博客:https://blog.csdn.net/hxg2006/article/details/80398701
Dense-SIFT
图像识别问题之所以采用密集采样,是因为密集采样后的点,会通过训练后的分类器进行进一步的筛选。在研究目标图像表示或者理解时,dense sift 更好,因为即使密集采样的区域不能够被准确匹配,这块区域也包含了表达图像内容的信息。
sif提取特征
输入:一张图像,设置的长宽的最大值
每次移动长度的参数
1.图像转换为double类型,如果为rgb,先转成灰度图像,再转换为double类型,否则直接转为double类型
2.读取图像的长宽,是否大于输入的图像的最大值,如果大于,则按比例缩小图像
I = imresize(I, maxImSize/max(im_h, im_w), 'bicubic');
[im_h, im_w] = size(I);
3.使用稠密sift提取特征
1)将三维转换成两维:i=mean(i,3)
2)归一化:i=i /max(i(:)) max(i(:))所有点的最大值
转载于:https://www.cnblogs.com/shuangcao/p/11556126.html
最后
以上就是犹豫皮带为你收集整理的SIFT提取特征的全部内容,希望文章能够帮你解决SIFT提取特征所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复