Ubuntu配置OpenCV终极解决方案

本文档详细介绍了在Ubuntu系统中安装OpenCV4.2.0的步骤,包括安装依赖、下载源码、编译、解决编译过程中的错误(如找不到.i和.impl.hpp文件)以及配置路径。提供了错误解决方案和安装成功的检验方法,确保OpenCV正确安装并能正常使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 安装依赖

一定要安装全,避免之后出现各种奇怪的问题

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev 
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libatlas-base-dev gfortran 
sudo apt-get install ffmpeg
  1. 下载opencv和opencv_contrib源码
    推荐下载.tar.gz格式并解压,之后把opencv_contirb放到opencv文件夹中

我使用的是4.2.0版本
Releases · opencv/opencv · GitHub
Releases · opencv/opencv_contrib · GitHub

tar -zxvf opencv-4.2.0.tar.gz 
tar -zxvf opencv_contirb-4.2.0.tar.gz

mv opencv_contirb-4.2.0/ opencv-4.2.0/
  1. 编译
sudo mkdir build && cd build

sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=/Developer/opencv-4.2.0/opencv_contrib-4.2.0/modules/ ..

sudo make -j${nproc}

sudo make install

注意第二步要更换成自己的路径
第三步${nproc}为使用所有CPU核进行编译

【报错:找不到boostdesc_bgm.i等一系列.i文件】
解决方案GitHub - omega-Lee/OpenCV_boostdesc_vgg_file: 在编译OpenCV的时候经常出现缺少.i文件,所以一次性把他们做个集合 把这个repo中文件放到opencv_contrib/modules/xfeatures2d/src/

【报错:找不到xxx.impl.hpp文件】
解决方案:直接去Opencv官方repo中找到这些文件放到对应位置即可 GitHub - opencv/opencv: Open Source Computer Vision Library

【报错:找不到 feature2d/test/test_detectors_regression.impl.hpp】
解决方案:将这些文件复制到编译文件夹下:cp opencv/modules/features2d build

  1. 配置路径

    1. vim/etc/ld.so.conf.d/opencv.conf,在行尾添加/usr/local/lib
    2. ldconfig让其生效
    3. vim /etc/bash.bashrc,在行尾添加export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
    4. source /etc/bash.bashrc更新bash
  2. 检验是否安装成功:pkg-config opencv --modversion
    【报错:Package opencv was not found in the pkg-config search path.】
    解决方案

cd /usr/local/lib
sudo mkdir pkgconfig
cd pkgconfig
sudo vim opencv.pc

opencv.pc中添加以下信息

prefix=/usr/local
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib

Name: opencv
Description: The opencv library
Version:4.2.0
Cflags: -I${includedir}/opencv4
Libs: -L${libdir} -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann  -lopencv_core
~

将文件导出到环境变量

export  PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

Resources

在Linux下用正确的姿势安装OpenCV - 知乎
Ubuntu系统opencv4.4安装常见问题 找不到 feature2d/test/test_detectors_regression.impl.hpp 文件_Wenrui Xie的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

doubleZ0108

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值