CV笔记|图像处理:Harris特征点检测器——兴趣点检测

1 基础知识

1.1 特征点检测

在拼图游戏中,我们一般从有明显特征的碎片入手,因为区分度比较高的特征片段提供了图像丰富的信息,更容易用于定位。在计算机视觉和图像处理中,使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征称为特征点检测

特征点检测广泛应用于目标匹配、目标跟踪、三维重建等应用中,在进行目标建模时会对图像进行目标特征的提取,常用的有颜色、角点、特征点、轮廓、纹理等特征。角点特征是图像中较好的特征,比边缘特征更好地用于定位。

1.2 角点

在现实世界中,角点对应于物体的拐角,道路的十字路口、丁字路口等。从图像分析的角度来定义角点可以有以下两种定义:

  1. 角点可以是两个边缘的角点;
  2. 角点是邻域内具有两个主方向的特征点。

人眼对角点的识别通常是在一个局部的小区域或小窗口完成的。

  1. 如果这个特定的窗口在图像各个方向上移动时,窗口内图像的灰度没有发生变化,那么窗口内就不存在角点,如左图,表示一个平坦区域
  2. 如果窗口在某一个方向移动时,窗口内图像的灰度发生了较大的变化,而在另一些方向上没有发生变化,那么窗口内的图像可能是一条直线的线段,如中图,表示一个边缘特征(Edges);
  3. 如果在各个方向上移动这个特征的小窗口,窗口内区域的灰度发生了较大的变化,那么就认为在窗口内遇到了角点(Corners),如右图。

图示:平坦区域、角点、边缘特征

1.3 图像梯度

“灰度/像素值发生很大变化”这一现象可以用图像梯度进行描述。在图像局部范围内,图像梯度越大表示该局部内像素值变化越大(灰度的变化率越大)。图像的梯度在数学上可用微分或者导数来表示。对于数字图像来说,相当于是二维离散函数求梯度,并使用差分来近似导数: G x ( x , y ) = H ( x + 1 , y ) − H ( x − 1 , y ) G_x(x,y)=H(x+1,y)-H(x-1,y) Gx(x,y)=H(x+1,y)H(x1,y) G y ( x , y ) = H ( x , y + 1 ) − H ( x , y − 1 ) G_y(x,y)=H(x,y+1)-H(x,y-1) Gy(x,y)=H(x,y+1)H(x,y1) 在实际操作中,对图像求梯度通常是考虑图像的每个像素的某个邻域内的灰度变化,因此通常对原始图像中像素某个邻域设置梯度算子,然后采用小区域模板进行卷积来计算,常用的有Prewitt算子、Sobel算子、Robinson算子、Laplace算子等。

2 Harris角点检测基本原理

Harris角点检测是一种常用的、较为基础的特征点检测方法,可用于判断角点、边缘、平滑区域。Harris角点检测原理是利用移动的窗口在图像中计算灰度变化值,其中关键流程包括转化为灰度图像、计算差分图像、高斯平滑、计算局部极值、确认角点。

2.1 建立数学模型

通过建立数学模型,判断哪些窗口会引起较大的灰度值变化。

让一个窗口的中心位于灰度图像位置 ( x , y ) (x,y) (x,y),将该处像素灰度值记为 I ( x , y ) I(x,y) I(x,y) ,如果让该窗口在点 ( x , y ) (x,y) (x,y)处平移 ( Δ x , Δ y ) (\Delta x,\Delta y) (Δx,Δy)到新的位置 ( u , v ) (u,v) (u,v) ,新位置处的像素灰度值就是 I ( u , v ) I(u,v) I(u,v) ∣ I ( u , v ) − I ( x , y ) ∣ |I(u,v)-I(x,y)| I(u,v)I(x,y)就是窗口移动引起的灰度值的变化值。

w ( x , y ) w(x,y) w(x,y) ( x , y ) (x,y) (x,y)处的窗口函数,其表示窗口内各像素的权重,为了简化模型可以把窗口内所有像素的权重都设为1,即一个均值滤波核。也可以把 w ( x , y ) w(x,y) w(x,y)设定为以窗口中心为原点的高斯分布,即一个高斯核。如果窗口中心点像素是角点,那么窗口移动前后,中心点的灰度值变化非常大,所以该点权重系数应该设大一点;离窗口中心(角点)较远的点灰度变化比较小,将权重系数设小一点。

对于图像 I ( x , y ) I(x,y) I(x,y),当中心位于点 ( x , y ) (x,y) (x,y)处的窗口向各个方向平移 ( Δ x , Δ y ) (\Delta x,\Delta y) (Δx,Δy)时,为描述像素灰度值的变化,引入 E ( x , y ) E(x,y) E(x,y)
E ( x , y ; Δ x , Δ y ) = ∑ ( x , y ) w ( x , y ) × [ I ( x + Δ x , y + Δ y ) – I ( x , y ) ] 2 E(x,y;\Delta x,\Delta y) = \sum_{(x,y)}w(x,y) \times [I(x+\Delta x,y+\Delta y) – I(x,y)]^2 E(x,y;Δx,Δy)=(x,y)w(x,y)×[I(x+Δx,y+Δy)I(x,y)]2

其中, w ( x , y ) w(x,y) w(x,y)是以点 ( x , y ) (x,y) (x,y)为中心的窗口,为加权函数,它既可是常数,也可以是高斯加权函数。
左:均值滤波核;右:高斯核

若窗口内是一个角点,则上式中平方项会很大,相应地, E ( x , y ) E(x,y) E(x,y)的计算结果将会很大。

根据泰勒展开,对图像 I ( x , y ) I(x,y) I(x,y)在平移 ( Δ x , Δ y ) (\Delta x,\Delta y) (Δx,Δy)后进行一阶近似:

I ( x + Δ x ,

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值