我是靠谱客的博主 过时棒球,这篇文章主要介绍OpenCV均值滤波+膨胀腐蚀+Canny,现在分享给大家,希望可以做个参考。

转自:https://blog.csdn.net/routine__007/article/details/80444840

1. 图像显示

复制代码
1
2
3
4
5
6
7
8
9
#include<opencv2opencv.hpp> using namespace cv; //包含cv命名空间 void main(){ Mat img = imread("1.jpg"); //载入图片 imshow("【原始图】", img); //显示图像 waitKey(0); //等待任意按键按下 }

在这里插入图片描述
2. 图像腐蚀
腐蚀,即用图像中的暗色部分“腐蚀”掉图像中的高亮部分。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<opencv2highguihighgui.hpp> //OpenCV highgui模块头文件 #include<opencv2imgprocimgproc.hpp> //OpenCV 图像处理头文件 using namespace cv; //包含cv命名空间 int main(){ //载入图片 Mat img = imread("1.jpg"); //显示原图 imshow("【原图】腐蚀操作", img); //进行腐蚀操作 Mat element = getStructuringElement(MORPH_RECT, Size(15, 15)); Mat dstimg; erode(img, dstimg, element); //显示效果图 imshow("【效果图】腐蚀操作", dstimg); waitKey(0); return 0; }

在这里插入图片描述
3. 膨胀
膨胀,和腐蚀相反,从图像直观来看,就是将图像光亮部分放大,黑暗部分缩小。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<opencv2highguihighgui.hpp> //OpenCV highgui模块头文件 #include<opencv2imgprocimgproc.hpp> //OpenCV 图像处理头文件 using namespace cv; //包含cv命名空间 int main(){ //载入图片 Mat img = imread("1.jpg"); //显示原图 imshow("【原图】膨胀操作", img); //进行膨胀操作 Mat element = getStructuringElement(MORPH_RECT, Size(15, 15)); Mat dstimg; dilate(img, dstimg, element); //显示效果图 imshow("【效果图】膨胀操作", dstimg); waitKey(0); return 0; }

在这里插入图片描述
4. 均值滤波

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<opencv2highguihighgui.hpp> #include<opencv2imgprocimgproc.hpp> using namespace cv; int main(){ //载入原图 Mat img = imread("1.jpg"); //显示原图 imshow("【原图】均值滤波", img); //进行均值滤波操作 Mat dstimg; blur(img, dstimg, Size(7, 7)); //显示效果图 imshow("【效果图】均值滤波", dstimg); waitKey(0); return 0; }

在这里插入图片描述

5. canny边缘检测

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<opencv2highguihighgui.hpp> #include<opencv2imgprocimgproc.hpp> using namespace cv; int main(){ //载入原图 Mat srcImage = imread("1.jpg"); //显示原图 imshow("【原图】Canny边缘检测", srcImage); Mat dstImage, edge, grayImage; //【1】创建于src同类型和大小的矩阵dst dstImage.create(srcImage.size(), srcImage.type()); //【2】将原图像转换成灰度图像 cvtColor(srcImage, grayImage, COLOR_BGR2GRAY); //【3】先使用3*3内核来降噪 blur(grayImage, edge, Size(3, 3)); //【4】运行Canny算子 Canny(edge, edge, 3, 9, 3); //显示效果图 imshow("【效果图】Canny边缘检测", edge); waitKey(0); return 0; }

在这里插入图片描述

最后

以上就是过时棒球最近收集整理的关于OpenCV均值滤波+膨胀腐蚀+Canny的全部内容,更多相关OpenCV均值滤波+膨胀腐蚀+Canny内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部