问题背景
我正在开发基于ESP32-S3-Zero的驼背矫正背心项目,需要在设备上运行MindSpore Lite模型进行驼背识别推理。 背心项目补充:我需要设计一个智能背心,穿在人身上时,当人驼背,对背心上的压力传感器的力达到一个阈值时,ai识别为驼背,并控制背心上的气囊充气,把背往前推,当气压传感器检测到达到一定气压值时,ai控制停止充气,5分钟后自动控制放气。
具体需求
- 需获取适配ESP32-S3(ARM Cortex-M7,32位) 架构的MindSpore Lite静态库
libmindspore-lite.a;
- 同时需要配套的
mindspore-lite/ 头文件文件夹(含model.h、inference.h、context.h、tensor.h);
- 静态库需支持INT8量化模型推理,输入为2维压力传感器数据,输出为2分类概率。
已尝试的操作
- 访问MindSpore Lite官方Gitee仓库和社区资源,未找到直接适配ESP32-S3的预编译库;
- 尝试自行交叉编译,但因对嵌入式交叉编译流程不熟悉,未能成功生成可用的静态库。
期望得到的帮助
- 能否提供已编译好的适配ESP32-S3的
libmindspore-lite.a静态库及对应头文件?
- 若暂无现成资源,能否指导交叉编译的具体步骤(如编译参数、依赖配置等)?
补充信息
- 项目基于Arduino IDE开发,ESP32-S3的CPU架构为ARM Cortex-M7,无硬件NPU,仅需CPU推理支持;
- 模型为轻量化二分类网络,输入shape为[1,2],输出shape为[1,2]。
longvoyage
(Longvoyage)
2
你看的是那份文档?
Micro库 Cortex-M7
mindspore-lite-2.3.0rc1-none-cortex-m7.tar.gz
1 Like
VincentZhu
(Zhu Guodong)
3
以上是我们的建议交叉编译流程,由于没有具体的教程编译工具链,我们无法本地验证是否正确。如果仍有问题的话,麻烦提供下具体的交叉编译工具链下载链接和复现方法。
VincentZhu
(Zhu Guodong)
4
你好,MindSpore Lite代码仓历史提供了mindspore-lite/cmake/cortex-m7.toolchain.cmake工具链配置,但未提供build.sh脚本入口。
建议修改方法:
1、修改scripts/build/build_lite.sh脚本,参考Line 431 contex-a15补充工具链配置脚本:
```
elif [[ "${TOOLCHAIN_NAME}" == "cortex-m7" ]]; then # 此处改成contex-m7
CMAKE_TOOLCHAIN_FILE=${LITE_BASEPATH}/cmake/cortex-m7.toolchain.cmake
LITE_CMAKE_ARGS="${LITE_CMAKE_ARGS} -DTOOLCHAIN_NAME=cortex-m7" # 此处改成contex-m7
LITE_CMAKE_ARGS="${LITE_CMAKE_ARGS} -DMSLITE_MINDDATA_IMPLEMENT=off"
LITE_CMAKE_ARGS="${LITE_CMAKE_ARGS} -DMSLITE_ENABLE_FP16=off -DMSLITE_ENABLE_TRAIN=off -DMSLITE_GPU_BACKEND=off"
```
2、编译方法:
```bash
# 设置交叉编译工具链路径
git clone https://gitee.com/mindspore/mindspore-lite.git
cd mindspore-lite/
export PATH="/path/to/your/context-m7-toolchain/bin/:$PATH"
# 配置lite交叉编译架构
export TOOLCHAIN_NAME=cortex-m7
# 编译lite
bash build.sh -I arm32 -j 8
```