Shi Tomasi角點檢測演算法

2021-10-02 22:16:18 字數 2058 閱讀 7389

1、shi-tomasi概念;

2、api;

3、code;

1、角點檢測除了harris角點檢測演算法外,還常常使用shi-tomasi演算法,shi-tomasi演算法是harris演算法的改進,因此計算速度更快, shi-tomasi演算法於2023年在文章《good features to track》中被提出;

1、shi-tomasi角點檢測api:goodfeaturetotrack():

引數說明:

corners : 為輸出角點座標的集合陣列;

qualitylevel : 角點檢測的最小特徵值,通常不會超過1(常取0.10/0.01);

maxcorners : 自定檢測最大角點數目;

k : 常取(0.04-0.06);

#define win_name "shi-tomasi角點檢測"

mat srcimage, grayimage;

int maxcornernumber =33;

int maxtrackbarnumber =

500;

rng rng

(12345);

void

on_goodfeaturetotrack

(int

,void*)

//shi-tomasi引數準備

vector corners;

double qualitylevel =

0.01

;//角點檢測可以接受的最小特徵值

double mindistance =10;

//角點間的最小畫素距離設定

int blocksize =3;

//計算導數自相關矩陣時指定的領域範圍

double k =

0.04

;//權重係數

mat copy = srcimage.

clone()

;//複製原圖到乙個臨時變數中,作為感興趣區域

//shi-tomasi test

goodfeaturestotrack

(grayimage, corners, maxcornernumber, qualitylevel, mindistance,

mat(

), blocksize,

false

, k)

;//輸出文字資訊

cout <<

">此次檢測到的角點數量為: "

<< corners.

size()

<< endl;

//繪製檢測到的角點

for(

unsigned

int i =

0; i < corners.

size()

; i++

)imshow

(win_name, copy);}

intmain

(int argc,

char

** ar**)

計算速度比harris快了很多!!!shi-tomasi演算法可以簡單輸出角點的座標點

識別角點,並輸出畫素值座標:

susan角點檢測演算法

susan演算法是1997年牛津大學的smith等人提出的一種處理灰度影象的方法,它主要是用來計算影象中的角點特徵。susan演算法選用圓形模板 如圖1所示 將位於圓形視窗模板中心等待檢測的畫素點稱為核心點。核心點的鄰域被劃分為兩個區域 亮度值相似於核心點亮度的區域即核值相似區 univalue s...

OpenCV Shi Tomasi角點檢測演算法

shi tomasi運算元是1994年在文章 good features to track 中被提出的,opencv實現此演算法的函式就被命名為goodfeaturestotrack。shi tomasi運算元 cv mat basicalgorithm on shi tomasi cv mat m...

Shi Tomasi角點檢測原始碼分析

shi tomas在角點響應函式上與harris不同。1.shi tomas角點響應函式 r min 1,2 2.harris角點響應函式 r det m k trace m 2 其中m,是影象的張量矩陣。1與 2是m的特徵值。1.個人理解 1 在所表示的幾何橢圓中,特徵值越大,對應的橢圓軸越短,e...