c# ,emgu4.0版本,识别霍夫圆

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Drawing;
using Emgu.CV;
using Emgu.CV.UI;
using Emgu.CV.CvEnum;
using Emgu.CV.Structure;
namespace ConsoleApp1
{
    class Program
    {
     
        static void Main(string[] args)
        {
          
            String imagePath = "d:\\sq.fu\\Desktop\\2.png";
            Image<Bgr, Byte> src = new Image<Bgr, byte>(@imagePath);
            CvInvoke.Imshow("src", src);
            //将图像转换为灰度
            UMat grayImage = new UMat();
            CvInvoke.CvtColor(src, grayImage, ColorConversion.Bgr2Gray);

            //使用高斯滤波去除噪声
            CvInvoke.GaussianBlur(grayImage, grayImage, new Size(5, 5),3);
            //CvInvoke.Imshow("Blur Image", grayImage);
            //霍夫圆检测
            CircleF[] circles = CvInvoke.HoughCircles(grayImage, HoughType.Gradient, 2.0, 20.0, 100.0, 180.0, 5);
            #region draw circles
            Image<Bgr, Byte> circleImage = src.Clone();
            foreach (CircleF circle in circles)
                circleImage.Draw(circle, new Bgr(Color.Blue), 4);
            CvInvoke.Imshow("HoughCircles", circleImage);
            CvInvoke.WaitKey(0);
            #endregion

        }
    }
}

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值