• 腐蚀膨胀,开闭运算,形态学梯度,顶帽,黑帽


    膨胀dilate
    void dilate(InputArray src,OutputArray dst,InputArray kernel,Point anchor=Point(-1,-1),int iterations=1,int borderType=BORDER_CONSTANT,const Scalar&borderValue=morphologyDefaultBorderValue());
    一般第三个参数用getStructuringElement函数配合使用:int g_nStructElementSize = 3;//结构元素(内核矩阵)的尺寸
    Mat element=getStructuringElement(MORPH_RECT,Size(2g_nStructElementSize+1,2g_nStructElementSize+1),Point(g_nStructElementSize,g_nStructElementSize));

    腐蚀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());

    开运算
    dst=open(src,element)=dilate(erode(src,element))
    闭运算
    dst=close(src,element)=erode(dilate(src,element))
    形态学梯度
    是膨胀图与腐蚀图之差,可以用来保留物体的边缘轮廓
    dst=morph-grad(src,element)=dilate(src,element)-erode(src,element)
    注意:

    顶帽Top Hat
    是原图与开运算的结果图之差,为了突出比原图轮廓周围的区域更明亮的区域
    dst=tophat(src,element)=src-open(src,element)

    黑帽Black Hat
    可以用来分离比临近点暗一些的斑块,效果图有着非常完美的轮廓
    dst=blackhat(src,element)=close(src,element)-src
    核心API函数:morphologyEx()
    void morphologyEx(InputArray src,OutputArray dst,int op,InputArraykernel,Pointanchor=Point(-1,-1),intiterations=1,intborderType=BORDER_CONSTANT,constScalar&vorderValue=moephologyDefaultBorderValue());

  • 相关阅读:
    第五周学习总结
    第四周学习总结
    第三周学习总结
    第二周学习总结
    读《程序是怎样跑起来的》第十二章有感
    读《程序是怎样跑起来的》第十一章有感
    读《程序是怎样跑起来的》第十章有感
    读《程序是怎样跑起来的》第九章有感
    《程序是怎样跑起来的》第九章
    《程序是怎样跑起来的》第八章
  • 原文地址:https://www.cnblogs.com/shuguomeifuguo/p/11979957.html
Copyright © 2020-2023  润新知