简介
Seeed SenseCraft Model Assistant 是一个专注于为嵌入式设备提供最先进 AI 算法的开源项目。它旨在帮助开发者和创客轻松地在低成本硬件上部署各种 AI 模型,如微控制器和单板计算机(SBC)。
*在功耗低于 0.3 瓦的 MCU 上的实际部署示例。
🤝 用户友好
SSCMA 提供了一个用户友好的平台,使用户能够轻松地对收集的数据进行训练,并通过训练过程中生成的可视化效果更好地了解算法的性能。
🔋 低算力高性能的模型
SSCMA 专注于端侧 AI 算法研究,算法模型可以部署在微处理器上,如 ESP32、一些 Arduino 开发板,甚至是 Raspberry Pi 等嵌入式 SBC 中。
🗂️ 支持多种格式的模型导出
TensorFlow Lite 主要用于微控制器,而 ONNX 主要用于带有嵌入式 Linux 的设备。还有一些特殊格式,如 TensorRT、OpenVINO,这些已经得到 OpenMMLab 的良好支持。SSCMA 为微控制器添加了 TFLite 模型导出,可以直接转换为 TensorRT、UF2 格式并拖放到设备中进行部署。
特性
我们优化了来自 OpenMMLab 的优秀算法,使其适用于实际场景,并使实现更加用户友好,实现更快、更准确的推理。目前我们支持以下算法方向:
🔍 异常检测
在现实世界中,异常数据通常难以识别,即使能够识别,也需要很高的成本。异常检测算法以低成本的方式收集正常数据,任何超出正常数据范围的都被视为异常。
👁️ 计算机视觉
这里我们提供了许多计算机视觉算法,如物体检测、图像分类、图像分割和姿态估计。然而,这些算法无法在低成本硬件上运行。SSCMA 优化了这些计算机视觉算法,以在低端设备上实现良好的运行速度和准确性。
⏱️ 特定场景
SSCMA 为特定生产环境提供定制场景,如模拟仪表识别、传统数字表识别和音频分类。我们将在未来继续添加更多特定场景的算法。
最新动态
SSCMA 始终致力于提供最先进的 AI 算法,以实现最佳性能和准确性。根据社区反馈,我们不断更新和优化算法以满足用户的实际需求,以下是一些最新更新:
🔥 YOLO-World、MobileNetV4 和更轻量级的 SSCMA(即将推出)
我们正在为嵌入式设备开发最新的 YOLO-World 和 MobileNetV4 算法,我们还在重构 SSCMA,减少依赖,使其更加轻量级和易于使用,敬请期待最新更新。
YOLOv8、YOLOv8 姿态估计、Nvidia Tao 模型和 ByteTrack
通过 SSCMA-Micro,现在您可以在微控制器上部署最新的 YOLOv8、YOLOv8 姿态估计、Nvidia TAO 模型。我们还添加了 ByteTrack 算法,以在低成本硬件上实现实时物体跟踪。
Swift YOLO
我们实现了一种名为 Swift YOLO 的轻量级物体检测算法,专为在计算能力有限的低成本硬件上运行而设计。可视化工具、模型训练和导出命令行界面现已重构。
仪表识别
仪表是我们日常生活和工业生产中常见的仪器,如模拟仪表、数字仪表等。SSCMA 提供仪表识别算法,可用于识别各种仪表的读数。
性能基准
SSCMA 旨在为嵌入式设备提供最佳性能和准确性,以下是最新算法的一些性能基准:
*注:基准主要包括 2 种架构,每种架构有 3 种不同大小的模型(输入 [192, 224, 320]
,参数可能不同),在图中用点的大小表示。基准测试还包括量化模型,所有延迟都在 NVIDIA A100 上测量。
SSCMA 工具链
SSCMA 提供了一个完整的工具链,使用户能够轻松地在低成本硬件上部署 AI 模型,包括:
- SSCMA-Model-Zoo SSCMA 模型库提供了一系列针对不同应用场景的预训练模型供您使用。
- SSCMA-Micro 一个跨平台框架,用于将 SSCMA 模型部署和应用到微控制设备。
- Seeed-Arduino-SSCMA 适用于支持 SSCMA-Micro 固件的设备的 Arduino 库。
- SSCMA-Web-Toolkit 一个基于 Web 的工具,用于更新设备的固件、SSCMA 模型和参数。
- Python-SSCMA 一个 Python 库,用于与使用 SSCMA-Micro 的微控制器交互,以及用于更高级的深度学习应用。
致谢
SSCMA 是许多开发者和贡献者共同努力的结果,我们要感谢以下项目和组织的贡献,SSCMA 参考了它们来实现:
许可证
本项目基于 Apache 2.0 许可证 发布。