摘要

这篇博客通过在64位树莓派上运行深度学习的实例:口罩识别,用到了两个深度学习框架:ncnn和Paddle-lite。

说明

本文只是记录运行实例的过程,而非具体的框架解读。

参考文档:Deep learning examples on Raspberry 32/64 OS - Q-engineering

实验环境

  • 开发板选用树莓派4B 8GB,搭载附赠的摄像头,用的是64GB的SD卡:

  • 系统选用官方最新的64位系统带桌面款,已经进行了基本的环境配置:

 介绍

这个口罩识别系统使用了两个框架:ncnn和Paddle-Lite。ncnn框架在图像中检测人脸,Paddle-Lite确定这个人是否戴了口罩。

注意:由于使用了Paddle-Lite框架,该项目只能在64位操作系统上运行。该项目需要预留至少22.2GB的磁盘空间。

注意:运行这个实例之前,确保安装了ncnn和Paddle-Lite框架,如果没有安装,可以参考我的另两篇博客进行安装: 

在64位树莓派上安装ncnn深度学习框架_Slothwolf的博客-CSDN博客

在64位树莓派上安装Paddle-Lite深度学习框架_Slothwolf的博客-CSDN博客

下载深度学习实例

进入之前创建的software文件夹:

cd software

创建一个文件夹face来保存相关实例:

mkdir face
cd face

下载并解压实例:

wget https://github.com/Qengineering/Face-Mask-Detection-Raspberry-Pi-64-bits/archive/master.zip
unzip -j master.zip

 可以删除一些用不到的文件:

rm master.zip
rm LICENSE.txt
rm README.md

编译和运行实例

下一步是在树莓派上编译实例,打开Open::Blocks,加载.cbp文件(这里是MaskUltra.cbp),这样不但会加载cpp文件,还会同时设置好所有的环境选项,然后以release方式编译文件。

注意:这里编译要花很久,大概3分钟左右,不要以为是机器卡了。

 运行程序,一段口罩识别的demo就会运行:

至此,对视频流的口罩检测实例运行完毕,但是我们不应满足于只是用视频进行图像检测,这样没有什么意义,在未来的学习中,我们要学会如何利用摄像头进行图像识别。

结语

我们成功在64位树莓派上运行了一个基于ncnn框架和Paddle-Lite框架的口罩识别程序。

更多推荐