您的位置:首页 > 运维架构

ubuntu 14.04 下同时安装OpenCV2.4.8和OpenCV3.2,版本共存切换

2017-09-07 08:51 701 查看
  由于实验室需要用到ROS,在安装ros-indigo的时候,系统默认安装了 OpenCV2.4.8版本,直接使用还挺好的。但是,科研需要与时俱进啊,新版的OpenCV3.0以上集成了好多新的功能。比如说,近两年很火的目标跟踪算法KCF、Goturn算法等,都在OpenCV3.1中集成了,直接使用比较方便。但是,ros系统的运行,需要2.4.8版本中的一些比如CV_BRIDGE,所以,2.4.8版本不能卸载。但是,我又想安装3.2版本,于是,就有了这篇博文。

  首先,使用命令查询你的OpenCV版本

pkg-config --modversion opencv
      我的版本是2.4.8

安装opencv3.2

–首先下载新版本的opencv安装包,在这里我下载的是
opencv3.2,之后解压,安装opencv的依赖项

sudo apt-get install build-essential libgtk2.0-dev libvtk5-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev libtbb-dev

–进入解压后的opencv安装包,新建目录,目录名为build,并进入该目录

mkdir build && cd build

输入命令

cmake -D CMAKE_BUILD_TYPE=RELEASE -D WITH_TBB=ON  -D WITH_V4L=ON -D CMAKE_INSTALL_PREFIX=/usr/local/opencv320 ..
make
sudo make install

[/code]
在这里,我将opencv3.2的安装目录放在了/usr/local/opencv320文件夹,如下图所示



紧接着需要配置下文件,通过修改bashrc文件来设置PKG_ CONFIG_PATH(后来发现好像还需要改一下LD_LIBRARY_PATH)

sudo gedit ~/.bashrc

在文件末尾加上

export PKG_CONFIG_PATH=/usr/local/opencv320/lib/pkgconfig
export LD_LIBRARY_PATH=/usr/local/opencv320/lib

保存之后,再使用命令

source ~/.bashrc

这时候使用命令,opencv版本已经变成3.2了

pkg-config --modversion opencv

不同版本切换

  原来,在使用2.4.8版本的时候,我的CMakeList文件中是这么写的:(一个完整的opencv测试包,详细见我的博客主页)

project(test)
find_package(OpenCV REQUIRED)
add_executable(test src/test.cpp)
target_link_libraries(test ${OpenCV_LIBS})
cmake_minimum_required(VERSION 2.8)
如果切换成3.2版本的,需要这样改

project(test)
find_package(OpenCV REQUIRED)
set(OpenCV_DIR "/usr/local/opencv320/share/OpenCV")   
INCLUDE_DIRECTORIES(${OpenCV_INCLUDE_DIRS})
add_executable(test src/test.cpp)
target_link_libraries(test ${OpenCV_LIBS})
cmake_minimum_required(VERSION 2.8)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: