当前位置:   article > 正文

C#中使用OpenCvSharp4库读取本地图像并显示

C#中使用OpenCvSharp4库读取本地图像并显示

C#中使用OpenCvSharp4库读取本地图像并显示

OpenCvSharp4是基于.NET 的 OpenCV 包装器OpenCV源代码是采用C和C++写的,目前对于C++和Python开发者相对来说比较友好,对于Python开发者而言官方提供了opencv-python使用。
首选我们使用Visual Studio 2022创建一个.Net控制台程序ReadImageUseOpenCvSharp4,然后安装OpenCvSharp4安装包,我们在Visual Studio 2022中依次点击【项目】菜单->【管理 NuGet 程序包(N)】,如下面的Gif动态图所示:
Visual Studio 2022中C#控制台项目安装OpenCvSharp4库
可以看到安装完OpenCvSharp4包之后我们的App.Config文件中有了相关的依赖包,目前的最新版本是4.9.0.20240103,如下图所示:
![OpenCvSharp4包

接下来我们在C#项目中使用OpenCvSharp4库读取本地图片并显示,
首先我们下载一副数字图像处理中常用的lena.png
维基百科中的lena图片,512*512
将下载后的图像重命名为Lena.png放到项目对应目录,比如E:\SoftDevelop\CPlus\VS2022Projects\CSharpExamples\ReadImageUseOpenCvSharp4\ReadImageUseOpenCvSharp4\bin\Debug\images目录下,如下图所示:

Lena.png

C#中使用OpenCvSharp4库读取本地图像并显示很简单,对应的C#代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OpenCvSharp;  // 导入OpenCvSharp命名空间

namespace ReadImageUseOpenCvSharp4
{
    public class Program
    {
        static void Main(string[] args)
        {
            Mat img = Cv2.ImRead("images/lena.png");    // 读取本地图像
            Cv2.ImShow("Lena Image", img);

            Cv2.WaitKey(0); // 永久等待,直到用户输入按键退出

            Cv2.DestroyAllWindows();    // 销毁所有窗口
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

直接运行以上代码发现报错了,错误如下:
运行程序报错
发现除了安装OpenCvSharp4这个包之外,还得安装OpenCvSharp4.runtime.win这个依赖包,如下图所示:
OpenCvSharp4.runtime.win
这一点在https://github.com/shimat/opencvsharp这个源代码地址首页有相关描述,如下图所示:
Windows下安装OpenCvSharp4
有关Windows下安装OpenCvSharp4包可以直接将OpenCvSharp4OpenCvSharp4.runtime.win这两个NuGet包添加到项目中。你也可以使用OpenCvSharp4.Windows代替。

运行程序

接下来运行上述代码,如下图所示:
运行结果

参考资料

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/45138?site
推荐阅读
相关标签
  

闽ICP备14008679号