创建一个C++制作的包含Opencv功能的dll,供C#程序使用

Posted edison25

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建一个C++制作的包含Opencv功能的dll,供C#程序使用相关的知识,希望对你有一定的参考价值。

目的:朋友用C#编写了一个软件,先需要一个功能:获取某图片指定位置的颜色。

实现该目的的方法有很多,即为了朋友能够很便捷解决该问题,也为了有助于扩充自己技术广度,所以决定采用标题中的方法来完成。

 

没有C++编程经验,也没有制作C++版Opencv语法经验,也没有制作dll的经验,整个流程牵涉比较多的技术环节,每个环节需要一个一个测试通过,才能进行后续设计。

由于网上太多零散信息,没有很好的参考资料,大多只能靠自己实践测试,所以从开始,到跨机各种环境测试,整整花了1天半。

现在问题全部解决了,回头想想,流程太简单了!

 

开发环境:

Win7系统

VS2017

Opencv 3.4.0

 

 

主流程:

(1)搭建C++版Opencv开发环境,并测试需要定制的功能应该怎么写

(2)借助C++和Opencv定制特定功能的dll

(3)编写C#简单winform应用程序,测试dll

 

 

详细:

1.搭建C++版Opencv开发环境 (源自YouTube)

1.1 创建C++空项目

技术分享图片

项目名称为OpenCVTest

 

1.2 下载Openc包

到官网,下载指定版本的opencv,解压后,就是几个文件夹。我存放的路径是:技术分享图片

技术分享图片

 

1.3 配置刚才创建的C++项目属性

技术分享图片

技术分享图片

技术分享图片

注意:上述平台我选的是X64。

 

1.4 将F:dream1020181031Extermal LibrariesOpenCVx64vc15in中两个.lib文件夹放到OpenCVTest工程中

技术分享图片

 

 

1.5 在刚才的工程文件中新建一个main.cpp文件,并在里面编写测试代码。(注意运行时,要选X64

技术分享图片

 运行结果:

技术分享图片

 

 至此,注意功能代码和环境测试通过。

 

2 创建dll (主要参考:https://blog.csdn.net/zhangzhe_0305/article/details/78399224)

2.1 

 未完待续

 

以上是关于创建一个C++制作的包含Opencv功能的dll,供C#程序使用的主要内容,如果未能解决你的问题,请参考以下文章

C++。将.dll文件链接到项目[重复]

C++ 如何导入用 C# 制作的 DLL?

使用 opencv、dll、visual studio 和 labview 进行编程

我需要制作一个opencv 64 exe(错误无法加载程序入口点)

c++ DLL:包含项目中的类

托管 C++ - 根据配置文件导入不同的 DLL