您的位置:首页 > 编程语言 > MATLAB

Compile C++ code in Matlab with OpenCV support

2015-10-10 17:01 381 查看
Provides a function named as “mex_opencv(src)”

The code

function mex_opencv(src)

ARC = 'x64';

BIN_PATH = ['D:\libs\cv\2.4.10\', ARC ,'\vc12.0\bin'];
INC_OPT = '-ID:\libs\cv\2.4.10\include\opencv ';
INC_OPT = [INC_OPT, '-ID:\libs\cv\2.4.10\include '];

LIB_PATH = ['D:\libs\cv\2.4.10\', ARC ,'\vc12.0\lib'];
LIBS = ' ';

LIBS_ORG = dir([LIB_PATH, '\*.lib']);
for i = 1:numel(LIBS_ORG)
CUR_LIB = strtrim(LIBS_ORG(i).name);
if (CUR_LIB(end-4)~='d')
LIBS = [LIBS, '-l', CUR_LIB, ' '];
end
end

LIB_OPT = ['-L', LIB_PATH, ' ', LIBS];

% Add boost support
INC_OPT = [INC_OPT, ' ', '-ID:\libs\boost\1.57.0 '];
LIB_OPT = [LIB_OPT, ' ', '-LD:\libs\boost\1.57.0\stage\vs12.0\', ARC, ' '];

compile_cmd = ['mex -v -O ', INC_OPT, LIB_OPT, src];
eval(compile_cmd);

PATH_STR = getenv('PATH');
if (numel(strfind(PATH_STR, 'cv'))==0)
setenv('PATH', [BIN_PATH, ';', PATH_STR]);
end

end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  matlab opencv