opencv 3.0 形态学运算 erode dilate

腐蚀和膨胀是相对于白色部分的(RGB图是浅色部分的)

膨胀(dilate) 局部最大值(浅色)扩大一圈。

腐蚀(erode) 局部最小值(深色)扩大一圈。

开运算(open) 纤细处分离物体,消除小黑点

闭运算(close) 连接小的空隙

形态学梯度(morph-grad) 将突出团块(blob)的边缘

顶帽(top-hat) 将突出比原轮廓亮的部分

黑帽(black-hat) 将突出比原轮廓暗的部分


算法:

开运算 = 腐蚀 + 膨胀

闭运算 = 膨胀 + 腐蚀

形态学梯度 = 膨胀 - 腐蚀

顶帽 = 原图 - 开运算

黑帽 = 闭运算 - 原图


morphologyEx() 形态学运算

MORPH_OPEN 开运算

MORPH_CLOSE 闭运算

MORPH_GRADIENT 形态学梯度

MORPH_TOPHAT 顶帽

MORPH_BLACKHAT 黑帽

MORPH_ERODE 腐蚀

MORPH_DILATE 膨胀


    Mat img = imread("E:/koala.jpg");
    Mat eroded;
    Mat element(7, 7, CV_8U, Scalar(1));
    erode(img, eroded, element);
    imshow("MyWindow", eroded);
    waitKey(0);

    Mat dilated;
    element = getStructuringElement(MORPH_RECT, Size(7,7));
    dilate(img, dilated, element);
    imshow("MyWindow", dilated);
    waitKey(0);

getStructuringElement 可以生成多种窗口形状

MORPH_RECT 矩形

MORPH_CROSS 十字

MORPH_ELLIPSE 椭圆


原图


腐蚀:深色


膨胀:浅色


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值