SURF的提取过程和代码逻辑过程

surf的特征检测和描述子的形成过程

  1. 首先进行极值点检测,构造hessian矩阵,用盒子滤波器近似相应的高斯模板,然后将hessian矩阵的行列式简化,构造高斯金字塔
  2. 图像大小不变,模板大小改变,尺度变化,根据层数和组数定义模板尺寸,同样进行26个点的对比,并设置行列式的阈值进行筛选。
  3. 计算特征点的主方向,以特征点为中心,计算半径6个尺度值内的的邻域的x,y方向的harr小波响应,然后对计算结束的值进行方差为2个尺度值的高斯加权,以特征点为中心,进行60度扇形滑动,计算最长矢量方向作为主方向。
  4. 最后构造特征描述子,在特征点周围取正方形,边长为20个尺度值,现将方向转至主方向,正方形分为16个子区域,每个区域再统计区域内25个像素的水平和垂直的harr特征,得到4个值,水平方向之和,垂直方向之和,垂直方向绝对值之和,水平方向绝对值之和。最后得到4* 4* 4= 64维向量。

surf特征提取和描述子形成的代码逻辑

  1. 开始将灰度图转为积分图像,通过hessian矩阵寻找特征点,遍历组和层初始化模板的大小,计算每个元素经过盒子滤波器之后的值,储存盒子滤波器的值,以及根据层数和组数进行尺寸的拓展,遍历元素,使每个元素和盒子滤波器进行卷积计算,最后得到每个元素的行列和迹,并行计算所有层的极值点,设置边界进行遍历元素,比较阈值后进行26个值的比较,判断极大值,对得到的结果再进行插值处理。
  2. 最后形成描述子,设置计算方向的半径范围,以及权值矩阵,还有邻域范围的权值矩阵,以及方向和邻域的高斯模板,设置harr小波的模板,从范围内找出特征点对应的最大尺寸,计算对应的20倍尺寸大小,重新定义4倍尺寸小波模板大小,计算加权后的特征点的dx和dy
  3. 转换坐标系为极坐标,滑动扇形区域,统计邻域的dx,dy的最大值并计算方向,旋转特征点转为左上角的坐标系,20个尺度的正方形窗口进行旋转,用2个尺度的harr小波模板,对邻域得到加权的dx,dy,最终得到64维的描述子
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

婉拒校花三次

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>