前言
在日常使用时可能会需要不同版本的OpenCV,因此在ubuntu18.04系统上如何安装多个版本的OpenCV很有必要。成功的关键是安装到不同的路径,并在CMakeList.txt中找到需要的版本。
多版本OpenCV共存
假设我们已经安装好一版OpenCV,一般都安装在/usr/local下。
如果需要安装另一个版本的OpenCV,就不能再安装到/usr/local,而是选择其他路径,否则会覆盖掉之前的版本。
一般可以按照这样的结构:
/usr/local/opencv-3.1.0, /usr/local/opencv-3.4.6
或者把所有的OpenCV全部安装在了/usr/local/opencv目录下。
STEP-1,下载OpenCV
STEP-2,安装依赖包
STEP-3,编译安装OpenCV
详见官方文档https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html。
本次opencv-3.4.6安装的源码目录为:~/opencv-3.4.6/build/installed,用于编译和安装opencv-3.4.6。
安装路径为:/usr/local/opencv/opencv-3.4.6
对应的设置项目为:
-DCMAKE_INSTALL_PREFIX=~/usr/local/opencv/opencv-3.4.6 \
第三方模块
文件路径设置:
-DOPENCV_EXTRA_MODULES_PATH=~/downloads/opencv3.4.6/opencv_contrib-3.4.6/modules \
$ cd opencv-3.4.6
$ mkdir build
$ cd build
$ mkdir installed
$ cmake \
-DCMAKE_BUILD_TYPE=RELEASE \
-DCMAKE_INSTALL_PREFIX=/usr/local/opencv/opencv-3.4.6 \
-DOPENCV_EXTRA_MODULES_PATH=~/downloads/opencv3.4.6/opencv_contrib-3.4.6/modules \
\
\
-DWITH_CUDA=OFF \
\
-DBUILD_DOCS=OFF \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TESTS=OFF \
-DBUILD_PERF_TESTS=OFF \
..
$ make -j4
$ sudo make install
说明
- 其中/usr/local/opencv/opencv-3.4.6为安装OpenCV3.4.6的路径,这个十分关键。
- 设置OFF的理由如下,可大大加快编译速度,当然还要根据需求进行设置。
- It is useful also to unset BUILD_EXAMPLES, BUILD_TESTS, BUILD_PERF_TESTS - as they all will be statically linked with OpenCV and can take a lot of memory.
- 此外,还可以取消设置BUILD_EXAMPLES,BUILD_TESTS和BUILD_PERF_TESTS,因为它们都将与OpenCV静态链接,并且会占用大量内存。
- 编译时可能需要下载的文件处理,请在在缓存文件夹下查看 ~/opencv-3.4.6/opencv/.cache
缺少的文件可以在这里下载。
https://github.com/opencv/opencv_3rdparty/branches

本文详细介绍了在Ubuntu18.04系统上如何安装并共存多个版本的OpenCV,包括编译安装过程、环境变量配置及版本切换方法,确保不同项目需求得到满足。

5290

被折叠的 条评论
为什么被折叠?



