编辑
2025-09-26
C#
00

在计算机视觉领域,物品识别和计数是一项常见的任务。OpenCvSharp 是 OpenCV 的 .NET 封装,使得我们可以在 C# 中方便地使用 OpenCV 的功能。本文将详细介绍如何使用 OpenCvSharp 识别物品数量,并提供一个完整的示例。

安装OpenCvSharp

在开始之前,确保你已经安装了 OpenCvSharp。你可以使用 NuGet 包管理器来安装它。在 Visual Studio 中打开“工具” -> “NuGet 包管理器” -> “管理解决方案的 NuGet 包”,然后搜索并安装 OpenCvSharp4OpenCvSharp4.runtime.win

或者,你可以在项目文件中添加以下内容:

XML
<PackageReference Include="OpenCvSharp4" Version="4.5.3.20210404" /> <PackageReference Include="OpenCvSharp4.runtime.win" Version="4.5.3.20210404" />
编辑
2025-09-26
C#
00

OpenCvSharp是OpenCV库的C#封装,提供了丰富的图像处理功能。模板匹配是一种在大图像中查找小模板图像位置的技术。在这篇文章中,我们将介绍如何使用OpenCvSharp进行模板匹配,并考虑目标尺寸大小的匹配。

以下是实现模板匹配的详细步骤:

  1. 安装 OpenCvSharp
  2. 加载图像和模板
  3. 进行模板匹配
  4. 计算匹配结果的尺寸
  5. 在接受范围内绘制匹配结果

安装 OpenCvSharp

你可以通过NuGet包管理器来安装OpenCvSharp。运行以下命令:

Bash
Install-Package OpenCvSharp4 Install-Package OpenCvSharp4.runtime.win

实例一

加载图像和模板

目标图

image.png

模板

编辑
2025-09-26
C#
00

摘要

在WinForms应用程序中使用C#和OpenCvSharp进行图片裁剪,可以创建一个简单的WinForms界面来实现这个功能。

Mat类Mat 是OpenCvSharp中用于表示图像和矩阵的主要类。你可以使用它来加载、保存、裁剪和处理图像。

  • Mat(string fileName):用于加载图像文件。
  • SaveImage(string fileName):用于保存图像到文件。
  • Rect:用于表示矩形区域。
  • new Mat(Mat source, Rect roi):用于裁剪图像。

正文

nuget 安装 OpenCVSharp4

这里OpenCvSharp4.runtime.win 库需要引用,不然会报错

DllNotFoundException: Unable to load DLL 'OpenCvSharpExtern' or one of its dependencies

OpenCvSharp.Extensions 库

编辑
2025-09-26
C#
00

摘要

在计算机视觉领域中,图像处理和分析是一个非常重要的应用。OpenCVSharp 是一个使用 C++ 和 .NET 技术实现的开源计算机视觉库,它提供了丰富的图像处理和分析功能。在 OpenCVSharp 中,Mat 是一个基本的图像数据结构,它可以存储任意类型的数据,包括图像数据。Mat 对象是一个多维数组,其中每个元素都表示一个像素。Mat 对象提供了很多有用的方法,可以方便地读取和修改图像的像素值。 在 OpenCVSharp 中,可以使用 Mat 对象的 .At 方法来读取和修改图像的像素值。这个方法的第一个参数是要读取或修改的像素的位置,可以是行号和列号,也可以是二进制格式的偏移量。

正文

nuget 安装 OpenCVSharp

这里OpenCvSharp4.runtime.win 库需要引用,不然会报错

DllNotFoundException: Unable to load DLL 'OpenCvSharpExtern' or one of its dependencies

OpenCvSharp.Extensions 库

编辑
2025-09-26
C#
00

摘要

在现代计算机视觉领域中,使用OpenCVSharp调用本地摄像头是一项非常重要的技能。OpenCVSharp是一个跨平台的开源计算机视觉库,它支持多种编程语言,包括C++、Python、Java等。本文将介绍如何使用C# 下OpenCVSharp调用本地摄像头,并介绍相关的基本类和API。

使用OpenCvSharp调用本地摄像头,用到基本类

VideoCapture类

  • VideoCapture(string filename):构造函数,用于打开视频文件。
  • VideoCapture(int device):构造函数,用于打开摄像头设备,其中device是摄像头的索引。
  • IsOpened():检查VideoCapture是否成功打开。
  • Read(Mat frame):读取下一帧视频并将其存储在Mat对象中。
  • Release():释放VideoCapture对象和相关资源。

正文

nuget 安装 OpenCVSharp4

这里OpenCvSharp4.runtime.win 库需要引用,不然会报错

DllNotFoundException: Unable to load DLL 'OpenCvSharpExtern' or one of its dependencies

OpenCvSharp.Extensions 库