问题标签 [mex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1009 浏览

c - Mex 稀疏矩阵

我在 MEX 中使用mxCreateSparse.

来自的最大值(returnindex1(xi[p][0],xi[p][1])-1)*n*n + (returnindex1(xj[p][0],xj[p][1]))n*n*n*n,我创建了维度的稀疏矩阵(n*n)X(n*n)

当我显示整个矩阵时,一些零元素是垃圾。同样对于较大的值n,分段错误发生在wpoint

0 投票
2 回答
3454 浏览

matlab - 当 printf 位于从 s 函数调用的单独 c 文件中时,如何使其工作?

我在文件 mySFun.c 中有一个 s-function,它调用一个在单独的文件 myFoo.c 中实现的函数 foo()。当我在 mySFun.c 的 mdlOutput 函数中编写 printf 语句时,它们工作正常。但是当我将 printf 放在 myFoo.c 中的函数 foo() 中时,它们不会在命令窗口中显示它们的输出。

当 printf 位于另一个从 s-function 调用的文件中时,如何启用 printf 功能?

0 投票
2 回答
1014 浏览

c - 从 MATLAB 访问在 MEX 中创建的稀疏矩阵

我按照此处显示的示例在 MEX 文件中创建了一个稀疏矩阵。现在我如何从整个 MATLAB 访问这个矩阵。

另外,在将值存储在 中时static_pr_data,是否有必要以列主要格式存储值?是否可以以行主要格式存储(因为它会加快我的计算速度)?ic_datajc_data

0 投票
2 回答
2160 浏览

c++ - mex 文件崩溃,如何在 matlab 中使用 MATLAB_MEM_MGR?

我已将 C++ 代码编译为 MEX 文件,但在调用此 MEX 文件时,它会崩溃。它在 MATLAB 中给出以下错误消息:

检测到分段违规

我尝试在 C++ 文件中使用 try-catch 在 catch 块中打印消息,例如,

但打印消息不起作用,代码仍然崩溃。

在查看 Google 时,大多数时候它指向 MathWorks 给出的某种形式的消息:http: //www.mathworks.de/matlabcentral/newsreader/view_thread/25900

其中指示设置环境变量"MATLAB_MEM_MGR=debug",但没有说明如何使用它?谁能解释一下?

0 投票
1 回答
597 浏览

.net - WCF 唯一基地址问题

我遇到了 WCF 报告的问题...

net.pipe://192.168.0.100/SystemA/Service1.svc/mexPipe' 无法激活。

我已将我的基址定义如下:

服务1...

服务2...

然后,对于每项服务,我将 Mex 端点定义如下......

这肯定会给我 2x mex 端点,如下所示...

但是我不认为这是在看这篇文章......

net.tcp 绑定元数据问题

发帖人似乎与我有类似的配置,响应者说基地址在每个方案中都不是“唯一的”——但它们肯定是因为它们都引用了两个唯一的服务?

WCF 可以检测到我的 mex 端点是 netNamedPipe 并查找它们的基地址吗?鉴于绑定是“mexNamedPipeBinding” - 或者这不起作用?

0 投票
2 回答
11224 浏览

matlab - 如何在 MEX 函数中读取整数数组

我将 uint8 类型的整数数组从 MATLAB 传递给 MEX 函数。如何读取这些值?我尝试使用:

但这些值是垃圾。我也试过

在这种情况下,垃圾值也会出现。

解决方案是什么?

基本上我想读取 MEX 函数中的整数值但mxGetPr返回双精度类型。

0 投票
0 回答
858 浏览

matlab - 在 Matlab 中检索 Kinect 图像很慢

我正在使用 Fujitsu Core 2 Duo 2Ghz、2 Gb RAM、Windows7 和 Matlab R2010a 使用这个 Mex-function Code检索 Kinect 图像序列(RGB 和深度) 。它非常慢。我不知道为什么。有什么建议吗?谢谢!

这段youtube 视频显示了它的运行速度有多慢。

下图显示每秒帧数

在此处输入图像描述

------------------sample_niImage.m------------------------------

0 投票
2 回答
781 浏览

c++ - 链接外部 DLL 中 std::vector 的 Mex 动态内存管理问题;分割错误

我正在尝试创建一个 mex 文件,该文件将 MATLAB 与与某些硬件通信的外部 C++ 库接口。硬件供应商为我的 VC++ 版本提供了一个导入的库和预编译的 DLL(.lib 和 .dll),我能够在 C++ 中毫无问题地实现它们。

但是,当代码编写为 mex(使用相同版本的 VC++ 编译)时,我在运行时遇到了分段错误。在使用 VC++ 调试器进行一些调查之后,可能的罪魁祸首似乎是外部 dll 函数之一返回数据类型 std::vector 的事实,并且可能会尝试为函数内部某处的向量容器动态分配内存。我知道如果我在自己的 mex 函数中使用 std::vector ,一切正常,但我怀疑 mex 标头本身将 std::vector 容器包装在我自己的内存管理代码中(?)在 mex 代码中分配内存,而对于预编译的 .dll 则不能这样做。

现在的问题是:由于我无法修改外部 .dll 文件并且无法访问其源文件,是否有任何方法可以使用此外部 dll 以使动态内存由 MATLAB 管理(也许是某种包装器。 .?)...从而避免分段错误并返回正确的数据?或者如果我的分析是错误的,也请纠正我!

如果有任何想法或黑客,请告诉我,谢谢!

我的系统:Windows 7 SP1 32 位,MATLAB 2009b,Visual C++ 2008 Pro。

我还在以下位置发布了相同的问题: http: //www.mathworks.com/matlabcentral/answers/9294-mex-dynamic-memory-management-issue-with-std-vector-in-linked-external-dll-segmentation-错误 。如果您有帐户,也可以在那里分享您的见解,谢谢!

0 投票
1 回答
1398 浏览

matlab - 如何将值传递给 mex 文件

嗨,我想将一个值从我的 matlab 发送到我的 mex 函数。该值通常约为 10 位长,我使用了 unsigned long long 数据类型。

但我很难从 mexfile 访问它。mxGetPr 返回双精度类型,所以我需要进行一些类型转换吗?

0 投票
2 回答
1700 浏览

c++ - 使用矢量类定义的 Matlab 的 Mex 文件

我正在尝试从 C++ 代码源文件创建一个 Mex 文件以将其与 Matlab 一起使用。由于我不太了解的向量类定义处理,我有编译错误。我想知道我应该如何修改代码才能工作。下面我展示了相关代码的部分,我分为四个部分进行更多说明(计算代码、MexFunction 代码、Vector 类定义和编译错误):

计算例程的代码:

mexFunction 的代码:

SAT_VecMat.h 中包含的向量类定义:

编译错误: