Ubuntu14.04 ROS自带opencv2.4.8和opencv3.1多版本共存
来源:互联网 发布:linux php sqlsrv扩展 编辑:程序博客网 时间:2024/06/06 18:12
由于在安装ROS时自带的版本是opencv2.4.8的,这几天调试程序需要使用opencv3.1.0的版本,这就需要opencv多版本的共存,在网上搜集了很多资料,结合自己安装的过程记录一下:
使用命令查看当前的opencv版本:
pkg-config --modversion opencv
ROS系统自带的是opencv-2.4.8
安装opencv3.1
–首先下载新版本的opencv安装包,之后解压,安装opencv的依赖项。
1、从OpenCV官网上下载OpenCV官网上下载OpenCV的未编译源代码:opencv官网下载
2、国内很多网络打开OpenCV官网速度缓慢,可以点击如下地址直接从GitHub上下载OpenCV 3.1的源代码:giuhub地址
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/opencv310 .. make sudo make install
在这里,我将opencv3.1的安装目录放在了/usr/local/opencv310文件夹紧接着需要配置下文件,通过修改bashrc文件来设置PKG_ CONFIG_PATH(后来发现好像还需要改一下LD_LIBRARY_PATH)
sudo gedit ~/.bashrc
在文件末尾加上
export PKG_CONFIG_PATH=/usr/local/opencv310/lib/pkgconfig export LD_LIBRARY_PATH=/usr/local/opencv310/lib
保存之后,再使用命令
source ~/.bashrc
这时候使用
pkg-config --modversion opencv
命令,opencv版本已经变成3.1了
配置 当你使用的是cmake工具时,在Cmakelist中加入路径即可使用opencv3.1,当你想返回使用opencv2时,将
find_package(OpenCV 3.1 REQUIRED )
换成find_package(OpenCV REQUIRED )
即可,其余删除。#find_package(OpenCV REQUIRED) #使用opencv2
cmake_minimum_required(VERSION 2.8) #要求>2.8的版本
set(OpenCV_DIR /usr/local/opencv310/share/OpenCV)
find_package( OpenCV 3.1 REQUIRED ) #使用opencv3.1
#if(NOT OpenCV_FOUND)
# find_package(OpenCV 3.1.0 QUIET)
# if(NOT OpenCV_FOUND)
# message(FATAL_ERROR "OpenCV > 3.0.0 not found.")
# endif()
#endif()
include_directories(${OpenCV_INCLUDE_DIRS} /usr/local/opencv310/include)
find_package( "/usr/local/opencv310/include/opencv2" )
include_directories(${OpenCV_LIBRARY_DIRS} /usr/local/opencv310/lib)
如果需要卸载OpenCV,执行:
make uninstallcd ..sudo rm -r buildsudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV /usr/local/bin/opencv* /usr/local/lib/libopencv*
平时的小问题:报错:[Error] ‘setprecision’ is not a member of ‘std’
解决:需要加上头文件 便可通过编译 :
#include <iostream>#include <iomanip>
- Ubuntu14.04 ROS自带opencv2.4.8和opencv3.1多版本共存
- Ubuntu14.04 opencv2.4.8和opencv3.2多版本共存
- Ubuntu14.04 opencv2.4.8和opencv3.3.1多版本共存
- Ubuntu14.04 opencv2.4.8和opencv3.1.0共存
- Ubuntu14.04下opencv3和opencv2共存和使用方法
- Ubuntu14.04 安装opencv2.4.13与opencv3.2,多版本共存
- ubuntu 14.04 下同时安装OpenCV2.4.8和OpenCV3.2,版本共存切换
- ubuntu下opencv3和opencv2共存
- ubuntu编译opencv3和opencv2共存
- 在ubuntu14.04上anaconda和ros共存的问题?
- OpenCV2与OpenCV3共存
- 在Ubuntu14.04的64位下安装opencv2.4.13和opencv3.1.0及不同版本间切换的操作
- Ubuntu下OpenCV2和OpenCV3共存的方法
- ubuntu 14.04 opencv2 和opencv3 多个版本切换使用
- ubuntu下安装opencv2和opencv3 多版本共用
- ubuntu14.04 LTS Qt 配置 cmake3.5 和 opencv3.1.0 和 ROS 开发环境
- 在Ubuntu14.04下64位机上Qt5.6.0中调用opencv2和opencv3库的注意事项
- opencv3.1自带demo的介绍和运行操作。
- AI一分钟 | 妈呀!连地铁都开始无人驾驶了,飞机还远吗;北京无人驾驶新规出台,终于知道李彦宏该不该被罚了(12月19日)
- Java中对象PO,BO,VO,DTO,POJO,DAO
- 不服来战!多伦多大学教授500美元挑战整个机器学习圈子
- 干货 | AI 工程师必读,从实践的角度解析一名合格的AI工程师是怎样炼成的
- 【重磅】AI击败顶级德扑玩家的秘密!德扑AI创造者现身reddit,全面解答34个提问,详解Libratus的现状和未来
- Ubuntu14.04 ROS自带opencv2.4.8和opencv3.1多版本共存
- Unity学习(1)——角色移动
- 12/19 python的高级特性
- WPF Grid + DataGrid多表头 动态列实现
- struts 不走action 原因找了好久。。。。
- Spring中@CrossOrigin的作用
- location.hash用法
- 大话MVP架构模式(1)-Basic
- BZOJ[1693][Usaco2007 Demo]Asteroids 网络流