树莓派3B安装opencv

树莓派3B安装使用pip命令安装opencv
首先我们需要一个树莓派,一根串口线和一根5V2A(一卢)的安卓充电线。
烧录系统的教程网上非常多了,我就不再过多阐述,也能看到很多为树莓派增加交换空间的博客。树莓派apt换源可以参考我的另一盘博文:
树莓派换源出现的一些常见问题
我们这边直接从安装opencv开始。

安装opencv有两种方法,一种是像笔者一样的使用pip命令安装opencv-python和open-contrib-python,得到的opencv-python包含了主要模块及拓展模块,另一种是自己下载opencv安装包,然后采用cmake编译。笔者原本打算用方法二,奈何安装过程诸事不顺,遂退而求其次选择了使用pip命令。

编写时间:2021年11月23日

安装环境:

  1. 树莓派3B V1.2
  2. 树莓派系统:bullseye
  3. python 3.9.2
  4. opencv-python和opencv-contrib-python 4.5.3.56
  5. numpy 1.21.0

1、先更新pip

pip install --upgrate pip

2、安装依赖库

sudo apt-get install libjpeg8-dev   #jpeg格式图像工具包
sudo apt-get install libatlas-base-dev #数值函数优化包
sudo apt-get install libjasper-dev  #JPEG-2000图像包
sudo apt-get install libhdf5-dev    #HDF5支持库
sudo apt-get install libgtk2.0-dev   #GTK2.0
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev     #常用视频库,使我们从磁盘读取各种视频文件格式,以及直接使用视频流

3、安装opencv-python

最初我的命令是这样的

sudo pip install opencv-python

但这样会出现两个问题,
一是因为网速过慢而无法下载,解决方法非常简单,pip在国内有非常多的源,我们以清华源举例
pypi清华源
树莓派3B安装opencv_第1张图片
所以我把代码改成了

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python

同时下载拓展包

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-contrib-python

然后安装numpy

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy

有些同学做到这一步,就可以直接在终端输入python3,然后import cv2

但是古人云,学习新知识最难的地方永远是装软件配环境。
我出现了如下问题:
树莓派3B安装opencv_第2张图片
提示我numpy的版本不匹配。
我在这里走了很多的弯路,查了不少资料才解决。下面展示一些问题和解决方法

①、使用上面的命令行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python
默认安装的是最新的opencv-python版本,也就是opencv-python 4.5.4.60容易出现
building wheel for opencv-python上卡死的问题

解决方法:
进入https://pypi.org/,搜索opencv-python
树莓派3B安装opencv_第3张图片
得到如下图
树莓派3B安装opencv_第4张图片
选择一个不是最新的,我选了4.4.3.56
在终端命令行输入:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python==4.5.3.56
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-contrib-python==4.5.3.56

这样安装的时候就不会在造轮子那关卡住
但是又出现了另一个问题:

树莓派3B安装opencv_第5张图片
提示我numpy和opencv不匹配
但是这里就很玄学了,我们在安装opencv的时候可以看到这样一行
树莓派3B安装opencv_第6张图片
我们看到他要求我们的numpy是>=1.19.3的,但是我的numpy版本明明是1.19.5(查资料看到别人通过降版本来解决这个问题,我还特意降成了1.19.3)
树莓派3B安装opencv_第7张图片
解决方法,换一个numpy版本。

先把原有的numpy卸载了。注意:numpy可以由apt和pip安装,所以卸载的时候建议两个命令都用一下,保证自己卸干净了。
同样的,去到https://pypi.org/,搜索numpy,选一个发布日期早于自己的opencv发布日期,但是又不早特别多的
树莓派3B安装opencv_第8张图片我选了个1.21.0的,安装

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy==1.21.0

运行python3,运行import cv2
成功!(请不要在意我一个激动打错的exit())
树莓派3B安装opencv_第9张图片

你可能感兴趣的:(树莓派,linux)