当前位置: 首页 > news >正文

MCU嵌入式AI开发笔记-视频笔记同步更新

MCU嵌入式AI开发笔记
抖音B站等站点笔记视频同步更新

01嵌入式AI大的方向

STM32跑神经网络

http://news.eeworld.com.cn/mp/EEWorld/a134877.jspx
为什么可以在STM32上面跑神经网络?简而言之就是使用STM32CubeMX中的X-Cube-AI扩展包将当前比较热门的AI框架进行C代码的转化,以支持在嵌入式设备上使用,目前使用X-Cube-AI需要在STM32CubeMX版本5.0以上,支持转化的模型有Keras、TFlite、ONNX、Lasagne、Caffe、ConvNetJS。Cube-AI把模型转化为一堆数组,而后将这些数组内容解析成模型,和Tensorflow里的模型转数组后使用原理是一样的。

恩智浦MCU的AI工具链NANO.AI。

它主要包含两部分,一部分是将原始算法模型转换成MCU上能够快速运行的数据和库,另一部分包含一个轻量级推理引擎,能做出一个能跑在MCU上、只需几兆Flash甚至几兆SDRAM的方案。
目前,恩智浦已经推出了带有AI功能的MCU产品,MCX N系列是恩智浦集成NPU的第一个产品家族,MCX N94x和MCX N54x MCU系列中集成了恩智浦设计的用于实时推理的专用片上神经处理单元 (NPU)。据悉,与单独使用 CPU内核相比,片上NPU的ML吞吐量最高可提高 30 倍

TinyMaix RT-Thread

https://m.elecfans.com/article/2302927.html
TinyMaix:是矽速科技(Sipeed)利用两个周末的业余时间完成的项目,它是一款专为微控制器设计的轻量级开源机器学习库,面向单片机的超轻量级的神经网络推理库,即TinyML推理库,可以让你在任意单片机上运行轻量级深度学习模型。TinyMaix开源代码链接:https://github.com/sipeed/tinymaix。
TinyMaix作者已经做了一个RT-Thread的软件包r-tinymaix。可以在RT-Thread中工程中加入软件包即可以验证TinyMaix非常赞,可以让一个普普通通的单片机拥有AI能力,让嵌入式AI成本减低

TinyML

https://www.tinyml.org/
https://blog.csdn.net/wfing/article/details/106995562
https://yucheng.blog.csdn.net/article/details/107183870
TinyML 指的是在 mW 功率的微处理器上,实现机器学习的方法、工具和技术。它连接了物联网设备,边缘计算和机器学习。
TinyML 基金会在 2019 年组织了第一届峰会,这届峰会的成果如下:
TinyML 的技术硬件已经进入了实用性的阶段;
算法,网络以及低于 100KB 的 ML 模型,已经取得重大突破;视觉,音频的低功耗需求快速增长。
TinyML 将在以后几年,随着智能化的发展,获得更快的发展。这一领域也有着巨大的机会。

我该如何开始?
硬件: Arduino Nano 33 BLE Sense是用于在边缘部署机器学习模型的建议硬件。它包含一个运行频率为 64MHz 的 32 位 ARM Cortex-M4F 微控制器,具有 1MB 程序存储器和 256KB RAM。该微控制器提供足够的马力来运行 TinyML 模型。Arduino Nano 33 BLE Sense 还包含颜色、亮度、接近度、手势、运动、振动、方向、温度、湿度和压力传感器。它还包含一个数字麦克风和一个低功耗蓝牙 (BLE) 模块。该传感器套件对于大多数应用来说已经足够了。
机器学习框架:只有少数框架可以满足 TinyML 的需求。其中,TensorFlow Lite最受欢迎且拥有最多的社区支持。使用 TensorFlow Lite Micro,我们可以在微控制器上部署模型。
学习资源:由于TinyML是一个新兴领域,目前的学习资料并不多。但也有一些优秀的材料,例如 Pete Warden 和 Daniel Situnayake 的书“TinyML:在 Arduino 和超低功耗上使用 TensorFlow Lite 进行机器学习”、哈佛大学 Vijay Janapa Reddi 的 TinyML 课程以及 Digikey 关于 TinyML 的博客和视频。
这本书所有的项目是依赖于 TensorFlow Lite 在微控制器上的开发框架,所依赖的硬件环境,只有几十 kb 左右的存储空间。
项目
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/lite/micro
原文链接:https://bl

相关文章:

MCU嵌入式AI开发笔记-视频笔记同步更新

MCU嵌入式AI开发笔记 抖音B站等站点笔记视频同步更新 01嵌入式AI大的方向 STM32跑神经网络 http://news.eeworld.com.cn/mp/EEWorld/a134877.jspx 为什么可以在STM32上面跑神经网络?简而言之就是使用STM32CubeMX中的X-Cube-AI扩展包将当前比较热门的AI框架进行C代码的转化,…...

DoIP——step2:车辆发现

文章目录 前言一、IP地址配置1.1 AutoIP1.2 DHCP1.3 DoIP实体的IP地址配置流程二、车辆发现车辆声明报文内容如下:前言 完成诊断设备到车辆的物理连接并通过激活线使能诊断连接后边缘节点将会将连接状态传递至应用层,在开始车辆发现过程之前,需要先进行各自的IP地址配置,获…...

【动态规划】0-1背包问题

【动态规划】0-1背包问题 题目:现在有四个物品,背包总容量为8,背包最多能装入价值为多少的物品? 我的图解 表格a【i】【j】表示的是容量为j的背包装入前i个物品的最大价值。 拿a【1】【1】来说,它的值就是背包容量为1,只考虑…...

WordPress 高级缓存插件 W3 Total Cache Pro 详细配置教程

说起来有关 WordPress 缓存插件明月已经发表过不少文章了,但有关 W3 Total Cache Pro 这个 WordPress 高级缓存插件除了早期【网站缓存插件 W3 Total Cache,适合自己的才是最好的!】一文后就很少再提及了,最近因为明月另一个网站【玉满斋】因为某些性能上的需要准备更换缓存…...

每日一题——Python实现PAT乙级1012 数字分类(举一反三+思想解读+逐步优化)五千字好文

一个认为一切根源都是“自己不够强”的INTJ 个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 我的写法 代码优点 代码缺点 时间复杂度 空间复杂度 代码改进建议 我要更强 哲…...

Unity2D游戏制作入门 | 13 ( 之人物三段攻击 )

上期链接:Unity2D游戏制作入门 | 12(之人物受伤和死亡的逻辑动画)-CSDN博客 上期我们聊了人物的受伤和死亡的逻辑和动画,我们主要学习了事件的执行,即我们在人物受伤时可能会触发很多的事件,比如触发人物受伤的动画以及播放音乐等…...

DAY04 HTMLCSS

文章目录 一 表单(1) 数字控件(2) 颜色控件(3) 日期控件(4) 月份控件(5) 星期控件(6) 搜索控件(7) 范围控件 二 浮动框架三 结构化标签四 CSS1 CSS概述2 CSS的编写位置1. inline style 行内样式2. inner style 内部样式3. outer style 外部样式4. 小结 3 CSS选择器1. 通用选择器…...

Linux_理解程序地址空间和页表

目录 1、进程地址空间示意图 2、验证进程地址空间的结构 3、验证进程地址空间是虚拟地址 4、页表-虚拟地址与物理地址 5、什么是进程地址空间 6、进程地址空间和页表的存在意义 6.1 原因一(效率性) 6.2 原因二(安全性) …...

NAND闪存市场彻底复苏

在全球内存市场逐渐走出阴霾、迎来复苏曙光之际,日本存储巨头铠侠(Kioxia)凭借敏锐的市场洞察力和及时的战略调整,成功实现了从生产紧缩到全面复苏的华丽转身。这一转变不仅彰显了企业在逆境中的生存智慧,也为全球半导…...

过拟合与正则化

Location Beijing 过拟合 对于一个模型 A A A,解向量空间为 θ \theta θ,误差函数用式1表示 J ( θ ) J a c c [ y θ ( x ) − y ] 2 (1) J(\theta)J_{acc}[y_\theta(x)-y]^2\tag{1} J(θ)Jacc​[yθ​(x)−y]2(1) 首先我们考虑用模型 A A A拟合下…...

VMware挂载NAS存储异常处理

问题概述 由于非法关机或恢复,NFS存储可能会出现以下问题: 数据存储处于挂起状态或无法正常识别。虚拟机的配置文件或虚拟磁盘仍然注册在异常数据存储上。系统误认为有虚拟机在使用该数据存储。 问题对策 下面是详细的排查步骤和解决对策&#xff1a…...

Redis 7.x 系列【4】命令手册

有道无术,术尚可求,有术无道,止于术。 本系列Redis 版本 7.2.5 源码地址:https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 说明2. 命令手册2.1 Generic2.2 数据类型2.2.1 String2.2.2 Hash2.2.3 List2.2.4 S…...

走进Elasticsearch

什么是ES 是一个分布式、RESTful风格的搜索和数据分析引擎 中文参考文档: 《Elasticsearch中文文档》 | Elasticsearch 技术论坛 elasticSearch官网: Functions and Operators | Elasticsearch Guide [7.11] | Elastic查询方式 Kibana查询(原…...

QT TCP服务器和客户端示例程序

下面是一个简单的 Qt TCP 服务器和客户端示例&#xff0c;演示了如何使用 vSetDriver、vSetListener 和 vTcpServerStart 函数。假设 vSetDriver 和 vSetListener 是你定义的自定义函数。 TCP 服务器部分 tcpserver.h #ifndef TCPSERVER_H #define TCPSERVER_H#include <QT…...

Xlua三方库Android编译出错解决办法

Xlua三方库Android编译出错解决办法 最近听老师的热更教程&#xff0c;讲到xlua编译android平台会报错&#xff0c;也是看了老师的博客&#xff0c;按照方法去解决&#xff0c;然而问题并没有解决。应该是因为代码更新或者版本不一样&#xff0c;在此简单记录一下解决过程。 参…...

美国犹他州立大学《Nature Geoscience》(IF=18)!揭示草本植物对土壤有机碳的重要贡献!

随着全球变暖的影响越来越显著&#xff0c;碳固定成为了一个备受关注的话题。在这个背景下&#xff0c;热带草原被认为是一个潜在的碳固定区域。然而&#xff0c;目前的研究主要关注于在热带草原中种植树木&#xff0c;以期望增加土壤有机碳含量。但是&#xff0c;热带草原中的…...

高考专业抉择计算机专业热度不减,兴趣、实力与挑战并存。

作为一名即将步入大学校门的高考生&#xff0c;我对于计算机相关专业是否仍是热门选择感到困惑。在过去几年里&#xff0c;计算机科学与技术、人工智能、网络安全、软件工程等专业一直备受追捧&#xff0c;吸引了无数学生。然而&#xff0c;随着市场竞争加剧和市场饱和度提高&a…...

Flask-RQ

Flask-RQ库教程 Flask-RQ 是一个用于在 Flask 应用中集成 RQ&#xff08;Redis Queue&#xff09;的扩展。RQ 是一个简单的 Python 库&#xff0c;用于将任务排入 Redis 队列并异步执行这些任务。这对于处理长时间运行的任务&#xff08;如发送电子邮件、生成报告等&#xff0…...

LeetCode 58. 最后一个单词的长度

LeetCode 58. 最后一个单词的长度 你一个字符串 s&#xff0c;由若干单词组成&#xff0c;单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串 示例 1&#xff1a; 输入&#xff1a;s “Hello World”…...

3阶段提交协议(3pc)

3阶段提交协议&#xff08;3pc&#xff09; 1 简介 三阶段提交协议是一个强一致、中心化的原子提交协议。解决了分布式事务、副本容错等分布式问题。其核心思想是将2PC的二阶段提交协议的“准备阶段”一分为二&#xff0c;形成了由CanCommit、PreCommit、DoCommit三个阶段组成…...

OpenClaw时间管理:QwQ-32B驱动的智能日历优化

OpenClaw时间管理&#xff1a;QwQ-32B驱动的智能日历优化 1. 为什么需要AI助手管理日历&#xff1f; 去年我发现自己陷入了典型的"日历困境"&#xff1a;每天要处理十几个会议邀约&#xff0c;手动协调时区差异&#xff0c;还要在碎片时间里塞进健身和学习计划。最…...

OFA-Image-Caption模型服务监控与告警体系搭建

OFA-Image-Caption模型服务监控与告警体系搭建 你辛辛苦苦把那个能看懂图片并生成描述的OFA模型部署上线了&#xff0c;业务方用得很开心&#xff0c;每天处理着成千上万的图片。但某天深夜&#xff0c;你突然被电话吵醒&#xff1a;“服务挂了&#xff01;所有图片都卡住了&a…...

DAMOYOLO-S在复杂遮挡下的实例分割效果展示:精准勾勒物体轮廓

DAMOYOLO-S在复杂遮挡下的实例分割效果展示&#xff1a;精准勾勒物体轮廓 最近在测试各种目标检测和分割模型时&#xff0c;我遇到了一个挺头疼的问题&#xff1a;当画面里的物体挤在一起、相互遮挡&#xff0c;或者只露出一小部分时&#xff0c;很多模型就“犯迷糊”了。检测…...

【PostgreSQL】生态工具箱:从核心插件到企业级扩展的实战指南

1. PostgreSQL生态工具箱全景图 第一次接触PostgreSQL时&#xff0c;很多人会惊讶于它丰富的扩展生态。就像一位老木匠的工具箱&#xff0c;PostgreSQL提供了从螺丝刀到电锯的全套工具。我在实际项目中最深刻的体会是&#xff1a;选对工具比盲目编码更重要。比如曾经有个项目需…...

拆解RoboteX AVATAR机器人:4个电机如何驱动履带+摇臂?一份紧凑传动布局的保姆级图解

RoboteX AVATAR机器人传动系统深度解析&#xff1a;四电机协同驱动履带与摇臂的机械艺术 当第一次看到RoboteX AVATAR Tactical Robot在复杂地形中自如穿梭的视频时&#xff0c;很难不被它那看似简单却异常高效的移动方式所吸引。这款战术机器人的核心秘密&#xff0c;就藏在它…...

用华为ENSP模拟器复现智慧小区网络:从VLAN划分到三层架构的保姆级配置教程

华为ENSP模拟器实战&#xff1a;智慧小区网络从零搭建全流程指南 当你第一次拿到智慧小区网络设计方案时&#xff0c;那些抽象的拓扑图和配置参数是否让你望而生畏&#xff1f;作为网络工程师成长路上的必经之路&#xff0c;企业级网络搭建从来不是纸上谈兵的游戏。本文将带你用…...

Keil工程管理效率翻倍:Python脚本实现构建结果自动归档与HTML报告生成

Keil工程管理效率翻倍&#xff1a;Python脚本实现构建结果自动归档与HTML报告生成 在嵌入式开发领域&#xff0c;Keil作为主流开发工具链的核心组件&#xff0c;其工程管理效率直接影响着团队协作和产品迭代速度。传统开发流程中&#xff0c;工程师往往需要手动收集每次构建生成…...

大脑极简原理:比冯·诺依曼架构还简单的电磁路由网络 ——为什么意识和智能会从“对称判断”里自然涌现

前言&#xff1a;被复杂化的真相——大脑其实简单到爆我们从小被灌输一个观念&#xff1a;大脑是宇宙中最复杂的系统&#xff0c;860亿神经元、百万亿突触、无数神经递质&#xff0c;像一台精密到无法拆解的超级计算机。神经科学论文越写越长&#xff0c;模型越来越复杂&#x…...

AIVideo效果展示:输入主题输出专业视频,惊艳案例分享

AIVideo效果展示&#xff1a;输入主题输出专业视频&#xff0c;惊艳案例分享 1. 专业级视频生成效果概览 AIVideo一站式AI长视频工具能够将简单的文字主题转化为完整的专业视频作品。只需输入一个主题&#xff0c;系统就会自动完成从文案创作、分镜设计、画面生成到配音剪辑的…...

Janus-Pro-7B实操手册:批量图片理解任务脚本编写与结果结构化导出

Janus-Pro-7B实操手册&#xff1a;批量图片理解任务脚本编写与结果结构化导出 1. 项目背景与需求场景 在日常工作中&#xff0c;我们经常需要处理大量的图片理解任务。比如电商平台需要分析商品图片中的信息&#xff0c;内容审核团队需要识别图片中的违规内容&#xff0c;或者…...