-
0 votesanswersviews
更改MATLAB mex构建目录
我将解释一个成功的MATLAB mex教程示例 . 在我的主目录中,我有一个c文件“/home/yprime.c” . 我想创建MATLAB可执行(mex)文件(或.mex64格式) . 此示例仅需要MATLAB库并包含目录 . MATLAB知道它们的位置,下面的语句在主目录中成功返回一个mex文件(.mex64格式) . >> mex yprime.c 现在,我将解释我更复杂但实际... -
0 votesanswersviews
由于mex文件无效,cplex将无法在matlab上运行
我正在尝试在matlab上使用cplex,但是我收到以下错误: Error using cplexlp (line 256) Invalid MEX-file 'C:\Program Files\IBM\ILOG\CPLEX_Studio1271\cplex\matlab\x64_win64\cplexlink1271.mexw64': The specified procedure could ... -
4 votesanswersviews
Matlab:S-Function Builder Block:跨多个路径分发源文件
要构建目标硬件,S函数构建器块需要访问到它的源文件和.mex文件 . 看来源文件和.mex文件必须在Matlab路径上的同一目录中 . 是否可以分发.mex文件和其他源文件跨多个目录并仍然能够构建目标硬件? 配置: Minseg硬件(实际上是一个改装的Arduino Mega 2560) OS X笔记本电脑(10.11) XCode 6.x.x(Mathworks编译为supporte... -
0 votesanswersviews
如何调试Matlab / Simulink?
我有一个使用 s_function 的Simulink模型,这是一个 mexw32 文件 . s_function 块也使用 .lib 模块 . 现在,当我试图在模拟结束之前运行模型Matlab崩溃并且在命令窗口中没有任何错误 . 如果Matlab崩溃,我有哪些调试选项? -
0 votesanswersviews
Matlab 2015a将mingw64设置为mex编译器
我在Win7上运行了Matlab2015a 64bit,我想使用Mingw-w64编译器来处理mex文件,但命令* mex -setup 说 MEX配置为使用'Microsoft Visual C 2012(C)'进行C语言编译 . 我已经安装了Mingw-w6编译器 C:\ mingw-w64 \ x86_64-4.9.2-win32-seh-rt_v4-rev4 \ mingw64 \... -
0 votesanswersviews
重新调整makefile以允许在cygwin中进行c编译
长话短说,这个库https://github.com/tum-vision/fastms有一个makefile,用于c编译为mac和linux的matlab文件,我试图将它重新用于cygwin . 请在这个单个makefile上度过一个星期后,我非常渴望得到这个 . 这是我当前迭代中的make文件 all: targets USE_CUDA:=0 USE_OPENMP:=1 USE_OPENCV... -
0 votesanswersviews
Matlab使用mex调用C函数
首先,我从未尝试在Matlab程序中调用C代码 - 所以它可能只是一个我无法弄清楚的愚蠢错误 . C函数是以下函数,可以在here上找到,它被称为 durlevML.c ,是ARFIMA(p,d,q)估计器套件的一部分: #include "mex.h" #include "matrix.h" #define square(p) ((p)*(p)) #de... -
6 votesanswersviews
如何从mex函数访问matlab结构域中的矩阵?
我试图找出如何从mex函数访问存储在matlab结构中的字段中的矩阵 . 那是非常冗长的...让我解释一下: 我有一个matlab结构,定义如下: matrixStruct = struct('matrix', {4, 4, 4; 5, 5, 5; 6, 6 ,6}) 我有一个mex函数,我希望能够接收指向矩阵中第一个元素的指针(矩阵[0] [0],用c表示),但我一直无法弄清楚如何做那 . 我... -
4 votesanswersviews
在mex文件中读取结构数据时会发生奇怪的事情
我刚刚被一个非常奇怪的mex错误搞糊涂了 . . . 将我的问题归结为核心,我们最终得到以下简单的mex代码 . 它只显示给定的结构字段是否为空... #include "mex.h" void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { int n... -
1 votesanswersviews
Mex回调函数调用matlab函数崩溃
我有一个mex功能,它试图将CCD的图像数据实时传输到matlab . 为了实现这一点,我必须在图像数据回调函数中调用matlab函数将图像数据传输到matlab . 这是我的入门mex函数,它注册一个回调函数 snapThreadCallback() 来获取图像数据 . void continousSnapOnChoosed(int nlhs, mxArray *plhs[], ... -
0 votesanswersviews
Mex函数导致Matlab崩溃
我正在尝试在Matlab中编写一个使用C的mex函数 . 我的函数目标是创建并返回结构数组 . 代码位于这篇文章的底部 . 该函数应该被称为 result = structtest(1,2,3); 返回的变量 result 将是matlab中的结构数组 . 我将其设置为1x3阵列,其字段名为test1,test2和test3 . 这都是通过 mxCreateStructArray 在mex函数中... -
1 votesanswersviews
如何在mex文件中访问Matlab数组结构中的数据
我正在编写一个C mex函数,以提高更大的matlab代码的性能 . 作为mex函数的一部分,我试图从在MATLAB中创建的结构数组中读取 . 数组中的每个项都包含一个由复数数组组成的结构 . 我正在编写的代码理想地单独访问数组中的每个结构 . 我试图编写的函数将传递整个数据结构和数组索引 . 使用该信息,我想获得指向该数组索引的matlab结构中复数数组的实部和虚部的指针 . 我完全接受我不了解... -
3 votesanswersviews
从win64到win32的pnet通信
我使用pnet tcp/udp toolbox)和psychtoolbox在不同机器中的两个matlab实例之间进行通信 . 我的一台机器是运行matlab 2010b的32位win7 . 另一个是运行matlab 2012a的64位win 7 . 我在将数据从一台计算机传输到另一台计算机时遇到问题 . Experiment 1 :从32位计算机运行udp_plotter_demo时,从64位计算... -
0 votesanswersviews
C C的向量对象在mex中的mxArray
我有以下c矢量: std::vector<myStruct> myVec; myStruct包含的位置: struct myStruct { Point3D start; Point3D end; double lenght; } struct Point3D { double x, y, z; } 现在在我的mex文件中,我想将其转换为mxArray,同时保持相同... -
1 votesanswersviews
matlab mex:访问数据
嘿那里,我真的不明白如何访问通过matlab中的参数传递给mex函数的数据 . 假设我有'默认'网关功能 void mexFunction( int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[] ) 现在我得到了指向1.输入参数的指针: double* data_in; data_in = mxGetPr(prhs[0]); 以下... -
9 votesanswersviews
如何在MEX函数中读取整数数组
我将一个uint8类型的整数数组从MATLAB传递给MEX函数 . 我如何阅读这些值?我试过用: int *n; n = (int * ) mxGetData(prhs[0]); 但 Value 观就像垃圾一样 . 我也试过了 double *n; n= mxGetPr(prhs[0]); 在这种情况下,也会出现垃圾值 . 这是什么解决方案? 基本上我想读取MEX函数中的整数值,但 mxGet... -
3 votesanswersviews
使用MATLAB中的MEX文件访问存储在单元阵列内的矩阵
我目前正在编写一个MEX函数,它必须在MATLAB中使用单元数组 . MEX文件用C语言编写 . 本质上,我的函数的输入将是一个单元格数组,其中每个条目都是具有实数值的数字矩阵 . 一个简单的例子是: C = cell(1,2); C{1} = ones(10,10); C{2} = zeros(10,4); 我希望能够访问我的MEX文件中的数字数组C {1}和C {2} . 理想情况下,我想... -
1 votesanswersviews
使用matlab在huffman中链接和解码的解开函数中的错误
这是解码的代码,我希望通过霍夫曼编码解码和链接压缩图像 . #include "mex.h" void unrav(uint16_T *hx, double *link, double *x, double xsz,int hxsz) { int i=15; int j=0, k=0, n=0; while (x... -
4 votesanswersviews
如何在mex文件中调用imresize(MATLAB)
我编写了以下代码,以便在mex文件中使用 imresize 函数 . #include "mex.h" void mexFunction(int nlhs, mxArray *plhs[], int nrhs, mxArray *prhs[]) { mxArray *output[1]; mxArray *input[3]; input[0] = prhs[0]; ... -
4 votesanswersviews
如何在C mex函数中传递Matlab m x n单元矩阵参数?
我想将在Matlab中创建的这样的单元矩阵作为输入参数传递给mex函数, for i=1:5, p{i}=rand(3,4); end 然后将其作为3维双数组作为输出参数返回 . 预期语法: Parray = convert(p); 其中Parray是一个3乘4乘5的数值数组而P(:,:,i)= p ; 我正在使用的以下代码可以成功构建到所需的mex函数中: #include <... -
1 votesanswersviews
libpointer作为Matlab中MEX函数的输入
在Matlab中,我有一个进程(一个使用calllib的数据采集,但这并不重要),它将指针(libpointer)返回给一个大型数组 . 我想在MEX文件中使用这些数组 . 如果我有一个libpointer X到这个数组,我怎么能在MEX文件中使用它? 当然,有可能将其分配给一个新的变量,比如 A = X.Value; 但我想这个任务将复制数组,我不想要的 . 所以我的问题是,有没有办法使用li... -
3 votesanswersviews
多线程(pthreads)MATLAB mex函数导致MATLAB在退出后崩溃
我有一个任务需要在MATLAB中多次执行,我想通过使用多线程MEX函数来减少执行任务所花费的时间 . 但是,由于双重释放或损坏错误,MEX函数导致MATLAB在退出后崩溃,因此我遇到了一些麻烦 . 任务本身非常大,但我能够使用以下最小(非)工作示例重现错误: #include <pthread.h> #include "mex.h" #include "m... -
0 votesanswersviews
从mex中的matlab结构中提取数据
我跟着this example但是我不确定我错过了什么 . 具体来说,我在MATLAB中有这个结构: a = struct; a.one = 1.0; a.two = 2.0; a.three = 3.0; a.four = 4.0; 这是我在MEX中的测试代码--- 首先,我想确保我传递的是正确的东西,所以我做了这个检查: int nfields = mxGetNumberOfFields(p... -
3 votesanswersviews
matlab mex文件和C dll(windows)
我有一个带类Test的DLL . Headers : class MY_EXPORT Test { public: int doit(const string &str); }; 和来源: int Test::doit(const string &str) { return int(str.length()); } 现在我从mex文件中使用它: void ... -
0 votesanswersviews
C Mex文件在64位Linux上崩溃了matlab,但没有32位窗口崩溃,但程序在Matlab外运行正常
警告我在问题中提供的代码可能会使matlab和您的机器崩溃! 我已经为C类编写了一个mex网关函数 . 如果我使用R2008a在32Bit windows上编译这个mex函数我没有问题 . 如果我在运行64位Scientific Linux(Red Hat Enterprize Linux版本)的Matlab R2011a上编译并运行,那么在调用mexfunction时,matlab将以段错误退出... -
-2 votesanswersviews
C / CLI,MEX:错误C3767候选函数取决于函数参数类型
我正在使用这样结构的mex解决方案: 我有一个C#阅读器A,它由一个C / CLI项目B调用,由一个mex项目C调用,它是从matlab调用的 . 这不是我的代码,只是我应该运行的东西 . B包含两个我无法访问的函数,首先是构造函数:B :: B(mxArray * data) 二,常规函数:mxArray * B :: toMatlab(bool模式) 我尝试使用int替换构造函数的mxArra... -
5 votesanswersviews
Mex文件:如何返回已经分配的matlab数组
我发现了一个非常棘手的问题,我似乎无法轻易解决这个问题 . 简而言之,我想从一个mex文件返回一个数组,该数组已作为mex函数输入传递 . 你可以琐碎地做到这一点: void mexFunction(int nargout, mxArray *pargout [ ], int nargin, const mxArray *pargin[]) { pargout[0] = pargin[0];... -
8 votesanswersviews
使用Matlab进行MEXing C时,size_t和mwSize之间的差异
我目前正在努力将一些C文件移植到64位Matlab,这些文件是用32位Matlab进行的 . 在这样做时,我遇到了两种类型,一种来自Matlab人,一种来自C标准 . 这是Matlab文档中关于mwSize的内容: mwSize(C和Fortran)大小值的类型说明mwSize是一种表示大小值的类型,例如数组维度 . 使用此功能可实现跨平台灵活性 . 默认情况下,mwSize等效于C中的int ... -
0 votesanswersviews
将mxarray转换为cv :: mat时程序崩溃
我正在尝试编写一个mex函数来调用另一个函数F.F使用opencv库,所以我需要将mxarray转换为cv :: mat . 我使用嵌套for循环将每个像素值或值向量分配给两个创建的cv :: mat . 代码发布在下面 . 但是,程序在运行for循环一段时间后崩溃 . 我试图使用mexPrintf打印出诸如A(i,j,2)之类的值,并且值是正确的(unsigned char) . 来自Matla... -
1 votesanswersviews
Matlab最终崩溃了mex回调
我有一个Mex函数,它将特定的消息和消息类型(1,2,3)从C转发到Matlab函数'fruit_getpar.m' . 这个Matlab函数'fruit_getpar.m'从消息字符串中提取参数并将其存储为变量 . C消息是在随机实例中生成的 . 问题:Matlab有时会与生成的C消息崩溃,但是这条消息的结构总是一样的 . 任何线索? #include "mex.h" #i...