如何在Ubuntu系统下安装配置Python和OpenCV进行图像处理开发

随着人工智能和计算机视觉的迅猛发展,图像处理技术变得越来越重要。Python作为一种简洁而强大的编程语言,配合OpenCV这一开源计算机视觉库,成为了图像处理领域的黄金搭档。本文将详细介绍如何在Ubuntu系统下安装和配置Python及OpenCV,助你顺利开启图像处理开发之旅。

一、准备工作

在开始安装之前,确保你的Ubuntu系统是最新的。打开终端,执行以下命令更新系统:

sudo apt update
sudo apt upgrade

二、安装Python

虽然大多数Ubuntu系统默认已安装Python,但为了确保版本兼容性和环境独立性,建议安装Python的特定版本。

  1. 安装Python

首先,安装Python及其相关工具:

   sudo apt install python3 python3-pip python3-venv

这里,python3是Python解释器,python3-pip是Python包管理工具,python3-venv用于创建虚拟环境。

  1. 创建虚拟环境

为了避免不同项目之间的依赖冲突,建议为每个项目创建一个独立的虚拟环境:

   python3 -m venv myenv

这里,myenv是你的虚拟环境名称,你可以根据需要更改。

  1. 激活虚拟环境

激活虚拟环境后,所有安装的包都将局限于此环境:

   source myenv/bin/activate

激活后,终端提示符前会多出一个(myenv),表示当前处于虚拟环境中。

三、安装OpenCV

  1. 安装依赖包

OpenCV依赖于一些系统库,首先安装这些依赖:

   sudo apt 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
  1. 下载OpenCV源码

从OpenCV的GitHub仓库下载最新源码:

   git clone https://github.com/opencv/opencv.git
   git clone https://github.com/opencv/opencv_contrib.git

进入下载的目录:

   cd opencv
   mkdir build
   cd build
  1. 配置CMake

使用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 ..

配置过程中,CMake会检查系统环境并生成编译文件。

  1. 编译和安装OpenCV

编译OpenCV可能需要一些时间,视系统性能而定:

   make -j$(nproc)
   sudo make install
   sudo ldconfig

这里,-j$(nproc)表示使用所有CPU核心进行并行编译。

四、配置Python环境

  1. 安装Python版OpenCV

在激活的虚拟环境中,使用pip安装Python版的OpenCV:

   pip install opencv-python-headless

opencv-python-headless是去掉GUI部分的OpenCV版本,适用于服务器或不需要GUI的场景。如果你需要GUI功能,可以安装opencv-python

  1. 验证安装

编写一个简单的Python脚本,验证OpenCV是否安装成功:

   import cv2

   print(cv2.__version__)

运行此脚本,如果输出OpenCV的版本号,则表示安装成功。

五、实战演练:图像读取与显示

  1. 准备图片
  1. 编写Python脚本

创建一个名为display_image.py的Python脚本,内容如下:

   import cv2

   # 读取图片
   image = cv2.imread('example.jpg')

   # 显示图片
   cv2.imshow('Image', image)
   cv2.waitKey(0)
   cv2.destroyAllWindows()
  1. 运行脚本

在终端中执行以下命令:

   python display_image.py

六、总结

通过以上步骤,我们成功在Ubuntu系统下安装和配置了Python及OpenCV环境,并进行了简单的图像处理实战。图像处理是一个广阔而有趣的领域,掌握这些基础工具后,你可以进一步探索更多高级功能,如人脸识别、目标检测等。