树莓派3b+安装OpenCV成功的一些经验分享

        树莓派安装 OpenCV 环境是真的烦,经历过的人都懂。我从开始安装到安装成功,整整花费了12天,在 sudo make 一环失败了7次,其他地方也有各种大大小小的问题,当然也有我白天上班只有晚上有时间折腾的原因。以下就是我在安装过程中遇到的的各种问题,图就不贴了(因为忘记截图了-_-!,好不容易成功再来一遍也懒得搞),我会尽量的把问题描述清楚。另外,每个人遇到的问题可能不同,即使相同的问题不同的机器解决方法也可能不一样,我也做不到尽善尽美。首先要保证sd卡>16G。

一、使用apt-get 命令下载OpenCV依赖包速度慢以及部分OpenCV依赖包下载失败(解决方法:换源)

        树莓派系统默认使用国外的镜像源,国内访问速度非常慢,因此需要换成国内源。官网列出了换源列表 RaspbianMirrors - Raspbian。我使用的是中科大的源。

1、备份原源文件以及查看源版本

        在树莓派命令行界面输入以下命令备份源文件,

        sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

        sudo cp/etc/apt/sources.list.d/raspi.list/etc/apt/sources.list.d/raspi.list.bak

        树莓派系统是是基于debian改造出来的,在2016年2月发布了树莓派 3B,采用64位处理器的树莓派 3B,虽然具有64位硬件,但是系统依旧使用的是基于debian 8 的 32位的Jessie,所以不能完全的释放出树莓派3B的性能,随着debian升级到了最新的debian 9 stretch,到了2017-08树莓派对官方系统的版本号进行了更新,由之前的jessie升级到了基于最新64位的debian 9 stretch,而现在最新的应该是Debian 10 buster。

        具体型号可以通过终端输入:lsb_release -a 命令来查看自己的系统到底是 jessie、strerch 还是 buster。而对应的,只需要将下面换源的命令中相应的地方进行修改即可,我的系统是 buster。

2、换源

        输入命令:sudo nano/etc/apt/sources.list

        将源代码给删掉或注释掉,将下面命名写入第一行:

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

        Ctrl+O 保存,回车Ctrl+X退出。

        输入:sudo nano/etc/apt/sources.list.d/raspi.list

        将源代码给删掉或注释掉,将下面命名写入第一行:

        deb http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ buster main ui

        Ctrl+O 保存,回车Ctrl+X退出。

3、更新源

        sudo apt-get update

4、更新软件

        sudo apt-get upgrade

5、下载OpenCV依赖包

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

        sudo apt-get install libjpeg8-dev

        sudo apt-get install libtiff5-dev

        sudo apt-get install libjasper-dev

        sudo apt-get install libpng12-dev

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

        sudo apt-get install libgtk2.0-dev

        sudo apt-get install libatlas-base-dev gfortran     

        sudo apt-get install libopencv-dev

二、使用wget命令下载OpenCV压缩包以及OpenCV_contrib压缩包速度慢以及压缩包内容缺失导致无法解压(解决办法:找到对应的网址通过电脑下载后使用filezilla或U盘导入树莓派)

        我这里下载的是 opencv-3.4.4.zip 以及对应的 opencv_contrib-3.4.4.zip(版本号一定要对应)。由于 wget -O 命令下载速度太慢,我通过电脑下载后,使用 FileZilla 导入树莓派的 /home/pi目录下。FileZilla 的使用方法:

图 1 filezilla

        在主机处输入树莓派ip,输入你的用户名、密码,如果你连接过ssh,端口号输入22即可。点击“快速连接”,连接成功后在下方分别点开你要传送的文件的所在目录以及终点目录,双击文件即可传送。

        网址:https://github.com/Itseez/opencv/archive/3.4.4.zip

                   https://github.com/Itseez/opencv_contrib/archive/3.4.4.zip

        接下来解压zip:

        unzip opencv-3.4.4.zip

        unzip opencv_contrib-3.4.4.zip

三、sudo make 前的一些准备(避免采坑,一次成功)

1、扩展内存

        输入 sudo raspi-config ,找到第七行 Advanecd Options 进入,选择第一条 Expand Filesystem。重启树莓派。

2、提前准备缺失文件( 缺少boostdesc_bgm.i文件和vgg_generated_120.i文件等)

        在如下链接处下载缺失的文件包

        链接:https://pan.baidu.com/s/1xi6_5NuTFiP4SD649FgIJw

        提取码:mbsj

此处引用 CSDN博主「忆逍遥」的原创文章, 原文链接:https://blog.csdn.net/weixin_43308627/article/details/97814927 

         将所有带 i 结尾的文件全部都拷贝到 opencv_contrib/modules/xfeatures2d/src/ 路径下即可。拷贝方法可用上文提到的 filezilla

        

3、提前解决 fatal error: opencv2/xfeatures2d/cuda.hpp: 没有那个文件或目录

        将/home/pi/Downloads/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2目录下的xfeatures2d文件夹和xfeatures2d.hpp文件复制粘贴到 /home/pi/Downloads/opencv-3.4.0/modules/stitching/include/opencv2目录下即可。

4、开始编译

        进入到已解压的 opencv-3.4.4 中: cd opencv-3.4.4,

        mkdir release

        cd release

        修改参数:

        cmake -D CMAKE_BUILD_TYPE=RELEASE \

              - D CMAKE_INSTALL_PREFIX=/usr/local \

              - D INSTALL_PYTHON_EXAMPLES=ON \

              - D INSTALL_C_EXAMPLES=OFF \

              - D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.1/modules \

              - D PYTHON_EXECUTABLE=~/usr/bin/python \

              - D BUILD_EXAMPLES=ON ..

        输入指令: sudo make 开始编译(漫长的等待)

        编译完成后,输入 sudo make install 进行编译安装。

        输入 sudo ldconfig 更新动态链接库。

        如果 sudo make 环节失败,一定要删除 release文件夹(在 opencv-3.4.4 文件夹中),根据错误提示进行调整后重新 sudo make。如果不删除会导致内存爆满从而无法连接 VNC。

        

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,179评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,229评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,032评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,533评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,531评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,539评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,916评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,813评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,568评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,654评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,354评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,937评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,918评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,152评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,852评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,378评论 2 342

推荐阅读更多精彩内容