形态学滤波(1):腐蚀与膨胀

一、膨胀:dilate函数

1 void dilate( InputArray src, OutputArray dst, InputArray kernel,
2                           Point anchor = Point(-1,-1), int iterations = 1,
3                           int borderType = BORDER_CONSTANT,
4                           const Scalar& borderValue = morphologyDefaultBorderValue() );

 

 

 

 1 int main()
 2 {
 3     //载入原图
 4     Mat image = imread("C:\\Users\\Nelsoner\\Desktop\\Camera Roll\\05.jpg");
 5 
 6     //创建窗口
 7     namedWindow("【原图】");
 8     namedWindow("【膨胀效果图】");
 9 
10     imshow("【原图】", image);
11 
12     //获取自定义核
13     Mat element = getStructuringElement(MORPH_RECT, Size(15, 15));
14     Mat out;
15     //进行膨胀操作
16     dilate(image, out, element);
17 
18     //显示效果图
19     imshow("【膨胀效果图】", out);
20 
21     waitKey();
22     return 0;
23 }

原图:

 

  效果图:

 

二、腐蚀:erode函数

1 void erode( InputArray src, OutputArray dst, InputArray kernel,
2                          Point anchor = Point(-1,-1), int iterations = 1,
3                          int borderType = BORDER_CONSTANT,
4                          const Scalar& borderValue = morphologyDefaultBorderValue() );

 

参数和膨胀相同,代码也几乎相同

 效果图:

  

 

posted @ 2017-04-28 20:15  蒋酱酱  阅读(796)  评论(1编辑  收藏  举报