特征点匹配(SIFI)
1.SIFI
https://blog.csdn.net/weixin_38404120/article/details/73740612(参考了这个作者的内容)
结合书上加博客的内容进行理解;
求取SIFI特征的步骤:
首先要对图像归一化,然后将图像扩大为原来的两倍,再滤波。
1.检测尺度空间的极值
1.1 首先不同尺度空间就是原来图像经过不同高斯滤核的高斯函数所形成的图像;(注意高斯函数有好多很好的性质)
1.2 那么为什么要从不同的尺度空间的寻找极值呢?
无论人眼观测照片的距离有多远,只要能辨认出物体关键的轮廓特征,那就可以大致知道图像所表达的信息。
计算机也一样,高斯卷积之后,图像虽然变模糊了。但是整体的像素没有变,依然可以找到灰度值突变的点.
(整体像素都经过了一个高斯函数的加权求值) 就是说图像虽然模糊了,但是你想要的特征点依然存在,却解决了其他的一些问题(比如说干扰特征点的提取)
1.3 根据尺度空间构建高斯金字塔核DOG金字塔
比较一下尺度空间和高斯金字塔?
(1)“尺度空间表达”在所有尺度上具有相同分辨率,而“图像金字塔化”在每层的表达上分辨率都会减少固定比率。
(2)“图像金字塔化”处理速度快,占用存储空间小,而“尺度空间表达”刚好相反
那么将两者融合起来的话,就得到了LOG图像,高斯拉普拉斯变换图像。其步骤是:先将照片降采样,得到了不同分辨率下的图像金字塔。再对每层图像进行高斯卷积。这样一来,原本的图像金字塔每层只有一张图像,而卷积后,每层又增加了多张不同模糊程度下的照片
但是LOG图像不是我们想要的,我们要的是DOG图像(高斯差分图像); 这里有个问题为什么一定需要DOG图像而LOG就不可以呢。
构造高斯差分图像的步骤是:在获得LOG图像后,用其相邻的图像进行相减,得到所有图像重新构造的金字塔就是DOG金字塔;
找到DOG图像之后,下面在进行寻找极值点;
当得到DOG金字塔后,我们接下来要做的是寻找DOG极值点。每个像素点与其周围的像素点比较,当其大于或者小于所有相邻点时,即为极值点。
注意:不仅仅是同一张图的像素找极值点(这里的极值点是针对临近的图形的所有像素的极值点)
这里找的极值点在精度上满足了,但我们找到的点都是我们想要的吗?
极值点有可能是 是噪点 或者是边缘轮廓带来的灰度值的突变;
结合边缘的性质,利用Hession矩阵求曲率;(harris)
下面找极值的方向
这里 说出现第二峰值 这个问题,我不是很清楚;
下面进行关键点的描述
接下来的要做的是:关键点的描述,即用一组向量将关键点描述出来
1.将原图像x轴转到与主方向相同的方向
2.,再以特征点为中心,在旋转后的图像中取一个mσBp x mσBp大小的图像区域。并将它等间隔划分成Bp X Bp个子区域,每个间隔为mσ像元(没有理解)
3.在每子区域内计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值,形成一个种子点。与求特征点主方向时有所不同,此时,每个子区域的梯度方向直方图将0°~360°划分为8个方向范围,每个范围为45°,这样,每个种子点共有8个方向的梯度强度信息。由于存在4X4(Bp X Bp)个子区域,所以,共有4X4X8=128个数据,最终形成128维的SIFT特征矢量。同样,对于特征矢量需要进行高斯加权处理,加权采用方差为mσBp/2的标准高斯函数,其中距离为各点相对于特征点的距离。使用高斯权重的是为了防止位置微小的变化给特征向量带来很大的改变,并且给远离特征点的点赋予较小的权重,以防止错误的匹配
有很多内容都是参考那个博主的,主要是自己理解,目前理解了一点。
特征点匹配(SIFI)相关推荐
- 特征点匹配+特征检测方法汇总
特征点匹配+特征检测方法汇总 特征提取与匹配---SURF:SIFT:ORB:FAST:Harris角点 匹配方法 匹配函数 1. OpenCV提供了两种Matching方式: • Brute-for ...
- SIFT特征点匹配中KD-tree与Ransac算法的使用
转自:http://blog.csdn.net/ijuliet/article/details/4471311 Step1:BBF算法,在KD-tree上找KNN.第一步做匹配咯~ 1.什么是KD-t ...
- 模板匹配,特征点匹配-全
cnn网络: superpoint 18年的, https://github.com/magicleap/SuperPointPretrainedNetwork cnn图像匹配:权重5m torch ...
- 基于特征点匹配的自适应目标跟踪算法
基于特征点匹配的自适应目标跟踪算法 2016-01-29 13:11 摘 要:由于实际场景复杂多变,目标在运动过程中往往会出现形变.遮挡等问题,增加了跟踪的难度.为了解决上述问题,提出一种基于特征点匹 ...
- OpenCV之feature2d 模块. 2D特征框架(2)特征描述 使用FLANN进行特征点匹配 使用二维特征点(Features2D)和单映射(Homography)寻找已知物体 平面物体检测
特征描述 目标 在本教程中,我们将涉及: 使用 DescriptorExtractor 接口来寻找关键点对应的特征向量. 特别地: 使用 SurfDescriptorExtractor 以及它的函数 ...
- CoSENT:特征式匹配与交互式匹配有多大差距?
©PaperWeekly 原创 · 作者 | 苏剑林 单位 | 追一科技 研究方向 | NLP.神经网络 一般来说,文本匹配有交互式(Interaction-based)和特征式(Representa ...
- 图像配准之特征点匹配的思考
最近赶时髦,看了一些智能优化算法如蚁群算法,还有机器学习的一些东西,就想着怎么把这些先进的东西用在图像配准中.头脑风暴了一下,觉得在已经检测到两幅图像的特征点的基础上,就如何对它们进行匹配似乎有优化的 ...
- 基于图像特征点匹配的三维立体重建
一.图像特征点检测与匹配 以下内容参考科学出版社康莱老师的<基于图像点特征的多视图三维重建>和华中科技大学王跃嵩的硕士论文<多视图立体匹配三维重建方法> 1.图像特征点检测 确 ...
- MATLAB--数字图像处理 特征点匹配
混乱场景目标图像检测(特征点匹配) 代码(从大佬那copy的) boxImage = imread('car2_1.png'); sceneImage = imread('car2.jpg');box ...
- python opencv图片拼接、特征点匹配
一.算法目的: 在同一位置拍摄的两幅或者多幅图像是单应性相关的的,使用该约束将很多图片缝补起来,拼成一个大的图像来创建全景图像.两张图片的拼接必须首先找到相同特征,也就是说两张照片必须要有重叠的部分才 ...
最新文章
- PyTorch 数据并行处理
- 打造新华社「AI合成主播」的“分身术”为何物?
- 【设计模式】访问者模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )
- java连接sqlserver2008_java连接sqlserver2008驱动包
- RANSAC与 最小二乘(LS, Least Squares)拟合直线的效果比较
- BeetleX之Websocket协议分析详解
- 祝贺!王小云院士连获两项国际大奖
- Redmi 卢伟冰:要做就做真旗舰 绝不通过简配压低成本
- 深入理解定时器系列第二篇——被誉为神器的requestAnimationFrame
- 操作SD卡,获取文件目录及文件工具类Android,listView
- JavaScript函数的两种声明方式(4)
- mysql复制(高可用架构方案的基础)
- 【算法笔记+POJ3461】Oulipo(字符串hash模版)
- Rockchip Android12 Codec2 插件 多线程实现代码
- input函数使用及运算符
- Postgresql 学习记录,模式,分区表,触发器,事务,窗口函数,视图,建表,约束等
- 2022百度大数据开发工程师实习面试经历
- 济南市全国计算机二级,济南市2019上半年计算机二级考试报名时间|网上报名入口【12月19日9:00开通】...
- 基于拉丁超立方抽样的风,光,负荷场景生成方法 风电功率场景生成 ,光伏功率场景生成,负荷场景生成
- 什么蓝牙耳机适合学生党?内行推荐四款适合学生党的蓝牙耳机