Opencv角点检测
#include "stdafx.h" #define max_corners 20 int main()
{
int cornerNum = max_corners;
vector<Point2f>corner;
double qualityLevel = 0.05;
double minDistance = ;
double scalar = 0.5;
Mat srcImg,srcImg1;
Mat grayImg,grayImg1,grayImg2;
Mat disImg;
int i; //VideoCapture video("E:\\C_VC_code\\Text_Photo\\feini.flv");
VideoCapture video();
if(!video.isOpened())
{
return -;
}
video>>srcImg;
resize(srcImg,srcImg1,Size(srcImg.cols*scalar,srcImg.rows*scalar),,,);
cvtColor(srcImg1,grayImg,CV_BGR2GRAY, );
Rect rect;
double up,down,left,right;
while()
{
video>>srcImg;
resize(srcImg,srcImg1,Size(srcImg.cols*scalar,srcImg.rows*scalar),,,);
//disImg = srcImg(Rect(200,150,130,130));
cvtColor(srcImg1,grayImg1,CV_BGR2GRAY, );
absdiff(grayImg1,grayImg,grayImg2);
goodFeaturesToTrack(grayImg2,corner,cornerNum,qualityLevel,minDistance,Mat(),,false,0.04);
resize(srcImg,srcImg1,Size(srcImg.cols*scalar,srcImg.rows*scalar),,,);
cvtColor(srcImg1,grayImg,CV_BGR2GRAY, );
up = left = 0x3f3f3f3f;
down = right = -0x3f3f3f3f; for(i=;i<corner.size();i++)
{
up = min(up, corner[i].y*1.0);
left = min(left, corner[i].x*1.0);
down = max(down, corner[i].y*1.0);
right = max(right, corner[i].x*1.0);
circle(srcImg1,Point(corner[i].x,corner[i].y),,Scalar(,,),);
}
rect.x = left;
rect.y = up;
cout<< right<<" " <<down<<endl;
rect.width = right-left;
rect.height = up-down; rectangle(srcImg1,rect,Scalar(,,),); imshow("gray",grayImg2);
imshow("x",srcImg1); if(waitKey()>)
break;
}
return ;
}
Opencv角点检测的更多相关文章
- OpenCV角点检测源代码分析(Harris和ShiTomasi角点)
OpenCV中常用的角点检测为Harris角点和ShiTomasi角点. 以OpenCV源代码文件 .\opencv\sources\samples\cpp\tutorial_code\Trackin ...
- OpenCV角点检测goodFeaturesToTrack()源代码分析
上面一篇博客分析了HARRIS和ShiTomasi角点检测的源代码.而为了提取更准确的角点,OpenCV中提供了goodFeaturesToTrack()这个API函数,来获取更加准确的角点位置.这篇 ...
- opencv: 角点检测源码分析;
以下6个函数是opencv有关角点检测的函数 ConerHarris, cornoerMinEigenVal,CornorEigenValsAndVecs, preConerDetect, coner ...
- opencv 角点检测+相机标定+去畸变+重投影误差计算
https://blog.csdn.net/u010128736/article/details/52875137 https://blog.csdn.net/h532600610/article/d ...
- OpenCV3入门(十二)角点检测
1.角点介绍 角点检测(Corner Detection)是计算机视觉系统中用来获得图像特征的一种方法,广泛应用于运动检测.图像匹配.视频跟踪.三维建模和目标识别等领域中,也称为特征点检测.在图像中角 ...
- opencv笔记6:角点检测
time:2015年10月09日 星期五 23时11分58秒 # opencv笔记6:角点检测 update:从角点检测,学习图像的特征,这是后续图像跟踪.图像匹配的基础. 角点检测是什么鬼?前面一篇 ...
- DOG角点检测——opencv实现
1.原理 Difference of Gaussian(DOG)是高斯函数的差分.将两幅图像在不同参数下的高斯滤波结果相减,得到DoG图.步骤: 处理一幅图像在不同高斯参数下的DoG 用两个不同的5x ...
- OpenCV探索之路(十五):角点检测
角点检测是计算机视觉系统中用来获取图像特征的一种方法.我们都常说,这幅图像很有特点,但是一问他到底有哪些特点,或者这幅图有哪些特征可以让你一下子就识别出该物体,你可能就说不出来了.其实说图像的特征,你 ...
- cv2.cornerHarris()详解 python+OpenCV 中的 Harris 角点检测
参考文献----------OpenCV-Python-Toturial-中文版.pdf 参考博客----------http://www.bubuko.com/infodetail-2498014. ...
随机推荐
- 基本药目录sop
http://db.yaozh.com/basicdir 基本药物 编辑 "基本药物"的概念, 由世界卫生组织于1977年提出,指的是能够满足基本医疗卫生需求,剂型适宜.保证供应. ...
- Java 创建文件夹和文件
String path="D://my"; File folder=new File(path); if(!folder.exists() && !folder.i ...
- IE6完美解决fix问题
解决代码: _position: absolute; _top: expression(documentElement.scrollTop + + "px"); 完整代码: kef ...
- How to debug windows service
Step 1. Add the following code in what you want to debug. System.Diagnostics.Debugger.Launch(); Step ...
- mssql手工注入
判断注入点: 1.数字型 http://www.targer.com/article.aspx?id=1 http://www.targer.com/article.aspx?id=1' http:/ ...
- css外边距合并和z-index的问题
参考这篇文章, 将外边距的 折叠 参考这篇文章, 将bfc的生成, bfc的应用 参考这篇文章 position: absolute的元素, 仍然具有内填充padding和border边框属性样式, ...
- Hadoop伪分布式搭建(一)
下面内容主要说明在Windows虚拟机上面,怎么搭建一个Hadoop伪分布式,并如何运行wordcount程序和网页查看HDFS文件系统. 1 相关软件下载和安装 APACH官网提供hadoop版本 ...
- [译]ES6箭头函数和它的作用域
原文来自我的前端博客: http://www.hacke2.cn/arrow-functions-and-their-scope/ 在ES6很多很棒的新特性中, 箭头函数 (或者大箭头函数)就是其中值 ...
- mysql 总结一
mysql 总结一 数据类型(四类): 整型(5种:tinyint,smallint,mediumint, int(或integer),bigint ): 浮点型:(float,double), 日期 ...
- spring缓存Ehcache(入门2)
使用Ehcache缓存工具类. 一.由于使用了maven,所以需要引入依赖包: <dependency> <groupId>net.sf.ehcache</groupId ...