Ubuntu18.04安装OpenCV4.6.0
引言
安装OpenCV4.6.0,参考链接🔗:安装OpenCV4.6.0简洁过程–Jetson AGX Orin
【更新2023.09.26】
笔者又安装了OpenCV – 3.4.16,重新分享下安装的流程
1 下载OpenCV
官网链接🔗(选择 sources)
解压,并进入解压目录
cd opencv-4.6.0
2 安装
# 1
mkdir build
# 2
cd build
# 3 安装环境依赖
sudo apt install -y build-essential checkinstall cmake pkg-config yasm git gfortran
sudo apt update
sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
sudo apt install -y libjpeg8-dev libjasper-dev libpng12-dev libtiff5-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine2-dev libv4l-dev
sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgtk2.0-dev libtbb-dev libatlas-base-dev libfaac-dev libmp3lame-dev libtheora-dev libvorbis-dev libxvidcore-dev libopencore-amrnb-dev libopencore-amrwb-dev x264 v4l-utils
sudo apt install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
# 4 cmake
cmake -D WITH_TBB=ON -D WITH_EIGEN=ON -D OPENCV_GENERATE_PKGCONFIG=ON ..
cmake -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF ..
cmake -D WITH_OPENCL=OFF -D WITH_CUDA=OFF -D BUILD_opencv_gpu=OFF -D BUILD_opencv_gpuarithm=OFF -D BUILD_opencv_gpubgsegm=OFF ..
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
cmake -D WITH_TBB=ON -D WITH_EIGEN=ON -D OPENCV_GENERATE_PKGCONFIG=ON -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF -D WITH_OPENCL=OFF -D WITH_CUDA=OFF -D BUILD_opencv_gpu=OFF -D BUILD_opencv_gpuarithm=OFF -D BUILD_opencv_gpubgsegm=O -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
cmake -DCMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=ON -DBUILD_EXAMPLES=ON -D CMAKE_INSTALL_PREFIX=/usr/local ..
cmake -D BUILD_TIFF=ON .. # 这句很重要解决上面问题的关键
# 5
make -j8
# 6
sudo make install
# 7 查看版本
opencv_version # 4.6.0
pkg-config --modversion opencv4 # 4.6.0
# 8-1 后续配置
sudo apt-get install pkg-config
vim /etc/ld.so.conf.d/opencv.conf
# 打开为空文件后加入下述内容,然后保存退出
# /usr/local/lib
sudo ldconfig # 报错如下图
# 解决方法 其中8.x.x根据自己的文件路径查看,如下图所示
sudo ln -sf /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn.so.8.3.0 /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn.so.8
sudo ln -sf /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.3.0 /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_adv_train.so.8
sudo ln -sf /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8.3.0 /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8
sudo ln -sf /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8.3.0 /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8
sudo ln -sf /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8.3.0 /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8
sudo ln -sf /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.3.0 /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_ops_train.so.8
sudo ln -sf /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_adv_ops.so.8.3.0 /usr/local/cuda-10.2/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8
sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn.so.8
sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_train.so.8
sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8
sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8
sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8
sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_train.so.8
sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_ops.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8
如图,笔者10.2为8.3.0、11.3为8.2.1
# 8.2 后续配置
sudo apt-get install vim-gtk
sudo vim /etc/bash.bashrc
# 加入:
# PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
# export PKG_CONFIG_PATH)
source /etc/bash.bashrc
find ./ -name opencv4.pc # ./unix-install/opencv4.pc
pkg-config --cflags opencv4 # -I/usr/local/include/opencv4
至此安装完毕!
3 OpenCV – 3.4.16安装
这里笔者要纠正下之前安装4.6.0版本的错误
要进入root
用户下再进行安装
sudo su
3.1 下载Opencv3.4.16安装包并解压
官网链接🔗(选择 sources)
点击Sources下载OpenCV3.4.16压缩包,下载完成后将其复制到home文件夹下再解压缩。
unzip opencv-3.4.16.zip # 解压缩
3.2 使用cmake安装
step1: 更新
cd opencv-3.4.16
sudo apt-get update
sudo apt-get install cmake
step2: 安装依赖
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff5.dev libswscale-dev
step3: 使用cmake编译参数
mkdir build
cd build/
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
step4: 使用make创建编译
sudo make
sudo make install
3.3 配置环境
step1 : 修改opencv.conf
打开后添加opencv库的安装路径:/usr/local/lib
sudo gedit /etc/ld.so.conf.d/opencv.conf
笔者打开后已经存在,就不再添加了
step2 : 更新系统共享链接库
sudo ldconfig
step3 : 改bash.bashrc文件
sudo gedit /etc/bash.bashrc
在文件末尾加入如下代码:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
加入后点击保存并关闭当前页面
step4 : 配置生效
source /etc/bash.bashrc # 使得配置生效
sudo updatedb
step5 : 查看opencv的版本信息
pkg-config --modversion opencv
安装的版本为 3.4.16,到此OpenCV3.4.16安装成功!
参考链接:https://blog.csdn.net/qq_58879770/article/details/127037125