Matlab实现Harris角点检测

article/2025/10/8 1:59:38

一、代码

close all;
clc;
% 读取图像信息(原图为灰度图)
img = imread('lena.bmp');
[m,n] = size(img);
% 先在原图外围扩展一圈
tmp = zeros(m+2,n+2);
tmp(2:m+1,2:n+1) = img;
% 初始化各一阶偏导矩阵
Ix = zeros(m+2,n+2);
Iy = zeros(m+2,n+2);
E = zeros(m+2,n+2);
% 求偏导
Ix(:,2:n) = tmp(:,3:n+1) - tmp(:,1:n-1);
Iy(2:m,:) = tmp(3:m+1,:) - tmp(1:m-1,:);
Ix2 = Ix(2:m+1,2:n+1) .^ 2;
Iy2 = Iy(2:m+1,2:n+1) .^ 2;
Ixy = Ix(2:m+1,2:n+1) .* Iy(2:m+1,2:n+1);
%生成高斯卷积核,便于对Ix2、Iy2、Ixy进行平滑
% sigma = 2
h = fspecial('gaussian',[3 3],2);
Ix2 = filter2(h,Ix2);
Iy2 = filter2(h,Iy2);
Ixy = filter2(h,Ixy);% 初始化Rmax
Rmax = 0;
R = zeros(m,n);
for i = 1 : mfor j = 1 : nM = [Ix2(i,j) Ixy(i,j);Ixy(i,j) Iy2(i,j)];R(i,j) = det(M) - 0.06 * (trace(M))^2;if R(i,j) > RmaxRmax = R(i,j);endend
end
% 显示图像
imshow(img);
title('角点检测');
hold on;% 求角点
tmp(2:m+1,2:n+1) = R;
result = zeros(m+2,n+2);
result(2:m+1,2:n+1) = img;
for i = 2 : m + 1for j = 2 : n + 1% 阈值为0.02*Rmax% 认为R值大于阈值的点为角点% 求当前像素点的邻域current = [tmp(i-1,j-1) tmp(i-1,j) tmp(i-1,j+1);tmp(i,j-1)   tmp(i,j)   tmp(i,j+1);tmp(i+1,j-1) tmp(i+1,j) tmp(i+1,j+1)];% 若当前像素点的R值大于阈值且它是其八邻域中R值最大的点,则它为角点if tmp(i,j) >= 0.02 * Rmax && tmp(i,j) >= max(max(current))result(i,j) = 255;% plot绘制点的时候是以左上角为原点,水平向右为x正半轴轴,竖直向下为y正半轴% 这和我们对于图像矩阵坐标的直观印象恰好相反plot(j,i,'go')endend
end% 这是测试plot绘制点的代码
% for i = 1 : m
%     for j = 1 : n
%         plot(i,j,'b+');
%         pause;
%     end
% end

二、结果

在这里插入图片描述


http://chatgpt.dhexx.cn/article/fC0StAbf.shtml

相关文章

角点检测和匹配之Harris与FAST角点检测

这一章主要内容: 1. Harris角点检测 2. FAST特征检测 3. 尺度不变的SURF特征检测 4.SURF检测描述 一、引言 在计算机视觉中,特征点或称兴趣点,角点(即图像的极值点,线段的终点,曲线曲率最大的点或水平、竖直方向上属性…

Matlab实现Harris角点检测算法

角点 一般的角点检测都是对有具体定义的、或者是能够具体检测出来的兴趣点的检测。这意味着兴趣点可以是角点,也可以是在某些属性上强度最大或者最小的孤立点、线段的终点,或者是曲线上局部曲率最大的点。在实践中,通常大部分称为角点检测的…

Harris 角点检测原理及实现

1. 图像中角点定义 沿各个方向,图像灰度均发生变化; 2.Harris原理 Harris中也是根据角点定义经角点定义,Harris中使用该像素点周围像素块和其周围的其它像素块的相关性刻画角点,相关性用平方差之和进行计算(SSD),SS…

基于Python手动实现Harris角点检测

最近在上数字图像处理课程,需要使用Python手动编写Harris角点检测算法,但是网上几乎没有找到手动编写的,只能手敲。 同时作为自己的第一篇博客,在这里记录一下。 一、Harris角点检测 原理(略) 可以参考博…

【OpenCV入门教程之十六】OpenCV角点检测之Harris角点检测

本系列文章由浅墨_毛星云 出品,转载请注明出处。 文章链接: http://blog.csdn.net/poem_qianmo/article/details/29356187 作者:毛星云(浅墨) 微博:http://weibo.com/u/1723155442 知乎:ht…

Harris 角点检测(Harris Corner Detection)(OpenCV实现)

匹配问题 Harris角点检测是Chris Harris和Mike Stephens在1988年提出的。主要用于运动图像的追踪。当时的普遍想法是利用边缘进行追踪,但是当相机或物体运动时你不知道朝哪个方向,相机的几何变换也是未知的,所以边缘匹配很难达到预期的效果。…

图像处理(九)——Harris角点检测

实现Harris角点检测算法,并与OpenCV的cornerHarris函数的结果进行比较。 特征点在图像中一般有具体的坐标,并具有某些数学特征,如局部最大或最小灰度、以及某些梯度特征等。角点可以简单的认为是两条边的交点。如下图所示: 在各个…

Harris角点检测 及 Matlab实验

目录 1 基础知识 1.1 图像变化的类型 1.2 提取点特征的作用 1.3 什么是好的角点检测算法? 2 Harris 角点检测 2.1 Harris角点检测基本思想 2.2 Harris角点检测:数学描述 3 总结 4 Matlab 实验 参考资料 角点是图像重要的特征,对图像…

Harris的角点检测和特征匹配

一.特征检测(提取) 基于特征的图像配准方法是图像配准中最常见的方法之一。它不是直接利用图像像素值,二十通过像素值导出的符号特征(如特征点、特征线、特征区域)来实现图像配准,因此可以克服利用灰度信息…

Harris角点及Shi-Tomasi角点检测

一、角点定义 有定义角点的几段话: 1、角点检测(Corner Detection)是计算机视觉系统中用来获得图像特征的一种方法,广泛应用于运动检测、图像匹配、视频跟踪、三维建模和目标识别等领域中。也称为特征点检测。 角点通常被定义为两条边的交点&#xff0…

Harris角点检测算法详解

Harris角点算法 特征点检测广泛应用到目标匹配、目标跟踪、三维重建等应用中,在进行目标建模时会对图像进行目标特征的提取,常用的有颜色、角点、特征点、轮廓、纹理等特征。现在开始讲解常用的特征点检测,其中Harris角点检测是特征点检测的基…

Harris角点检测算子

Harris角点检测算子是于1988年由CHris Harris & Mike Stephens提出来的。在具体展开之前,不得不提一下Moravec早在1981就提出来的Moravec角点检测算子。 1.Moravec角点检测算子 Moravec角点检测算子的思想其实特别简单,在图像上取一个W*W的“滑动窗…

特征检测之Harris角点检测

点击上方“小白学视觉”,选择加"星标"或“置顶” 重磅干货,第一时间送达特征点又叫兴趣点或者角点。常被用于目标匹配,目标跟踪,三维重建等应用中。点特征主要指图像中的明显点,如突出的角点、边缘端点、极值…

Harris角点检测原理分析

主要参考了:http://blog.csdn.net/yudingjun0611/article/details/7991601 Harris角点检测算子 本文将该文拷贝了过来,并做了一些数学方面的补充,以方便对数学已经生疏的小伙伴们参考理解。由于补充的内容还挺多,所以还是将本文标…

【理解】经典角点检测算法--Harris角点

目录 什么是角点角点检测算法的原始思想:Harris角点检测原理Harris角点算法的基本步骤实践:Harris角点检测可能会用到的OpenCV API:手写API:1.展示图片:2.手写Harris特征:3.手写非极大值抑制:4.在原图标注角…

角点检测(Harris角点检测法)

博主联系方式: QQ:1540984562 QQ交流群:892023501 群里会有往届的smarters和电赛选手,群里也会不时分享一些有用的资料,有问题可以在群里多问问。 目录 原理讲解【1】为何选取角点作为特征?【2】角点的定义&#xff1a…

Harris角点检测原理详解

关于角点的应用在图像处理上比较广泛,如图像匹配(FPM特征点匹配)、相机标定等。网上也有很多博客对Harris角点检测原理进行描述,但基本上只是描述了算法流程,而其中相关细节并未作出解释,这里我想对有些地方做出补充说明&#xff…

OpenCV——Harris角点检测

目录 一、Harris角点检测二、C代码三、python代码四、结果展示1、原始图像2、Harris角点 一、Harris角点检测 角点原理来源于人对角点的感性判断,即图像在各个方向灰度有明显变化。算法的核心是利用局部窗口在图像上进行移动判断灰度发生较大的变化,所以…

Harris角点检测

目录 一.基本原理 1.基本思想 2.数学模型 二.实现代码 三.实验结果与分析 1.场景一:纹理平坦场景 2.场景二:多水平边缘场景 3.场景三:角点丰富场景 四.实验总结 一.基本原理 1.基本思想 判断图像的角点,可以利用卷积窗…

harris角点检测原理

目录 1、角点概述 2、数学知识 3、Harris角点检测基本原理 4、优化改进 1、角点概述 如果一个点在任意方向的一个微小变动都会引起灰度很大的变化,那么我们就把它称之为角点,也就是一阶导数(即灰度图的梯度)中的局部最大所对应的像素点就是角点。在现…