安装
sudo apt-get install libopencv-dev libcv-dev
Demo
这是一个获取图片的轮廓
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;//声明使用的命名空间
const char * source_window = "source"; //声明原图显示的窗口名称
const char* canny_window = "canny";//声明处理过后的图片显示的窗口名称
int main() {
Mat source = imread("fifth.jpg", 1); //加载一个图片到Mat中
Mat temp(source.rows, source.cols, CV_8UC1); //根据原有的一个Mat创建一个新的单通道的Mat
cvtColor(source, temp, COLOR_BGR2GRAY);//将原来的彩色图片转化成灰色图片
//Canny方法要求输入的图片为单通道的Mat,所以才有了上一步的转换,在OpenCV中,很多的处理都是讲原有
//的彩色图片转化成灰色在进行处理的
//进行轮廓提取。并将提取出来的轮廓图重新存储在temp中,相当于
//直接改动temp对应的内存的值
//50 ,200为阈值
Canny(temp, temp, 50, 200);
//将temp中的数据转化成对应格式的图片并存储在指定的文件中,默认存在当前项目路径下
imwrite("fifth_canny.jpg", temp);
//用于显示原图和处理过的图片
cvNamedWindow(source_window);
cvNamedWindow(canny_window);
imshow(source_window, source);
imshow(canny_window, temp);
waitKey(5*1000);//等待5秒,5秒后自动销毁显示窗口,结束主程序
cvDestroyWindow(source_window);
cvDestroyWindow(canny_window);
return 0;
}
来源:http://blog.csdn.net/u011043551/article/details/72853535
编译
g++ `pkg-config --cflags opencv` CppPro.cpp `pkg-config --libs opencv` -o main