Matlab C++混合编程 在VisualStudio下的编程 使用了Opencv库

某工程上需要在matlab上使用c++版本的opencv,之前使用的是版本配置是matlab2018和vs2018,而现在使用的是matlab2016和vs2015,不同matlab版本的调用c++代码的使用方式还不一样。。。

网上浏览了大部分是使用 mex ****.cpp 的编译方式,但是自己使用了第三方库,mex总是链接错误,想想反正都是使用vs的编译器,干脆直接在vs中生成dll文件,之后将dll后缀改为.mex64 在matlab中调用。

找了一大圈,终于找打了自己要的东西,较为久远的博客了,mark一下,顺便捞一捞, 链接 http://blog.sina.com.cn/s/blog_6e0693f70100s5df.html   侵删~~~

 

Matlab, C, C++, Visual Studio之间的混合编程无论在科研还是工程领域都有有很重要的意义。本文总结了网上比较优秀,全面的一些文章,供各位同学学习。

1. Matlab中调用mex命令生成的mex(dll)文件
   这篇文章详细的介绍了如何在Matlab中调用C,各个mx,mex函数的意义与用法。并给出几个有启发性的例子。
   http://safin.inzaghi.blog.163.com/blog/static/789229032009126104197/
  
2. Visual Studio中调用Matlab Engine Function
   *这是作写的一篇文章,实践了matlab提供的例子的,对其中容易出现错误提出了解决方案。
   http://blog.sina.com.cn/s/blog_6e0693f70100s5az.html
   针对libmx.dll找不到的问题,作者通过更改环境变量的方法解决了这个问题
   http://blog.sina.com.cn/s/blog_6163bdeb0100qd49.html

   MATLAB引擎方式实现VC与MATLAB混合编程,内容步骤非常详细!
   http://blog.sina.com.cn/s/blog_6163bdeb0100qd5t.html

3. Matlab中调用Visual Studio生成的dll(mex)文件
(这是我使用的方法)
   科大一位同学的中文讲解,主要看步骤3和4。
   http://blog.sina.com.cn/s/blog_4d1865f00100o2ul.html
   外国老师非常详细的讲解,这里他用vs生成了一个dll,并在matlab中调用。
   http://www.engineering.uiowa.edu/~dip/lecture/C++_with_Matlab.pdf
   *这是作写的一篇文章,实践了科大同学提供的例子的,步骤参考外国老师的pdf,比较详细一些。
   http://blog.sina.com.cn/s/blog_6e0693f70100saw3.html
   VC++ 中编译 MEX 程序 
   http://leep2006.blog.sohu.com/63441100.html

4. Visual Studio中调用matlab生成的dll
   基于DLL形式VC调用MATLAB函数的主要过程
   http://blog.sciencenet.cn/home.php?mod=space&uid=43777&do=blog&id=319006
   *这是作写的一篇文章,步骤比较详细一些。
   http://blog.sina.com.cn/s/blog_6e0693f70100sz0g.html

5. 将Matlab程序编译成独立可执行的程序

   介绍如何使用mcc命令把m文件转换为exe文件
   http://hi.baidu.com/ctstt/blog/item/d5e26f8bfe55a1689f2fb41b.html

   *这是作写的一篇文章,步骤比较详细一些。

   http://blog.sina.com.cn/s/blog_6e0693f70100sz2v.html

6. mcc、mbuild和mex命令区别与详解
   http://blog.sina.com.cn/s/blog_5928f2dd0100gf27.html

你可能感兴趣的:(Matlab C++混合编程 在VisualStudio下的编程 使用了Opencv库)