当前位置 博文首页 > 在树莓派2或树莓派B+上安装Python和OpenCV的教程

    在树莓派2或树莓派B+上安装Python和OpenCV的教程

    作者:Adrian Rosebrock 时间:2021-07-28 18:50

    2015330151950565.jpg (690×555)我的Raspberry Pi 2昨天刚邮到,这家伙看上去很小巧可爱。

    这小家伙有4核900MHZ的处理器,1G内存。要知道,Raspberry Pi 2 可比我中学电脑实验室里大多数电脑快多了。

    话说,自从Raspberry Pi 2发布以来,我收到了很多请求,要求我能写一个在它上面安装OpenCV和Python的详细说明。

    因此如果你想在Raspberry Pi启动运行OpenCV和Python,就往下面看!

    在博文的剩余部分,我将提供在Raspberry Pi 2 和Raspberry Pi B+上的详细安装说明。

    我也会说明每一步的安装耗时。其中一些步骤需要较多的处理时间。举个例子,在Raspberry Pi 2 编译OpenCV花费大概2.8小时,在 Raspberry Pi B+上则是9.5小时。所以请你据此安排你的安装吧。

    最后,提醒一下我们会在PyImageSearch Gurus 计算机视觉课程中用到Raspberry Pi。我们的项目将会包括家庭监控应用,例如说房间里面的运动检测和人员跟踪。

    下面是一个运动检测和跟踪的简单例子,当时我正打着电话在公寓里面来回走动。
    2015330152053363.jpg (690×503)在 Raspberry Pi 2/B+上安装OpenCV和Python

    这里假定你已经有了Raspberry Pi 2/B+,且已经安装好。如果没有的话,我建议你买一个,它们既便宜也好玩。

    个人来说,我更愿意多花一点钱从Canakit买。他们的物流很快也比较可靠,加之他们的 ready-to-go服务也很好。

    好吧,我们开始OpenCV和Python的安装
    步骤0:

    我们假定你已经打开Raspberry Pi 2/B+。打开终端,我们先更新和升级已安装的软件包,然后更新Raspberry Pi固件。
     

    $ sudo apt-get update
    $ sudo apt-get upgrade
    $ sudo rpi-update
    


    步骤1:

    安装所需的安装工具和包:
     

    $ sudo apt-get install build-essential cmake pkg-config
    

    build-essential 和 pkg-config可能都已经安装。以防万一,我们还是将它们键入apt-get命令中。

    耗时:

    Raspberry Pi B+:小于2分钟

    Raspberry Pi 2:小于40秒
    步骤2:

    安装必要的图像I/O包,这样你才可以读入JPEG,PNG,TIFF等这些格式的图像。

    $ sudo apt-get install libjpeg8-dev libtiff4-dev libjasper-dev libpng12-dev
    
    

    耗时:

    Raspberry Pi B+: 小于5钟

    Raspberry Pi 2: 小于30秒
    步骤3:

    安装GTK开发库,这个库用来构建GUI。同时OpenCV中的highgui库也需要它来在屏幕上显示图像。
     

    $ sudo apt-get install libgtk2.0-dev
    

    耗时:

    Raspberry Pi B+: 小于10分钟

    Raspberry Pi 2:小于3分钟
    步骤4:

    安装必要的视频I/O包,OpenCV需要它们来读入视频文件。
     

    $ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
    

    耗时:

    Raspberry Pi B+: 小于5分钟

    Raspberry Pi 2: 小于30秒
    步骤5:

    安装OpenCV优化操作时所需库。
     

    $ sudo apt-get install libatlas-base-dev gfortran
    

    耗时:

    Raspberry Pi B+:小于2分钟

    Raspberry Pi 2:小于30秒
    步骤6:

    安装pip:
     

    $ wget https://bootstrap.pypa.io/get-pip.py
    $ sudo python get-pip.py
    

    耗时:

    Raspberry Pi B+:小于2分钟

    Raspberry Pi 2:小于30秒
    步骤7:

    安装virtualenv和virtualenvwrapper
     

    $ sudo pip install virtualenv virtualenvwrapper
    

    然后,更新~/.profile文件如下:
     

    export WORKON_HOME=$HOME/.virtualenvs
    source /usr/local/bin/virtualenvwrapper.sh
    

    重新载入.profile文件:
     

    $ source ~/.profile
    

    创建你的计算机视觉虚拟环境
     

    $ mkvirtualenv cv
    

    耗时:

    Raspberry Pi B+: 小于2分钟

    Raspberry Pi 2: 小于2分钟
    步骤8:

    现在我们安装Python 2.7开发工具:
     

    $ sudo apt-get install python2.7-dev
    

    注意:我们将使用Python2.7。因为OpenCV 2.4.X不支持Python 3,也不太清楚OpenCV 3.0的python接口什么时候才能完善。所以我建议现在还是使用OpenCV2.4.X的好。

    我们也需要安装NumPy,因为OpenCV的Python接口通过Numpy的多维数组来表示图像。
     

    $ pip install numpy
    

    耗时:

    Raspberry Pi B+: 小于45分钟

    Raspberry Pi 2: 小于15分钟
    步骤9:

    下载和解压OpenCV:

    $ wget -O opencv-2.4.10.zip http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.10/opencv-2.4.10.zip/download
    $ unzip opencv-2.4.10.zip
    $ cd opencv-2.4.10
    

    安装:
     

    $ mkdir build
    $ cd build
    $ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON ..
    

    耗时:

    Raspberry Pi B+: 小于3分钟

    Raspberry Pi 2: 小于1.5分钟

    编译OpenCV:
     

    $ make
    

    重要:确定你在cv虚拟环境中,OpenCV也要根据该环境中的Python和NumPy中进行编译。否则的话,OpenCV就会和系统中的Python和NumPy编译在一起,会产生各种问题。

    耗时:

    Raspberry Pi B+: 小于 9.5 小时

    Raspberry Pi 2: 小于2.8小时

    最后,我们安装OpenCV:
     

    $ sudo make install
    $ sudo ldconfig
    

    耗时:

    Raspberry Pi B+: 小于 3分钟

    Raspberry Pi 2: 小于1分钟
    步骤10:

    进行到这一步的时候,OpenCV已经应该已经安装到/usr/local/lib/python2.7/site-packages中了。

    但是为了在cv虚拟环境中使用OpenCV,我们先需要符合链接到我们的site-packages目录:
     

    $ cd ~/.virtualenvs/cv/lib/python2.7/site-packages/
    $ ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so
    $ ln -s /usr/local/lib/python2.7/site-packages/cv.py cv.py
    

    步骤11:

    最后,我们测试一下OpenCV和Python的安装:
     

    $ workon cv
    $ python
    >>> import cv2
    >>> cv2.__version__
    '2.4.10'
    

    OpenCV和Python已经成功安装到你的Raspberry Pi了。

    这是在我的Raspberry Pi上的运行例子,我ssh登录到 Raspberry Pi,然后读取和显示一幅图像。
    2015330152134961.jpg (690×450)总结

    这篇博文中,我详细介绍了如何在Raspberry Pi 2 /Raspberry Pi B+上安装Python和OpenCV。也提供了他们的安装耗时,请酌情考虑你的安装。

    随着Raspberry Pi的升级,安装指令可能有所变化。如果你遇到一些极端情况或安装指令的变化,请随时联系我。当然我也不能保证每封邮件都能回复,所以最好是将如何在 Raspberry Pi上安装OpenCV和Python的方法总结成一个列表。

    不久以后,我会讲如何在Raspberry Pi操作其附加的camera。

    在那之前,看看PyImageSearch Gurus计算机视觉课程。我们将在其中一些工程中用到Raspberry Pi,就比如说构建一个监控应用来进行房间内部的运动检测和人员跟踪。

    jsjbwy