Windows 正确安装OpenCV及使用(CMake+VS2015)
2017-02-19 14:20
495 查看
环境
Windows 10 家庭中文版 OpenCV 2.4.13 CMake 3.7.2 Visual Studio 2015 update 3
OpenCV 3.0+和
VS 2017同理。
使用exe安装的问题
在Windows上安装
OpenCV后,如果是直接使用
Visual Studio来创建工程的话,每次都要配置头文件和库文件,非常麻烦
由于官方使用的编译器版本和个人使用的编译器版本不一致造成的动态库的缺少(
MSVCP120.dll、MSVCP120d.dll、MSCVR120d.dll…等)
使用
CMake找不到
OpenCV
不能很方便的学习
OpenCV的源代码
解决
OpenCV是一个使用
CMake(CMake是一个自动化构建工具,具体的可以去官网查看)构建项目的开源项目,可以和方便的使用
CMake进行编译安装,可以解决上面的所有问题。
使用CMake生成OpenCV的工程
打开cmd并进入到OpenCV安装目录下的源代码目录下,执行以下命令:mkdir build cmake .. -DCMAKE_INSTALL_PREFIX=D:/opencv
这样
CMake就生成了
Visual Studio的工程,上面的命令中的路径是编译后的安装位置,本次教程里只是生成了
x86也就是32位下使用的库文件(X64同理)。
使用Visual Studio2015编译安装OpenCV
这一步也可以直接用命令行进行,不过这样更直观进入上面的
build的目录,找到
OpenCV.sln,打开,接下来分别编译生成并安装
Release和
Debug使用的库文件:
生成Debug版的Win32库文件并安装
找到ALL_BUILD项目
右键build
如果编译后没有错误(报ALL_BUILD不能运行那个不算),就可以安装了,
然后就可以在上一步指定的目录中找到安装的OpenCV了。
生成Release版本的Win32库文件
接下来的和上面一样。
最终的安装路径中的文件应该为
检查下x86下的库文件,
x86/vc14/lib和
x86/vc14/bin中均有Debug(结尾有d的库文件)和Release的库文件。
环境变量
将OpenCV安装目录的根目录和bin目录包含到环境变量中就可以了。测试是否成功
新建一个CMake工程/-testcv |- src | |- main.cpp | |- CMakeLists.txt /
main.cpp代码
#include <iostream> #include <opencv2\opencv.hpp> int main(int argc, char *argv[]) { cv::Mat frame; cv::VideoCapture camera(0); while(1) { camera >> frame; cv::imshow("camera", frame); cv::waitKey(30); } return 0; }
CMakeLists.txt代码(提供的这个通用模板已经可以满足日常小项目了)
cmake_minimum_required(VERSION 3.0) set(PROJECT_NAME testcv) project(${PROJECT_NAME}) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") set(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/bin) file(GLOB_RECURSE HEADERS *.h) source_group("Header Files" FILES ${HEADERS}) aux_source_directory(src DIR_SRCS) find_package(OpenCV REQUIRED) if(OpenCV_FOUND) include_directories(${OpenCV_INCLUDE_DIRS}) add_executable(${PROJECT_NAME} ${DIR_SRCS} ${HEADERS}) target_link_libraries(${PROJECT_NAME} ${OpenCV_LIBS}) endif()
打开命令行,进入test目录:
mkdir build cd build cmake ..
进入build目录,打开testcv.sln,查看一下配置中的库文件和头文件都没有问题
Debug
Release
然后设置testcv为启动项,编译运行,可以打开摄像头并看到录像。OK
总结
使用CMake来管理需要大量配置库和头文件的项目,非常方便。OpenCV使用官方的exe文件安装后可用,但有可能遇到编译器版本造成的库版本不一致的问题。
如果需要生成x64的库,在第一步的时候,指定生成x64就可以。
相关文章推荐
- 树莓派 安装 OpenCV 使用CMake 编译工程 最新版2015
- opencv学习(1.2) - Windows 10 安装OpenCV &配置VS 2015
- Windows 10 VS2015 环境下安装使用BLAS线性代数库
- VS2015中OpenCV编程插件Image Watch安装和使用介绍
- 基于windows下使用CMake和VS2013编译OpenCV的环境搭建
- win10下使用CMake编译OpenCV2.4(配置VS2015之前)
- 【OpenCV】Windows10环境搭建 安装OpenCV并配置VS2015
- 在VS2015上安装OpenCV3.0以及利用CMake编译OpenCV
- VS2015中OpenCV编程插件Image Watch安装和使用介绍
- VS2015 安装不成功,运行时xxxxpackage找不到或没有正确配置
- Windows下VTK6.0.0安装详解(CMake使用说明)
- OpenCV3.0.0+win10 64位+vs2015环境的下载,安装,配置
- 如何在Windows环境下的VS中安装使用Google Protobuf完成socket通信
- cmake的使用实例: opencv-3.0.0-alpha安装
- 为什么要使用CMake+VS编译OpenCV的源码
- OpenCV安装:OpenCV 3.1.0 +VS2015 开发环境配置
- Windows下利用CMake和VS2013编译OpenCV
- 如何在Windows环境下的VS中安装使用Google Protobuf完成SOCKET通信
- Windows下利用CMake和VS2013编译OpenCV(TBB编译)
- vs2015安装使用体验