Harris角點檢測及matlab程式
Harris角點檢測的步驟為:
matlab程式如下:
close all; clear all; clc; img=imread('lena.png'); imshow(img); img = rgb2gray(img); img =double(img); [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); h=fspecial('gaussian',[7 7],2); Ix2=filter2(h,Ix2); Iy2=filter2(h,Iy2); Ixy=filter2(h,Ixy); Rmax=0; R=zeros(m,n); for i=1:m for j=1:n M=[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)>Rmax Rmax=R(i,j); end end end re=zeros(m+2,n+2); tmp(2:m+1,2:n+1)=R; img_re=zeros(m+2,n+2); img_re(2:m+1,2:n+1)=img; for i=2:m+1 for j=2:n+1 if tmp(i,j)>0.02*Rmax &&... tmp(i,j)>tmp(i-1,j-1) && tmp(i,j)>tmp(i-1,j) && tmp(i,j)>tmp(i-1,j+1) &&... tmp(i,j)>tmp(i,j-1) && tmp(i,j)>tmp(i,j+1) &&... tmp(i,j)>tmp(i+1,j-1) && tmp(i,j)>tmp(i+1,j) && tmp(i,j)>tmp(i+1,j+1) img_re(i,j)=255; end end end img_re=mat2gray(img_re(2:m+1,2:n+1)); figure,imshow(img_re);
執行結果如下:
相關推薦
Harris角點檢測及matlab程式
Harris角點檢測的步驟為: matlab程式如下: close all; clear all; clc; img=imread('lena.png'); imshow(img); im
Harris角點檢測及程式碼分析(續)
緊接著“Harris角點檢測及程式碼分析”,這裡主要分析OpenCV的cvGoodFeaturesToTrack()函式,這才是角點提取的真正程式碼。 Jianbo Shi, Carlo Tomasi. Good Features to Track.
MATLAB——Harris角點檢測
為完成對棋盤標板的角點檢測,特此記錄。 角點:最直接的定義為在水平、垂直兩個方向上變化均較大的點 最常用的角點檢測演算法為Harris角點檢測方法,原理如下: 計算影象I(x,y)在X和Y兩個方向的梯度Ix、Iy 計算影象兩個方向梯度的乘積 使用高斯函式對Ix^2、
Harris角點檢測原理及C++實現
1. 首先,我們不禁要問什麼是harris角點? 對於角點,到目前為止還沒有明確的數學定義。但是你可以認為角點就是極值點,即在某方面屬性特別突出的點。一般的角點檢測都是對有具體定義的、或者是能夠具體檢測出來的興趣點的檢測。這意味著興趣點可以是角點,是在某些
Harris角點檢測原理及實現
一、原理 二、實現 close all; clear all; I=imread('test.tif'); [posX,posY]=harris(I); figure;imshow(I); hol
第十一節、Harris角點檢測原理
str 物體 per 權重 模式 windows www http 特定 OpenCV可以檢測圖像的主要特征,然後提取這些特征、使其成為圖像描述符,這類似於人的眼睛和大腦。這些圖像特征可作為圖像搜索的數據庫。此外,人們可以利用這些關鍵點將圖像拼接起來,組成一個更大的圖像,比
opencv-角點檢測之Harris角點檢測
trunc get data 圖像旋轉 ror 協方差矩陣 -a double 特定 轉自:https://blog.csdn.net/poem_qianmo/article/details/29356187 先看看程序運行截圖: 一、引言:關於興趣點(i
Opencv Harris角點檢測
demo one pla fault end ges for using opencv #include <iostream>#include <opencv2/opencv.hpp> using namespace std;using namesp
OpenCv-C++-Harris角點檢測
首先,感謝賈志剛老師的課程教學。 理論部分: 我現在將程式碼放入: #include<opencv2/opencv.hpp> #include<iostream> #include<math.h> using namespace cv; using
Harris角點特徵及C實現
1、Harris角點 Harris角點檢測是特徵點檢測的基礎,該檢測子對平移和旋轉魯棒。 Harris角點具有兩個非常重要的性質: 《1》、具有很大的梯度幅值; 《2》、在很小的近鄰內,梯度方向變化尖銳; 故可以通過視窗在小區域內滑動來確定角點位置。 直觀的角點理解:角點既是影象中物體
OpenCV-Python系列·第二十五集:Harris角點檢測
Tip:Harris角點檢測 # -*- coding: utf-8 -*- """ Created on Sat Sep 22 21:18:41 2018 @author: Administrat
Harris角點檢測原理
1. 首先,我們不禁要問什麼是harris角點? 對於角點,到目前為止還沒有明確的數學定義。但是你可以認為角點就是極值點,即在某方面屬性特別突出的點。一般的角點檢測都是對有具體定義的、或者是能夠具體檢測出來的興趣點的檢測。這意味著興趣點可以是角點,是在某些屬性
Harris角點檢測演算法詳解
Harris角點演算法 特徵點檢測廣泛應用到目標匹配、目標跟蹤、三維重建等應用中,在進行目標建模時會對影象進行目標特徵的提取,常用的有顏色、角點、特徵點、輪廓、紋理等特徵。現在開始講解常用的特徵點檢測,其中Harris角點檢測是特徵點檢測的基礎,提出了應用鄰近畫素
OpenCV入門:Harris角點檢測
Harris角點檢測 #include <opencv2/opencv.hpp> #include <opencv2/imgproc/imgproc.hpp> using namespace cv; /* Harris角點檢測:void cornerH
Python 實現Harris 角點檢測
具體原理見Feature extraction & image processing for computer vision (3rd edition) 4.4.1.4小節 # Harris Corner Detector # Code - 4.18
Harris角點檢測+sift描述匹配
最近用到:Harris檢測影象中邊緣處的特徵點,並且需要兩張圖特徵點匹配起來。Harris只是一個角點檢測的演算法,最終只得到特徵點座標,想要匹配需要描述,而Harris是單尺度的,自己寫描述函式又有些麻煩。找到MATLAB和opencv都有整合的函式:
【OpenCV3經典程式設計100例】(24)2D特徵:Harris角點檢測cornerHarris()
一、2d特徵相關知識Learn about how to use the feature points detectors, descriptors and matching inside OpenCV
Harris角點檢測原理分析
http://blog.csdn.net/newthinker_wei/article/details/45603583 http://www.360doc.com/content/15/1212/23/20007814_519967668.shtml 本文將該文拷
harris角點檢測計算詳細步驟
說明 某人說,演算法看不懂,公式不明白,舉個栗子咯,能看到具體數值的那種。 好吧,舉個最簡單的角點檢測演算法吧。以下程式碼為matlab。 步驟 一、生成影象 構造一個棋盤影
Harris角點檢測演算法
Harris演算法是使用比較多的角點演算法之一,opencv中實現的角點檢測演算法就是Harris和它的改進。 Harris角點檢測的原理: Harris 角點最初由Harris在A combined corner and edge detector一文中提出,該文實