zoukankan      html  css  js  c++  java
  • Rraspberry Pi 4B python3 安装opencv

     

    1、安装当然可以使用vi或nano,本文使用vim(命令行)

    sudo apt-get install vim

    2、编辑apt的配置文件(命令行)

    sudo vim /etc/apt/sources.list

    按insert键进入编辑模式,删除(或注释)原内容或备份文件,然后变更为,粘贴为Ctrl+Shift+V,保存为Ctrl+C然后输入" :wq "

    deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi

    deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi

    再输入(命令行)

    sudo vim /etc/apt/sources.list.d/raspi.list

    变更文件内容为

    deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

    deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

    3、更新apt(命令行)

    sudo apt-get update

    sudo apt-get upgrade

    (以我固件版本为准)系统已内置Python2.7和Python3.7,因为系统文件依赖Python2.7,为了保持系统稳定性,所以使用Python3.7,有的教程使用了虚拟空间,如有需要可以自行百度教程

    给PIP换源(系统已内置PIP3,如果没有安装Python或PIP自行查找安装教程)

    输入(命令行)

    sudo vim /etc/pip.conf

    变更文件内容为(本文使用的是阿里云源,也可以使用清华源,豆瓣源等源地址)

    [global]

    index-url = http://mirrors.aliyun.com/pypi/simple/

    [install]

    trusted-host=mirrors.aliyun.com

    5、扩大TF卡的空间,如果不做这步操作,后面会出问题,比如卡死

    输入(命令行)

    sudo raspi-config

    然后选择" Advanced Options "然后选择" Expand Filesystem "然后重启树莓派

    6、开始为OpenCV安装做准备,配置所需的库(一次一行)

     

    1 sudo apt-get install build-essential git cmake pkg-config -y

    2 sudo apt-get install libjpeg8-dev -y

    3 sudo apt-get install libtiff5-dev -y

    4 sudo apt-get install libjasper-dev -y

    5 sudo apt-get install libpng12-dev -y

    6 sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y

    7 sudo apt-get install libgtk2.0-dev -y

    8 sudo apt-get install libatlas-base-dev gfortran -y

    7、 安装numpy

    sudo pip3 install numpy                                       

     

    由于默认已经安装,记住安装路径/usr/lib/python3/dist-packages (1.16.2),在后面的cmake中需要修改对应的numpy/core/include路径即在dist-packages路径下

    8、下载opencv3.4.3和opencv_contrib3.4.3(你可以选择其他版本,不过二者版本号需一致)
    法一:

    cd /home/pi/Downloads
     
    wget https://github.com/Itseez/opencv/archive/3.4.3.zip
    wget https://github.com/Itseez/opencv_contrib/archive/3.4.3.zip

    下面的两种方法你可以在windows或者mac下载好用u盘来拷贝到树莓派对应路径下(/home/pi/Downloads或者你自己建路径,需要注意的是后续会用到,记得修改)
    法二:
    opencv3.4.3直接从opencv官网Releases下载,opencv Releases链接
    opencv_contrib3.4.3从github上下载,opencv_contrib github链接
    法三:
    OpenCV 百度云下载驿站
    opencv_contrib 百度云下载驿站
    包含多个opencv和对应的contrib版本,选择你需要的即可解压相关文件及安装
    解压文件

    cd /home/pi/Downloads
    unzip opencv-3.4.3.zip
    unzip opencv_contrib-3.4.3.zip

     

    9、创建build路径及设置cmake参数

    cd /home/pi/Downloads/opencv-3.4.0

    mkdir build

    cd build

     

    10、设置cmake参数注意你对应python3相关文件的路径以及numpy安装的路径,这里附上本次使用的参数:(这步慎重,我翻过车。。。cmake完成后要看安装内容,是否存在包安装失败)

    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=/home/pi/Downloads/opencv_contrib-3.4.3/modules -D BUILD_EXAMPLES=ON -D WITH_LIBV4L=ON PYTHON3_EXECUTABLE=/usr/bin/python3.7 PYTHON_INCLUDE_DIR=/usr/include/python3.7 PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include ..

    请注意以下几点:

    1. OPENCV_EXTRA_MODULES_PATH=/home/pi/Downloads/opencv_contrib-3.4.3/modules为你的opencv-contrib解压路径
    2. PYTHON3_EXECUTABLE=/usr/bin/python3.7 PYTHON_INCLUDE_DIR=/usr/include/python3.7 PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so,其中python版本对应到你的python3版本,最好确认下libpython3.7m.so文件位置
    3. PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include .. ,numpy的include文件夹路径的正确,本次是用树莓派4B自带的python3版本,如果你自己安装,确保对应路径正确
      等待配置完成,如果成功会出现提示

    build files have been written to : /home/pi/Downloads/opencv-3.4.3/build

    如果失败,检查cmake中的参数以及opencv及opencv_contrib文件无损,却相对应(两个版本号一致)

    11、编译
    在/home/pi/Downloads/opencv-3.4.3/build路径下:

     make -j4

    此过程比较久,需要几个小时左右(放在一边做自己的事,回来就完成了)
    之后就可以安装了

    sudo make install

    完成后测试安装是否成功

    sudo python3

    import cv2

    cv2.__version__

     
  • 相关阅读:
    spark读取文件时对字符编码的支持
    SparkSQL 数据分页及Top N
    linux下添加hadoop用户
    Window 10 WSL 下hadoop 伪分布式安装
    Window 10下spark shell使用sparksql 时的 “entry in command string: null ls -F C: mphive”问题解决
    spark数据怎样输出到Sql Server
    spark standalone集群模式下一个启动问题的解决
    Ubuntu 上redis 5.0的安装
    apache ambari 部署分布式系统
    Ubuntu18.04 下 Spark 2.4.3 standalone模式集群部署
  • 原文地址:https://www.cnblogs.com/SkystarX/p/12286019.html
Copyright © 2011-2022 走看看