树莓派 换源_树莓派 & OpenVINO / Movidius NCS 环境搭建

本文详述了树莓派3B+的选购及Raspbian系统的安装,包括TF卡的选择、系统镜像下载与烧录。特别强调了角蜂鸟镜像的使用,以及树莓派开机后必须进行的系统配置,如修改密码、开启SSH、扩展文件系统等。此外,文章还介绍了Python3虚拟环境创建、pip源更换、OpenCV和TensorFlow的安装,以及OpenVINO工具包的下载与安装过程,针对可能出现的错误提出了处理建议。
摘要由CSDN通过智能技术生成
15290744f6049699b41a8861d089f95d.png

▌ 选购 Raspberry PI    

  • Raspberry Pi 3B+

26a56a10df2849e6b3393faa768a04bf.png

CPU: 1.4GHz, 4核
RAM:1GB
OS:Raspberry Pi 3B+ 只能安装 Raspbian系统。目前还不能支持 ubuntu。
个人感觉,没必要非得装ubuntu的,买3B+吧。

  • Raspberry Pi 3B

395471a4c58f4de39c6740b7b1288f0d.png

1.2GHz, 4核 CPU
1GB RAM

  • Raspberry Pi Zero W

4f16866bf52905aaa3ca19b69cc29085.png

1GHz, 单核 CPU
512MB RAM(其中会分出128MB当作显存用)

▌选购 TF 卡

要16G以上的,8G根本不够用。条件可以,尽量选购读写速度快的。建议选32G 读100M/S 写90M/S的卡。
模型转换时,1G内存根本不够用,需要开虚拟内存。这时候卡速就很关键了,不差钱,就一步到位吧。

▌下载树莓派专用系统镜像 img

540143159241e4f5d4b050856e778c2f.png

可以去官网下载:*
download -> Raspian Desktop (推荐)
download -> Raspian Desktop & recommended software
download -> Raspian Lite

角蜂鸟镜像作者,换了国内apt-get和pip源。如果不用角蜂鸟的镜像,是需要自己换源的。

要看一下自己机器是什么架构:

  • 树莓派 3B/B+ 的话,记得选择armv7 架构的源

  • Raspberry Pi Zero W 的话,记得选择armv6 架构的源

角蜂鸟 网盘下载*

▌TF卡烧img

  • windows

Win32DiskImager 工具, 速度比 linux/mac 用 dd 命令快很多倍。

  • Mac OS

使用工具:Etcher (速度很快)

f2ad58dc3cd7887a3d3273b411df171f.png
  • Linux

使用 dd 指令

1) 查看U盘盘符

2) 取消U盘挂载

3) 用dd命令写入U盘

注意 M 大小写:linux bs=4M macOS: bs=4m

4) 查看磁盘进度,可以用iostat命令查看磁盘写入状态

5) 操作完毕后将U盘弹出

(指令代码请点击“

▌开机后必须要干的几件事

注:2018年11月13日之后的的Raspian版本,有些操作会自动帮你做,比如磁盘resize,修改密码等。

raspi-config 系统配置

 pi@raspberrypi-HS2:~ $ sudo raspi-config

c2abbd73ee15c5cdf3abaab32aaca471.png

1) Change User Password

修改 pi 初始密码

2) Boot Options -> B1 Desktop / CLI -> B1 Console

开机进入Concole,这样省内存。后面配置环境在console下,有更多内存可用,会更快。

随时可以用 startx 从命令行进入图形界面。

3) Advanced Options -> A1 Expand Filesystem

烧好的镜像,系统只有8G(TF卡可是有32G呀)。这8G用爆了(都用掉了),你的系统就废了。

所以这一步至关重要,千万别忘了。

4) Interfacing Options -> P2 SSH

开启SSH服务

显示器屏幕配置

 pi@raspberrypi-HS2:/boot $ sudo vi /bootconfig.txt

# 自适应屏幕分辨率

 hdmi_group=2

 hdmi_mode=58

# 屏幕旋转 270 度

 display_rotate=3

注:这块要小心,改错了可能就启动不了了。如果真发生了,可以用读卡器把卡插入别的电脑修改这个文件。如果实在搞不定,可以删除这个文件再重启。

其他配置

进入图形界面,链接无线外设

1) wifi

2)蓝牙 鼠标、键盘

更新 apt-get

apt-get 换源 & 更新:

代码过长,请点击“

这个比较简单,我就不详细写了。

其实不升级也是件好事,避免新版本的冲突问题。

到此Raspbian系统就配置好了。接下来要安装Movidius的运行环境了。

Python3 虚拟环境

系统自带python3.5.3。我曾自己编译安装过 python3.6.8。后来发现,有些常用库(例如:opencv-python)在Raspian上,只有python3.5的版本。后来还是放弃了用python3.6

$ sudo pip3 install virtualenv

$ mkdir ~/env 

$ cd ~/env

$ virtualenv ReatailX

$ source ~/env/RetailX/bin/activate

# You could add "source ~/env/RetailX/bin/activate" to .bashrc

(RetailX) pi@raspberrypi:~ $ _

pip 换源

Add file ~/.pip/pip.conf

[global]

timeout=6000

index-url = https://pypi.doubanio.com/simple/

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

[install]

use-mirrors = true

mirrors = https://pypi.doubanio.com/simple/

#mirrors = http://mirrors.aliyun.com/pypi/simple/

安装OpenCV

(RetailX) pi@raspberrypi:~/Downloads $ sudo apt-get install libhdf5-dev

(RetailX) pi@raspberrypi:~/Downloads $ sudo apt-get install libhdf5-serial-dev

(RetailX) pi@raspberrypi:~/Downloads $ sudo apt-get install libatlas-base-dev

(RetailX) pi@raspberrypi:~/Downloads $ sudo apt-get install libjasper-dev 

(RetailX) pi@raspberrypi:~/Downloads $ sudo apt-get install libqtgui4 

(RetailX) pi@raspberrypi:~/Downloads $ sudo apt-get install libqt4-test

(RetailX) pi@raspberrypi:~/Downloads $ pip install opencv-python

安装 TensorFlow

(RetailX) pi@raspberrypi:~/Downloads $ sudo apt-get install libatlas-base-dev

(RetailX) pi@raspberrypi:~/Downloads $ pip install tensorflow

OpenVINO™ toolkit 下载地址 *

▌Movidius NCS (现在这部分Intel已经不支持了,这里仅供参考)

下载 NCSDK 2.05

【注意】NCSDK在github上,从 master上 clone下来的是 1.12 的版本。

找它release的最新版,目前是2.05:最新支持 tensorflow 1.7

ncsdk 2.05.00.02下载 (最近ncsdk从github上撤了,据说是licence的问题,所以补充了一个下载链接)

wget https://github.com/movidius/ncsdk/archive/v2.05.00.02.tar.gz

wget https://ncs-forum-uploads.s3.amazonaws.com/ncsdk/ncsdk-02_05_00_02-full/ncsdk-2.05.00.02.tar.gz

ncsdk 官方文档

https://movidius.github.io/ncsdk/

解包

tar -xf v2.05.00.02.tar.gz

换源

建议用角蜂鸟的镜像,已经换过源了。我这里就不写怎么换源了。

主要是换 apt-get 和 pip3 的源。注意一下,树莓派 3B/B+ 是 armv7l 芯片,选择相应版本的源。

修改NCSDK 的 Makefile 取消 卸载 OpenCV的过程

「坑」NCSDK会卸载OpenCV,导致用角蜂鸟的SDK时,无法用OpenCV读网络摄像头了。

角蜂鸟的镜像有已经安装好了的OpenCV。因为角蜂鸟和NCSDK都是基于Movidius VPU 开发的,如果对OpenCV有特殊需求,我认为应该也是一致的。在此我大胆的修改了NCSDK的Makefile,把关于OpenCV的卸载和安装都去掉了。

.PHONY: install

# 删除此行

# install: prereqs uninstallopencv

# 替换为:

install: prereqs

        @echo "\nmake install starting."

        ./install.sh

▌安装NCSDK

进入目录

cd ncsdk-2.05.00.02

安装

sudo make install

安装ncsdk时,保证网速不能太慢。安装过程会非常长,要有心里准备。

▌错误处理

安装 NCSDK 依赖包时可能出现版本冲突的错误

例如:

785392f3c562be775253d3e3d8dd82ea.png

这是安装scikit-img时报错。别慌!

细看 Makefile -> install.sh -> requirements.txt

...

scikit-image>=0.11.3,<=0.13.0

...

手动安装试试

sudo pip3 install scikit-image=0.13.0

依然报错,安装低版本试试?

sudo pip3 install scikit-image=0.11.3

成功了!

这就是版本过新,出现了冲突错误,所以先别着急 apt-get update

如果遇到错误,多看 install.sh吧。基本上就是换源,指定模块版本这些事。

安装 Tensorflow

Tensorflow官方终于提供Raspberry Pi 的版本了,可以直接用pip3安装了,比起以前自己编译方便了很多。因此需要修改 ncsdk 的Makefile,不需要再用它去安装Tensorflow了。(和修改不安装opencv差不多,这里暂时先不写了)

官方GitHub地址 *

4cab620465fd0540de6067fffdf49f57.png

安装Caffe 内存不足报错

Caffe的编译过程需要较大的内存。树莓派内存只有1G不够用的时候就会报错。不进入图形界面,开机进入console下,会有更多内存可用。根本解决问题,需要给系统扩充虚拟内存。默认Rasbian虚拟内存只有100M,建议升到1~3G。

方法一(「坑」linux常规方法,树莓派用这个方法,一重启就恢复回100M。)

1) 关闭旧的虚拟内存

sudo swapoff /var/swap

2) 扩展swap大小 1G=1M * 1024

sudo dd bs=1M if=/dev/zero of=/var/swap count=1024

3) 格式化swap

sudo mkswap /var/swap

4) 开启swap虚拟内存

sudo swapon /var/swap

5) 检查swap内存是否开启

sudo swapon -s

free -m

「坑」再强调下,方法一是个坑!Raspberr Pi 一重启机器,swap就还原了成100M了。

「坑」再强调下,方法一是个坑!Raspberr Pi 一重启机器,swap就还原了成100M了。

「坑」再强调下,方法一是个坑!Raspberr Pi 一重启机器,swap就还原了成100M了。

方法二(树莓派专用)

修改 /etc/dphys-swapfile文件

sudo vi /etc/dphys-swapfile

将 CONF_SWAPSIZE 的值修改成你想要的大小。 一般在内存小于2G的情况下,交换分区应为内存的2倍!

# 修改

CONF_SWAPSIZE=2048

然后,重新启动 dphys-swapfile 文件服务:

sudo /etc/init.d/dphys-swapfile restart

最后查看大小:

$ free -h

total used free shared buff/cache available

Mem: 976M 66M 801M 12M 108M 849M

Swap: 2.0G 0B 2.0G

增加 Caffe 环境变量

pi@raspberrypi:~ $ vi .bashrc 

...

# 增加

export PYTHONPATH="${PYTHONPATH}:/opt/movidius/caffe/python"

....

# 使生效

pi@raspberrypi:~ $ source .bashrc

# 查看环境变量

pi@raspberrypi:~ $ env

自此大功告成

大功告成!

本文作者 _49_

来源:简书

文中*部分为参考资料,请点击“阅读原文”查看

END

d80fbe495f6d47dda3f87b6b7d196f6f.png

欢迎加入微信群

加入与非社群,找到同道,一起切磋技艺、化解难题。当然还有不定期的红包雨等着你哦!

eaaacd42cea4d084c46cdd2522cb0031.png

添加小编微信后,回复对应关键词+公司+岗位,方可被拉入社群,否则一律禁止入群,每人只可申请一个技术群。

关键词:嵌入式、模拟、人工智能、RF、传感器、汽车电子、物联网、IC设计、EDA、PCB、开源硬件、树莓派。

2e7d666ed5599a35a5704b84efdf0745.png f1b2150325a4d4bf82298b5979f28f01.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值