VisualStudio下如何编译和使用最新版本的OpenCV(修正版)
2017-03-31 22:54
411 查看
OpenCV是托管于GitHub的开源项目,本文具体解决一个问题,就是“获取最新版本的OpenCV,并且在自己的项目中使用起来"
最新版本 2017年3月31日 BY:jsxyhelu
目录:
1 下载最新代码;
2 编译代码(区分静态库/动态库模式 32位和64位)
3 在自己项目中使用
一 下载最新代码,可以通过GIT或Http直接下载
或(注意 github国内访问通过修改host表可以提速)
二 编译代码(区分静态库/动态库模式 32位和64位)
使用的方式都是CMake两次Configure->一次Generate->Open Project打开vs进行编译。参数的不同带来了结果的不同。
64位和32位的选择体现在选择编译器的时候是否选择Win64。我认为一般意义上说,32位的程序可以以兼容模式运行在64位机器上,反过来不可以。那么也就是说32位以效能换取兼容性。使用时根据实际情况选择。新手选择32位。
在32位系统下运行64位程序报这个错
静态库和动态库的选择体现在是否选择BUILD_SHARED_LIBS(默认是选中的)。如果选择静态库,那么最后生成的程序和支持库是打包到一起的,交付起来比较方便;如果是动态库则是分开的。效能问题没有研究过。新上手的选择默认动态库。同时建议将BUILD_opencv_world选中,这样最后的结果是一个文件。
而后打开vs环境,选中install,生成。也可以批量生成(release和debug都要)。
出现这个错误是正常的,因为allbuild本身就不可启动。
三 在自己项目中使用(只介绍DEBUG模式,RELEASE模式是类似的)
选择动态库模式:
在VC++目录中设定"包含目录"为include地址;"引用目录"为提供的lib地址。注意这里的lib地址只是提供了接口信息。
链接器->输入 填入lib名称
将dll文件拷贝到PATH目录能够指向的地方,比如"C:\Windows\SysWOW64"
注意在交付的时候需要将支持的dll文件一并提供。
如果是静态库:
设置Include
设置引入"常规 附加库目录"
设置lib(注意填全)
注意,需要将"代码生成"的"运行库"改为"多线程调试"。这样就将MFC自己的支持库包含在最后生成的exe中了。
如果想要在程序设计的过程中,能够直接修改OpenCV自己的代码,添加相关功能,首先将Opencv项目引入
而后添加引用设置项目依赖
end
最新版本 2017年3月31日 BY:jsxyhelu
目录:
1 下载最新代码;
2 编译代码(区分静态库/动态库模式 32位和64位)
3 在自己项目中使用
一 下载最新代码,可以通过GIT或Http直接下载
或(注意 github国内访问通过修改host表可以提速)
二 编译代码(区分静态库/动态库模式 32位和64位)
使用的方式都是CMake两次Configure->一次Generate->Open Project打开vs进行编译。参数的不同带来了结果的不同。
64位和32位的选择体现在选择编译器的时候是否选择Win64。我认为一般意义上说,32位的程序可以以兼容模式运行在64位机器上,反过来不可以。那么也就是说32位以效能换取兼容性。使用时根据实际情况选择。新手选择32位。
在32位系统下运行64位程序报这个错
静态库和动态库的选择体现在是否选择BUILD_SHARED_LIBS(默认是选中的)。如果选择静态库,那么最后生成的程序和支持库是打包到一起的,交付起来比较方便;如果是动态库则是分开的。效能问题没有研究过。新上手的选择默认动态库。同时建议将BUILD_opencv_world选中,这样最后的结果是一个文件。
而后打开vs环境,选中install,生成。也可以批量生成(release和debug都要)。
出现这个错误是正常的,因为allbuild本身就不可启动。
三 在自己项目中使用(只介绍DEBUG模式,RELEASE模式是类似的)
选择动态库模式:
在VC++目录中设定"包含目录"为include地址;"引用目录"为提供的lib地址。注意这里的lib地址只是提供了接口信息。
链接器->输入 填入lib名称
将dll文件拷贝到PATH目录能够指向的地方,比如"C:\Windows\SysWOW64"
注意在交付的时候需要将支持的dll文件一并提供。
如果是静态库:
设置Include
设置引入"常规 附加库目录"
设置lib(注意填全)
注意,需要将"代码生成"的"运行库"改为"多线程调试"。这样就将MFC自己的支持库包含在最后生成的exe中了。
如果想要在程序设计的过程中,能够直接修改OpenCV自己的代码,添加相关功能,首先将Opencv项目引入
而后添加引用设置项目依赖
end
相关文章推荐
- 使用QT 4.8.6 + Cmake 3.0.0 编译 最新版本OpenCv3.0.0
- 如何在Android中使用OpenCV(最新版本)
- 如何判断.net编译好的dll文件的使用的.net版本
- 【转】用VC2008编译最新SVN版本OpenCV源代码
- Cmake编译OpenCV和如何在VS工程中配置来使用编译后的OpenCV进行跟踪调试问题
- 如何自己动手编译自定义版本的最新jQuery类库?
- c++中使用boost::regex(由于标准库中版本过低,导致不支持多行,需手动编译添加最新版的boost库)
- BJAM编译工具的使用(一)——如何编译Boost,最新boost编译方法
- android4.0.4版本源码编译后如何使用
- 使用vs2010 opencv2.4.4编译release版本程序
- Python学习:MAC下SlickEdit2012,如何使用最新的python版本
- 如何使用VC6编译sqlite3(版本:sqlite-source-3_6_22)
- 树莓派 安装 OpenCV 使用CMake 编译工程 最新版2015
- 使用Myeclipse内置Ant编译项目时提醒警告java\lang\Object.class(java\lang:Object.class): 主版本 51 比 50 新,此编译器支持最新的主版本
- 使用vs2010 opencv2.4.4编译release版本程序
- 如何使用VC6编译sqlite3源码生成动态链接库(版本:sqlite-source-3_6_23_1)
- 如何自己动手编译自定义版本的最新jQuery类库?
- 使用PowerShell 自动从SVN服务器获取最新版本并编译解决方案(TortoiseSVN)
- 如何自己动手编译自定义版本的最新jQuery类库?