opencv 数学形态学(1) 腐蚀运算:erode 函数

                opencv  数学形态学(1) 腐蚀运算:erode  函数

 

erode 函数原型如下:

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

    使用 erode 函数,一般我们只需要填前面的三个参数,后面的四个参数都有默认值。而且往往结合 getStructuringElement 一起使用 

 其中:
 第一个参数InputArray 类型的 src,输入图像,即源图像,填 Mat 类的对象即可。图像通道的数量可以是任意的,但图像深度应为 CV_8U,CV_16U,CV_16S,CV_32F 或 CV_64F 其中之一。

     第二个参数,OutputArray 类型的 dst,即目标图像,需要和源图片有一样的尺寸和类型。

     第三个参数,InputArray 类型的 kernel,腐蚀操作的内核。若为 NULL 时,表示的是使用参考点位于中心 3x3 的核。我们一般使用函数 getStructuringElement 配合这个参数的使用。getStructuringElement 函数会返回指定形状和尺寸的结构元素(内
核矩阵)。(具体看上文中浅出部分 dilate 函数的第三个参数讲解部分)

      第四个参数,Point 类型的 anchor,锚的位置,其有默认值(-1,-1),表示锚位于单位(element)的中心,我们一般不用管它。

      第五个参数,int 类型的 iterations,迭代使用 erode()函数的次数,默认值为 1。

      第六个参数,int 类型的 borderType,用于推断图像外部像素的某种边界模式。注意它有默认值 BORDER_DEFAULT。

      第七个参数,const Scalar&类型的 borderValue,当边界为常数时的边界值,有默值 morphologyDefaultBorderValue(),一般我们不用去管他。需要用到它时,可以看官方文档中的 createMorphologyFilter()函数得到更详细的解释。

 

希望对你有帮助。

 

 


      。

你可能感兴趣的:(计算机视觉,"进阶",计算机视觉,"入门,",---,OpenCv,opencv,数学形态学(1),腐蚀运算,erode,函数)