【小白】Open-CV 学习笔记 - 6.3 形态学滤波

3.1 形态学概述

数学形态学

  • 建立在格论核拓扑学基础上的图像分析学科,基础的运算包括:二值腐蚀和膨胀,二值开闭运算,骨架抽取,极限腐蚀,击中击不中变换,形态学梯度,Top-hat变换,颗粒分析,流域变换,灰值腐蚀和膨胀,灰值开闭运算,灰值形态学梯度等

膨胀和腐蚀

  • 消除噪声
  • 分割出独立的图像元素,在图像中连接相邻的元素
  • 寻找图像中的明显的极大值或极小值区域
  • 求出图像的梯度

3.2 膨胀
膨胀(dilate)就是求局部的最大值的操作。从数学的角度就是图像与核进行卷积。
核可以是任何形状核大小,它拥有一个单独定义出来的参考点,称为锚点,可以把核视为模板或者掩码
**数学公式**
3.3 腐蚀

腐蚀就是求局部最小值的操作。
在这里插入图片描述

3.4 相关API函数讲解

1 膨胀:dilate函数

void dilate(InputArray src, OutputArray dst, InputArray kernel, 
	Point anchor = Point(-1,-1),int iteration = 1,int borderType = BORDER_CONSTANT,
	const Scalar& borderValue=morphologyDefaultBorderValue());
  • InputArray 类型的kernel,膨胀操作的核,当为NULL,表示使用参考点位于3×3的核。使用- getStructuringElement配合这个参数使用,返回指定形状和尺寸的结构元素。矩形:MORPH_RECT,交叉形:MORPH_CROSS,椭圆形MORPH_ELLIPSE
  • Point类型的anchor,锚的位置,表示锚的位置
  • int类型的iterations,迭代使用erode()函数的次数
  • int类型的borderType用于推断图像外部像素的某种边界模式

2 腐蚀:erode函数

void erode(InputArray src, OutputArray dst, InputArray kernal, Point anchor = Point(-1,-1),
	int iterations = 1, int borderType = BORDER_CONSTANT,
	const Scalar & borderValue=morphologyDefualtBorderValue())

类型同上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值