OpenCV安装

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

安装

  1. 安装opencv依赖的模块
1
2
3
4
sudo -H pip3 install numpy
sudo -H pip3 install matplotlib
# 备注 -H 表示使用root权限,在系统目录中安装文件.这种方式是全局安装
# 当然如果使用虚拟环境安装的话,就不需要sudo -H参数了,因为目录属于当前用户
  1. 使用命令安装opencv
1
sudo -H pip3 install opencv-python==3.4.0.12
  1. 验证安装结果
1
2
import cv2 as cv
print(cv.__version__)

注意问题

如果之前已经安装过ROS的话,当我们去import cv2的时候还会报错,会自动去ros中找cv2模块.

这个问题有两种解决方案:

  • 第一种: 简单粗暴
1
2
3
4
5
6
7
8
"""
impoort  会按照系统中的python路径进行搜索
我们可以打印一下sys.path就知道它的搜索顺序啦!
"""
import sys
sys.path.remove('/opt/ros/kinetic/lib/python2.7/dist-packages')
import cv2 as cv
print(cv.__version__)
  • 第二种:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
# 第一步:
vi ~/.bashrc
注释掉文件最后一行: # source /opt/ros/kinetic/setup.bash

# 第二步:
找到自己当前环境python的site-packages路径,我当前的路径为:
/home/itheima/ws/ubuntu_venv/lib/python3.5/site-packages
# 修改~/.bashrc文件,在最后一行添加
export PYTHONPATH=/home/itheima/ws/ubuntu_venv/lib/python3.5/site-packages:$PYTHONPATH

# 第三步:让系统重新获取bashrc中的内容
source ~/.bashrc

# 第四步: 编写代码验证
import cv2 as cv
print(cv.__version__)
  • 第三种:使用anaconda创建虚拟环境
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
# 1. 创建虚拟环境
conda create -n opencvenv python=3
# 2. 激活新创建的环境
conda activate opencvenv
# 3. 安装opencv-python
conda install opencv==3.4.2
# 4. 可能会出现下面问题:
QObject::moveToThread: Current thread (0x55fd81f67a60) is not the object's thread (0x55fd820ef150). Cannot move to target thread (0x55fd81f67a60)

  执行 conda install pyqt 可以就绝上述问题 

pycharm中如果编写代码没有提示可以考虑将工程下面的.idea文件删除再重新打开pycharm


# 采用这种方式安装,在当前版本中会出现如下异常
The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvShowImage'
# 这时我们还需要安装扩展包
pip install opencv-contrib-python==3.4.2.17

我们除了可以使用pycharm来编写python代码之外,还可以使用jupyter notebook来编写代码.

大家可以按照如下方式来安装jupyter notebook

  1. 安装jupyter notebook
1
conda install jupyter notebook
  1. 安装jupyter notebook的代码提示功能
1
2
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user --skip-running-check
  1. 启动jupyter notebook
1
jupyter notebook
  1. 点开 Nbextensions 的选项,并勾选 Hinterland