由于开发的需要,要在电脑同时安装OpenCV2和3两个版本,实现版本的切换。下边记录的Windows和Linux/CMake的版本切换方式。

博客主页:http://blog.csdn.net/xs1102

文章地址:http://blog.csdn.net/xs1102/article/details/75091185

Windows:

opencv的安装这里不在赘述,下载一路next即可。

然后在我的电脑属性-环境变量中,增加一个OPENCV_HOME或者OPENCV_DIR之类的变量,记录你的opencv版本,然后在PATH变量中使用OPENCV目录变量来设置dll文件的路径。之后在需要版本切换时只需要修改OPENCV目录变量的路径即可完美切换。

Linux:

方法一:

Linux下一般使用CMake建立工程,所以这里只介绍cmake的切换方式。IDE一般都有可视化界面设置路径。相对简单。

首先安装方法参考OpenCV2的方法,可以参考这个方法。http://blog.csdn.net/xs1102/article/details/74729416

这个方法Opencv2.4.13和3.1.0都适用,亲测。

注意cmake opencv时,参数设置到不同的安装路径,然后在编译安装到两个路径下。

当自己所写的程序使用到opencv3时,在 find_package( OpenCV REQUIRED ) 前,添加OpenCV_DIR的路径设置

set(OpenCV_DIR "/usr/local/OpenCV3/share/OpenCV")

不同的工程,设置不同路径即可。

方法二:

cmake默认文件夹时/usr/local/share/。所以可以在这个目录下新建一个到Opencv安装路径下share/OpenCV的链接。然后在OpenCVConfigure.cmake文件中设置OpenCV的安装路径。

这样只要改变OpenCV的链接地址便可以使用不用的库,只是这样是改变系统配置,方法一是改变工程的配置。按需选择吧

OpenCV2与OpenCV3共存相关推荐

  1. 配置OpenCV2和OpenCV3开发环境笔记

    配置OpenCV2和OpenCV3开发环境笔记 Date: 2016-01-19 Author: Kagula Environment: Visual Studio 2013 Update5, Ope ...

  2. opencv2和opencv3多版本共存

    首先,由于本人使用了ROS,因此在安装ROS的时候安装了ros-indigo-destop-full顺便安装了版本2.4.8的opencv,因为ROS里面的一些文件需要依赖于该版本的opencv,例如 ...

  3. OpenCV2和OpenCV3兼容安装

    个人博客:http://www.chenjianqu.com/ 原文链接:http://www.chenjianqu.com/show-79.html 最近重新开始使用opencv-cpp,有些项目需 ...

  4. 关于Ubuntu同时安装opencv2和opencv3

    我用的是ubuntu14.04,之前已经安装了OpenCV2(默认的安装路径是/usr/local),现在需要安装OpenCV3.2,但是又不想将opencv2删除,怎么办???对,在别的地方安装. ...

  5. MAC电脑黑屏怎么办?按照这个步骤操作就能恢复正常了!

    MAC电脑黑屏按照这个步骤操作,你的电脑就能恢复正常了! MAC电脑黑屏Shift-Control-Option 键和开关键可以恢复,macz小编告诉大家具体操作方法如下: 1.首先关闭电脑: 2.将 ...

  6. 【OpenCV3】透视变换——cv::getPerspectiveTransform()与cv::warpPerspective()详解

    透视变换(Perspective Transformation)是将成像投影到一个新的视平面(Viewing Plane),也称作投影映射(Projective Mapping).如图1,通过透视变换 ...

  7. 【OpenCV3】图像通道分离与合并——cv::split()与cv::merge()详解

    在图像处理中,尤其是处理多通道图像时,有时需要对各个通道进行分离,分别处理:有时还需要对分离处理后的各个通道进行合并,重新合并成一个多通道的图像.opencv2和opencv3中实现图像通道的合并与分 ...

  8. 【OpenCV3】图像旋转与平移——cv::warpAffine()详解

    图像旋转和平移是图像处理中常用的一种操作,opencv2和opencv3中对图像的旋转和平移都是通过仿射变换函数cv::warpAffine()来实现的. 1.图像的旋转 图像的旋转具体实现分为两步: ...

  9. 【OpenCV3】级联分类器目标检测——cv::CascadeClassifier简介

    Cascade级联分类器是一种快速简单的分类方法,opencv2和opencv3中提供了完整的cascade分类器的训练和检测方法,本篇主要介绍下级联分类器的检测方法. opencv中用于级联分类的类 ...

最新文章

  1. 夏天到了用TypeScript给自己开个小空调吧
  2. poj 2739 Sum of Consecutive Prime Numbers
  3. 每一个人都是平凡的英雄
  4. leetcode算法题--最接近的三数之和
  5. MySQL创建用户(CREATE USER)
  6. 3Animation动画的创建,CCSpeed,CCFollow
  7. why quantity change in item can cause CUMULAT_H changed as well
  8. VirtualCopy()操作I/O口 物理地址为什么要移8位
  9. 配置说明_温室移动喷灌机简介以及配置说明
  10. 部署Vista – 第2部分:理解Windows安装程序和Windows映像文件格式
  11. Java JDK11的下载与安装
  12. 通过调用百度生成短连接API接口,将长链接转换成短链接,并且生成短网址并返回,用户可以通过短连接访问,然后浏览器会解析跳转至长链接地址,有效的解决用户修改url后面的参数
  13. Python案例1—人民币与美元的汇率兑换V_5.0
  14. 面向开发者稳定、安心的APP内测托管平台
  15. 2022-2028年中国微创治疗行业市场运行态势及发展战略研究报告
  16. Android Studio 选项菜单和动画结合_安卓手机关于“开发者选项”你该知道的几件事...
  17. 《老梁四大名著情商课》笔记- 拒绝是战术,不是艺术
  18. LAMP(一)_介绍
  19. 初遇电容-电容在电路中的作用
  20. 【数据集NO.1】最经典大规模、多样化的自动驾驶视频数据集——BDD100K数据集

热门文章

  1. python中类未实例化引发的报错 missing 1 required positional argument: ‘self‘
  2. UE4 在UMG,UI中播放视频没有声音的解决方案。
  3. git合并分支代码到master
  4. 图论:桥(割边)和割点
  5. iOS GZIP 字符串解压
  6. 文献翻译 载重汽车变速箱
  7. 第一篇:mybatis源码入门
  8. 三国志战略版:官渡之战_新阵容解读_刘备
  9. 性能:你知道并发用户数应该怎么算吗
  10. 模块式浪涌保护器概述和防雷元件解析