27浏览
查看: 27|回复: 1

[ESP8266/ESP32] ESP32-S3 AI 边缘智能测试项目之夜间卧室老人摔倒检测

[复制链接]
ESP32-S3 AI 边缘智能测试项目之夜间卧室老人摔倒检测
一、项目背景
很高兴能够入选第一批测试这款ESP32-S3 AI CAM模块,在提交申请时,就对这个夜间摄像头比较感兴趣,在我之前带着学生做项目中,很少有夜晚场景中的应用,这次在测试中也是主要针对这个功能进行选题测试。
那我制作的项目主要时围绕夜间家庭安全与照护问题,尤其是老人跌倒、夜间异常行为等场景,需要依赖能够在夜晚快速识别的设备进行实时监测与响应。“夜间环境下识别”是重点,探索其在暗光或无光环境中的识别能力及后续联动功能。
本项目内容:
  • 使用广角红外摄像头进行图像采集;
  • 部署 EdgeImpulse 训练模型,进行目标识别;
  • 测试模型在夜间环境中的响应能力;
  • 实现音频联动播报。


二、开发环境准备

1. 软件安装准备
项目是在Arduino IDE上进行,需要安装ESP32的库,如果在IDE上更新可能有些慢,建议github上下载安装会快一点。网上的教程也比较多,我就不在这里赘述了。

2. USB CDC 设置说明
在进行代码烧录之前,需要确保 USB CDC 设置正确:
  • 若要通过 USB 接口打印串口信息:Enabled
  • 若需使用 TX/RX 引脚打印信息:Disabled
建议在测试启用 USB CDC,以便更方便调试。

3.烧录过程中的问题与解决
问题现象:
在运行 CameraWebServer 示例时,出现如下串口配置错误,我忘了截图
A serial exception error occurred: Cannot configure port, somethingwent wrong. Original message: PermissionError(13, '�豸��ʶ������',None, 22) Note: This error originates from pySerial. It is likely not a problemwith esptool, but with the hardware connection or drivers. For troubleshootingsteps visit:https://docs.espressif.com/proje ... shooting.htmlFailed uploading: uploading error: exit status 1
解决方案:
  • 拔掉 ESP32 开发板 → 重启电脑 → 更换 USB 数据线 → 重新插入;
  • 确保没有其他程序占用串口;
  • 若仍失败,可 按住 BOOT 键手动进入烧录模式;
  • 最终定位问题为:USB接口电压不稳定,可更换 USB 接口或供电方式;
  • 相关参考链接:CSDN博主故障处理方法。

三、摄像头功能测试

CameraWebServer 示例
ESP32-S3 自带的广角红外摄像头非常适合夜间监控(“广角红外摄像头,适应全天候监控需求”)。测试中通过 Web 页面可实时查看画面。夜间测试效果如下(关灯情况下表现仍清晰):晚上测试拍摄效果优秀,不过我在夜间使用手机拍摄时会自动开启闪光灯,略显尴尬。
在重新打开浏览器界面时,摄像头的数据有可能重置,我就调整了一些参数,下面是参数,提供参考,画面小一点,帧率也高些。
         

下面是强光环境下和弱光环境下的对比。
摄像头的部分比较依赖网络,网络卡顿时,浏览器界面需要重启

四、模型部署与测试

1. 模型训练
这部分DF官方提供的文档比较全面,可以参考这里:Edgeimpulse参考文档。
这里多说一句话,Edge Impulse 平台上的数据标注体验较好,标注时系统会根据上一张的识别结果,自动初步标记下一张图片,只需微调即可,大大提高效率。


最后完成训练的模型,我这里的准确度是在80%左右,不过实际识别的效果很好。


2. 模型文件替换说明
这里有一些绕,需要三个文件:首先是下载训练好的模型文件夹A,接着DF官方的Edgeimpulse文件B,最后是你电脑中的libraries文件C。先把A文件解压到C文件中,A的文件名字类似是***_inferencing,然后把B文件中的conv.cpp和depthwise_conv.cpp替换掉A文件中的conv.cpp和depthwise_conv.cpp(路径为\src\edge-impulse-sdk\tensorflow\lite\micro\kernels),最后再把B文件中的edge_camera,复制到A文件的examples中就好了,看了下其他测试老哥的文章中,都写得很清楚,可以参考下,别晕了。。。

3. 编译与上传
  • 打开edge_camera 示例,设置正确的开发板参数,最重要的就是参数需要重新设置;
  • 编译时间较长,请耐心等待。。。
  • 编译上传成功后,串口输出可看到推理结果。

4. 推理效果展示
实际测试中,模型对动作分类效果良好,具体显示结果示例如下:



5. 小坑
在一开始的时候,我是准备语言播报,利用这个扬声器去播报录制好wav格式的音频,音频存储在SD卡中。
贴一下错误情况,播放SD卡中的音频出现的问题,我看了之前老哥在做的时候,也出现类似的问题。


五、项目制作
1. 准备工作
  • 录音时 LED 灯亮起,表示正在录制;
  • 确保添加了以下音频播放库:
  • #include <ESP_I2S.h>

复制代码
2. 播放异常排查
初期播放 SD 卡音频时出现异常,解决思路转变:直接播放录音时保存下来的缓存音频,避开文件系统问题。
3. 功能测试
  • 实现开机自动录音 5 秒;
  • 模型识别到跌倒行为后,自动播放录音内容提醒;
整个流程实际效果良好。

六、后续优化方向
该项目目前完成了图像识别+音频交互的基础功能,未来可以加上联网上报。接入MQTT 协议;在检测到跌倒后,通过网络发送警告信息至网页/服务器。还可以再增加动作识别,记录老年人的睡眠质量。
七、总结
本次项目以“夜间环境下的图像识别”为核心应用场景,围绕ESP32-S3 AI CAM 模块展开测试和功能实现。摄像头性能确实不错,自带广角红外摄像头,夜间弱光下仍能清晰成像。其AI 中支持 Edge Impulse 等模型部署,具备边缘推理功能,分类识别效果稳定。主板对外设有一定兼容性,自带麦克风、扬声器、SD 卡。
下面是参考文件:



KKKKK  见习技师
 楼主|

发表于 昨天 14:41

第一次发帖,不太清楚怎么添加附件,在这里补充一下项目资料。

esp32testfile.7z

6.74 MB, 下载次数: 0

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4 备案 沪公网安备31011502402448

© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail