• 问答
  • 技术
  • 实践
  • 资源
干货|树莓派 4B 搭建 OpenVINO 环境
技术讨论

原创 爱学习的 OpenVINO 中文社区

内 容 来 源 | 牛宝华

内 容 排 版 | 卢蔷薇

01

环境介绍

  1. 硬件:

    树莓派4B 8G内存版

    神经计算棒(NCS2)

    USB3.0 的读卡器

    64GB SD卡

    HDMI线(因为要连接显示器)

    键盘(USB接口,连接树莓派用)

  2. 软件:

    Ubuntu20.04

    OpenVINO 2021.3

    Raspberry Pi Imager(用于烧录系统)

    任意命令行工具(我用的是Windows Terminal)

02

安装操作系统

1. 从官网下载Ubuntu系统镜像

[Install Ubuntu on a Raspberry Pi | Ubuntu]

➡️ https://ubuntu.com/download/raspberry-pi

image.png
image.png

 2. 等待镜像写入完成后,将SD卡插入树莓派。

 3. 开机

 如果连接显示器后显示没有信号,将树莓派重启即可。

image.png

如果看不到登录,输入回车即可。
image.png

默认账号和密码都是 **ubunu。**

第一次登录后,会让你修改密码

image.png

03

系统配置

1. swap设置

Ubuntu 20.04 默认是没有设置swap的,如果你没有比较非内存的应用可以跳过这一步,如果有,但是没有设置那么很容易出现死机的情况。

这里以8G为例:

sudo fallocate -l 8G /swapfilesudo chmod 600 /swapfilesudo mkswap /swapfilesudo swapon /swapfilesudo sh -c 'echo "/swapfile\tnone\tswap\tsw\t0\t0" >> /etc/fstab'

> 注意第一行的不是数字1而是字母l

2. 设置WIFI

输入 **ip a **可以看到如下内容

image.png

wlan0即使wifi模块

编辑Netplan文件

sudo vim /etc/netplan/50-cloud-init.yaml

image.png

> 在编辑的时候,如果输入回车,它会自动输入四个空格,记得把他们删除掉。

sudo netplan apply

再次输入 ip a

image.png

可以看到已经有了IP地址。

3. **用ssh登录**

默认是开通了ssh服务的,现在我们便可以通过 windows 连接到树莓派了。

> 这样截图会方便很多,哈哈哈

image.png

设置一下系统时间

timedatectl set-timezone Asia/Shanghai

image.png

4. 安装桌面

sudo apt update && sudo apt dist-upgrade -y``sudo apt install -y ubuntu-mate-desktop

这有可能花费很多时间,根据网络情况而定

image.png

这两个根据自己的喜好选择就可以了。

image.png

等待安装完成。

5. 配置vnc

有的时候我们不想用HDMI连接显示器,这时可以使用VNC Viewer来查看树莓派的内容。

sudo apt install tightvncserver

启动服务

vncserver

然后启动 windows 上的 vnc viewer 软件。
image.png

输入密码

image.png

可以看到桌面了。

6. 配置FTP

由于我们后面会经常进行文件的传送,因此FTP还是很有必要的。

sudo apt-get install vsftpd

image.png

cd /etc/``sudo vim vsftpd.conf

通过上面的命令,进行配置,具体修改内容有以下几个地方:

image.png

重启服务

service vsftpd restart

打开  Windows 里面的一个文件夹,并输入 ftp://192.168.2107。
image.png

然后输入密码即可。

image.png

04

编译 OpenCV 4.5.2-openvino

1. 下载源代码

git clone --depth 1 -b 4.5.2-openvino 

2. 开始编译

sudo apt install libtbb-dev libjpeg-dev libtiff-dev libwebp-dev

这是一个比较漫长的过程,大概一个小时左右。
image.png
image.png

05

安装 OpenVINO 开发套件

1. 做一点点事情准备

sudo apt install git-lfs cython3

2. 从 GitHub 拉取资源

cd ~

3. 编译

cd openvino-2021.3

同样需要一个小时左右

image.png

4. 配置环境变量

配置完成后,新打开一个窗口如果看到下面的画面表示配置成功。

image.png

echo "source /opt/intel/openvino/bin/setupvars.sh" >> ~/.bashrc

5. 配置NCS驱动

将神经计算棒插入树莓派,并查看。

sudo usermod -a -G users "$(whoami)"

image.png

sudo usermod -a -G users "$(whoami)"

6. 配置一下其他环境变量

export ngraph_DIR=/opt/intel/openvino/deployment_tools/ngraph/cmake

7. 注意事项

由于安装时软件之间存在依赖关系,请按照如下顺序进行安装:

OpenCV → OpenVINO →OpenCV(Python库)

06

验证是否安装成功

1. 安装 Open Model Zoo

pip3 install networkx defusedxml protobuf test-generator==0.1.1

2. 下载与OpenVINO版本相符的 Open Model Zoo

cd ~

3. 下载 Alexnet

cd ./open_model_zoo/tools/downloader./downloader.py --name alexnet --precisions=FP16

4. 转换成Neural Compute Stick可识别的形态

./converter.py --name alexnet --precisions=FP16

5. 最终确认

下载一个图片或者自己通过FTP上传一张也可以。

image.png

cd ~

image.png

classid为951时的准确率是0.76,这里的 classid 相对于 Alexnet 学习时的图片id,我们查看一下发现,951的确为 lemon。

image.png

text: imagenet 1000 class idx to human readable labels (Fox, E., & Guestrin, C. (n.d.). Coursera Machine Learning Specialization.) · GitHub

➡️https://gist.github.com/yrevar/942d3a0ac09ec9e5eb3a

07

说在最后的话

我们在编译过程中会多次访问 GitHub,因此一个良好的外网环境很有必要。最开始尝试过各种加速方法,最终还是用了梯子。顺便重装了一次系统,细心的小伙伴发现,后面的IP地址从107变成了114。另外整个编译时间大概花费4个小时左右。 

--END--


英特尔OpenVINO™视频课程免费学习 +(中级)认证地址:https://www.cvmart.net/list/OV2020

(官方权威认证证书+丰厚礼品+视频实操教程)

  • 0
  • 0
  • 797
收藏
暂无评论
OpenVINO
大咖

英特尔 · 算法工程师

  • 4

    关注
  • 7

    获赞
  • 0

    精选文章
近期动态
  • OpenVINO工具套件是由英特尔®公司提供,赋能开发者快速开发高性能计算机....
文章专栏
  • OpenVINO™技术专题分享