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

OpenCV和mexopencv in the Matlab

2016-09-25 17:04 771 查看
compile.m

clc;clearvars;close all;
%编译文件
file='..\third_part\vlfeat-0.9.20\toolbox\sift\vl_sift.cpp';
%输出目录
mexwDir='..\third_part\vlfeat-0.9.20\toolbox\mex\mexw64';
%for toolbox
toolboxDir='..\third_part\vlfeat-0.9.20\toolbox';
%for mexopencv
mexopencvIncludeDir='..\third_part\mexopencv-2.4\include';
obj='..\third_part\mexopencv-2.4\lib\MxArray.obj';
%for opencv
opencvIncludeDir='C:\OpenCV2.4\build\include -IC:\OpenCV2.4\build\include\opencv -IC:\OpenCV2.4\build\include\opencv2';
opencvlibDir='C:\OpenCV2.4\build\x64\vc10\lib';
opencvLibs = ' -lopencv_core249 -lopencv_highgui249 -lopencv_imgproc249 ';
%for vl
vlInlucdDir='..\third_part\vlfeat-0.9.20';
vllibDir='..\third_part\vlfeat-0.9.20\bin\win64';
vlLibs=' -lvl';

cmd=['mex ' file ' -g -largeArrayDims ' obj   ' -I' toolboxDir ' -I'  vlInlucdDir ' -I' mexopencvIncludeDir ' -I' opencvIncludeDir  ' -outdir ' mexwDir  ' -L' vllibDir vlLibs ' -L' opencvlibDir opencvLibs];
eval(cmd);


mex.c文件中使用:

#include<opencv2/opencv.hpp>
#include "MxArray.hpp"
using namespace std;
using namespace cv;


例二:

clc;clearvars;close all;
%编译文件
file='u_lbp.cpp';
%输出目录
%mexwDir='..\third_part\vlfeat-0.9.20\toolbox\mex\mexw64';
%for toolbox
%toolboxDir='..\third_part\vlfeat-0.9.20\toolbox';
%for mexopencv
mexopencvIncludeDir='E:\matlabworkplace\headpose_with_block\third_part\mexopencv-2.4\include';
obj='E:\matlabworkplace\headpose_with_block\third_part\mexopencv-2.4\lib\MxArray.obj';
%for opencv
opencvIncludeDir='C:\OpenCV2.4\build\include -IC:\OpenCV2.4\build\include\opencv -IC:\OpenCV2.4\build\include\opencv2';
opencvlibDir='C:\OpenCV2.4\build\x64\vc14\lib';
opencvLibs = ' -lopencv_core2413 -lopencv_highgui2413 -lopencv_imgproc2413 ';
%for vl
%vlInlucdDir='..\third_part\vlfeat-0.9.20';
%vllibDir='..\third_part\vlfeat-0.9.20\bin\win64';
%vlLibs=' -lvl';

%cmd=['mex ' file ' -g -largeArrayDims ' obj   ' -I' toolboxDir ' -I'  vlInlucdDir ' -I' mexopencvIncludeDir ' -I' opencvIncludeDir  ' -outdir ' mexwDir  ' -L' vllibDir vlLibs ' -L' opencvlibDir opencvLibs];
cmd=['mex ' file ' -g -largeArrayDims ' obj  ' -I' mexopencvIncludeDir ' -I' opencvIncludeDir    ' -L' opencvlibDir opencvLibs];

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