zl程序教程

您现在的位置是:首页 >  后端

当前栏目

OpenCV的C#版本EmguCV-1、安装和环境配置

c#Opencv安装配置 环境 版本
2023-09-11 14:16:29 时间

目录

一、前言

二、EmguCV安装和配置

1、EmguCV exe软件安装

2、EmguCV库文件方法

三、C#工程中引用

工程下载连接


一、前言

在.NET中使用EmguCV可以分为两种方式,一种就是将下载的exe程序安装、配置好后在工程中应用,另一种就是将DLL库文件和运行需要的文件直接拷贝到工程中。

二、EmguCV安装和配置

1、EmguCV exe软件安装

EmguCV是OpenCV的.NET版本,支持C#、VB.NET等编程语言。本次测试软件环境为win10+VS2013+EmguCV3.0。

EmguCV各个版本官方下载地址:Emgu CV - Browse /emgucv at SourceForge.net

EmguCV3.0网盘下载

链接:https://pan.baidu.com/s/1iiIQamh6qSaY6RGonbtFKw 
提取码:hccj

(1)双击exe安装程序,然后点击下一步

 (2)选择安装路径,路径名称不要使用中文,然后点击下一步开始解压安装

 (3)计算机属性配置

选择“计算机”——>右击“属性”——>“高级系统设置”——>“高级”——>“环境变量”——>“系统变量”,双击Path添加安装目录(如“C:\EmguCV\emgucv-windows-universal 3.0.0.2157\bin\x64”)中间用分号英文隔开。(32位操作系统选“…\bin\86”)

2、EmguCV库文件方法

 添加库文件引用,若Emgu.CV.UI已经存在则先删除再添加,否则程序运行出错。

复制到工程Debug或者Release文件夹下面,否则无法运行

在工具箱中添加EmguCV选项卡,然后添加Emgu.CV.UI.dll,即可添加对应的控件

 

三、C#工程中引用

1、创建winform工程,使用添加库文件方法

下载库文件

https://download.csdn.net/download/panjinliang066333/85711171

将该库文件夹复制指定路径位置

2、在工程添加引用选中的Dll库文件,若Emgu.CV.UI已经存在则先删除再添加,否则程序运行出错。

3、Winform程序

不管是控制台程序还是Winform程序,都要将该文件夹复制到Debug或者Release文件夹下面。

 

UI界面

添加3个imageBox(Emgu.CV.UI.ImageBox)

设置背景黑色、SizeMode为Zoom

 代码

        private void Form1_Load(object sender, EventArgs e)
        {
            //简单图像处理
            Mat img = CvInvoke.Imread(@"C:\Users\Administrator\Desktop\EmguCV Test\Image\LZL.jpg", LoadImageType.Unchanged);
            if (img.IsEmpty)
            {
                Console.WriteLine("can not load the image \n");
            }
            //CvInvoke.Imshow("Image", img);
            imageBox1.Image = img;


            //转换为灰度图像
            Mat grayImg = new Mat();            
            CvInvoke.CvtColor(img, grayImg, ColorConversion.Rgb2Gray);
            //CvInvoke.Imshow("Gray Image", grayImg);
            imageBox2.Image = grayImg;


            //查找边缘
            Mat sobelImg = new Mat();
            CvInvoke.Sobel(grayImg, sobelImg, grayImg.Depth, 1, 0);
            //使用canny算子查找边缘
            Mat cannyImg = new Mat();
            CvInvoke.Canny(grayImg, cannyImg, 20, 40);
            //CvInvoke.Imshow("Canny Image", cannyImg);
            imageBox3.Image = cannyImg;

        }

运行

4、创建控制台测试工程

程序

        static void Main(string[] args)
        {
            //简单图像处理
            Mat img = CvInvoke.Imread(@"C:\Users\Administrator\Desktop\EmguCV Test\Image\LZL.jpg", LoadImageType.Unchanged);
            if (img.IsEmpty)
            {
                Console.WriteLine("can not load the image \n");
            }
            CvInvoke.Imshow("Image", img);
;
            Mat grayImg = new Mat();
            //转换为灰度图像
            CvInvoke.CvtColor(img, grayImg, ColorConversion.Rgb2Gray);
            CvInvoke.Imshow("Gray Image", grayImg);
            //sobel
            Mat sobelImg = new Mat();
            CvInvoke.Sobel(grayImg, sobelImg, grayImg.Depth, 1, 0);
            //使用canny算子查找边缘
            Mat cannyImg = new Mat();
            CvInvoke.Canny(grayImg, cannyImg, 20, 40);
            CvInvoke.Imshow("Canny Image", cannyImg);

            CvInvoke.WaitKey(0); 

        }

运行

工程下载连接

https://download.csdn.net/download/panjinliang066333/85711221