OpenCvSharp编译

news/2025/2/26 6:28:26

前言

        算法部分我们使用opencv4.10作为开发,那么我们在.net winform做UI界面开发时,需要进行相关调用。比较简单的方式是直接从NuGet中直接搜索OpencvSharp进行安装。OpecvSharp对Opencv进行了二次封装,在.net中可以快速操作相关对象和算子,且数据结构统一。

        此处为了保证C++和C#使用的opencv库版本保持一致(避免由于部分不同引起的内存异常或调用异常),我重新对OpencvSharp进行编译,主要步骤如下:

1、下载OpencvSharp源代码

下载路径:https://github.com/shimat/opencvsharp

2、编译OpenCvSharpExtern

        该库重新对opencv内的函数进行了二次封装,供C#进行DllImport的方式调用,我们需要先对齐进行编译生成C++的动态库。

        ps:此处用到的 lib/include/dll 在上一篇文章编译opencv中可以生产,注意需要一并编译 opencv_contrib(可在opencv源码仓库处一并下载,编译时设置编译完成即可)。详细文章跳转至:OpenCv编译

1) 打开项目属性->VC++目录,查看其包含目录以及库目录设置路径(此处可修改成自己路径,也可以直接拷贝文件过来,我这里是直接把文件拷贝过来编译)

2)拷贝头文件/lib/dll至对应目录下

3)修改链接器(原本是有一堆的lib进行链接,由于我们前面是编译成一整个库,所以直接改成了 opencv_world****.lib进行链接)

4)编译生产OpenCvSharpExtern

3、编译C#调用库

编译 OpenCvSharp/OpenCvSharp.Extensions ,其它库我用不到所以没有编译

总结

以上步骤操作完我们就可以完成OpenCvSharp的编译动作,使其跟我们使用的C++库保持一致,整体上流程还是比较简单,建议大家都去编译一下。


http://www.niftyadmin.cn/n/5868206.html

相关文章

网络安全学习-WEB安全常见漏洞

注入类漏洞 SQL注入漏洞 定义 sql注入漏洞,就是将用户可控的数据拼接到了sql语句当中,一起提交到了数据库执行。 攻*击者通过注入语句,改变sql执行的逻辑,通过控制部分sql语句,攻击者可以查询到数据库钟任何自己需…

【Uniapp-Vue3】导入uni-id用户体系

在uniapp官网的uniCloud中下载uni-id用户体系 或者直接进入加载,下载地址:uni-id-pages - DCloud 插件市场 进入以后下载插件,打开HbuilderX 选中项目,点击确定 点击跳过 点击合并 右键uniCloud文件夹下的database文件夹&#x…

React进阶之React核心源码解析(三)

React核心源码解析 diff多节点比较diff两轮遍历比较第一轮比较第二轮比较Update 状态更新Concurrent Modediff 多节点比较diff isArray方法比较 节点更新// 更新前 <ul><li key="0" className="before">0<li><li key=

【二值图像与手动/自动阈值的详解】

二值图像与手动/自动阈值的详解 目录 二值图像与手动/自动阈值的详解一. 什么是二值图像&#xff1f;二. 二值图像的特点三. 二值图像的生成四.二值图像中的阈值作用及使用方法1. 阈值的概念2. 阈值的作用3. 阈值的类型4. 阈值的选择方法4. 阈值的使用方法5. 阈值的选择对结果的…

在股市交易的强化学习中寻找最佳交易历史

“Finding Optimal Trading History in Reinforcement Learning for Stock Market Trading” 论文地址&#xff1a;https://arxiv.org/pdf/2502.12537 摘要 本文探讨了在金融深度强化学习模型中优化时间窗口的方法&#xff0c;并采用了二维卷积神经网络&#xff08;CNN&#x…

MATLAB学习之旅:图像处理与计算机视觉应用

在前面的学习中&#xff0c;我们已经深入了解了MATLAB在数据建模与仿真方面的强大功能。从基础的数据处理到复杂的模型构建与仿真分析&#xff0c;MATLAB为我们提供了丰富的工具和函数&#xff0c;帮助我们解决各种实际问题。如今&#xff0c;我们将迈向下一个充满挑战与创新的…

MediaToolkit:.NET 开发者的多媒体处理工具

在开发过程中处理音频和视频文件是许多应用程序的重要功能。MediaToolkit 是一个强大的库&#xff0c;帮助轻松处理这些多媒体文件。封装了 FFmpeg 的功能&#xff0c;使得复杂的任务变得简单。支持更多功能&#xff0c;如视频裁剪、缩略图提取和转码等。 安装 第一步&#x…

图像处理、数据挖掘、数据呈现

目录 图像处理方法 阈值分割 图像处理方法 图像平滑 图像锐化 图像增强 阈值分割 边缘检测 阈值分割 特征提取 提取边界 区域提取 主成分压缩 POI 多源数据 数据挖掘 多源数据提取 关联度提取 位置集群&#xff0c; 新闻事件&#xff0c; 权限 个人喜好 历史…