2024寒假练 - 基于ESP32S3实现垃圾桶和葫芦的物体识别功能
结合图像传感器和适当的算法,可以实现物体识别的功能。在这个项目中,利用ESP32的处理能力和Wi-Fi功能,结合图像传感器采集到的数据,实现物体识别,并根据识别结果执行相应的操作。
标签
嵌入式系统
测试
看风景的人
更新2024-04-07
重庆电力高等专科学校
308

物体识别

1 项目需求

利用ESP32S3进行串口拍照,把要识别物体拍好,并进行训练。

利用EDG训练出模型,把每个物体定义好标签。

利用摄像头配合图像识别AI功能,识别出垃圾桶和葫芦并显示到串口上。

ESP32-S3功能介绍:

  1. 处理器架构:xiao ESP32-S3 基于 Xtensa LX7 处理器架构,拥有双核处理器,可提供高性能的计算能力。
  2. 通信功能:该模块集成了 Wi-Fi 和蓝牙功能,支持多种无线通信协议,使其适用于各种物联网应用。
  3. 丰富的外设接口:xiao ESP32-S3 提供了丰富的外设接口,包括 GPIO、SPI、I2C、UART 等接口,方便连接各种外部设备。
  4. 低功耗设计:该模块在设计上注重低功耗特性,可在电池供电情况下实现长时间运行。
  5. 开发框架:Espressif Systems 提供了 ESP-IDF 开发框架,支持开发人员快速开发应用程序,并充分发挥 xiao ESP32-S3 的功能和性能。

2 项目背景

随着科技的日益发展,智能家居已经不是遥不可及的梦想。我们渴望创造一个不仅能让家人更舒适、安全和便捷的家居环境,同时也能让我们的宠物伙伴享受到同等的来自科技的关爱与舒适。
1  项目需求开发一个创新的智能家居方案,通过使用XIAO ESP32S3 Sense开发板结合其他技术栈,为助力宠物在数字化的今天更好的安家乐居提供一套完整的方案。我们特别鼓励创意性、实用性和技术实施性的设计,包括识别宠物的行为模式,关注并优化宠物的日常习惯等,让你的宠物可以更舒适的居住。
2  使用技术栈:微控制器:XIAO以及其它开源硬件如Arduino、ESP32等;智能家居系统:Home Assistant;嵌入式TinyML AI工具:AI Studio;云平台:Edge Impulse;
3  实现思路使用arduino控制XIAO ESP32S3 Sense当在串口监视器中输入capture 命令并回车后,开始进入拍照模式了,提前将摄像头对准准备好的物品;将采样得到的照片进行分类,不清晰的照片就行删除;使用Edge Impulse平台进行对采取照片进行构建、部署和运行机器学习模型。构建用于嵌入式系统的机器学习模型,Edge Impulse 提供了从数据收集、数据预处理、模型训练到模型部署的完整工作流程;使用AI Studio平台训练模型运行指令安装python第三方库文件,进行训练模型导出相应训练结果代码;将代码应用于arduion软件中验证运行打开串口监视器,进行物体识别验证。


3 完成的功能及达到的性能


3.1 模型训练数据采集:使用 Edge Impulse 提供的工具或者自己的设备,采集并上传数据集。确保数据集的质量和多样性,这对模型的训练效果至关重要。
image.png
3.2 数据预处理:在 Edge Impulse 中进行数据预处理,包括数据增强、标签定义等操作,以提高模型的泛化能力和准确率。
image.png

3.3 模型部署:完成模型训练后,在 AI Studio 中进行模型部署。选择适合的目标平台(例如 ESP32-S3),并生成相应的部署代码和模型文件。
image.png
3.4 部署到 ESP32-S3:将生成的部署代码和模型文件下载到本地,导入到arduino。根据 ESP32-S3 的硬件特性和需求,进行适当的优化和调整。


3.5  硬件介绍强大的MCU板:采用ESP32S3 32位双核Xtensa处理器芯片,运行频率高达240 MHz,安装多个开发端口,支持Arduino/MicroPython高级功能:可拆卸的OV2640相机传感器,分辨率为1600*1200,与OV5640相机传感器兼容,内置额外的数字麦克风精心设计的电源:锂电池充电管理功能,提供4种功耗模式,可实现低至14μA的深度睡眠模式拥有更多可能性的美好记忆:提供8MB PSRAM和8MB FLASH,支持用于外部32GB FAT内存的SD卡插槽出色的射频性能:支持2.4GHz Wi-Fi和BLE双无线通信,连接U.FL天线时支持100m+远程通信拇指大小的紧凑型设计:21x17.5mm,采用XIAO的

经典外形,适用于可穿戴设备等空间有限的项目来自SenseCraft Al的预训练 Al 模型,无需代码即可部署

3.6  硬件框图
F83FECB8AF9F5DA551B626A9322D4722.JPG
image.png


4 遇到的问题

一、项目需要打开闪存,没有打开会有一下问题

  1. 程序无法永久保存:程序将无法在Arduino上永久保存,每次重新启动Arduino都需要重新上传程序。
  2. 无法独立运行:Arduino将无法独立运行,因为没有存储程序的能力。必须保持与计算机连接以继续运行程序。
  3. 无法脱机操作:如果Arduino需要在没有计算机连接的情况下运行,没有打开闪存将导致无法实现。

5 未来的计划建议

该项目已经成功实现了物体识别的功能,并达到了预期指标。然而通过更新代码添加外设,还有许多可以提升与扩展的地方:添加外设:考虑添加一些外设,比如摄像头模块、LCD 屏幕或者其他传感器,以扩展项目的功能和应用场景。摄像头模块可以用于实时捕获图像进行物体识别,LCD 屏幕可以用于显示识别结果或者交互界面。优化模型:对已有的物体识别模型进行优化,可以尝试使用更复杂的神经网络结构、调整模型的超参数或者进行模型压缩,以提高识别准确率和速度。在 Edge Impulse 或者 AI Studio 中进行模型的重新训练和调整。实时物体识别:如果你添加了摄像头模块,可以尝试实现实时物体识别功能。这需要处理摄像头捕获的图像流,并在边缘设备上运行物体识别模型。

附件下载
take_photos_command.ino
ei-haoo-project-1-arduino-1.0.1.zip
团队介绍
积极向上
团队成员
看风景的人
评论
0 / 100
查看更多
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号