Ubuntu 20.04 安装 OpenCV 完整指南
在 Ubuntu 20.04 环境下从源码编译安装 OpenCV,通常是为了获取最新功能或自定义构建选项。过程中可能会遇到依赖缺失的问题,尤其是 libjasper-dev。下面记录一套经过验证的安装流程,涵盖环境准备、源码编译到最终验证。
环境依赖准备
OpenCV 对系统库有较多要求。为了避免后续编译中断,建议一次性安装所有基础依赖。以下命令整合了开发工具链、多媒体编解码库以及图像处理所需的核心组件:
sudo apt update
sudo apt install build-essential cmake git pkg-config \
libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev \
python3-dev python3-numpy libtbb2 libtbb-dev \
libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev
注意:如果使用的是 Python 3 环境,请确保安装的是
python3-dev和python3-numpy,而非旧版的python-dev。
源码获取与整理
下载完成后,我们需要将核心库与贡献模块(contrib)放在一起。贡献模块包含一些非核心的实验性功能,首次安装建议一并拉取。
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
进入目录并将 contrib 移动到 opencv 文件夹下,方便后续 CMake 配置引用:
cd opencv
mv ../opencv_contrib/modules ./modules
编译构建
编译前创建一个独立的构建目录,避免污染源码树。这里使用 CMake 进行配置,关键参数决定了生成的库类型和路径。
mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=../modules \
-D OPENCV_GENERATE_PKGCONFIG=ON ..
sudo make install
sudo ldconfig
配置说明:
-D CMAKE_BUILD_TYPE=Release:生成发布版本,性能更好。-D CMAKE_INSTALL_PREFIX=/usr/local:指定安装路径,默认会写入/usr/local/lib。-D OPENCV_EXTRA_MODULES_PATH:指向 contrib 模块路径,启用额外功能。-D OPENCV_GENERATE_PKGCONFIG=ON:生成.pc文件,方便其他项目通过 pkg-config 引用。
验证与排错
编译完成后,可以通过 pkg-config 检查版本号确认安装是否成功:
pkg-config --modversion opencv

