第一章 嵌入式AI概述

嵌入式AI,说白了就是把人工智能算法塞进那些资源受限的小芯片里。我刚开始接触这个领域时,也觉得这事挺玄乎——手机上的AI都跑得磕磕绊绊,你让一个单片机去跑神经网络?

但后来我发现,这事还真能成。而且,它正在改变我们身边的每一个设备。

1.1 嵌入式AI的定义

嵌入式AI,也叫边缘AI,是指在嵌入式系统上直接运行AI推理任务。注意,我说的是推理,不是训练。

训练通常还是在云端或PC上完成的。训练好的模型,经过压缩、量化、剪枝等一系列操作后,部署到嵌入式设备上。设备拿到输入数据,直接做推理,输出结果。

我个人习惯把嵌入式AI理解为「让芯片长脑子」。以前嵌入式设备只是执行固定的逻辑,现在它能看、能听、能理解。

核心要点:嵌入式AI = 嵌入式系统 + AI推理能力。模型在云端训练,在端侧部署。

1.2 发展历程

嵌入式AI的发展,我把它分成三个阶段:

阶段 时间 特点
萌芽期 2015-2017 用传统MCU跑简单分类,效果差,功耗高
爆发期 2018-2021 NPU出现,专用芯片爆发,算力大幅提升
成熟期 2022至今 工具链完善,模型压缩技术成熟,落地项目激增

我记得2016年那会儿,想在一个Cortex-M4上跑个手写数字识别,都得折腾好几天。模型量化、内存分配、算子移植...每一步都是坑。

现在呢?你拿个RISC-V的芯片,跑个YOLO都不算稀奇。工具链一键部署,调试也方便多了。

1.3 与传统AI的区别

传统AI和嵌入式AI,区别在哪?我列几个关键点:

  • 算力差异:传统AI用GPU/TPU,算力几百TOPS起步。嵌入式AI用MCU/NPU,算力可能只有0.1 TOPS。你想想看,差了三个数量级。
  • 功耗约束:云端AI不在乎功耗,一块GPU几百瓦。嵌入式AI呢?电池供电,功耗可能只有几十毫瓦。我做过一个智能门锁项目,整机功耗必须控制在50mW以内。
  • 实时性要求:传统AI可以接受几百毫秒的延迟。嵌入式AI,尤其是工业场景,要求毫秒级响应。我曾经遇到一个视觉检测项目,要求推理时间不超过5ms,否则产线就得停。
  • 数据隐私:传统AI数据上传云端处理。嵌入式AI本地处理,数据不出设备。这在医疗、安防领域特别重要。

避坑指南:我曾经把一个云端训练好的模型直接往嵌入式设备上烧,结果内存直接爆了。后来才明白,嵌入式AI的模型必须经过压缩和量化,不能直接拿云端那套来用。

1.4 典型应用场景

智能家居

智能家居是嵌入式AI最接地气的应用场景。我做过一个智能音箱项目,里面就用了语音唤醒和关键词识别。芯片是Cortex-M7,跑一个轻量级的CNN模型。

嗯,这里要注意:智能家居设备通常对成本敏感,芯片选型很关键。你不能为了跑AI就上高端芯片,成本压不住。

常见的智能家居AI应用:

  • 语音唤醒("小爱同学"、"天猫精灵")
  • 人脸识别门锁
  • 手势控制灯光
  • 跌倒检测(老人看护)

工业视觉

工业视觉是我个人觉得最有挑战性的领域。为什么?因为工业场景对准确率和实时性的要求极其苛刻。

我参与过一个PCB缺陷检测项目。产线速度是每分钟120块板子,每块板子需要检测十几个焊点。算下来,每块板子的处理时间不能超过500ms。

我们用的是海思的NPU芯片,跑一个改进版的MobileNet。模型量化到INT8后,推理时间控制在300ms左右,准确率99.2%。

工业视觉的典型应用:

  • 产品表面缺陷检测
  • 条码/二维码识别
  • 机器人视觉引导
  • 尺寸测量

个人经验:工业视觉项目,数据采集往往比模型设计更耗时。我建议至少花60%的时间在数据采集和标注上。模型选型反而简单,主流的就是MobileNet、EfficientNet这些轻量级网络。

自动驾驶

自动驾驶是嵌入式AI的皇冠。为什么这么说?因为它对算力、功耗、实时性、安全性的要求都是顶级的。

我虽然没有直接参与过L4级别的自动驾驶项目,但做过一些ADAS(高级驾驶辅助系统)的功能。比如车道偏离预警、前车碰撞预警这些。

自动驾驶的AI芯片,目前主流的是英伟达的Orin、高通的Snapdragon Ride、地平线的征程系列。这些芯片的算力都在几十到几百TOPS之间。

自动驾驶的AI应用:

  • 目标检测(车辆、行人、交通标志)
  • 语义分割(道路、车道线)
  • 路径规划
  • 驾驶员状态监测

重要提醒:自动驾驶对安全性的要求极高。模型的一个误判,可能就是车毁人亡。所以,嵌入式AI在自动驾驶领域的部署,必须经过严格的验证和测试。我建议至少做三轮:单元测试、集成测试、实车路测。

1.5 本章小结

嵌入式AI,说白了就是让嵌入式设备具备智能。它和传统AI最大的区别在于:资源受限、功耗敏感、实时性要求高。

应用场景很广,从智能家居到工业视觉,再到自动驾驶,每个场景都有自己的特点和要求。

我个人觉得,嵌入式AI是未来十年最有潜力的方向之一。为什么?因为物联网设备越来越多,数据量越来越大,把所有数据都传到云端处理,既不现实也不安全。让设备在本地做推理,才是趋势。

下一章,我会讲嵌入式AI的硬件选型。包括MCU、MPU、NPU的区别,以及如何根据项目需求选择合适的芯片。嗯,这部分内容我踩过不少坑,到时候跟大家好好聊聊。