形态学滤波
数学形态
Mathematical morpgology
这两个操作针对的是对图像的高亮部分,而不是黑色部分
膨胀
dilate 求局部最大值的操作,膨胀或腐蚀操作从数学来讲就是将图像与核进行卷积。
核B与图片卷积,B覆盖区域中像素点最大值赋给A目标点,是图像中高亮区域逐渐增长。
腐蚀
erode与膨胀是相反的操作,求局部最小值。
相关源码分析
erode dilate都是调用了morphOp函数,只不过第一个参数不一样
(MORPH_ERODE,MORPH_DILATE)
相关核心API函数
- dilate函数
dilate()
-
参数1 src Mat类,深度CV_8U CV_16U CV_16S CV_64F
-
参数2 dst
-
参数3 kernal 膨胀操作的核,当为NULL时候,表示的是参考点位于3*3的核
-
参数4 Point anchor
-
参数5 int iterations 迭代使用dilate()函数的次数,默认1
-
参数6 int borderType
-
参数7 const Scalar& borderValue 有默认值,不用管
-
使用函数 getStructingElement 返回指定形状和尺寸的结构元素(内核矩阵),来获取自定义核
-
参数1 有三种形状可以选:MORPH_RECT MORPH_CROSS MORPH_ELLIPSE
-
参数2 内核尺寸
-
参数3 锚点位置
erode函数
形参和dilate完全一样,不再赘述
本文深入探讨了形态学滤波的原理与应用,包括膨胀与腐蚀两种基本操作,以及它们如何通过局部最大值和最小值改变图像特征。文章详细解释了dilate与erode函数的参数设置,并提供了OpenCV中实现这些操作的具体方法。
540

被折叠的 条评论
为什么被折叠?



