opencv学习之路(14)、形态学之膨胀腐蚀
一、膨胀腐蚀概述(对高亮部分进行操作)
二、膨胀
三、腐蚀
四、代码
1.查看结构元素
1 #include<opencv2/opencv.hpp> 2 #include<iostream> 3 using namespace cv; 4 using namespace std; 5 6 void main(){ 7 Mat element=getStructuringElement(MORPH_RECT,Size(5,5)); 8 Mat element2=getStructuringElement(MORPH_CROSS,Size(5,5)); 9 Mat element3=getStructuringElement(MORPH_ELLIPSE,Size(5,5)); 10 cout<<endl<<element<<endl; 11 cout<<endl<<element2<<endl; 12 cout<<endl<<element3<<endl; 13 }
按下ctrl+F5进行调试
由此可见,一般用MORPH_RECT结构元素。
2.对图像进行膨胀腐蚀操作
1 #include<opencv2/opencv.hpp> 2 using namespace cv; 3 4 void main(){ 5 Mat src=imread("E://1.jpg"); 6 Mat dst; 7 Mat element=getStructuringElement(MORPH_RECT,Size(5,5)); 8 dilate(src,dst,element,Point(-1,-1),1);//膨胀一次,(-1,-1)表示取中心位置 9 //erode(src,dst,element,Point(-1,-1),2);//腐蚀两次 10 11 imshow("src",src); 12 imshow("dst",dst); 13 waitKey(0); 14 }
膨胀效果如下:
腐蚀效果如下: