优酷网站建设视频教程集,句容网络推广,设置字体颜色的网站,燃烧学课程网站建设Harris角点是图像特征提取中最基本的方法#xff0c;本篇内容将详细分析Harris角点的定义、计算方法、特点。 一、Harris角点定义 在图像中#xff0c;若以正方形的小像素窗口为基本单位#xff0c;按照上图可以将它们划分三种类型如下#xff1a; 平坦区域#xff1a;在任… Harris角点是图像特征提取中最基本的方法本篇内容将详细分析Harris角点的定义、计算方法、特点。 一、Harris角点定义 在图像中若以正方形的小像素窗口为基本单位按照上图可以将它们划分三种类型如下 平坦区域在任何方向上移动窗口窗口内容变化都不大边缘在某一方向上移动窗口窗口内容变化较大如图中上下移动基本不变而左右移动时窗口内容变化较大角点在任何方向上移动窗口窗口内容变化都很大 从人类角度直观理解图像的关键特征点应该是那些与周围图像存在明显差异的点。 以灰度图为例其实就是该点的灰度值与周围点差别较大那么就可以通过计算其与周围点的灰度差值即导数来判断。
以像素窗口为基本单位时我们将这些与周围图像差异较大的小窗口称为角点用它们就可以代表图像中具有辨别性的、关键特征区域。
二、Harris角点计算方法
1. 计算窗口内容差异情况
角点是指与周围存在较大内容差异的像素窗口那么我们首先要给出小窗口与周围窗口的差异情况的计算方法在方向(u,v)上移动称之为窗口响应值E(u,v) E(u,v)∑x,yw(x,y)[I(xu,yv)−I(x,y)]2E(u,v)\sum_{x,y}w(x,y)[I(xu,yv)-I(x,y)]^2E(u,v)x,y∑w(x,y)[I(xu,yv)−I(x,y)]2 红色小窗口为原始窗口用I(x,y)表示绿色为移动后的窗口I(xu,yv)其中(u,v)其实便代表了移动的方向。w(x,y)代表了原始窗口中不同像素点的权重公式含义即为将移动前后每个像素的灰度值差求平方并根据各像素点权重求和作为两个窗口的内容差异Eu,v 2.窗口内容差异E 》由矩阵M决定
为了更方便的计算窗口在移动前后的响应值我们将Eu,v的公式进行一系列的数学变换首先是做二元泰勒展开 展开式前两项为0最后一项可以通过矩阵的形式表示为 E(u,v)≈[uv]M[uv]E(u,v) ≈ \begin{bmatrix} uv\end{bmatrix} M \begin{bmatrix} u \\ v \end{bmatrix}E(u,v)≈[uv]M[uv] M∑x,yw(x,y)[Ix2IxIyIxIyIy2]M\sum_{x,y}w(x,y)\begin{bmatrix}I_{x}^2I_xI_y\\ I_xI_yI_{y}^2\end{bmatrix}Mx,y∑w(x,y)[Ix2IxIyIxIyIy2] 根据公式我们发现E(u,v)的取值即窗口在不同方向(u,v)移动后的相对差异情况关键取决于矩阵M即不用关心方向(u,v)而是通过矩阵M就可以判断是否为角点IxI_xIx代表在x方向上的梯度 3.窗口内容差异E 》由矩阵M决定 》由特征值λ决定
通过矩阵M判断角点可以进一步简化为通过矩阵M的特征值λ来判断。
当M可以变化为对角矩阵时不能对角化的情况稍后说明E(u,v)最终结果为u2λ1v2λ2u^{2}λ_{1}v^{2}λ_{2}u2λ1v2λ2假设取值为常数c取1即有
E(u,v)[uv][λ100λ2][uv]u2λ1v2λ2E(u,v)\begin{bmatrix} uv\end{bmatrix} \begin{bmatrix}λ_{1}0\\0λ_{2}\end{bmatrix} \begin{bmatrix} u \\ v \end{bmatrix}u^{2}λ_{1}v^{2}λ_{2}E(u,v)[uv][λ100λ2][uv]u2λ1v2λ2 u2λ1v2λ21\frac{u^2}{λ_{1}}\frac{v^2}{λ_{2}}1λ1u2λ2v21 该方程的几何表示为椭圆如下 即当在以长短轴为方向的坐标系上椭圆边界线上为移动后具有相同响应值E(u,v)的点即当要让窗口移动后具有相同响应值内容差异沿短轴方向移动最短距离沿长轴移动需要的距离最长——代表短轴是梯度变化最快的方向长轴是梯度变化最慢方向 若二阶矩矩阵M不能直接对角化时我们可以将其转为以下形式 MR−1[λ100λ2]RMR^{-1} \begin{bmatrix}λ_10\\0λ_2 \end{bmatrix}RMR−1[λ100λ2]R 其中R为旋转矩阵即此时几何表示为发生了旋转的椭圆而长短轴依然代表梯度变化最慢和最快的方向 因此根据角点的定义可知——任何方向上都有较大梯度变化 》椭圆的长短轴都要短 》特征值λ1λ_{1}λ1、λ2λ_{2}λ2都要大 当λ1λ_{1}λ1、λ2λ_{2}λ2都大在任何方向梯度都大、E增加的快即为角点当λ1λ_{1}λ1、λ2λ_{2}λ2其中一个远比另一个大则说明在最快方向变化特快、同时有一个方向几乎不变这是边缘区域当λ1λ_{1}λ1、λ2λ_{2}λ2都很小在任何方向梯度逗笑、E变化的慢即为平坦区域 4.窗口内容差异E 》由矩阵M决定 》由特征值λ决定 》由计算R决定
R由特征值λ1λ_{1}λ1、λ2λ_{2}λ2计算得到公式为 RDet(M)−α∗Trace(M)2λ1λ2−α(λ1λ2)2RDet(M)-α*Trace(M)^2λ_{1}λ_{2}-α(λ_{1}λ_{2})^2RDet(M)−α∗Trace(M)2λ1λ2−α(λ1λ2)2 可知当λ1λ_{1}λ1、λ2λ_{2}λ2分别处于3中所说的三种状态时对应R有 当λ1λ_{1}λ1、λ2λ_{2}λ2都大R0即为角点当λ1λ_{1}λ1、λ2λ_{2}λ2其中一个远比另一个大R0这是边缘区域当λ1λ_{1}λ1、λ2λ_{2}λ2都很小R接近0即为平坦区域 三、Harris角点的特点 上图为使用Harris角点检测获取的关键点。
对于理想的图像特征点应该可以抵抗光照、旋转、平移、尺度等变化即具有不变性Invariance或协变性Covariance 不变性Invariance变换后原特征点仍能被检测出来、且位置不变协变性Covariance变换后原特征点仍能被检测出来但位置可能发生变化 3.1 优点
针对Harris角点来说能够抵抗光照、旋转、平移变换该部分图片来自知乎饭饭 光照光照变换会使得区域像素灰度值整体提高或降低 当增量或这减量相同灰度平移时对基于像素间灰度差值梯度的角点判断方法不影响已经被检测出来的角点能够保持不变性。当相比原来灰度成倍增加或减少尺度平移阈值不变时可能导致检测角点的数量增加或减少但同时被检测出的相同角点位置不变 旋转当发生旋转时相当于二阶矩矩阵对应几何椭圆旋转即梯度变化最快最慢的方向发生变化但特征值不变角点本身只有位置可能发生了变化即具有协变性 平移与旋转类似角点位置发生变化具有协变性但梯度变化最快最慢方向不变 3.2 缺点 Harris角点并不具有尺度不变性当图像尺度缩小时原来的角点区域可能被判断为边缘、甚至进一步平坦区域反之尺度放大时也会导致原角点找不到对应角点的情况出现为了在此基础上保持尺度不变性可以使用后续的SIFT特征检测方法。