直接在Python中嵌入Matlab MEX文件中的函数

Oli*_*erB 7 python matlab mex

我使用专有的Matlab MEX文件在Matlab中导入一些模拟结果(当然没有可用的源代码!).与Matlab的接口实际上非常简单,因为只有一个函数,返回一个Matlab结构.我想知道是否有任何方法直接从Python调用MEX文件中的这个函数,而不必使用Matlab?

我想到的是例如使用类似SWIG的东西通过在它周围提供一个自定义的Matlab包装器将C函数导入Python ...顺便说一下,我知道用scipy.io.loadmat它已经可以读取了Matlab二进制*.mat数据文件,但我不知道mat文件中的数据表示是否与Matlab中的内部表示相同(在这种情况下,它可能对MEX包装器有用).

这个想法当然是能够使用MEX中提供的功能而系统上没有Matlab安装.

谢谢.

car*_*sdc 2

除非我误解了 Matlab 的工作原理或你的问题,否则这是不可能的。从技术角度来看,任何解决方案都需要是完整的、二进制兼容的、错误的错误、Matlab C 库的功能重新实现的功能(实现 mxGetPr、mxGetN 等),但绑定到 Python。

让我编辑我自己的答案,说出以下内容:如果您确实有 MATLAB 许可证,那么有一个优秀的MLAB包,它至少可以完成您想要的部分功能。