OpenCvSharp从入门到实践-(01)认识OpenCvSharp开发环境搭建

目录

一、OpenCV 

二、OpenCvSharp

三、OpenCvSharp开发环境搭建

四、下载

五、其他


一、OpenCV 

OpenCV是基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习函数库,支持Windows、Linux、Android和Mac OS操作系统。OpenCV由一系列C/C++函数和少量C++类构成,利用MMX和SSE指令。
OpenCV实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV用C语言编写,也支持C#、Java、Golang、Ruby和MATLAB开发。

官网地址:https://opencv.org/

github地址:https://github.com/opencv/opencv

二、OpenCvSharp

OpenCvSharp是一个OpenCV的.Net wrapper,应用最新的OpenCV库开发,使用习惯比EmguCV更接近原始的OpenCV,有详细的使用样例供参考。该库采用LGPL发行,对商业应用友好。使用OpenCvSharp,可用C#,VB.NET等语言实现多种流行的图像处理(image processing)与计算机视觉(computer vision)算法。
1.相较于SharperCV与OpenCVDotNet,OpenCvSharp直接封装了更多的OpenCV方法,降低学习难度。
2.大部分了继承了IDisposable接口,方便使用using语句块。
3.不强加面向对象思维,可以直接调用原生风格的OpenCV方法。
4.可以将IplImage直接转为Bitmap(GDI+) 或者WriteableBitmap(WPF)。
5.支持Mono。可以运行于支持Mono的任何平台上(如Linux,BSD,Mac OS X等)。

OpenCvSharp github地址:https://github.com/shimat/opencvsharp

三、OpenCvSharp开发环境搭建

1、打开VS2000,选择创建新项目

2、选择控制台应用,下一步

3、填写项目名称、选择位置、选择框架,点击创建

4、 NuGet安装OpenCvSharp4

安装成功的输出信息

此时,项目引用信息如下图

5、放一张测试图片到项目中,同时不要忘记设置文件属性->如果较新则复制

6、输入如下测试代码

using OpenCvSharp;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OpenCvSharp_Demo
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Mat mat = new Mat("test.jpg");
            Cv2.ImShow("test.jpg", mat);
            Cv2.WaitKey();
            Cv2.DestroyAllWindows();
        }
    }
}

using OpenCvSharp;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace OpenCvSharp_Demo
{internal class Program{static void Main(string[] args){Mat mat = new Mat("test.jpg");Cv2.ImShow("test.jpg", mat);Cv2.WaitKey();Cv2.DestroyAllWindows();}}
}

7、启动项目,查看效果

四、下载

Demo下载

后续代码将都基于该Demo开发 

五、其他

我创建了一个学习QQ群,欢迎大家加入!

C# OpenCvSharp DNN ONNXRuntime 实践QQ群:758616458

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/197437.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity中 Start和Awake的区别

Awake和Start在Unity中都是MonoBehaviour脚本中的生命周期函数 Awake函数在游戏对象首次被加载时调用,在游戏对象初始化之前调用。 start函数在游戏对象初始化完成后调用,在update第一次执行前调用。 这两个函数在其生命周期内都只会调用一次&#xf…

auth 对象创建 session 时出现 异常 详细解析

在使用 requests 库的 1.0.3 版本时,尝试使用 auth 对象创建 session 时出现了 TypeError 异常。然而,在 0.14.2 版本中,这个操作是正常工作的。下面是具体的错误信息: python import requests requests.version 1.0.3 auth re…

【快速解决】实验四 对话框 《Android程序设计》实验报告

目录 前言 实验要求 实验四 对话框 正文开始 第一步建立项目 第二步选择empty views activity点击next ​编辑 第三步起名字,点击finish 第四步对 activity _main.xml文件操作进行布局 第五步,建立两个新文件,建立方法如下 SecondA…

springboot上传文件后显示权限不足

前言: 最近一个老项目迁移,原本一直好好的,迁移后上传文件的功能使用不正常,显示文件没有可读取权限,这个项目并不是我们开发和配置的,由第三方开发的,我们只是接手一下。 前端通过api上传文件…

(亲测有效)VMware Windows虚拟机扩容

场景: VMware安装了一个windows系统,现在windows系统剩余空间不足,需要扩容。 解决步骤: 关闭虚拟机,状态如下: 2、点击编辑虚拟机设置-》扩展 3、输入最大磁盘大小-》点击扩展 4、等待成功后&#xff0c…

机器人制作开源方案 | 钻孔植树一体化沙漠车

作者:徐邦国、张博宇、刘露、李晶晶、吕洁秀单位:天津职业技术师范大学 机械工程学院指导老师:何永利 摘要:本项目旨在设计一种专用于沙漠植树的植树车,以沙漠自动化植树为研究对象,提出一种创新式钻…

企业微信机器人定时发送图文信息,后续无需人工操作

企业微信群机器人是企业微信的内置功能,可以理解为是一个群提醒通知工具,接收数据并自动发送信息到企业微信群中。 数环通实现打通定时器和企业微信机器人的对接,定时执行自动化流程,无需人工干预,实现工作流程自动化&…

不懂找伦敦银趋势?3个方法搞定

趋势是我们的朋友,但是这个朋友却很喜欢跟我们开玩笑,如果我们不留意,根本发觉不了它的存在。怎么找到趋势本体并且和它做个好朋友呢?下面我们就来介绍三个方法。 数波段的高点和低点。我们以当前的市场波动价格为轴,向…

python 自动化福音,30行代码手撸ddt模块

用 python 做过自动化的小伙伴,大多数都应该使用过 ddt 这个模块,不可否认 ddt 这个模块确实挺好用,可以自动根据用例数据,来生成测试用例,能够很方便的将测试数据和测试用例执行的逻辑进行分离。 接下来就带大家一起…

信驰达科技加入智慧车联产业生态联盟ICCE,共创智慧车联未来

图1 信驰达加入智慧车联产业生态联盟 信驰达拥有60余项专利认证及软件著作权,以及BQB、SRRC、FCC、IC、CE、RoHS、REACH、KCC等数百个权威产品认证,公司是车联网联盟(CCC)和智慧车联产业生态联盟(ICCE)会员,已通过ISO…

CRM系统定制开发价格

我们都知道,CRM系统对企业有着很大的帮助。但是市面上大多数CRM系统都是标准化的,无法满足那些产品线复杂,或者有着特殊需求的企业。这个时候,就需要对CRM系统进行二次开发。那么,CRM系统二次开发的价格是多少&#xf…

现货白银MACD实战分析例子

MACD这个技术指标的全称是平滑异同移动平均线,主要表示经过平滑处理后均线的差异程度,一般用来研判现货白银价格变化的方向、强度和趋势。MT4中的MACD指标,主要是由信号线、(上升/下跌)动能柱、0轴这三部分组成。 MACD…