2025-09-26
C#
00

在计算机视觉领域,边缘检测是用于识别图像对象边界的一种重要技术。本文将介绍如何使用 OpenCvSharp(OpenCV 在 C# 上的封装库)来识别图像中的对象数量,并将每个对象用不同颜色的框标记出来。

前提条件

在开始之前,请确保你已经安装了以下工具和库:

  1. Visual Studio 或 Rider 等 C# 开发环境
  2. .NET SDK
  3. OpenCvSharp 库

你可以通过 NuGet 包管理器安装 OpenCvSharp:

Bash
Install-Package OpenCvSharp4 Install-Package OpenCvSharp4.runtime.win
2025-09-26
C#
00

在这篇文章中,我们将讨论如何在WinForms应用程序中使用OpenCvSharp库创建和应用图像遮罩。OpenCvSharp是一个.NET平台上的OpenCV封装,可以很方便地进行计算机视觉操作。

环境设置

在开始之前,请确保你已经安装以下软件和库:

  1. Visual Studio 或其他支持C#开发的IDE
  2. .NET Framework(建议4 或以上),我这里用的是.Net 6
  3. OpenCvSharp4库

安装OpenCvSharp4

你可以通过NuGet包管理器安装OpenCvSharp4库。在Visual Studio中,右键点击你的项目,选择“管理NuGet包”,然后搜索OpenCvSharp4并安装。你至少需要安装以下包:

  • OpenCvSharp4
  • OpenCvSharp4.runtime.win
  • OpenCvSharp4.Extensions

创建WinForms项目

首先,新建一个WinForms项目。我们将添加一个按钮来加载图像、另一个按钮来应用遮罩,并使用一个PictureBox控件来显示结果。

设计界面

在设计视图中,添加以下控件:

  1. 一个 Button (Name: btnLoadPicture, Text: "Load Image")
  2. 一个 Button (Name: btnMask, Text: "Apply Mask")
  3. 一个 PictureBox (Name: pic, SizeMode: PictureBoxSizeMode.Zoom)
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 库