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

嵌入式机器学习平台Edge Impulse图像分类 – 快速入门

陈拓 2025/05/08-2025/05/11

1. 简介

  • 官方网址

https://edgeimpulse.com/

适用于任何边缘设备的人工智能:

Gateways - 网关

Sensors & Cameras - 传感器和摄像头

Docker Containers - Docker容器

MCUs, NPUs, CPUs, GPUs

构建数据集、训练模型并优化库以直接在设备上运行;从最小的微控制器到具有最新神经加速器的网关(以及介于两者之间的任何东西)。

构建 – 训练 – 优化 – 部署

2. 申请Edge Impulse上的一个免费帐户

3. 准备工作

为方便阅读,有的页面翻译成了中文,必要时附上英文页面对比。

3.1 登录账户

3.2 创建项目

  • 点击Create new project

点击 – 创建新项目

下拉找到 – 危险区域

 

3.3 启动入门教程

是的,清除我的项目

3.4 进入欢迎界面

欢迎界面在你第一次登录时也能看到。

选择 - 图像分类,构建我的第一个模型

4. 图像分类体验

4.1 第1步:确定模型应该分类的内容

选择两类物体,比如铅笔和电池。

4.2 第2步:使用手机收集图像

机器翻译将Impulse译为冲动。翻译为“流程”比较贴切,因为Impulse在这里表示端到端的处理流程 (数据输入 → 处理 → 模型输出)。

关于“使用手机收集图像数据”的文档见:

https://docs.edgeimpulse.com/docs/tutorials/data/data-ingestion/image-classification-mobile-phone

用手机上带二维码扫描的浏览器(我用小米浏览器)收集图像数据。

将手机连接到项目后,就可以开始拍摄图像并构建数据集了。通过手机的用户界面,可以快速收集图像。

收集的图像数据:

数据集:

4.3 第3步:设计你的冲动(Impulse)

鼠标点击主页面,进入Impulse参数配置页面,我们保持默认值。

点击右下角的简历教程按钮回到Impulse流程:

4.4 第4步:数字信号处理

DSP处理结果:

4.5 第5步:生成特征

生成特征,将原始图像数据转换为机器学习模型可理解的数值特征 。

等待成功:

查看特征:

4.6 第6步:训练神经网络

等待训练完成。

查看神经网络设置和模型训练结果:

4.7 第7步:测试模型

用手机扫二维码:

首先要在手机上构建项目,将模型部署到你的手机上,这个过程要几分钟的时间,接下来就可以测试了。

4.8 第8步:查看摘要

5. 模型改进和实验

如果有需要可以对模型进行改进和再实验。

6. 将模型部署到其他设备上

开发好的模型可以部署到很多其他设备上。

 

  • 默认部署

点击 – 部署,打开部署页面,显示默认部署 – 浏览器

用手机浏览器扫描二维码可以再次测试刚才模型。

  • 部署到其他设备

点击 - 搜索部署选项

选择你需要部署的目标设备、库以及其他选项。

比如,选择乐鑫的ESP32-EYE开发板:

进行部署配置和构建

有关在ESP32开发板上部署Impulses的细节,可以看Edge Impulse的官方文档:

“On your Espressif ESP-EYE (ESP32) development board”

https://docs.edgeimpulse.com/docs/run-inference/cpp-library/running-your-impulse-esp32

相关文章:

嵌入式机器学习平台Edge Impulse图像分类 – 快速入门

陈拓 2025/05/08-2025/05/11 1. 简介 官方网址 https://edgeimpulse.com/ 适用于任何边缘设备的人工智能: Gateways - 网关 Sensors & Cameras - 传感器和摄像头 Docker Containers - Docker容器 MCUs, NPUs, CPUs, GPUs 构建数据集、训练模型并优化库以…...

web 自动化之 yaml 数据/日志/截图

文章目录 一、yaml 数据获取二、日志获取三、截图 一、yaml 数据获取 需要安装 PyYAML 库 import yaml import os from TestPOM.common import dir_config as Dir import jsonpathclass Data:def __init__(self,keyNone,file_name"test_datas.yaml"):file_path os…...

ARMV8 RK3399 u-boot TPL启动流程分析 --start.S

上电后运行的第一支文件&#xff1a;arch/arm/cpu/armv8/start.S CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK1 #include <asm/arch/boot0.h> 跳转到 arch/arm/include/asm/arch-rockchip/boot0.h CONFIG_SPL_BUILD1 b 1f ROCKCHIP_EARLYRETURN_TO_BROMno TINY_FRAMEWORKno …...

zst-2001 上午题-历年真题 计算机网络(16个内容)

网络设备 计算机网络 - 第1题 ac 计算机网络 - 第2题 d 计算机网络 - 第3题 集线器不能隔离广播域和冲突域&#xff0c;所以集线器就1个广播域和冲突域 交换机就是那么的炫&#xff0c;可以隔离冲突域&#xff0c;有4给冲突域&#xff0c;但不能隔离广播域&#xf…...

使用termius连接腾讯云服务器

使用termius连接腾讯云服务器 1.下载termius termius官网 安装配置教程 这里安装的window版本> 默认安装到C盘&#xff0c;不建议修改路径 可以选择谷歌登录&#xff0c;也可以不登录&#xff0c;软件是免费的&#xff0c;试用的是付费版本&#xff0c;不需要点 2.配置 这里…...

redis 命令大全整理

http://doc.redisfans.com/ 原网址 Redis 命令分类 Key(键) Key(键)命令 exists/del/keys/type/scanobject/move/dump/migratettl/pttl/persist/expireat/pexpireat/expire/pexpirerename/renamenxsort/randomkey/restoreexists 语法:exists key [key ...] 检查一个或多…...

实景三维建模软件应用场景(众趣科技实景三维建模)

实景三维建模软件应用场景概述 实景三维建模软件&#xff0c;作为数字化时代的重要工具&#xff0c;不仅能够真实、立体、时序化地反映和表达物理世界&#xff0c;还为国家的基础设施建设和数字化发展提供了有力的支撑。 在测绘与地理信息领域&#xff0c;实景三维建模软件是构…...

Mac M系列 安装 jadx-gui

安装 Homebrew在终端中执行以下命令&#xff08;需管理员密码&#xff09;&#xff1a; 安装 Homebrew&#xff08;官方源&#xff09; /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"国内用户可用镜像源加速&…...

软考 系统架构设计师系列知识点之杂项集萃(56)

接前一篇文章&#xff1a;软考 系统架构设计师系列知识点之杂项集萃&#xff08;55&#xff09; 第91题 商业智能关注如何从业务数据中提取有用的信息&#xff0c;然后采用这些信息指导企业的业务开展。商业智能系统主要包括数据预处理、建立&#xff08;&#xff09;、数据分…...

Ubuntu20.04 搭建Kubernetes 1.28版本集群

环境依赖 以下操作,无特殊说明,所有节点都需要执行 安装 ssh 服务安装 openssh-server复制代码 sudo apt-get install openssh-server修改配置文件复制代码 vim /etc/ssh/sshd_config找到配置项 复制代码 LoginGraceTime 120 PermitRootLogin prohibit-password StrictModes…...

【Linux】基础指令(Ⅱ)

目录 1. mv指令 2. cat指令 3.echo指令 补&#xff1a;输出重定向 4. more指令 5. less指令 6. head指令和tail指令 7.date指令 时间戳&#xff1a; 8. cal指令 9. alias指令 10.grep指令 1. mv指令 语法&#xff1a;mv [选项]... 源文件/目录 目标文件/目录 …...

RAG之大规模解析 PDF 文档全流程实战

PDF 文档在商业、学术和政府领域无处不在,蕴含着大量宝贵信息。然而,从 PDF 中提取结构化数据却面临着独特的挑战,尤其是在处理数千甚至数百万个文档时。本指南探讨了大规模解析 PDF 的策略和工具。 PDF解析挑战 PDF 的设计初衷是为了提供一致的视觉呈现,而非数据提取。这…...

vue-ganttastic甘特图label标签横向滚动固定方法

这个甘特图之前插件里&#xff0c;没有找到能固定label标签在屏幕上的办法&#xff0c;用css各种办法都没有实现&#xff0c;所以我我直接手写定位&#xff0c;用js监听滚动条滚动的距离&#xff0c;然后同步移动甘特图label标签&#xff0c;造成一种定位的错觉&#xff0c;以下…...

AcroForm JavaScript Promise 对象应用示例: 异步加载PDF文件

这段代码演示了在Adobe Acrobat DC Pro 的 JavaScript 环境中如何使用 Promise 对象处理异步操作。具体功能是&#xff1a; 定义了一个loadFile函数&#xff0c;模拟异步加载PDF文件的操作使用Promise对象封装异步操作&#xff0c;提供成功(resolve)和失败(reject)两种状态通过…...

MySQL 8.0 OCP 1Z0-908 题目解析(2)

题目005 Choose two. Which two actions can obtain information about deadlocks? □ A) Run the SHOW ENGINE INNODB MUTEX command from the mysql client. □ B) Enable the innodb_status_output_locks global parameter. □ C) Enable the innodb_print_all_deadlock…...

【ios越狱包安装失败?uniapp导出ipa文件如何安装到苹果手机】苹果IOS直接安装IPA文件

问题场景&#xff1a; 提示&#xff1a;ipa是用于苹果设备安装的软件包资源 设备&#xff1a;iphone 13(未越狱) 安装包类型&#xff1a;ipa包 调试工具&#xff1a;hbuilderx 问题描述 提要&#xff1a;ios包无法安装 uniapp导出ios包无法安装 相信有小伙伴跟我一样&…...

【嵌入模型与向量数据库】

目录 一、什么是向量&#xff1f; 二、为什么需要向量数据库&#xff1f; 三、向量数据库的特点 四、常见的向量数据库产品 FAISS 支持的索引类型 vs 相似度 五、常见向量相似度方法对比 六、应该用哪种 七、向量数据库的核心逻辑 &#x1f50d; 示例任务&#xff1a;…...

【东枫科技】使用LabVIEW进行NVIDIA CUDA GPU 开发

文章目录 工具包 CuLab - LabVIEW 的 GPU 工具包特性和功能功能亮点类似 LabVIEW 的 GPU 代码开发支持的功能数值类型和维数开发系统要求授权售价 工具包 CuLab - LabVIEW 的 GPU 工具包 CuLab 是一款非常直观易用的 LabVIEW 工具包&#xff0c;旨在加速 Nvidia GPU 上的计算密…...

基于策略的强化学习方法之策略梯度(Policy Gradient)详解

在前文中&#xff0c;我们已经深入探讨了Q-Learning、SARSA、DQN这三种基于值函数的强化学习方法。这些方法通过学习状态值函数或动作值函数来做出决策&#xff0c;从而实现智能体与环境的交互。 策略梯度是一种强化学习算法&#xff0c;它直接对策略进行建模和优化&#xff0c…...

1.Redis-key的基本命令

&#xff08;一&#xff09;Redis的基本类型 String&#xff0c;List&#xff0c;Set&#xff0c;Hash&#xff0c;Zset 三种特殊类型&#xff1a;geospatial&#xff08;地理空间数据&#xff09;、hyperloglog[基数估算&#xff08;去重计数&#xff09;]、bitmaps(位图&…...

JavaScript 中级进阶技巧之map函数

作为一名初级 JavaScript 开发者&#xff0c;你可能已经熟悉了基础语法、变量和简单的循环。但要从初级迈向中级&#xff0c;掌握一些高效、优雅的编码技巧是关键。其中&#xff0c;map 函数是中级开发者常用的工具&#xff0c;它不仅能简化代码&#xff0c;还能提升代码的可读…...

PROFIBUS DP转ModbusTCP网关模块于污水处理系统的成功应用案例解读​

在当今的工业生产领域&#xff0c;众多企业在生产过程中会产生大量工业废水。若这些废水未经处理直接排放&#xff0c;将会引发严重的工业污染问题。因此&#xff0c;借助科技手段对污水进行有效处理显得尤为重要。在一个污水处理系统中&#xff0c;往往包含来自不同厂家、不同…...

Java实现桶排序算法

1. 桶排序原理图解 桶排序是一种基于分桶思想的非比较排序算法&#xff0c;适用于数据分布较为均匀的场景。其核心思想是将数据分散到有限数量的“桶”中&#xff0c;每个桶再分别进行排序&#xff08;通常使用插入排序或其他简单的排序算法&#xff09;。以下是桶排序的步骤&a…...

《Effective Python》第2章 字符串和切片操作——深入理解 Python 中 __repr__ 与 __str__

引言 本文基于学习《Effective Python》第三版 Chapter 2: Strings and Slicing 中的 Item 12: Understand the Difference Between repr and str When Printing Objects 后的总结与延伸。在 Python 中&#xff0c;__repr__ 和 __str__ 是两个与对象打印密切相关的魔术方法&am…...

电脑开机提示按f1原因分析及解决方法(6种解决方法)

经常有网友问到一个问题,我电脑开机后提示按f1怎么解决?不管理是台式电脑,还是笔记本,都有可能会遇到开机需要按F1,才能进入系统的问题,引起这个问题的原因比较多,今天小编在这里给大家列举了比较常见的几种电脑开机提示按f1的解决方法。 电脑开机提示按f1原因分析及解决…...

复现:DemoGen 用于数据高效视觉运动策略学习的 合成演示生成 (RSS) 2025

https://github.com/TEA-Lab/DemoGen?tabreadme-ov-file 复现步骤很简单&#xff0c;按照readme配置好conda环境即可运行。 运行&#xff1a; cd demo_generation bash run_gen_demo.sh 等待生成&#xff1a; 查看data文件夹...

Nginx核心功能及同类产品对比

Nginx 作为一款高性能的 Web 服务器和反向代理工具&#xff0c;凭借其独特的架构设计和丰富的功能&#xff0c;成为互联网基础设施中不可或缺的组件。以下是其核心功能及与同类产品&#xff08;如 HAProxy、LVS&#xff09;的对比优势&#xff1a; 一、Nginx 核心功能 高性能架…...

本地部署firecrawl的两种方式,自托管和源码部署

网上资料很多 AI爬虫黑科技 firecrawl本地部署-CSDN博客 源码部署 前提条件本地安装py&#xff0c;node.js环境,嫌弃麻烦直接使用第二种 使用git或下载压缩包 git clone https://github.com/mendableai/firecrawl.git 设置环境参数 cd /firecrawl/apps/api 复制环境参数 …...

2023年12月中国电子学会青少年软件编程(Python)等级考试试卷(六级)答案 + 解析

青少年软件编程&#xff08;Python&#xff09;等级考试试卷&#xff08;六级&#xff09; 分数&#xff1a;100 题数&#xff1a;38 一、单选题(共25题&#xff0c;共50分) 1. 运行以下程序&#xff0c;输出的结果是&#xff1f;&#xff08; &#xff09; class A(): …...

spark:map 和 flatMap 的区别(Scala)

场景设定 假设有一个包含句子的 RDD&#xff1a; scala val rdd sc.parallelize(List("Hello World", "Hi Spark")) 目标是&#xff1a;将每个句子拆分成单词。 1. 用 map 的效果 代码示例 scala val resultMap rdd.map(sentence > sentence…...