2. 环境搭建

说实话,很多初学者在算法上没栽跟头,反而卡在了环境搭建这一步。我见过太多人花了一整天装库,最后发现是Python版本不对。这一章,咱们就把这事彻底理清楚。

2.1 核心思路:先定版本,再动手

安装OpenCV之前,你得想清楚三件事:

  • 用哪个语言接口?——工业现场90%用Python,C++留给实时性要求极高的场景。
  • 用哪个OpenCV版本?——我个人推荐4.5.x或4.6.x,稳定且文档全。别追最新版,容易踩坑。
  • 要不要contrib模块?——如果你要做特征匹配、跟踪、文本检测,必须装contrib版。

我的经验:在产线上,我习惯用Python 3.8 + OpenCV 4.5.5。这个组合经过大量项目验证,兼容性最好。你如果图省事,直接照搬就行。

2.2 Windows环境搭建

2.2.1 安装Python

先去Python官网下载3.8或3.9版本。安装时记得勾选"Add Python to PATH"——这一步忘了,后面会非常痛苦。

验证安装:

python --version
pip --version

2.2.2 安装OpenCV

打开命令行,直接敲:

pip install opencv-python==4.5.5.64
pip install opencv-contrib-python==4.5.5.64

为什么要指定版本号?因为不指定的话,pip会拉最新的。我曾经在客户现场遇到过,最新版OpenCV和他们的工业相机SDK不兼容,折腾了整整一个下午。

2.2.3 验证安装

写个最简单的脚本测试一下:

import cv2
print(cv2.__version__)
# 如果能打印出 4.5.5,说明安装成功

小技巧:如果你在公司内网,pip下载慢,可以换成清华镜像:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python==4.5.5.64

2.3 Linux环境搭建(以Ubuntu为例)

Linux下有两种安装方式:apt和pip。我建议用pip,因为apt源里的OpenCV版本通常比较老。

2.3.1 安装依赖

sudo apt update
sudo apt install python3-pip python3-dev
sudo apt install libgl1-mesa-glx libglib2.0-0  # 解决GUI相关报错

嗯,这里要注意。很多人在Linux下装完OpenCV,一运行就报libGL.so.1找不到。其实就是少了上面那行依赖。

2.3.2 安装OpenCV

pip3 install opencv-python==4.5.5.64
pip3 install opencv-contrib-python==4.5.5.64

2.3.3 验证

python3 -c "import cv2; print(cv2.__version__)"

避坑指南:我曾经在Ubuntu 20.04上直接用sudo apt install python3-opencv,结果装的是4.2.0版本。这个版本在读取某些工业相机图像时会有色彩通道顺序问题。所以,老老实实用pip装吧。

2.4 开发环境配置

光装库还不够,你得有个趁手的编辑器。我个人推荐VS Code,轻量、插件丰富、调试方便。

2.4.1 VS Code配置要点

  • 安装Python插件(微软官方那个)
  • 安装Pylance(代码补全更强)
  • 设置Python解释器路径:Ctrl+Shift+P → Python: Select Interpreter

2.4.2 虚拟环境(强烈推荐)

每个项目用独立的虚拟环境,避免包冲突。我在一个项目里就吃过亏——两个项目依赖不同版本的numpy,结果一个跑起来另一个就崩。

# 创建虚拟环境
python -m venv opencv_env

# 激活(Windows)
opencv_env\Scripts\activate

# 激活(Linux)
source opencv_env/bin/activate

# 在虚拟环境中安装OpenCV
pip install opencv-python==4.5.5.64

2.5 知识结构总览

下面这张图,把整个环境搭建的流程串起来了。你照着走,基本不会出问题。

OpenCV环境搭建全流程 1. 确定技术选型 2. Windows环境 2. Linux环境 Windows安装步骤 ① 安装Python 3.8/3.9 ② pip install opencv-python ③ 验证版本 Linux安装步骤 ① 安装系统依赖 ② pip3 install opencv-python ③ 验证版本 3. 配置开发环境(VS Code + 虚拟环境) 4. 运行测试脚本验证 💡 建议:所有项目使用虚拟环境,避免包冲突

2.6 常见问题速查表

问题现象 原因 解决方案
ImportError: No module named cv2 OpenCV未安装或Python环境不对 检查pip list,确认在正确的虚拟环境中
libGL.so.1: cannot open shared object file Linux缺少OpenGL库 sudo apt install libgl1-mesa-glx
cv2.imshow()报错 无GUI环境(如服务器) 改用cv2.imwrite()保存图像
pip安装超时 网络问题 使用国内镜像源