opencv之灰度图强角点检测
来源:互联网 发布:边锋游戏大厅mac 编辑:程序博客网 时间:2024/05/20 17:40
本文需要了解的库函数:
void cvGoodFeaturesToTrack( const CvArr* image, CvArr* eig_image, CvArr* temp_image, CvPoint2D32f* corners, int* corner_count, double quality_level, double min_distance, const CvArr* mask=NULL );
演示代码
#include<cv.h>#include<highgui.h>#include<stdio.h>#include<malloc.h>#pragma comment(lib,"cv.lib")#pragma comment(lib,"cxcore.lib")#pragma comment(lib,"highgui.lib")#pragma comment(lib,"cvaux.lib")/*********************************************************************************** 本程序是强角点检测演示例程* 作者:xlh145* 博客:http://blog.csdn.net/xlh145/**********************************************************************************/IplImage * image =NULL;IplImage * gray =NULL;IplImage * dist =NULL; //显示图像//下面是两幅检测角点的临时图像IplImage * eig_image =NULL;IplImage * temp_image =NULL;int quality_level=0; //最小质量因子int min_distance = 40;//角点间的最小欧氏距离void OnTrack(int ){cvZero(dist);//清空图像cvCopy(image,dist);//拷贝原始数据CvPoint2D32f corners[200];//保存角点坐标 最大检测200个点int count=200;//角点坐标double level = (double)quality_level/100+0.02;double distance = (double)min_distance;cvGoodFeaturesToTrack(gray,eig_image,temp_image, corners,&count,level,distance,NULL); //角点检测for(int i=0;i<count;i++){CvPoint center;center.x = cvRound(corners[i].x);center.y = cvRound(corners[i].y);cvCircle(dist,center,5,CV_RGB(255,0,0),1,8,0);} cvShowImage("角点",dist);}int main(){ image = cvLoadImage("2.jpg",1); //加载dist = cvCloneImage(image);gray = cvCreateImage(cvGetSize(image),IPL_DEPTH_8U,1);eig_image = cvCreateImage(cvGetSize(image),IPL_DEPTH_32F,1);temp_image = cvCreateImage(cvGetSize(image),IPL_DEPTH_32F,1);cvCvtColor(image,gray,CV_BGR2GRAY); //灰度转换cvNamedWindow("角点",1);cvCreateTrackbar("quality_level","角点",&quality_level,100,OnTrack);cvCreateTrackbar("min_distance","角点",&min_distance,200,OnTrack);OnTrack(0);cvWaitKey(0);//释放数据cvReleaseImage(&image);cvReleaseImage(&dist);cvReleaseImage(&gray);cvReleaseImage(&eig_image);cvReleaseImage(&temp_image);cvDestroyWindow("角点");return 0;}
- opencv之灰度图强角点检测
- OpenCV之灰度直方图反向投影(图像相似性检测)
- OpenCV之灰度直方图反向投影(图像相似性检测)
- OPENCV沿x,y灰度检测
- 在Android平台上利用opencv进行图像处理之边缘检测、灰度变换、缩小
- 基于java(加eclipse)的OpenCV学习之二____图像加载、灰度图、开运算、画线、Canny检测
- OpenCV读入视频,灰度化,并Canny边缘检测
- OpenCV-将图像转化为灰度图,然后边缘检测
- opencv之边缘检测
- OpenCV 之 边缘检测
- opencv之边缘检测
- OpenCV之轮廓检测
- opencv轮廓检测之椭圆检测
- opencv特征检测之角点检测
- openCV之人脸检测
- opencv之矩形物体检测
- opencv 学习之 亮度检测
- opencv 学习之 清晰度检测
- Prism
- socket编程小记
- uva11462 - Age Sort(年龄排序)
- Java关键字及其作用
- IOS开发(32)之iOS高效开发必备的10款Objective-C类库(转载)
- opencv之灰度图强角点检测
- OpenCv学习笔记(五)-数学形态学2(灰度级膨胀和腐蚀及c语言实现)
- Linux系统下查看目录大小
- mysql ip限制问题
- 文件权限
- Android访问中央气象台的天气预报API得到天气数据 .
- Socket编程(不限Linux)
- 一道创新工场面试题详解:共打了多少鱼?
- 起图形界面