用树莓派4b构建深度学习应用(1) 硬件篇

这篇我们先来选用一些必要的硬件设备,其中标明必备的,则是运行系统所要求的,型号规格尽量保持一致,可选的部分可根据实际AI应用选择即可。

前言

最近树莓派4b发布了8gb的版本,这么大的内存用在嵌入式设备上,简直是为了深度计算而生,果断入手了一块,遂开启了一轮踩坑之旅。

为了避免重复网上已有的树莓派教程,后续系列文章,我尽量以2020年为基准,先打造一个最新最稳定的软硬件开发环境,再在其上构建AI应用。比如选择构建OpenCV 4.4,pyTorch 1.6和1.7,Tensorflow 2.1,然后在上面跑yolo v5应用,用intel NCS2加速等等…

这篇我们先来选用一些必要的硬件设备,其中标明必备的,则是运行系统所要求的,型号规格尽量保持一致,可选的部分可根据实际AI应用选择即可。

树莓派4b(必备,4gb或8gb)

如果是开发折腾用推荐8gb版本,无论是tensorflow还是pytorch,甚至想在树莓派上开个chrome查下文档,都占相当大的内存。不过由实际使用来看,4gb的版本足已满足当前需求,性价比很高,预算有限的优先选择。而2gb的版本不推荐,在编译大型应用或跑推理模型的时候容易OOM,需要设置很大交换内存,会显著的拖慢编译速度,极度缩减tf卡的寿命。

读卡器(必备)

烧写镜像或是读写配置文件都需要用到,SD卡套或usb读卡器都行,笔记本的话用卡套方便些。读卡器可以考虑usb 3.0,不过大多数情况2.0的480Mbps匹配MircoSDXC的速度也够用了。

摄像头(必备)

跑CV类的AI应用必备,推荐采用CSI的视频接口,树莓派的USB口太紧凑了,USB的摄像头不一定有位置可以插。必要的时候还需要扩展一个USB HUB解决多外设的问题。如果要跑工业CV应用,可以选用 IMX477R 高清摄像头配相应的长焦和微距镜头。

充电器5v3A(必备)

官方电源和国产配套电源(带开关方便重启)都能满足需要,普通手机充电器一般才2A,有太多外设的话,电源的压力就很大。连接太多外设的跑应用时候,会看到屏幕右上方的闪电亏电标志。

无线键盘鼠标(可选)

如果想直接把树莓派当PC用,配一个Nano的无线键鼠,有物理输入设备,会方便调试代码。没有的话,也可以用VNC来远程桌面访问,所以根据需要可选。

intel神经棒NCS2(可选)

AI应用往往是会进行大量浮点数计算,一般会采用GPU进行运算,通过GPU强大的浮点数运算能力,可以有效提升神经网络运算的效能,但若是要将神经网络运算放到如树莓派的单板计算机进行运算,却往往受限于单板计算机的GPU运算效能,使得神经网络运算的速度不足。

虽然树莓派4b的运行速度是3b的3倍以上,但跑AI推理还是无法达到实时(实测跑yolo v4s,0.3fps),但是透过单板计算机进行AIoT的应用促进了边缘运算技术的发展,若单板计算机要在神经网络运算上获得较佳的运算效能,可以考虑透过USB即插即用的外接神经运算装置解决神经网络运算的效能需求。

Google Coral Edge TPU USB加速棒 或者 intel Neural Compute Stick 2 都是可以使用的,就性价比来说,NCS2会更高些。

usb延长线或usb hub(可选)

树莓派的USB口都集中在一起,直插设备的话(比如NCS2)会把其他的口都挡住,所以多外设的话,最好再配一些usb延长线或是usb hub扩展接口数量。

树莓派UPS或充电宝(可选)

如果想外出采集数据或是实验AI应用的话,还需要配备一个足够大的充电宝。前文提到普通充电宝接口电流最大2A,如要更大电流,就需要采用两节18650那种提供稳定的电源支持。

树莓派 4G模块(可选)

在户外的车载项目或AIoT应用中,4G模块可以提供无线的远程连接。可以提供云端推理或是传感器数据云端存储,实现4G高速上网,无线通信,打电话,发短信,全球定位等功能。

# 硬件清单 规格
1 树莓派4b 4gb,8gb
2 microSD卡 64gb
3 读卡器 卡套 或 usb
4 摄像头 CSI 接口
5 散热外壳 乌金铠甲
6 充电器 5v 3A
7 无线键盘鼠标 (可选)
8 HDMI 转接线 (可选)
9 intel神经棒NCS2 (可选)
10 Usb延长线或usb hub (可选)
11 树莓派UPS或充电宝 (可选)
12 树莓派 4G模块 (可选)

上述器件入手后,一顿操作将他们组合到一起就搞定硬件平台了。

整体上来看,相对于 NVIDIA的 Jetson 和Google的 Coral 而言,树莓派是一个比较低廉的边缘计算设备,对于大规模对成本敏感的传感器网络来说,是一个很好的可选方案。

- 本文内容来自网络,如有侵权,请联系本站处理。

2023-01   阅读(149)   评论(0)
 标签: 人工智能

涨知识
MQTT

MQTT协议是一个应用层协议,他要求使用的传输层协议能提供有序的,可靠的双向字节流传输服务。

评论:
相关文章
上海市实验学校人工智能(AI)应用与管理规范(2025年试行版)

为落实教育部《关于加强中小学人工智能教育的通知》及上海市教委《人工智能赋能基础教育高质量发展行动方案(2024-2026年)》,推动人工智能(以下简称“AI”)与教育深度融合,强化师生、教学管理人员及校际合作单位的人工智能规范意识与实践自觉,构建以人为本、安全可控、创新引领的“AI+教育”生态,赋能学生核心素养提升,培养适应新时代的创新型人才,特制定本规范。


Maixduino几种开发环境的搭建

Sipeed k210 RISC-V AI+lOT ESP32视觉听觉开发套装的开发环境搭建。


用树莓派4b构建深度学习应用(8) Openvino篇

这一篇我们介绍一下在树莓派上部署 OpenVINO 神经棒,进一步提升AI的推理速度。


手把手教你使用树莓派实现实时人脸检测

本文介绍了如何在树莓派上,使用 OpenCV 和 Python 完成人脸检测项目。该项目不仅描述了识别人脸所需要的具体步骤,同时还提供了很多扩展知识。此外,该项目并不需要读者了解详细的人脸识别理论知识,因此初学者也能轻松跟着步骤实现。


K210开发环境搭建 、开发文档、常见问题、开发板选择

勘智K210采用RISC-V处理器架构,具备视听一体、自主IP核与可编程能力强三大特点,支持机器视觉与机器听觉多模态识别,可广泛应用于智能家居、智能园区、智能能耗和智能农业等场景。



对话录:生成式人工智能与编程教育

2023年11月17日,一段视频发布在YouTube上,是MIT App Inventor项目组的两位重量级人物——Hal与Evan的对话,讨论的内容是生成式人工智能对编程教育的影响,以及App Inventor未来的技术方向。


Jetbot基础教程-组装过程的注意细节

假如您的 Jetbot 小车是从外面采购第三方套件的话,可以跳过本文的内容。如果您是按照 jetbot.org 原厂的自行组装方式,那么本文所提供的一些细节点,会让您节省很多摸索的时间。



Tflite-micro在ESP32实现离线命令识别

本文会介绍如何使用TensorFlow Lite构建一个本地语音识别系统,内容包括语音前端处理、语音识别模型的训练以及如何将其转换为TensorFlow Lite格式并部署到ESP32。