OpenCV2.4.4实现Harris角点检测
来源:互联网 发布:mac地址定位上网位置 编辑:程序博客网 时间:2024/06/05 02:18
#include "opencv2/highgui/highgui.hpp"#include "opencv2/imgproc/imgproc.hpp"#include <iostream>#include <stdio.h>#include <stdlib.h>using namespace cv;using namespace std;//全局变量Mat src, src_gray;//源图和灰度图int thresh = 200;//默认阈值int max_thresh = 255;//滑块条最大值void cornerHarris_demo( int, void* ){ Mat dst, dst_norm, dst_norm_scaled; dst = Mat::zeros( src.size(), CV_32FC1 ); //参数 int blockSize = 2; int apertureSize = 3; double k = 0.04; //Harris角点检测 cornerHarris( src_gray, dst, blockSize, apertureSize, k, BORDER_DEFAULT ); //像素归一化到[0,255] normalize( dst, dst_norm, 0, 255, NORM_MINMAX, CV_32FC1, Mat() ); convertScaleAbs( dst_norm, dst_norm_scaled );//去绝对值后变换为8位无符号类型 Mat src_copy = src.clone(); //在角点上画圈 for( int j = 0; j < dst_norm.rows ; j++ ) { for( int i = 0; i < dst_norm.cols; i++ ) { if( (int) dst_norm.at<float>(j,i) > thresh ) { circle(dst_norm_scaled,Point(i,j),3,Scalar(0)); circle(src_copy,Point(i,j),3,Scalar(0,255,0)); } } } /// Showing the result namedWindow( "Corners", CV_WINDOW_AUTOSIZE ); imshow( "Corners", dst_norm_scaled ); imshow( "Src", src_copy );}int main(){ //加载源图像并转换为灰度图 src = imread("horse.jpg"); cvtColor( src, src_gray, CV_BGR2GRAY ); //显示源图 namedWindow( "Src", CV_WINDOW_AUTOSIZE ); imshow( "Src", src ); //创建滑块条,并指定回调函数为cornerHarris_demo(),每次滑块位置改变时都会调用此函数 createTrackbar( "阈值:", "Src", &thresh, max_thresh, cornerHarris_demo ); //调用函数,计算角点 cornerHarris_demo( 0, 0 ); waitKey(0); return(0);}
效果图:
- OpenCV2.4.4实现Harris角点检测
- OpenCV2.4.4实现Harris角点检测
- openCV2马拉松第19圈——Harris角点检测(自己实现)
- Opencv2系列学习笔记5(检测Harris角点)
- Opencv2系列学习笔记5(检测Harris角点)
- OpenCV2编程手册笔记之 8.2检测Harris角点
- vc实现harris角点检测算法
- harris角点检测算法实现VC
- Harris角点检测及实现
- 关于Harris角点检测的实现
- Python 实现Harris 角点检测
- Harris角点检测原理及实现
- Harris角点检测实现详解
- Harris 角点检测
- Harris角点检测
- Harris角点检测
- Harris角点检测
- Harris角点检测
- 怎样集中注意力
- 坑爹的excel中无法打开链接
- JQuery对数组的一些操作总结
- C语言 全局变量和局部变量的大小限制
- java解析xml的四种方式
- OpenCV2.4.4实现Harris角点检测
- JAVASCRIPT 浏览器兼容性问题及解决方案列表
- wifi启动信息跟踪之CRDA(1)
- zoj_2736 Daffodil number
- Removing obsolete files from server
- 专家解读:读研到底值不值(转自中华英才网)
- [Sdoi2013]escape
- 我的ubuntu软件安装记录
- iOS 使用ASIHttpRequest和GData解析xml网络文件