C#OpencvSharp腐蚀与膨胀

近期突然需要将图像进行腐蚀处理 ,一开始没区分C++的opencv 和C# opencvsharp 这两个虽然是一样的但语言不同注意语言不同。而且我VS还没有安装C++环境导致我查询了个把小时的C++opencv ,结果显然不尽人意,然后又想我的包是opencvsharp 然后就去查opencvsharp的内容 好了 能理解了但网上都不全 要一个一个踩坑,就像一开始opencv中的内核 和opencvsharp内核写法不同又没有手册,只能盲目踩坑(只能说学习能力不够)。网上好多不全不是这里没有就是那里没有 今天小编在这里从新整理了一下也有很多不知在评论区指出

第一步去下载OpencvSharp的NuGet包 具体请参考http://t.csdn.cn/qlT8L安装环境

腐蚀:using OpenCvSharp;


       Mat src, erosion_dst, dilation_dst;
        int erosion_elem = 0;
        int erosion_size = 1; ///腐蚀的大小 


            src = OpenCvSharp.Cv2.ImRead(path, OpenCvSharp.ImreadModes.Color);
            erosion_dst = new OpenCvSharp.Mat();//注意目标图像变量
            dilation_dst = new OpenCvSharp.Mat();/注意目标图像变量
            OpenCvSharp.MorphShapes erosion_type = 0;

            if (erosion_elem == 0)
            {
                erosion_type = OpenCvSharp.MorphShapes.Rect;//内核矩形
            }
            else if (erosion_elem == 1)
            {
                erosion_type = OpenCvSharp.MorphShapes.Cross;//内核十字架
            }
            else if (erosion_elem == 2)
            {
                erosion_type = OpenCvSharp.MorphShapes.Ellipse;//内核椭圆
            }
            OpenCvSharp.Mat element = OpenCvSharp.Cv2.GetStructuringElement(erosion_type,
                                 new OpenCvSharp.Size(2 * erosion_size + 1, 2 * erosion_size + 1),
                                 new OpenCvSharp.Point(erosion_size, erosion_size));
            OpenCvSharp.Cv2.Erode(src, dilation_dst, element);//腐蚀
            OpenCvSharp.Cv2.Dilate(dilation_dst, erosion_dst, element);//膨胀

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值