人工特征之SIFT和HOG


计算机视觉相关的任务都需要先提取特征,然后基于所提取的特征做分类、分割、视觉问答等任务。现在主流的提取特征的方法,都是采用神经网络自动提取对任务起作用的特征,使用人工设计的特征已经成为过去时了。然而,笔者认为,对于每一个算法,找准它的细分领域,还是能够发光发热的,拿人工特征来说,比如当前任务为去除训练集中的相似图片,总不至于去收集一批新的数据,然后人工标注、训练模型等等步骤吧,所以,还是有必要了解一下传统的人工特征的。

1 SIFT(局部特征)

SIFT算法,全称为“Scale Invariant Feature Transform”,它可以用于检测图像中显著的、稳定的特征点,然后基于检测出的像素点所在的局部邻域,生成多维特征,该多维特征代表了对当前特征点的描述。

1.1 特征点检测

二维高斯函数定义如下,其中, σ \sigma σ表示标准差,
在这里插入图片描述
由信号处理相关知识可知,将图像函数与高斯函数卷积等同于将图像的频谱与高斯函数的傅里叶变换相乘,因为高斯函数的傅立叶变换仍然是高斯函数,因此这等同于对源图像进行了低通滤波,即平滑效果,而且, σ \sigma σ 值越大,滤波后的图像越模糊。
在这里插入图片描述
其中,对octave的解释可以参见如下一段话,

“In SIFT, an octave is the set of images generated by progressively blurring out an image. Scale level 5 means each octave will consist of 5 progressively blurred images.”

在得到DOG图像后,对于每一个octave的一组图像,查找所有的极值点,以下图为例,该极值点像素值大于局部8领域点和上下两个Scale的像素点,也就是说,定义一个极值点时,需要将当前像素点同9*2+8=26个像素值做比较。
在这里插入图片描述
在对所有的octave都执行上面的操作后,会得到很多的特征点,值得一提的是,这里空间尺寸较小的octave的特征点,需要映射到原图像上的对应坐标。

1.2 特征点描述

(1)对于每一个特征点,选取其 16 × 16 16\times16 16×

  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值