本帖最后由 eefocus_3891719 于 2026-2-2 01:41 编辑
一、项目名称 BabyVoice Insight
二、项目概述
在新生儿照护的最初几个月,父母常常面临一个共同挑战:“宝宝哭了,但到底是因为饿了、困了,还是不舒服?”
婴儿尚无法用语言表达需求,而不同情境下的声音模式其实存在细微差异——只是人耳难以持续分辨。 BabyVoice Insight 正是为此而生。
这是一款完全本地运行、注重隐私的智能育儿辅助设备,不联网、不录音、不上传任何数据。它通过边缘AI实时分析婴儿发出的声音(包括安静、咿呀、哭声等),智能识别其当前可能所处的行为情境,并通过两种温和的方式反馈给照护者: • 视觉:在低功耗、无蓝光的 2.13 英寸电子墨水屏 上显示文字结果(如“情境:困倦信号”) • 听觉:通过 DFR0760 语音合成模块(内置扬声器)自然播报中文提示(如“宝宝可能困了,建议安排小睡”) 整个系统由 树莓派5(8GB) 作为AI主控,搭配 ESP32-S3 开发板 远端采集音频,构成轻量、可靠、低延迟的端-边协同架构。 所有处理在家庭局域网内完成,无云依赖,无隐私泄露风险,真正实现“听得懂、说得清、守得住”。
婴儿声音分类,大致氛围5类,如下: • 安静/深度睡眠,照护含义:宝宝正在休息,无打扰; • 安静玩耍,照护含义:状态良好,自主活动; • 饥饿需求,照护含义:宝宝饿了,需要喂奶; • 困倦,照护含义:宝贝困了,需要入睡; 情绪不适,**呼含义:宝贝可能尿不湿、胀气、生病了;
三、作品实物图
图一:左侧是 M5Stack Tab5,右侧是树莓派5(搭载电子墨水屏和语音合成器)
图二:左下角是一个运行 gStrings 播放单tone音频的手机(播放 tone 音是 932.1Hz),左上角 Tab5 采集音频并绘制频谱和波形,计算出来的 peak 值是 927.5,比较接近,同时通过WiFi接入局域网,通过 UDP 多播传输音频。 右侧树莓派5通过有线接入网络,加入 Tab5 同一个多播组,接收音频,运行 Edge Impulse 边缘AI进行音频分类识别,识别结果是 quiet,置信度为 99.22%。 图三:树莓派5程序初始化,显示欢迎界面 。
图四:手机播放 tone 音时,树莓派5运行终端的截图。Spectrum 显示 Peak 值为 930Hz,符合预期。
1. 原理图
在树莓派5这一端,接入语音合成器(I2C驱动)和电子墨水屏(SPI驱动)。
DFR0760语音合成器介绍 让声音为你的项目增添一抹特色!连接上语音合成模块,再添加几行简单的代码就可以让您的项目开口说话。无论是中文还是英文对于语音合成模块来说都是so easy,播报当前时间,播报环境数据统统不在话下,与语音识别模块结合还可实现语音对话!该模块采用I2C和UART两种通讯方式,Gravity接口,兼容绝大部分主控。模块上已经自带了一个喇叭,所以您无需再额外的添加喇叭。
特性 • 支持中文、英文和中英文混合合成 • 自带喇叭 • Gravity I2C/UART双通讯 • 支持多种文本控制标识 • 支持多种主控板,arduino、micro:bit、掌控板等
应用场景 • 机器人语音 • 语音播报 • 语音提示 • 文本阅读
官网: https://wiki.dfrobot.com.cn/_SKU_DFR0760_Gravity_Speech_Synthesis_module
电子墨水屏
这款树莓派电子墨水屏模块配备一块2.13英寸屏幕,分辨率为250×122,采用SPI接口与树莓派通信。它引出了树莓派的引脚,因此如果您需要同时使用电子墨水屏和树莓派的引脚,不会出现冲突。该显示屏支持自定义字体。模块上有两个触摸开关,可扩展更多应用。这款电子墨水屏尺寸小巧、布局紧凑、即插即用且功耗低。即使在阳光下也能提供清晰的显示效果。断电后,电子墨水屏会继续显示上次的屏幕内容。由于屏幕刷新需要较长时间,因此我们不建议将其用于需要频繁刷新显示数据的应用场景。
规格 • 工作电压:3.3V • 按钮:2个 ○ 按钮A,占用树莓派的GPIO29和P40 ○ 按钮B,占用树莓派的GPIO28和P38 • 分辨率:250x122 (逻辑分辨率 250x128) • 通信接口:SPI • 显示颜色:黑白 • 灰度等级:2 • 刷新方式:完全刷新和部分刷新 • 刷新时间:全刷新需要3秒,部分刷新需要0.5秒 • 可视角度:>170°
由于电子墨水屏通信方式为 SPI,所以树莓派5 需要使能SPI。 输入命令 sudo raspi-config 打开树莓派设置界面,进入选项 3 Interface Options,使能SPI。
2. 流程图 系统架构 这是一个多线程婴儿哭声识别系统,包含4个并行执行单元: • 主线程:UI渲染和音频数据接收 • 线程1:墨水屏显示控制 • 线程2:语音播报处理 • 线程3:AI模型推理
关键特性 特性1:显示系统 • 双阶段显示:欢迎页面(5秒)→ 监控页面 • 左对齐显示:结果和置信度固定位置显示 • 局部刷新:使用PART模式刷新,减少闪烁
特性2:AI推理逻辑 • 单次命中机制:取消3-hit累加,置信度≥70%直接确认 • 15秒锁定:关键事件触发后15秒内不处理新识别 • 标签映射:英文标签→中文语音提示
特性3:语音播报 • 队列管理:防止语音重叠 • 间隔控制:15秒内不重复播报相同事件 • 条件触发:仅对三个关键标签播报
数据流 1. 音频流:UDP多播 → 主线程缓存 → AI线程处理 2. 识别结果:AI线程 → 显示队列 → 墨水屏显示 3. 语音触发:AI线程 → 语音队列 → 语音合成模块
同步机制 • 队列通信:线程间通过队列传递数据 • 状态标志:in_audio_page控制语音播报时机 • 时间锁定:event_until防止事件重复处理
四、演示视频
参见B站:
五、项目文档
1. 项目文档见压缩包; 2. 代码有两份,分别是树莓派5和 M5Stack Tab5 的代码;
|