C++调用Matlab引擎及Eigen配置

这个周开始要着手实现网格水印的代码了,虽然还什么都不会,但也只能一步步摸索着往前走了。

我要实现的论文题目是<<Watermarking 3D Polygonal Meshes in the Mesh Spectral Domain>>,之前的博客中有过这篇论文的理论分析,看起来貌似不难,但动手实现起来的时候还是挺困难的。首先要解决的问题就是配置实验环境。

一开始我打算用Eigen对拉普拉斯矩阵进行特征值分解,因此就涉及到Eigen的配置。Eigen是一个开源的矩阵运算库,里面封装了大量的矩阵操作,直接调用非常简单,其配置也很简单。

一、配置Eigen

  1. 下载Eigen
  2. 解压
  3. 在项目中包含Eigen目录,具体操作如下图

右键单击项目,选择属性,在VC++目录下,在包含目录中将Eigen的目录包含进去即可。

?

二、配置matlab

1、添加包含目录

在C/C++下选择常规,在附件包含目录中添加Matlab安装位置下的extern/include和extern/include/win32

?

2、添加库

在库管理器下选择常规,在附加依赖项中添加libeng.lib, libmx.lib和libmat.lib

?

然后在附件库目录中添加matlab安装位置下的extern/lib/win32/microsoft

?

3、如果在调用引擎过程中遇到如下问题,在在系统变量中包含路径F:\Matlab_32\bin\win32即可

时间: 2024-10-06 20:08:00

C++调用Matlab引擎及Eigen配置的相关文章

混合编程学习之一:VS2010调用MATLAB引擎

最近在学习混合编程的相关知识,闲话不说,直接进入主题. 本系列实验基于MATLAB2010b 和VS2010 的平台,32位win7电脑. 调用MATLAB加法程序add.m,步骤如下.      (1)打开MATLAB2010b,出现如下界面. (2)创建函数文件add.m,并编写程序如下. 注意:m文件存放的位置,程序中指定的MATLAB当前工作路径相匹配. 在本实验中MATLAB的默认当前工作路径为C:\Program Files\MATLAB\R2010b. (3)打开VS2010软件,

c#调用matlab

http://blog.sina.com.cn/s/blog_6317acb50100v0jw.html 编译环境:c#,xp系统,Matlab6.5 新建一个窗体项目,添加matlab引用. 然后试了四种方式调用matlab: 第一种 MLApp.MLAppClass matlab = new MLApp.MLAppClass(); matlab.Visible = 1; matlab.Execute("figure(1)"); 第二种 MLApp.DIMLApp matlab = 

c程序中调用matlab

c程序调用matlab 方法一: 在c程序中调用matlab引擎(相当于打开一个精简版matlab然后往里输入命令,即客户机/服务器模式, c程序为客户机,matlab作为本地服务器) 方法二:将m文件打包成dll文件,然后在c语言环境下调用 优缺点分析: 方法一,易于实现,可以实时监控程序的运行,但独立性差,速度慢,需要安装完整版matlab,且每次调用都会启动matlab.exe进程: 方法二,实现复杂,调试麻烦,但只需要安装mcr(matlab component runtime),耗费资

C++ 在多线程中各自调用matlab

在C++中调用matlab引擎计算时,注意几个问题 1.engOpen.engClose ,engEvalString等等接口必须在同一线程中调用.例如:A.B两个线程,A为主线程,B为子线程 A:中创建Engine *m_ep = engOpen.engClose(m_ep), 在B中调用 engEvalString会导制调用失败. 必须在B中同时调用,例子如下: void B:run() { Engine *ep = engOpen(NULL); //这是调用matlab的方法 engEva

Python的扩展接口[3] -&gt; Matlab引擎 -&gt; 使用 Python 调用 Matlab 程序

Python - Matlab 目录 Python-Matlab 引擎 Python-Matlab 数组 Python-Matlab 基本操作 Python-Matlab 调用 m 文件 Matlab的官方文档中介绍了Matlab与其余编程语言之间的引擎接口,其中包括对于Python开放的引擎API,可参考官方教程,其中包括引擎安装,基本使用,以及Python与Matlab之间的数据类型转换及交互. 除了使用官网的Matlab引擎来驱动Matlab外,还可以使用第三方包mlab来进行连接或直接使

C++调用matlab实例

这段代码是C++调用matab引擎的过程,代码的目的很简单,在C++中创建一个vector数组,然后将这个vector数组单位化.写这个代码的目的是学些C++与matlab之间的数据交互,以供日后参考. #include <iostream> #include <cstdio> #include <vector> #include <math.h> #include <time.h> #include "engine.h" #

Windows中使用 Python 调用 Matlab 程序

环境变量: 1 Python-Matlab引擎 / Pyhton-Matlab Engine 首先,需要确保Matlab及Python的配置和安装,利用Matlab提供的setup.py文件安装Python的引擎包,安装步骤及过程如下, 1. 确保安装可用的Python和Matlab,且两者版本对应,如32位的Matlab需对应32位的Python,同时还需查看Matlab支持的Python版本(目前2016a版支持的Python版本为2.7/…/3.5); 2. 添加Python目录到环境变量

asp.net下调用Matlab生成动态链接库

对于这次论文项目,最后在写一篇关于工程的博客,那就是在asp.net下调用matlab生成的dll动态链接库.至今关于matlab,c/c++(opencv),c#(asp.net)我总共写了4篇配置的博客,配置问题搞了我们差不多2周多的时间,各种编译不通过,各种链接出问题,各种头疼,甚至都有放弃asp.net下建工程,转用matlab的gui来实现前端界面的念头了.但是在队友的强烈要求下,我不得不硬着头皮搞下这配置问题,最终总结出这4篇配置博客.其中艰辛,恐怕连队友都不甚了解. 当然在实验室同

Windows、Linux、Web安装及调用Matlab程序完整说明(大章)

本文档详细说明了Linux下Web项目调用Matlab函数的完整操作,文章适合对Java.Linux有一定基础了解的人群(不了解也没什么,无非是多试几次).因Linux作为服务器,所以未在其上安装Matlab主程序,只安装了运行环境MCR. 本文档内所述的所有版本软件均以32位为准,JDK与MCR也使用32位.若你的系统为64位,Linux系统同样为64位,则请尽量选择使用64位版本的JDK与MCR. 由于Matlab的版本限制问题,请保证Matlab主程序和MATLABCompiler Run