如何解决opencv-python,以及opencv-contrib-python包安装运行解决人脸识别问题等问题

痛苦

通过老师给的教程一直下载一直下载,下载不能通过而且把系统弄崩了只能重装系统,家人们谁能懂重装系统7、8次的痛苦啊最后我终于终于解决了

遇到的问题

  1. 下载的opencv-python慢,需要等待的时间长,浪费大量时间

  2. opencv-python下载包解压不能完全解压,解压出问题

  3. opencv-python的依赖项目没有下载全,不能很好的启动,并且报错

  4. opencv-contrib-python库的安装慢

问题的原因

  1. opencv-python在清华的库中没有,要从国外的库下载就很慢

  2. 可能跟TF卡内存以及树莓派内存大小有关

  3. 需要安装相关库

  4. 也要指定pip的库源,不然下载慢

问题的解决

我下载的版本是4.1.0.25

opencv-python国外下载地址

https://www.piwheels.org/simple/opencv-python/opencv_python-4.1.0.25-cp37-cp37m-linux_armv7l.whl

opencv-python安装

解决的关键是opencv-python这个包就不能通过pip3安装,所以我是怎么安装的呢

  1. 首先开启网络魔法,从国外网站下载whl安装包,从自己的电脑上传到树莓派自己指定的文件夹

  2. 下面是whl包解压办法:要在树莓派4WD小车上直接解压OpenCV的Python的.whl文件,你可以按照以下步骤进行操作:

    1. 首先,在你的树莓派上安装zip工具:

      sudo apt-get install zip
    2. 将OpenCV的.whl文件(例如,opencv_python-4.5.3.56-cp37-cp37m-linux_armv7l.whl)下载到树莓派的某个目录中。

    3. 进入保存了.whl文件的目录:

      cd /path/to/your/whl/file
    4. 创建一个临时目录来解压.whl文件:

      mkdir temp
    5. 使用zip工具解压.whl文件到临时目录:

      unzip opencv_python-4.5.3.56-cp37-cp37m-linux_armv7l.whl -d temp
    6. 进入临时目录:

      cd temp
    7. 在临时目录中你将找到解压后的OpenCV文件。你可以将它们复制到你希望存放OpenCV文件的目录中,例如Python的site-packages目录:

      sudo cp -r cv2 /usr/local/lib/python3.7/site-packages

      请注意,上述路径/usr/local/lib/python3.7/site-packages适用于Python 3.7版本。如果你使用的是其他Python版本,请相应地修改路径。在我们的系统上,python3.7的包都安装在dist-packages里面(也许是其他自己看一下)

    8. 最后,删除临时目录:

      cd ..
      rm -rf temp

    现在,你已经将OpenCV的文件解压并复制到你的树莓派上。你可以在Python代码中导入OpenCV并开始使用它。

  3. 这时可以通过pip list查看opencv-python是否安装好

  4. 安装可能会出现依赖不全的问题,这就是我们下面一个问题了。

安装依赖

1、更换树莓派源为清华镜像源。
sudo nano /etc/apt/sources.list
清华镜像源: 
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
2、按键盘上的ctrl+o,再按回车保存,再按ctrl+x退出nano编辑器回到命令行界面,输入:
sudo apt-get update
sudo apt-get install libjpeg-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libjpeg-dev
sudo apt-get install libtiff5-dev
sudo apt-get install li.jpg12-dev  #报错没关系,也可能用不着
sudo apt-get install libqtgui4 libqt4-test
sudo apt-get install libjasper-dev
sudo apt-get install libhdf5-dev
sudo apt-get install libjasper-dev
sudo apt-get update
安装完之后,进入python命令界面:
# python
>> import cv2
结果报错,缺少依赖库,按照提示安装依赖库:(以下为可能缺少的依赖库,按照命令安装)
jpeg格式图像工具包:
sudo apt-get install libjpeg8-dev 
tif格式图像工具包:
sudo apt-get install libtiff5-dev 
JPEG-2000图像工具包
sudo apt-get install libjasper-dev 
png图像工具包
sudo apt-get install libpng12-dev 
常用的视频库
v4l中4后面的是 英文字母“l”
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
安装GTK2.0
sudo apt-get install libgtk2.0-dev
安装OpenCV数值优化函数包
sudo apt-get install libatlas-base-dev gfortran
其它依赖库
sudo apt-get install libatlas-base-dev
sudo apt-get install libjasper-dev
sudo apt-get install libqtgui4
sudo apt-get install libqt4-test
# 可能还需要安装下面的依赖
sudo apt-get install libhdf5-dev
​

下载opencv-contrib-python下载

直接通过pip3下载,记住要加一个清华的源这里我就没加了

sudo pip3 install opencv-contrib-python

你可能感兴趣的:(python,opencv,计算机视觉,人工智能,python)