ubuntu安装OpenCV 4
时间: 2024-12-31 16:42:06 浏览: 15
### 安装 OpenCV 4 的详细指南
#### 准备工作
为了确保顺利安装 OpenCV 4,在开始之前需要更新系统的包列表并安装必要的依赖项。这可以通过运行以下命令来完成:
```bash
sudo apt update && sudo apt upgrade -y
```
#### 安装编译工具和库文件
在编译 OpenCV 前,需先安装一系列开发环境所需的软件包以及构建工具。
```bash
sudo apt install build-essential cmake git pkg-config libgtk-3-dev \
libavcodec-dev libavformat-dev libswscale-dev python3-dev python3-numpy \
libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev \
libv4l-dev v4l-utils qv4l2 ffmpeg libsdl2-dev libxvidcore-dev \
libx264-dev libfaac-dev libmp3lame-dev libtheora-dev libopencore-amrnb-dev \
libopencore-amrwb-dev x264 yasm libopenblas-dev liblapack-dev checkinstall \
libgstreamer-plugins-base1.0-dev gfortran protobuf-compiler libprotobuf-dev\
unzip wget curl
```
上述命令涵盖了大部分可能需要用到的多媒体处理库和其他支持组件[^4]。
#### 下载源码
接下来获取最新版本的 OpenCV 和额外模块(`opencv_contrib`),这些扩展提供了更多算法实现和支持功能。
```bash
cd ~
git clone https://github.com/opencv/opencv.git
cd opencv
git checkout 4.x # 获取指定分支上的稳定版代码
# 同样地下载 contrib 扩展仓库
cd ..
git clone https://github.com/opencv/opencv_contrib.git
cd opencv_contrib
git checkout 4.x # 确保与主项目保持一致
```
这里强调了 `opencv_contrib` 库的重要性,它包含了官方核心发行版之外的一些附加特性[^2]。
#### 编译配置
创建一个新的目录用于存放编译后的文件,并进入该目录执行 CMake 配置过程。
```bash
mkdir -p ~/opencv/build && cd ~/opencv/build
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
-D BUILD_EXAMPLES=ON ..
```
此阶段会检测系统环境中是否存在所需的各种依赖关系,并设置相应的参数以便后续编译操作能够顺利完成。
#### 开始编译
一旦确认无误,则可以启动实际的编译流程;考虑到整个工程规模较大,建议启用多线程加速这一耗时的过程。
```bash
make -j$(nproc)
```
当所有目标都成功生成之后,就可以将其正式部署到全局路径下了。
#### 安装至系统
最后一步就是把刚才编译好的二进制文件复制到标准位置,使之成为操作系统的一部分。
```bash
sudo make install
sudo ldconfig
```
至此,OpenCV 4 已经被正确安装到了当前使用的 Linux 发行版之上。现在可以在终端里通过简单的测试程序验证其可用性。
```cpp
#include <iostream>
#include <opencv2/opencv.hpp>
int main() {
std::cout << "OpenCV version : " << CV_VERSION << std::endl;
cv::Mat image(100, 100, CV_8UC3, cv::Scalar(255, 0, 0));
imwrite("test.png", image);
return 0;
}
```
编译这段小程序可采用如下方式:
```bash
g++ test_opencv.cpp $(pkg-config --cflags --libs opencv4) -o test_opencv
./test_opencv
```
如果一切正常的话,应该会在同一目录下看到名为 `test.png` 的蓝色正方形图片文件[^3]。
阅读全文