最近在学视觉SLAM过程中要使用opencv2 和opencv3 ,虽然说在程序里能修改opencv 代码,但是自从用上linux后不怕折腾的精神已经深入人心。安装双opencv切换使用多方便,在折腾了若干次之后终于成功了!下面就以opencv2.4.9和opencv3.2版本为例介绍双opencv的安装和切换使用,带大家出坑!
1、安装opencv常用依赖项
sudo apt-get install build-essential libgtk2.0-dev libvtk5-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev libtbb-dev
2、安装opencv2.4.9作为常用默认版本
2.1 下载opencv2.4.9
点击Sources下载opencv2.4.9
2.2 将opencv-2.4.9.zip文件解压到家目录下,并切换到opencv2.4.9目录下
unzip opencv-2.4.9.zip -d ~/
cd opencv-2.4.9/
2.3 默认配置编译安装,默认安装路径/usr/local
mkdir build
cd build
cmake ..
make
sudo make install
3、安装opencv3.2.0作为备用版本
3.1 下载opencv3.2.0
点击 Sources下载opencv3.2.0
3.2 将opencv-3.2.0.zip文件解压到家目录下,并切换到opencv-3.2.0目录下
unzip opencv-3.2.0.zip -d ~/
cd opencv-3.2.0/
3.3 自定义编译安装,自定义安装路径/usr/local/opencv3.2.0(注意不要将自定义路径设为/usr,亲试无效)
mkdir build
cd build
cmake -D CMAKE_INSTALL_PREFIX=/usr/local/opencv3.2.0 ..
make
sudo make install
如果cmake时遇到这样的错误:– ICV: Downloading ippicv_linux_20151201.tgz… CMake Error at 3rdparty/ippicv/downloader.cmake:73 (file):file DOWNLOAD HASH mismatch
点击链接ippicv_linux_20151201.tgz 并粘贴(替换)到目录opencv-3.2.0/3rdparty/ippicv/downloads/Linux-808b791a6eac9ed78d32a7666804320e/下即可。
4、opencv版本的使用
4.1 使用opencv2.4.9,默认find_package(OpenCV)就找了opencv2.4.9
CMakeLists.txt 文件如下
cmake_minimum_required(VERSION 2.8)
project(test)
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(test test.cpp)
target_link_libraries(test ${OpenCV_LIBS})
4.2 使用opencv3.2.0,我们就要在CMakeLists.txt中指定opencv3.2.0的OpenCVConfig.cmake文件。
打开/usr/local/opencv3.2.0/share/OpenCV/就可以看到OpenCVConfig.cmake。
注意要在project()前设置路径,在find_package(OpenCV 3.2.0)指定版本。
CMakeLists.txt 文件如下
cmake_minimum_required(VERSION 2.8)
set(OpenCV_DIR "/usr/local/opencv3.2.0/share/OpenCV")
project(test)
find_package(OpenCV 3.2.0 REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(test test.cpp)
target_link_libraries(test ${OpenCV_LIBS})
cmake编译截图如下:
这样,我们就可以opencv2.4 和opencv3.2切换使用了!
有问题欢迎回复交流。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)