操作系统:ubuntu22.04
OpenCV版本:4.9.0
opencv_contrib版本:4.9.0
源码下载
OPenCV4.9.0下载地址:https://github.com/opencv/opencv/releases/tag/4.9.0
如下图所示:
按箭头所指点击下载source code(tar.gz)文件到指定的文件夹下。
opencv_contrib4.9.0下载地址:https://github.com/opencv/opencv_contrib/tags
如下图所示:
按箭头所指点击下载文件opencv_contrib-4.9.0.tar.gz到指定的文件夹下
把下载的opencv-4.9.0.tar.gz和opencv_contrib-4.9.0.tar.gz压缩包解压到同一个目录下。
源码编译
执行如下shell脚本,开始编译源码,祈祷不要出现问题,虽然希望很渺茫。
#!/bin/bash
export LEAN=/media/dingxin/data/lean118
export PKG_CONFIG_PATH=$LEAN/ffmpeg4.2/lib/pkgconfig:$PKG_CONFIG_PATH
cd opencv-4.9.0
rm -rf build
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=$LEAN/opencv-4.9.0 -D WITH_CUDA=OFF -D WITH_FFMPEG=ON -D WITH_OPENCL=OFF -D WITH_IPP=OFF \
-D BUILD_opencv_python2=no -D BUILD_opencv_python3=no \
-D OPENCV_EXTRA_MODULES_PATH=/media/dingxin/data/study/OpenCV/opencv_contrib-4.9.0/modules \
-D BUILD_TIFF=OFF -D WITH_TIFF=OFF -D CMAKE_CXX_FLAGS=-fPIC ..
make all -j8
make install
开始如下图所示进行编译的工作:
当看到shell脚本执行完毕后,如下图所示,就表示编译成功了,并且已经安装完毕。我把它安装在我指定的目录下了
遇到的问题的处理方法
1.Anaconda冲突问题的处理
如果你不幸遇到了如下的问题,不要害怕,害怕了它也不会走。
从上面文字来看,应该是跟Anaconda冲突了。该怎么解决呢?既然跟他冲突了,就把他去掉。找到~/.bashrc文件,用VScode打开它,把Anaconda相关的注释掉,如下图所示:
然后命令行执行:
source ~/.bashrc
再重新开始执行编译脚本