树莓派4b 镜像_用树莓派4b构建深度学习应用(一)硬件篇「建议收藏」

树莓派4b 镜像_用树莓派4b构建深度学习应用(一)硬件篇「建议收藏」前言最近树莓派4b发布了8gb的版本,这么大的内存用在嵌入式设备上,简直是为了深度计算而生,果断入手了一块,遂开启了一轮踩坑之旅。为了避免重复网上已有的树莓派教程,后续系列文章,我尽量以2020年为基准,先打造一个最新最稳定的软硬件开发环境,再在其上构建AI应用。比如选择构建OpenCV4.4,pyTorch1.6和1.7,Tensorflow2.1,然后在上面跑yolov5应用…

大家好,又见面了,我是你们的朋友全栈君。

前言

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

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

119d3bdc8b491714f477b6a8442ea38c.png

a2c2d949938f9fd05809f31260c5c0cc.png

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

66861caab2a1b6827b160e7e0b26f735.png

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

eb2b809cbc55d5cef8c6939d0657740d.png

建议多买几张,树莓派上可以安装各种系统,进行多个备份。推荐64g的是因为这是当下国产卡比较成熟廉价的型号,20块左右,白菜价值得入手。
读卡器(必备)

58c7a41535305c9eb8bdacc64abf2796.png

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

707f00c6c35a058f1b55924e8e95c982.png

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

79abc74ac5f684c0be21273b7325c72e.png

如果要长时间跑AI模型,几块散热片是远远不够的,推荐用乌金铠甲(直接在CPU上用3M的散热胶把热量引到整个外壳上)。这一代的树莓派CPU基础温度很高,随便跑个桌面就50 ℃多了,满负荷状态下可以稳定的跑在85℃上一整天,必要的时候可以开启风扇降温(比较吵)。
充电器5v3A(必备)

4881437f9fb6d2f7910aae5fa5fd83e3.png

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

e92130b40a3d3eb5f7fed7bf99b2e76c.png

如果想直接把树莓派当PC用,配一个Nano的无线键鼠,有物理输入设备,会方便调试代码。没有的话,也可以用VNC来远程桌面访问,所以根据需要可选。
HDMI 转接线(可选)
201df72d531d44c183ad23abfa118429.png
1c5771532cb3da1e44e53cddc8775359.png树莓派4b的HDMI口是micro的,如果要连接HDMI的显示器,则需要一根micro HDMI视频线或者转接头。希望双显示输出的话,那要买两根micro HDMI视频线,因为树莓派的视频接口很近,同插2个转接口会打架…
intel神经棒NCS2(可选)

8dd953c94f8b8264a60897faa38766f4.png

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(可选)

81637c34d33e6a7c12fd3eb00c4f0092.png

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

bb395561d6386eecefb4634bd4a6f93c.png

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

472dd07d09bdb0e0f0ee3b3bef8a8c38.png

在户外的车载项目或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模块 (可选)

eef2215facb24a31300589fe8c429058.png

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

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

下一篇

我们将搭建树莓派的软件环境,

介绍一些常用的工具软件,

方便后续的开发工作,

敬请期待…

e80960d3704c9f82722f0e47ea737a1c.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/139485.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • latex大括号错位显示_LaTeX表格

    latex大括号错位显示_LaTeX表格amsmath中\smash妙用样例-大括号错位显示。原始大括号显示\[\text{机器学习}\begin{cases}\text{~~监督学习~}{\begin{cases}\text{回归算法}\\\text{分类算法}{\begin{cases}\text{生成模型}\\\text{判别模型}\end{cases}}

    2022年10月11日
  • EasyUI 时间格式化「建议收藏」

    EasyUI 时间格式化「建议收藏」方法1:formatter:function(value,row,index){                           var unixTimestamp = new Date(value);                           return unixTimestamp.toLocaleString();                           }方法2…

  • ListView 排序问题[通俗易懂]

    ListView 排序问题[通俗易懂] 在DataGrid 中有自带的排序,但是在ListeView中却没有这一项,下面就给出我平时用的ListView的排序使用方法,给志同道合的朋友们参考参考:在ColumnClick事件下添加:其中要注意:intsortColumn=-1;其中sortColumn用来记录上次排序的列的索引privatevoidlistView1_ColumnClick(objectse

  • 激光slam理论与实践_SLAM算法

    激光slam理论与实践_SLAM算法激光SLAM笔记(1)——激光SLAM框架和基本数学理论1、SLAM分类1.1、基于传感器的分类1.2、基于后端的分类2、激光SLAM算法(基于优化的算法)2.1、激光SLAM算法的流程2.2、激光SLAM常用算法2.3、激光SLAM在实际环境中的问题3、激光SLAM算法介绍3.1、2D激光SLAM3.2、3D激光SLAM1、SLAM分类1.1、基于传感器的分类1.2、基于后端的分类 …

  • mac的内核_Mac编程

    mac的内核_Mac编程MAC内核编程指南-综述等

  • linux smartctl 命令,使用smartctl命令检查磁盘

    linux smartctl 命令,使用smartctl命令检查磁盘使用smartctl命令检查磁盘在TS过程中会碰到很多磁盘异常出现影响系统数据或者生产数据的情况,但是有时候无法判断磁盘出现问题是由于磁盘物理损坏还是磁盘SATA口接触不良导致,这个时候smartctl命令就可以很容易判断出磁盘是否存在物理损坏问题,并且及时作出预警。使用smartctl进行SMART测试所有现代硬盘都可通过SMART属性监视其当前状态。这些值提供有关硬盘各种参数的信息,并可提供有…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号