这篇文章将为大家详细讲解有关C++ OpenCV特征提取之如何实现Shi-Tomasi角点检测,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
简介
Shi-Tomasi角点检测的理论和Harris角点检测的理论几乎完全一致,唯一不同的是在使用矩阵特征
计算角度响应的时候


先上视频效果
相关API
C++: void goodFeaturesToTrack(
InputArray image,
OutputArray corners,
int maxCorners, --表示返回角的数目,如果检测出来角点数大于最大数目
则返回响应值最强前规定数目。
double qualityLevel, --表示最小可接受的向量值1500,0.01,15
double minDistance, --两个角点之间的最小距离
InputArray mask=noArray(),
int blockSize=3, --计算导数微分不同的窗口大小
bool useHarrisDetector=false, --是否使用Harris角点检测
double k=0.04 )
代码演示
我们再新建一个项目名为opencv--shi-tomasi,按照配置属性(VS2017配置OpenCV通用属性),然后在源文件写入#include和main方法


基本的出来了,图像我们改了一下,显示效果为

接下来开始我们的表演
首先还要是创建Trackbar,定义基本的参数


接下来就是写我们的GoodFeauturestoTrack_Deal这个事件


看看运行显示效果

关于“C++ OpenCV特征提取之如何实现Shi-Tomasi角点检测”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。