资源简介
角点检测:Harris角点及Shi-Tomasi角点检测
参考博客:http://blog.csdn.net/xiaowei_cqu/article/details/7805206
参考博客:http://blog.csdn.net/xiaowei_cqu/article/details/7805206

代码片段和文件信息
/**
* @function cornerDemo.cpp
* @brief Demo code for detecting corners using Harris-Stephens method and Shi-Tomasi method
* @author Wei Lan http://blog.csdn.net/xiaowei_cqu
*/
#include
#include
#include “opencv2/imgproc/imgproc.hpp“
#include “opencv2/core/core.hpp“
#include “opencv2/legacy/legacy.hpp“
#include “opencv2/nonfree/nonfree.hpp“
#include “opencv2/highgui/highgui.hpp“
#include “opencv2/calib3d/calib3d.hpp“
#include
using namespace cv;
using namespace std;
//Global variables
Mat src src_graydst_norm_scaled;
int thresh = 110;
int max_thresh = 150;
int maxCorners = 23;
int maxTrackbar = 100;
char* source_window = “Source image“;
char* corners_window = “Corners detected“;
/// Function header
void cornerHarris_demo( int void* );
void cornerShiTomasi_demo( int void* );
int main( )
{
src = imread(“images\\corner.png“1);
cvtColor( src src_gray CV_BGR2GRAY );
/// Create a window and a trackbar
namedWindow( source_window CV_WINDOW_AUTOSIZE );
createTrackbar( “Harris: “ source_window &thresh max_thresh cornerHarris_demo );
createTrackbar( “ShiTomasi:“ source_window &maxCorners maxTrackbar cornerShiTomasi_demo );
namedWindow( corners_window CV_WINDOW_AUTOSIZE );
namedWindow( source_window CV_WINDOW_AUTOSIZE );
cornerHarris_demo( 0 0 );
cornerShiTomasi_demo( 0 0 );
waitKey(0);
return(0);
}
void cornerHarris_demo( int void* )
{
Mat dst dst_norm;
dst = Mat::zeros( src.size() CV_32FC1 );
/// Detector parameters
int blockSize = 2;
int apertureSize = 3;
double k = 0.04;
/// Detecting corners
cornerHarris( src_gray dst blockSize apertureSize k BORDER_DEFAULT );
/// Normalizing
normalize( dst dst_norm 0 255 NORM_MINMAX CV_32FC1 Mat() );
convertScaleAbs( dst_norm dst_norm_scaled );
/// Drawing a circle around corners
for( int j = 0; j < dst_norm.rows ; j++ )
{ for( int i = 0; i < dst_norm.cols; i++ )
{
if( (int) dst_norm.at(ji) > thresh )
{
circle( dst_norm_scaled Point( i j ) 5 Scalar(0) -1 8 0 );
circle(srcPoint( i j ) 5 Scalar(25500) -1 8 0 );
}
}
}
/// Showing the result
imshow( corners_window dst_norm_scaled );
imshow( source_window src );
}
void cornerShiTomasi_demo( int void* )
{
if( maxCorners < 1 ) { maxCorners = 1; }
/// Parameters for Shi-Tomasi algorithm
vector corners;
double qualityLevel = 0.01;
double minDistance = 10;
int blockSize = 3;
bool useHarrisDetector = false;
double k = 0.04;
/// Copy the source image
Mat cormat;
/// Apply corner detection :Determines strong corners on an image.
goodFeaturesToTrack( src_gray
corners
maxCorners
qualityLevel
minDistance
Mat()
blockSize
useHarr
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 26055 2002-12-01 23:38 corner.png
文件 3354 2012-07-31 13:33 cornerDemo.cpp
文件 887610 2012-07-30 18:44 Good Features to Track.pdf
文件 1129984 2012-07-30 19:09 Harris角点检测.ppt
相关资源
- SSM+Shiro+redis实现单点登陆
- 关于角点检测算法HarrisForstner经典算子
-
Differential ex
pression patterns of Toll-li - Born-Infeld-dilaton-Lifshitz全息超导体的光
- 具有非线性电动力学的Lifshitz黑洞中铁
- TC58NC6690-SSS6692-B4-Toshiba(东芝) 量产
- 红帽 OpenShift 的业务价值
- Orientation-resolved 3d5/2 energy shift of Rh
- Photoluminescence and photoabsorbance blue shi
- Coordination-resolved 4f binding energy shift
- installshield 2011 premier试用版
- 基于Nakanishi的模型说明了pion GPD重叠表
- Study on the Technology of Ultrasonic-magnetor
- Spectroscopic Study on Cu2+-induced Abnormally
- PrintShield破解版 v5.1.17附
- Safengine Shielden V2.1.2.0 简体中文免费版
- 基于meanshift和粒子滤波的目标跟踪代
- Behind Phishing_ An Examination of Phisher Mod
- 打印监控软件 PrintShield 破解版 无时间
- 角点检测与匹配
- 跟我学shiro pdf带目录版
- 2018年SpringBoot与Shiro整合-权限管理实战
- 论文研究 - 尼日利亚Ishiagu Ihetutu Min
- 11-双(三乙基硅烷基)-2-丙炔的合成
- ShiYan4-1.zip
- 最小二乘法拟合圆心,基于Hough变换的
- 自动控制原理实验报告.docx
- eetop.cn_OpenCL.Parallel Computing on the GPU
- 论文研究-基于Harris角点和SURF特征的遥
- 光学薄膜原理专业书籍
评论
共有 条评论