专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 编程

Matlab2012调用opencv2.3.1时的配备

发布时间:2011-07-01 07:29:11 文章来源:www.iduyao.cn 采编人员:星星草
Matlab2012调用opencv2.3.1时的配置

Matlab2012调用opencv2.3.1时的配置

1、  首先保证vs2010能正确调用opencv函数,配置过程见上一篇日志。

2、  Matlab中选择编译器,操作如下:

打开matlab2012,输入mex –setup,出现如下提示:

Welcome to mex -setup.  This utility will help you set up 

a default compiler.  For a list of supported compilers, see 

http://www.mathworks.com/support/compilers/R2012a/win32.html

Please choose your compiler for building MEX-files:

Would you like mex to locate installed compilers [y]/n?

输入y,出现如下提示:

Select a compiler:

[1] Lcc-win32 C 2.4.1 in C:PROGRA~1MATLABR2012asyslcc

[2] Microsoft Visual C++ 2010 in C:Program FilesMicrosoft Visual Studio 2010

[0] None

Compiler:

输入2,出现如下提示:

Please verify your choices:

Compiler: Microsoft Visual C++ 2010 

Location: C:Program FilesMicrosoft Visual Studio 2010

Are these correct [y]/n?

输入y

出现如下提示,表明成功:

***************************************************************************

  Warning: MEX-files generated using Microsoft Visual C++ 2010 require

           that Microsoft Visual Studio 2010 run-time libraries be 

           available on the computer they are run on.

           If you plan to redistribute your MEX-files to other MATLAB

           users, be sure that they have the run-time libraries.

***************************************************************************

 

 

Trying to update options file: C:Documents and SettingszhangjingApplication DataMathWorksMATLABR2012amexopts.bat

From template:              C:PROGRA~1MATLABR2012abinwin32mexoptsmsvc100opts.bat

 

Done . . .

 

**************************************************************************

  Warning: The MATLAB C and Fortran API has changed to support MATLAB

           variables with more than 2^32-1 elements.  In the near future

           you will be required to update your code to utilize the new

           API. You can find more information about this at:

           http://www.mathworks.com/help/techdoc/matlab_external/bsflnue-1.html

           Building with the -largeArrayDims option enables the new API.

**************************************************************************

3、  配置一些目录

matlab中,输入mex –v

下面会有显示:

-> Default options filename found in C:Documents and SettingszhangjingApplication DataMathWorksMATLABR2012a

----------------------------

->    Options file           = C:Documents and SettingszhangjingApplication DataMathWorksMATLABR2012amexopts.bat

      MATLAB                 = C:PROGRA~1MATLABR2012A

->    COMPILER               = cl

->    Compiler flags:

         COMPFLAGS           = /c /GR /W3 /EHs /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /D_SECURE_SCL=0 /DMATLAB_MEX_FILE /nologo /MD

         OPTIMFLAGS          = /O2 /Oy- /DNDEBUG

         DEBUGFLAGS          = /Z7

         arguments           = 

         Name switch         = /Fo

。。。。。。。。。(此处省略一些)

选中上面Options file=后面的部分,右键->Open Selection,打开mexopts.bat

找到下面部分,增加红色的部分

set MATLAB=%MATLAB%

set VSINSTALLDIR=C:Program FilesMicrosoft Visual Studio 2010

set VCINSTALLDIR=%VSINSTALLDIR%VC

rem In this case, LINKERDIR is being used to specify the location of the SDK

set LINKERDIR=C:Program FilesMicrosoft SDKsWindowsv7.0A

set PATH=%VCINSTALLDIR%bin;%VCINSTALLDIR%VCPackages;%VSINSTALLDIR%Common7IDE;%VSINSTALLDIR%Common7Tools;%LINKERDIR%bin;%MATLAB_BIN%;%PATH%

set INCLUDE=%VCINSTALLDIR%INCLUDE;%VCINSTALLDIR%ATLMFCINCLUDE;%LINKERDIR%include;%INCLUDE%;D:opencvinclude;D:opencvincludeopencv;D:opencvincludeopencv2

set LIB=%VCINSTALLDIR%LIB;%VCINSTALLDIR%ATLMFCLIB;%LINKERDIR%lib;%MATLAB%externlibwin32;%LIB%;D:opencvbuildx86vc10lib

set MW_TARGET_ARCH=win32

 

rem ********************************************************************

rem Compiler parameters

rem ********************************************************************

set COMPILER=cl

set COMPFLAGS=/c /GR /W3 /EHs /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /D_SECURE_SCL=0 /DMATLAB_MEX_FILE /nologo /MD

set OPTIMFLAGS=/O2 /Oy- /DNDEBUG

set DEBUGFLAGS=/Z7

set NAME_OBJECT=/Fo

 

rem ********************************************************************

rem Linker parameters

rem ********************************************************************

set LIBLOC=%MATLAB%externlibwin32microsoft

set LINKER=link

set LINKFLAGS=/dll /export:%ENTRYPOINT% /LIBPATH:"%LIBLOC%" opencv_core231d.lib opencv_highgui231d.lib opencv_video231d.lib opencv_ml231d.lib opencv_legacy231d.lib opencv_imgproc231d.lib opencv_flann231d.lib opencv_features2d231d.lib opencv_calib3d231d.lib opencv_objdetect231d.lib opencv_contrib231d.lib libmx.lib libmex.lib libmat.lib /MACHINE:X86 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /manifest /incremental:NO /implib:"%LIB_NAME%.x" /MAP:"%OUTDIR%%MEX_NAME%%MEX_EXT%.map"

set LINKOPTIMFLAGS=

(注意上面include lib处要加分号,LINKFLAGS处各个lib之前要回空格

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: