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动态图所示:
c# opencvsharp 截图,OpenCV,C# WinForm和WPF,编程语言学习,c#,开发语言,opencv
可以看到安装完OpenCvSharp4包之后我们的App.Config文件中有了相关的依赖包,目前的最新版本是4.9.0.20240103,如下图所示:
![OpenCvSharp4c# opencvsharp 截图,OpenCV,C# WinForm和WPF,编程语言学习,c#,开发语言,opencv

接下来我们在C#项目中使用OpenCvSharp4库读取本地图片并显示,
首先我们下载一副数字图像处理中常用的lena.png
c# opencvsharp 截图,OpenCV,C# WinForm和WPF,编程语言学习,c#,开发语言,opencv
将下载后的图像重命名为Lena.png放到项目对应目录,比如E:\SoftDevelop\CPlus\VS2022Projects\CSharpExamples\ReadImageUseOpenCvSharp4\ReadImageUseOpenCvSharp4\bin\Debug\images目录下,如下图所示:

c# opencvsharp 截图,OpenCV,C# WinForm和WPF,编程语言学习,c#,开发语言,opencv

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();    // 销毁所有窗口
        }
    }
}

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

运行程序

接下来运行上述代码,如下图所示:
c# opencvsharp 截图,OpenCV,C# WinForm和WPF,编程语言学习,c#,开发语言,opencv文章来源地址https://www.toymoban.com/news/detail-853417.html

参考资料

  • https://github.com/shimat/opencvsharp
  • C# 无法加载 DLL“OpenCvSharpExtern

到了这里,关于C#中使用OpenCvSharp4库读取本地图像并显示的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在C#中初测OpencvSharp4

    首先,我们新建一个工程,然后就是给这个工程配置OpenCV了,最简单的方法还是Nuget,来我们右键一个Nuget: 打开Nuget后,你可以直接输入OpenCVSharp4来查找,当然,如果你只是输入OpenCV那显示的选项足够使你眼花缭乱。这里我们还是直接一些输入OpenCVSharp4,直接安装箭头所指四

    2024年02月16日
    浏览(36)
  • C#使用OpenCv(OpenCVSharp)使用摄像头视频显示和录制及图片保存、本地视频显示

    本篇实例讲解基于OpenCvSharp实现了摄像头视频显示、录制及截图、视频保存,本地视频的显示功能。 目录 创建winform项目添加控件 NuGet安装opencvsharp  代码  运行效果 实例实现过程

    2024年02月15日
    浏览(44)
  • C#结合OpenCVSharp4图片相似度识别

    需求背景:需要计算两个图片的相似度,然后将相似的图片进行归纳 由于我是CRUD后端仔,对图像处理没什么概念。因此网上调研了几种相似度算法分析其适用场景。 直方图算法 获取要比较的2个图片的直方图数据,然后再将直方图数据归一化比较,最终得到一个相似指数,

    2024年02月09日
    浏览(49)
  • VC++中使用OpenCV读取图像、读取本地视频、读取摄像头并实时显示

    最近闲着跟着油管博主murtazahassan,学习了一下LEARN OPENCV C++ in 4 HOURS | Including 3x Projects | Computer Vision,对应的Github源代码地址为:Learn-OpenCV-cpp-in-4-Hours OpenCV是一个开源的计算机视觉库,其官网地址为:https://opencv.org/,对应Github源码地址为:https://github.com/opencv/opencv,目前来说

    2024年01月17日
    浏览(56)
  • c#Winform使用Opencvsharp4实现简易人脸识别

         环境配置: vs2019 , .Net FrameWork 4.8  Opencvsharp4       在Nuget内下载最新的Opencvsharp4即可,        大概说一下我所理解的人脸识别的原理吧,就是先给训练器一些训练数据,就是我们告诉训练器这些数据分别对应的是哪些人,然后训练器就记住这些图像的特征以及对

    2024年02月07日
    浏览(40)
  • C# - Opencv应用(2) 之矩阵Mat使用[矩阵创建、图像显示、像素读取与赋值]

    C# - Opencv应用(2) 之矩阵Mat使用[矩阵创建、图像显示、像素读取与赋值] 矩阵创建 图像显示与保存 像素读取与赋值 新建sample02项目,配置opencv4相关包,新建 .cs 进行测试 两种常用的图像遍历方式 灰度图操作 三通道图操作 完整代码

    2024年02月03日
    浏览(43)
  • C#使用OpenCv(OpenCVSharp)图像全局二值化处理实例

    本文实例演示C#语言中如何使用OpenCv(OpenCVSharp)对图像进行全局二值化处理。 目录 图像二值化原理 函数原型 参数说明 实例 效果

    2024年02月13日
    浏览(48)
  • C#使用OpenCv(OpenCVSharp)图像局部二值化处理实例

      本文实例演示C#语言中如何使用OpenCv(OpenCVSharp)对图像进行局部二值化处理。 目录 图像二值化原理 局部二值化 自适应阈值 实例 效果

    2024年02月13日
    浏览(50)
  • C#使用OpenCv(OpenCVSharp)图像直方图均衡化处理实例

    本文实例演示C#语言中如何使用OpenCv(OpenCVSharp)对图像进行直方图均衡化处理。 直方图均衡化原理 直方图均衡化(Histogram Equalization)是一种常用的图像增强技术,用于改善图像的对比度和亮度分布。它通过重新分配图像灰度级的像素值,使得图像的直方图在灰度范围内更加

    2024年02月07日
    浏览(85)
  • C#使用OpenCv(OpenCVSharp)图像处理实例:亮度、对比度、灰度

    本文实例演示C#语言中如何使用OpenCv(OpenCVSharp)对图像进行亮度、对比度、灰度处理。 目录 亮度和对比度原理 灰度 实例 图像亮度通俗理解便是图像的明暗程度,数字图像 f(x,y) = i(x,y) r(x, y) ,如果灰度值在[0,255]之间,则 f 值越接近0亮度越低,f 值越接近255亮度越

    2024年02月13日
    浏览(68)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包