特征检测算法————Harris角点检测

心已入冬 提交于 2020-02-25 14:45:45

1 特征检测

1.1特征检测定义

特征检测是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征检测的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。

1.2特征定义

特征就是有意义的图像区域,该区域具有独特特征和易于识别性。因此角点及高密度区域都是很好的特征,而大量重复的模式或低密度区域(例如图像中的蓝色天空)则不是很好的特征。边缘可以将图像分为两个区域,因此也可以看做好的特征。斑点是与周围有很大差别的像素区域,也是有意义的特征。

2 Harris角点检测

2.1角点定义

角点是图像很重要的特征,对图像图形的理解和分析有很重要的作用。角点在保留图像图形重要特征的同时,可以有效地减少信息的数据量,使其信息的含量很高,有效地提高了计算的速度,有利于图像的可靠匹配,使得实时处理成为可能。角点在三维场景重建运动估计,目标跟踪、目标识别、图像配准与匹配等计算机视觉领域起着非常重要的作用。在现实世界中,角点对应于物体的拐角,道路的十字路口、丁字路口等。从图像分析的角度来定义角点可以有以下两种定义:

          a. 角点可以是两个边缘的角点;

          b. 角点是邻域内具有两个主方向的特征点;

2.2Harris角点检测基本原理

哈里斯角点是在任意方向上移动(u,v),都会有很明显的变化。如下图一个局部很小的区域,如果是在图片区域中移动灰度值没有变化,那么窗口内不存在角点。如果在某一个方向上移动,一个发生很大变化而另一侧没有变化,那么说明这个区域是位于该对象的边缘区域。
在这里插入图片描述
其表达式如下图:
在这里插入图片描述

其含义是对于图像I(x,y),在点(x,y)处平移(u,v)后的自相似性。其中w(x,y)是加权函数,它可以是常数,也可以是高斯加权函数。如图2所示。
在这里插入图片描述根据泰勒展开和一些数学步骤后可得到如下结果
在这里插入图片描述其中
在这里插入图片描述公式中Ix和Iy是在x和y方向获取的区域。
最后转化为R=det(M) - k(trace(M))^2,该公式决定了一个区域内是否包含角特征。
公式中
det(M) = λ1λ2
trace(M) = λ1+λ2
λ1和λ2是M的特征值。
这些特征值决定了一个区域是角,边缘还是平面。
当|R|很小时,即λ1和λ2很小时,该区域时平面。
当 R < 0时,即λ1远远大于λ2或者λ2远远大于λ1时,该区域时直线。

当 R很大时,即λ1和λ2都很大且近似相等,该区域时角点。
他们的关系可以表示为下图。

在这里插入图片描述

2.3Harris角度行政

1 该算法算子对亮度和对比度的变化不敏感。
2 算子具有旋转不变性。
3 算子不具有尺度不变性。

2.4代码实现

# -*- coding: utf-8 -*-
from pylab import *
from PIL import Image
from PCV.localdescriptors import harris

# 读入图像
im = array(Image.open('E:/picture/1-1.png').convert('L'))

# 检测harris角点
harrisim = harris.compute_harris_response(im)

# Harris响应函数
harrisim1 = 255 - harrisim

figure()
gray()

#画出Harris响应图
subplot(121)
suptitle("Harris corners")
imshow(harrisim1)
print (harrisim1.shape)
axis('off')
axis('equal')

threshold = [0.01, 0.05, 0.1]
for i, thres in enumerate(threshold):
    filtered_coords = harris.get_harris_points(harrisim, 6, thres)

subplot(1, 2, 2)
imshow(im)
print (im.shape)
plot([p[1] for p in filtered_coords], [p[0] for p in filtered_coords], '+c')
axis('off')
show()

2.5不同场景实验结果

正面
在这里插入图片描述在这里插入图片描述

高光照
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
ce侧面

加粗样式
在这里插入图片描述

俯视
在这里插入图片描述
在这里插入图片描述

正面
在这里插入图片描述在这里插入图片描述高光照
在这里插入图片描述在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
侧面
在这里插入图片描述
在这里插入图片描述
俯视
在这里插入图片描述
在这里插入图片描述

正面
在这里插入图片描述在这里插入图片描述

高亮度
在这里插入图片描述在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
侧面

在这里插入图片描述在这里插入图片描述

俯视
在这里插入图片描述
在这里插入图片描述

2.6实验结果分析

dui对同一个建筑不同角度,光线,远近的图片进行Harris角点检测,在不同光线的情况下

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!