目录
- 前言
- 一,基础说明
-
- 1.关于opencvsharp版本:
- 2.关于库的选择
- 3.关于库版本选择一致性
- 二,基本使用
- 1.库引用
- 2.C#程序代码编写
前言
近在做CV,不断从halcon 和OpenCV中切换,时间久了两个都挺陌生了,特别是使用opencvsharp方面,C#引用cv库有时都要查下资料,比较尴尬,特意做个笔记和经验分享给大家,希望能帮助到大家!!!
本文主要针对的是C#与opencvshap联合入门使用和引用,不做复杂算法操作!
一,基础说明
1.关于opencvsharp版本:
- 1️⃣如果处于学习的目的,像了解最新的函数和功能,在选择库版本的时候,就选最新的,比如最新稳定版,笔者这时候已经到了4.9.0.20240103(也有可能会碰到其他人没遇到的问题,要吃螃蟹)
- 2️⃣如果做视觉项目,还是建议除最新稳定版外的其他时间段版本,像4.0-4.8左右都是比较常用的,bug都算少,个人喜欢4.5,4.6和4.8版本;
2.关于库的选择
- 1️⃣如果基本使用的话,主要在VS中安装两个库就够了:opencvsharp4(算法库)和OpenCvSharp4.runtime.win(运行依赖库,相当于前者的运行时或底层库,生成目录下会单独生成一个文件夹的),其他的话,可根据您的项目需求进行操作安装。
- 2️⃣两个都要安装,缺一不可,一般先装OpenCvSharp4.runtime.win库,再装opencvsharp4库,如下:
3.关于库版本选择一致性
- 1️⃣比如前面您要装好那两个基础库,或者搭配其他库,总的一个建议就是,这些对应的版本时间最好是同一个比如(比如都选择4.8.0的),或者依赖的.net相关框架版本级别最好要保持一致(比如都选择.net framework4.5以上的),如下两图所示:
- 2️⃣不保持一致性,可能opencv库相互依赖时可能有问题(不同版本解决的问题和拥有的函数稍微不同),依赖的.net版本不同也会导致问题!!!
二,基本使用
1.库引用
- 1️⃣VS>工具>Nuget包管理器>管理解决方案的nuget程序包>nuget-解决方案
2️⃣搜索opencvsharp,获取对应列表结果;
3️⃣一般先装OpenCvSharp4.runtime.win库,再装opencvsharp4库(注意版本对应);
4️⃣等待安装版本完成!
2.C#程序代码编写
记得引入opencvsharp的名称空间!!!
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using OpenCvSharp;
namespace WindowsFormsApp3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
Mat mat = new Mat("test.png");
Cv2.ImShow("test",mat);
}
}
}
文中若有不足,敬请批评指正!!!