2. 开发环境搭建:硬件准备与系统配置
好,咱们正式开始动手了。这一章我带你把开发环境搭起来。说实话,边缘AI项目里,环境搭建往往是最磨人的环节——硬件不兼容、系统烧录失败、SSH连不上……我当年踩过的坑,今天帮你一个个填平。
2.1 硬件准备:选对工具,少走弯路
先说说硬件。树莓派4B和5我都用过,个人更推荐新手直接上树莓派5。为什么?性能提升明显,而且散热设计更合理。我在项目中遇到过4B跑轻量模型时CPU飙到85度,降频后推理速度直接腰斩。5代就好多了,至少不会让你频繁担心过热。
你需要准备这些东西:
- 树莓派主板:4B(2GB/4GB/8GB)或5(4GB/8GB)。我建议至少4GB内存,跑模型推理时你会感谢这个选择的。
- MicroSD卡:32GB起步,Class 10或U1以上。别图便宜买杂牌,我曾经用一张劣质卡,系统烧录了三次才成功,后来换了三星EVO Plus,一次过。
- 电源适配器:官方推荐5V/3A(4B)或5V/5A(5)。别用手机充电头凑合,供电不足会导致USB设备随机断开,排查起来很头疼。
- 摄像头模块:官方Camera Module 3或兼容的USB摄像头。我习惯用官方模块,驱动支持最好,省心。
- 散热片+风扇:尤其是跑模型推理时,散热是刚需。嗯,这里要注意,树莓派5的散热片尺寸和4B不一样,买的时候别搞错。
2.2 系统烧录:Raspberry Pi OS 的安装
系统我选Raspberry Pi OS(64位),基于Debian,稳定且社区支持好。你可能会问:为什么不装Ubuntu?其实都可以,但Raspberry Pi OS对树莓派的硬件优化更到位,摄像头、GPIO这些外设开箱即用。
烧录步骤很简单,但有几个坑我帮你标出来:
- 下载Raspberry Pi Imager:去官网下载桌面版工具。别用老式的Win32DiskImager了,官方工具现在支持在线选择系统、预配置SSH和WiFi,方便很多。
- 选择系统镜像:打开Imager,选“Raspberry Pi Device” -> 你的型号 -> “Raspberry Pi OS (64-bit)”。注意选带“Desktop”的版本,我们后面要用桌面环境调试摄像头。
- 预配置(关键一步):点击右下角的齿轮图标,提前设置好:
- 主机名:比如
edgeai-pi - 启用SSH:选“使用密码登录”,设好用户名和密码
- 配置WiFi:输入你的WiFi名称和密码(注意2.4G频段更稳定)
- 区域设置:选“Asia/Shanghai”,键盘布局选“us”
- 主机名:比如
- 写入SD卡:插入读卡器,选择目标SD卡,点击“写入”。等待5-10分钟,完成后会提示拔出。
烧录完成后,把SD卡插入树莓派,接上电源。第一次启动会有点慢,大概1-2分钟。你可以通过路由器后台查看树莓派的IP地址,或者用 ping edgeai-pi.local 试试(前提是你的网络支持mDNS)。
2.3 Python环境配置:Miniconda 的妙用
树莓派自带的Python 3.11够用,但我不建议直接用它。为什么?因为项目依赖会越装越乱,今天装TensorFlow,明天装PyTorch,后天可能就冲突了。我习惯用Miniconda管理环境,干净、隔离、可复现。
安装步骤:
# 下载Miniconda安装脚本(ARM64架构)
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh
# 运行安装脚本
bash Miniconda3-latest-Linux-aarch64.sh
# 按提示操作:同意协议、选择安装路径(默认即可)
# 安装完成后,重启终端或 source ~/.bashrc
# 验证安装
conda --version
安装完成后,我建议你创建一个专门用于边缘AI的环境:
# 创建环境,指定Python 3.10(兼容性最好)
conda create -n edgeai python=3.10
# 激活环境
conda activate edgeai
# 安装常用库(后面章节会逐步补充)
pip install numpy opencv-python pillow
为什么选Python 3.10? 因为TensorFlow Lite和ONNX Runtime在ARM64上对3.10的支持最稳定。我试过3.11,有些包的预编译轮子找不到,得自己编译,那叫一个慢。你想想看,编译一次OpenCV要半小时,何必呢?
2.4 远程开发:SSH + VSCode 的黄金组合
树莓派接显示器用桌面环境当然可以,但长期开发我推荐远程连接。你想想看,在笔记本上写代码,一键同步到树莓派运行,多舒服。
SSH连接很简单:
# 从你的电脑连接树莓派
ssh pi@192.168.1.100 # 替换成你的树莓派IP
# 或者用主机名(如果网络支持)
ssh pi@edgeai-pi.local
第一次连接会提示确认指纹,输入 yes 然后输入密码即可。
接下来是VSCode的远程开发配置:
- 安装Remote - SSH插件:在VSCode扩展市场搜索“Remote - SSH”,安装。
- 添加SSH目标:按F1,输入“Remote-SSH: Connect to Host”,然后输入
pi@你的IP。 - 选择平台:连接成功后,VSCode会提示选择远程平台,选“Linux”。
- 打开工作目录:比如
/home/pi/projects/edge-ai,没有就自己建一个。
提升效率的小技巧:在VSCode的设置里开启“Remote.SSH: Show Login Terminal”,这样每次连接时能看到SSH的登录过程,方便排查网络问题。另外,我习惯在树莓派上装 tmux,这样即使SSH断开,训练任务也不会中断。
最后,验证一下摄像头是否正常工作:
# 测试摄像头(官方模块)
libcamera-still -o test.jpg
# 如果用的是USB摄像头
fswebcam test.jpg
看到一张清晰的图片?恭喜你,环境搭建完成了。嗯,到这里为止,你的开发环境已经就绪。下一章我们开始准备数据集,真正进入模型训练的环节。
本章小结:硬件选型别贪便宜,系统烧录记得预配置SSH,Python环境用Miniconda隔离,远程开发靠VSCode+SSH。这套组合拳打下来,后续开发会顺畅很多。我当年要是有人这么带我,至少能省下两天折腾时间。