C# OpenCvSharp 入门

news2024/11/24 20:07:25

摘要


C# OpenCvSharp 是一个基于OpenCV(开源计算机视觉库)的C#封装库,它提供了一组功能强大的工具和函数,用于图像处理、计算机视觉和计算机图形学等领域。通过使用OpenCvSharp库,您可以在C#应用程序中轻松地实现各种图像处理和计算机视觉任务。

正文


C# OpenCvSharp 库具有以下主要功能和用途:
  • 图像加载和保存

  • 图像处理和转换

  • 物体检测和跟踪

  • 特征提取和匹配

  • 图像分割和边缘检测

  • 相机标定和立体视觉

  • 人脸识别和人脸特征点检测

  • 光流分析和运动估计

  • 图像拼接和全景图生成

  • 机器学习和深度学习集成

常用方法:
  • Cv2.ImRead(string path, ImreadModes mode): 加载图像文件。

  • Cv2.CvtColor(InputArray src, OutputArray dst, ColorConversionCodes code): 进行颜色空间转换。

  • Cv2.Resize(InputArray src, OutputArray dst, Size dsize, double fx, double fy, InterpolationFlags interpolation): 调整图像大小。

  • Cv2.CvtColor(InputArray src, OutputArray dst, ColorConversionCodes code): 进行颜色空间转换。

  • Cv2.CascadeClassifier(string fileName): 创建级联分类器用于对象检测(如人脸检测)。

  • Cv2.MatchTemplate(InputArray image, InputArray templ, OutputArray result, TemplateMatchModes method): 模板匹配。

常用属性:
  • Mat.Rows: 图像的行数。

  • Mat.Cols: 图像的列数。

  • Mat.Channels(): 图像的通道数。

  • Mat.Type(): 图像的数据类型。

  • Mat.Size(): 图像的尺寸。

一个例子

nuget 安装  OpenCVSharp

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

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

图片

图片

using OpenCvSharp;using OpenCvSharp.Extensions;using System.Windows.Forms;
namespace opencv01{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }
        private void btnLoadPic_Click(object sender, EventArgs e)        {                        Mat image = Cv2.ImRead("D:\\Video\\C语言.jpg", ImreadModes.Color);
            if (image.Empty())            {                MessageBox.Show("Failed to load image!");                return;            }
            Cv2.CvtColor(image, image, ColorConversionCodes.BGR2RGB);
            pic.Image = image.ToBitmap();            pic.SizeMode = PictureBoxSizeMode.StretchImage;        }    }}

图片

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】线程id与互斥(线程三)

上一期我们进行了线程控制的了解与相关操作,但是扔就有一些问题没有解决 本章第一阶段就是解决tid的问题,第二阶段是进行模拟一个简易线程库(为了加深对于C库封装linux原生线程的理解),第三阶段就是互斥。 目录 线程id…

Simulink中三相PMSM配置及使用

1. 模块介绍 Simulink提供了专门用于电力系统仿真,包括电机的动态建模和控制的电机模型,其中,永磁同步电机模块 Permanent Magnet Synchronous Machine 支持实现三相或五相永磁同步电机模拟,电机绕组采用星型连接,在这…

10个实用的Python编程实例,助你快速掌握Python技巧!

作为一门简洁易学且强大的编程语言,Python广泛应用于各个领域。本文将向大家介绍10个实用的Python编程实例,通过详细的实例代码帮助读者快速掌握Python的基础知识和常用技巧。 1. 计算阶乘 def factorial(n):if n 0:return 1else:return n * factorial…

SysML之简单介绍

SysML简介 文章目录 SysML简介1. What is SysML?2. SysML方言与UML母语之间的关系3. SysML的9种图表类型及分配表1. SysML图分类2. 分配表1. 分配2. 分配表3. 目的 1. What is SysML? Systems Modeling Language (SysML): SysML is a general-purpose system architecture mo…

MySQL周内训参照3、简单查询与多表联合复杂查询

基础查询 1、查询用户信息,仅显示用户的姓名与手机号,用中文显示列名。中文显示姓名列与手机号列 SELECT user_id AS 编号, phone AS 电话 FROM user; 2. 根据订购表进行模糊查询,模糊查询需要可以走索引,需要给出explain语句。…

6.26.8 基于多视角深度卷积神经网络的高分辨率乳腺癌筛查

1. 介绍 1.1 乳腺癌筛查 开发了一种新的DCN,它能够处理乳房x线摄影筛查的多个视图,并利用大分辨率图像而不缩小。将这种DCN称为多视图深度卷积网络(MV-DCN)。网络学习预测放射科医生的评估,将传入的样本分类为BI-RADS 0(“不完整”)&#xf…

MATLAB2024a下的神经网络聚类工具箱聚类

1 打开神经网络聚类工具箱GUI界面 图1-1 2 导入训练数据 图2-1 导入训练集如图2-2,图2-3、图2-4所示 图2-2 图2-3 图2-4 如图2-4,确认无误点击确定 3 模型训练 如图3-1,调整验证集与测试集比例及映射大小后点击”训练“,开始训练…

手写SpringMVC之ApplicationContextListener

什么是Spring MVC? Spring Web MVC是基于Servlet API构建的原始Web框架,从一开始就包含在Spring Framework中。正式名称“Spring Web MVC”来自其源模块的名称( spring-webmvc ),但它通常被称为“Spring MVC”。 手写…

2024最新特种设备(锅炉作业)题库分享。

1.锅炉蒸发量大小是由(  )决定的。 A.压力的高低 B.受压元件多少 C.受热面积大小 答案:C 2.哪项不是自然循环的故障?( ) A.停滞 B.倒流 C.下降管带汽 D.上升管带汽 答案:D 3.水冷壁被现代大型锅炉广泛采用的是(  )。 A.光管水冷壁 B.膜…

锐捷AP从其它项目拆下,怎么也加入不了到现在这个网络里来

环境: AP 产品型号:RG-RAP2260G 问题描述: 锐捷AP从其它项目拆下,怎么也加入不了到现在这个网络里来,现网是WIFI5的,想把2260G用来升级,恢复出厂设置后,插上网线,现网找不到这个AP 解决方案: 1.通电重置AP后,连接AP WiFi进入管理页面,要求先快速配置 2.开始配置…

【电路笔记】-MOSFET放大器

MOSFET放大器 文章目录 MOSFET放大器1、概述2、电路图3、电气特性3.1 ** I D = F ( V G S ) I_D=F(V_{GS}) ID​=F(VGS​)**特性3.2 I D = F ( V D S ) I_D=F(V_{DS}) ID​=F(VDS​)特性4、MOSFET放大器5、输入和输出电压6、电压增益7、总结1、概述 在前面的文章中,我们已经…

01.Ambari自定义服务开发-项目初始化

文章目录 基础环境在PyCharm中初始化项目配置项目相关依赖在PyCharm中导入依赖 基础环境 PyCharmPython 2.7已经安装完成的Ambari服务端 在PyCharm中初始化项目 项目名称就是我们要安装服务的名称,要求名称为全大写,如:DORIS创建Python2.7…

网格处理库 pmp-library 编译及应用笔记 -- 已全部解决√

多边形网格处理库Polygon Mesh Processing Library,简称pmp-library的 编译及应用笔记 – 已全部解决√ 官网:https://www.pmp-library.org/index.html 代码:https://github.com/pmp-library/pmp-library 平台:Ubuntu1 20.04&…

知识图谱——Neo4j数据库实战

数据与代码链接见文末 1.Neo4j数据库安装 JDK 安装:https://www.oracle.com/java/technologies/javase-downloads.html Neo4j 安装:https://neo4j.com/download-center/ 配置好 JDK 和 Neo4j 的环境变量

多电商账户为什么要用指纹浏览器?

随着电子商务的蓬勃发展,越来越多的商家选择开设多店来扩大经营规模。然而多店运营也带来了一系列的挑战,其中之一就是账号安全。 1. 了解反检测浏览器和代理服务器 在我们开始讨论如何有效地使用反检测浏览器之前,我们首先需要了解这两个工…

Excel 宏录制与VBA编程 —— 12、文本字符串类型相关(转换、拆分、分割、连接、替换、查找、“Like“)

字符串分割,文末示例(文末代码3附有源码) 代码1 - 基础字符串 代码2 - 字符串拆分 代码3 - 字符串分割 Option ExplicitSub WorkbooksClear()Dim DataRange As RangeSet DataRange Range("C2:E12")DataRange.Clear End SubSub Wo…

爆火网络的 AI 粘土风照片,如何用免费的AI绘画工具Stable Diffusion实现?只需一个Lora即可轻松解决!

大家好,我是画画的小强 最近粘土滤镜照片在小某书上爆火,随便一翻就出现好多 这些丑可爱丑可爱的粘土滤镜是这样紫。 这些照片都是通过手机APP Remini 来转绘的。Remini原来是由国人开发,据说卖给了国外公司,现在排在了谷歌商店下…

最年轻获奖者诞生!一文带你了解历届国家最高科学技术奖获奖人

内容来源:量子前哨(ID:Qforepost) 文丨浪味仙 排版丨沛贤 深度好文:4000字丨15分钟阅读 作为国家层面面向科学、技术领域的最高级别奖励,国家最高科学技术奖于 2000 年由国务院设立,每年评选…

8. Revit API UI: DockablePane(可停靠窗口)

8. Revit API UI: DockablePane(可停靠窗口) 接着前面的预览控件和外部事件,这一篇,我们来看看可停靠窗口DockablePane的实现。 实现流程 可停靠窗口相关的类与接口主要有DockablePane和IDockablePageProvider,都是…

探索Facebook的未来世界:数字社交的演进之路

在数字化和全球化的浪潮中,社交网络如Facebook已经成为了人们日常生活不可或缺的一部分。然而,随着技术的迅猛发展和用户需求的不断变化,Facebook正在经历着社交平台的演进之路。本文将探索Facebook的未来世界,分析数字社交的发展…