传递用于在 C++ 中调用 MATLAB 函数的参数
passing parameter for calling a matlab function in c++
使用部署工具,我制作了 c++ 共享库。我的 Matlab 函数只获取一个输入参数,即图像的路径,并以双精度返回一个 1*6 向量;
我在网上搜索了很多,找到了C++调用 Matlab 函数的步骤;现在我知道首先我必须初始化应用程序和库,如下所示:
#include <libname.h>
mclInitializeApplication();
mclInitializeApplication();
我知道最后我必须调用终止函数:
<libname>Terminate();
mclTerminateApplication();
但我不知道如何将字符串传递给 matlab 函数。我这样写:
string path = "C:\Users\user\Documents\MATLAB\Mypic.jpg";
mwArray im_path;
在调用im_path.SetData()
时,我不知道我必须使用哪种类型。 第一个参数的类型不包括与字符串相关的任何类型。我也不知道如何调用 Matlab 函数以及我必须传递给哪些参数。
如果你之前打过那个电话,请帮助我。
非常感谢!
要将string
作为输入参数传递给 Matlab,您只需使用:
mwArray im_path(path.c_str());
并且您还需要先初始化函数,然后再终止它。假设你的函数像function res = func(path)
并被部署到func.lib
,你需要:
funcInitialize()
...
mwArray res(1, 1, mxDOUBLE_CLASS); // suppose the result is a double
func(1, res, im_path); // call it here
...
funcTerminate();
查看这篇文章以获取更多信息。
相关文章:
- 在C++STL中是否有Polyval(Matlab函数)等价物?
- 加载由 MATLAB Coder 生成的带有函数的 DLL,该函数调用外部函数
- 如何在C++中编写 MATLAB fix(X) 函数?
- 将C++中的多个参数传递给MatLab共享库函数
- 使用 Boost 的 UDP 通信(用于 MATLAB s 函数)
- 如何使用 Matlab 函数 ordfilt2 与 OpenCV C++
- MATLAB函数手柄和C 功能指针
- MATLAB S函数构建器如何将编译器更改为G
- 传递用于在 C++ 中调用 MATLAB 函数的参数
- 从C 调用的编译MATLAB函数的输入参数结构
- 将 MATLAB 函数编译成可以在 linux 终端上运行的东西,w.out MATLAB
- NDGRID MATLAB 函数的工作原理
- matlab函数fzero的C/C++实现
- Matlab函数"quad"在Java和C++中可用吗?
- 如何在c++中使用MATLAB函数randn
- 是否有任何现有的库在C/CPP/Obj-C中实现matlab函数
- matlab c共享库:用mxArray*/mxArray**捕获matlab函数输出
- 在不使用OpenCV的C++中高效实现MATLAB函数"imfill(BW,'holes') "
- 延迟调用MATLAB函数
- 如何用C++调用Matlab函数