首先先搭建OpenCv3的环境。这些网上有许多可以查找,本内容是初级书上教材。
首先包含头文件。
#include <opencv2\opencv.hpp>//OpenCv highgui 模块头文件
#include<opencv2/imgproc/imgproc.hpp>//OpenCv 图像处理文件
#include<iostream>
using namespace std;
using namespace cv;//包含Cv命名空间
1,简单的测试载图读图
Mat image = imread("D:\\openCvTest\\2.jpg"); //存放自己图像的路径
imshow("显示图像", image);
waitKey(0);
这个很直观就不放效果图了
2,腐蚀图像
//载入原图
Mat SrcImage = imread("1.jpg");
//显示原图
imshow("【原图】腐蚀操作", SrcImage);
//进行腐蚀操作
Mat element = getStructuringElement(MORPH_RECT, Size(15, 15));
Mat dstImage;
erode(SrcImage, dstImage, element);
//显示效果图
imshow("【效果图】腐蚀操作", dstImage);
waitKey(0);
这个是原图,首先这张加载的原图需要和Cpp同一路劲下
这个是腐蚀后的图
3。图像模糊
//载入原始图
Mat ScrImage = imread("1.jpg");
//显示原图
imshow("均值滤波【原图】", ScrImage);
//进行均值滤波操作
Mat dstImage;
blur(ScrImage, dstImage, Size(7, 7));
//显示效果图
imshow("均值滤波【效果图】", dstImage);
waitKey(0);
效果图展现
//载入原始图
Mat ScrImage = imread("1.jpg");
//显示原图
imshow("【原始图】Canny边缘检测", ScrImage);
Mat dstImage, edge, grayImage;//参数定义
//创建于src同类型和大小的矩阵(dst)
dstImage.create(ScrImage.size(), ScrImage.type());
//将原图像转换为灰度图像
//OPenCv3版本代码
cvtColor(ScrImage, grayImage, COLOR_BGR2GRAY);
//先使用3*3内核来降噪
blur(grayImage, edge, Size(3, 3));
//运行Canny算子
Canny(edge, edge,3,9,3);
//显示效果图
imshow("【效果图】Canny边缘检测",edge);
waitKey(0);
边缘检测效果图