Ubuntu14.04 opencv2.4.8和opencv3.1.0共存

opencv是一个很方便的开源库,在学习中也经常用到,但是2和3两者的兼容性做的很好,所以有时需要同时装上2和3,在装ros的时候电脑自动装上了2版本,如果没有直接通过:sudo apt-get install libopencv-dev可以直接安装(没有试过尴尬

因为要跑gms,而这是依赖的3版本,所以现在源码编译一下3~


opencv3.1.0编译安装

1.下载opencv,直接去官网下就好了,选择自己喜欢的版本

2.解压后进入文件夹,修改CMakeList.txt。

set(CMAKE_INSTALL_PREFIX "/你/自己/的/路径" CACHE PATH "Installation Directory")(总之不要放在默认的地方就好啦!)

3.mkdir build

   cd build

  cmake ..

  make

  sudo make install

如果一切没问题,恭喜你安装成功,不过一般都会有问题的啦!

1.ippic_linux_20151201.tgz这个文件很容易出现下载速度很慢,然后cmake挂掉,可以手动下载后放入opencv-3.1.0/3rdparty/ippicv/downloads/linux-80xx(省略一串数字字母):

https://raw.githubusercontent.com/Itseez/opencv_3rdparty/81a676001ca8075ada498583e4166079e5744668/ippicv/ippicv_linux_20151201.tgz

2.编译过程中出现

/opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp:120:54: error: ‘NppiGraphcutState’ has not been declared
     typedef NppStatus (*init_func_t)(NppiSize oSize, NppiGraphcutState** ppStat
                                                      


解决方案:gedit /home/你的路径/opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp

                   将#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)替换为

                     #if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION >= 8000)

此处参考http://blog.csdn.net/allyli0022/article/details/62859290

opencv的调用

如果要用opencv2的话直接按之前的find_package( OpenCV REQUIRED )就可以啦!

如果要使用opencv3的话需要加上set(OpenCV_DIR "/你/自己/的/路径/share/OpenCV")


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值