【Linux学习】OpenCV 图像处理库的安装与使用实践

目录

一、安装 OpenCV 3.x

2. 安装依赖包

3. 下载 OpenCV 源码

4. 创建构建目录

5. 配置 OpenCV

6. 编译和安装

二、编写和编译图像处理程序

1. 编写简单的图像处理代码

2. 使用 GCC 编译命令

3. 使用 Makefile 编译

4. 使用 CMake 编译

三、总结


在计算机视觉和图像处理领域,OpenCV(Open Source Computer Vision Library)是一个功能强大且广泛使用的开源库。通过学习 OpenCV,我们可以轻松地实现各种图像处理和计算机视觉任务。本次实验将指导读者在 Ubuntu 系统下安装 OpenCV 3.x,并编写简单的图像处理程序,同时学习如何使用不同的编译方式来构建项目。

一、安装 OpenCV 3.x

在安装 OpenCV 之前,首先需要更新系统的包列表,确保所有软件包都是最新版本。在终端中运行以下命令:

sudo apt-get update
sudo apt-get upgrade

2. 安装依赖包

OpenCV 依赖于多个库来实现其功能,如图像处理、视频处理、机器学习等。安装这些依赖包:

sudo apt-get install build-essential cmake git pkg-config libgtk-3-dev \
libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev \
libx264-dev libjpeg-dev libpng-dev libtiff-dev gfortran openexr libatlas-base-dev \
python3-dev python3-numpy libtbb2 libtbb-dev libdc1394-22-dev

3. 下载 OpenCV 源码

从 GitHub 上下载 OpenCV 3.x 的源码。在终端中运行以下命令:

cd ~
git clone https://github.com/opencv/opencv.git
cd opencv
git checkout 3.4.15  # 选择 OpenCV 3.4.15 版本

4. 创建构建目录

创建一个目录用于构建 OpenCV:

mkdir build
cd build

5. 配置 OpenCV

使用 CMake 配置 OpenCV 的构建选项。在终端中运行以下命令:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      -D INSTALL_C_EXAMPLES=ON \
      -D INSTALL_PYTHON_EXAMPLES=ON \
      -D OPENCV_GENERATE_PKGCONFIG=ON \
      -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
      -D BUILD_EXAMPLES=ON ..

6. 编译和安装

编译并安装 OpenCV:

make -j$(nproc)  # 使用所有可用的 CPU 核心加速编译
sudo make install

二、编写和编译图像处理程序

1. 编写简单的图像处理代码

创建一个名为 test1.cpp 的文件,并编写以下代码:

#include <opencv2/opencv.hpp>
#include <iostream>

int main() {
    cv::Mat image = cv::imread("example.jpg");  // 读取图像
    if (image.empty()) {
        std::cerr << "无法加载图像!" << std::endl;
        return -1;
    }

    cv::imshow("Original Image", image);  // 显示原始图像
    cv::waitKey(0);  // 等待用户按键

    cv::Mat gray_image;
    cv::cvtColor(image, gray_image, cv::COLOR_BGR2GRAY);  // 转换为灰度图像
    cv::imshow("Gray Image", gray_image);  // 显示灰度图像
    cv::waitKey(0);

    return 0;
}

2. 使用 GCC 编译命令

使用以下命令编译 test1.cpp

g++ test1.cpp -o test1 `pkg-config --cflags --libs opencv`

3. 使用 Makefile 编译

创建一个名为 Makefile 的文件,并编写以下内容:

# 定义变量
CXX = g++
CXXFLAGS = $(shell pkg-config --cflags opencv)
LDFLAGS = $(shell pkg-config --libs opencv)
TARGET = test1
SOURCES = test1.cpp

# 默认目标
all: $(TARGET)

# 构建目标
$(TARGET): $(SOURCES)
	$(CXX) $(CXXFLAGS) -o $@ $^ $(LDFLAGS)

# 清理目标
clean:
	rm -f $(TARGET)

make


./test1


make clean

4. 使用 CMake 编译

创建一个名为 CMakeLists.txt 的文件,并编写以下内容:

cmake_minimum_required(VERSION 3.0)
project(ImageProcessing)

find_package(OpenCV REQUIRED)

add_executable(test1 test1.cpp)
target_link_libraries(test1 ${OpenCV_LIBS})

在终端中运行以下命令来编译程序:

mkdir build
cd build
cmake ..
make


./test1

 

三、总结

通过本次实验,我们成功在 Ubuntu 系统下安装了 OpenCV 3.x,并编写了一个简单的图像处理程序。收获巨大!

本人才疏学浅,如文章中有出现纰漏,还望海涵!

参考文献:

详细介绍:【计算机视觉】OpenCV(Open Source Computer Vision Library)介绍与学习路线 - ljbguanli - 博客园

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值