Opencv3 的开发环境安装和导入请看
http://blog.csdn.net/sileixinhua/article/details/71175748
所有的OpenCV3_C++实例代码请看
https://github.com/sileixinhua/OpenCV_C-_tutorials
实例
#include "stdafx.h"
#include <opencv2/opencv.hpp>
#pragma comment(lib,"opencv_world330.lib")
//using namespace cv;
//using namespace std;
//去掉以上两行代码注释之后就可以不用在下面的代码中加上cv::和std::
//cv::为OpenCV的函数库
//std::为C++的标准函数库
int DetectConers() {
cv::Mat src, gray, dst;
const int maxCorners = 50, blockSize = 3;
const double qualityLevel = 0.01, minDistance = 20.0, k = 0.04;
const bool useHarrisDetector = false;
std::vector< cv::Point2f > corners;
const char* filename = "C:\\Code\\FirstOpenCVProgramming\\lena.jpg";
cv::imread(filename).copyTo(src);
if (src.empty()) {
throw("Faild open file.");
}
dst = src.clone();
cvtColor(src,gray,cv::COLOR_RGB2GRAY);
goodFeaturesToTrack(gray, corners, maxCorners, qualityLevel,
minDistance, cv::Mat(), blockSize, useHarrisDetector, k);
//图像上角检测
for (size_t i = 0; i < corners.size(); i++) {
circle(dst,corners[i],8,cv::Scalar(255,255,0),2);
}
//图像上确认有角的地方画圈
cv::imshow("src", src);
cv::imshow("dst", dst);
cv::imwrite("C:\\Code\\FirstOpenCVProgramming\\DetectConers.jpg", dst);
cv::waitKey();
return 0;
}
int main()
{
//以下的方法如果想运行,直接把前头的注释去掉即可
//运行代码的时候请改掉filename里的地址
//我的opencv是安装在C盘目录下
//一些目录地址请自行修改一下
DetectConers(); // 图像上角检测
return 0;
}