opencv各种小例子

图像腐蚀

#include <opencv2/highgui/highgui.hpp>//OpenCV highgui 模块头文件 ~
#include <opencv2/imgproc/imgproc.hpp>//OpenCV 图像处理头文件 
using namespace cv; // 包含 cv 命名空间
int main() //控制台应用程序的入 口 函数,我们的程序从这里开始
{
Mat srclmage = imread("G:\\QQ图片20190428194331.jpg"); 
imshow("[ 原图 ] ",srclmage);
//进行腐蚀操作 
Mat element = getStructuringElement(MORPH_RECT, Size(15, 15));//getStructuringElement函数的返回值为指定形状和尺寸的结构元素(内核矩阵〉
Mat dstlmage;
erode(srclmage, dstlmage, element);
//显示效果图 
imshow ("[ 效果图 ] ", dstlmage); 
    waitKey(0);
    return 0;
}

图像模糊

#include <opencv2/highgui/highgui.hpp>//OpenCV highgui 模块头文件 ~
#include <opencv2/imgproc/imgproc.hpp>//OpenCV 图像处理头文件 
using namespace cv; // 包含 cv 命名空间
int main() //控制台应用程序的入 口 函数,我们的程序从这里开始
{
Mat srclmage = imread("G:\\QQ图片20190428194331.jpg"); 
imshow("[ 原图 ] ",srclmage);
//进行均值滤波操作
Mat dstlmage;
blur(srclmage, dstlmage, Size(7, 7));
imshow ("[ 效果图 ] ", dstlmage); 
    waitKey(0);
    return 0;
}

canny边缘检测

#include<opencv2/opencv.hpp>
#include <opencv2/imgproc/imgproc.hpp>//OpenCV 图像处理头文件 
using namespace cv; // 包含 cv 命名空间
int main() //控制台应用程序的入 口 函数,我们的程序从这里开始
{
Mat srcImage = imread("G:\\QQ图片20190428194331.jpg"); 
imshow("[ 原图 ] ",srcImage);
Mat dstImage, edge, grayImage;
//创建与src同类型和大小的矩阵(dst)
dstImage.create(srcImage.size(), srcImage.type());
//将原图像转换为灰度图像,Opencv2
cvtColor(srcImage, grayImage, CV_BGR2GRAY);
/*Opencv3
cvtColor(srcImage,grayImage,COLOR_BGR2GRAY);
*/
//先使用3x3内核来降噪
blur(grayImage, edge, Size(3, 3));
//运行Canny算子
Canny(edge, edge, 3, 9, 3);
//显示
imshow ("[ 效果图 ] ", edge); 
    waitKey(0);
    return 0;
}
上一篇:前端面试


下一篇:opencv 1.傅里叶变换