如何实现matlab与c/c++混编

很多情况下,机器学习的算法都是在matlab下实现的。当然我发现现在很多也是用python写的。这些其实都不重要。

师兄经常抱怨CNN+DPM在matlab下实现一张图的行人检测速度实在是太慢。采取了c和matlab的混编。

今天我们就来看看究竟怎么混编的。其实说到底就是一维指针!


1.首先安装编译器。

在matlab里输入mex -setup,找到你电脑上装的编译器。我的是vs2010


2.编写c/c++函数

void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])

其中:

nlhs:输出参数的个数

plhs:输出参数的列表

你可能感兴趣的:(matlab)