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

模型案例:| 篮球识别模型

导读

2023年以ChatGPT为代表的大语言模型横空出世,它的出现标志着自然语言处理领域取得了重大突破。它在文本生成、对话系统和语言理解等方面展现出了强大的能力,为人工智能技术的发展开辟了新的可能性。同时,人工智能技术正在进入各种应用领域,在智慧城市、智能制造、智慧医疗、智慧农业等领域发挥着重要作用。

柴火创客2024年将依托母公司Seeed矽递科技在人工智能领域的创新硬件,与全球创客爱好者共建“模型仓”,通过“SenseCraft AI”平台可以让使用者快速部署应用体验人工智能技术!

本期介绍:模型案例:| 篮球识别模型

Apache MXNet

MXNet 是开源深度学习框架,允许用户在多种设备(无论是云基础设施还是移动设备)上定义、训练和部署深度神经网络。该框架具备高度可扩展性,可以进行快速的模型训练,并支持灵活的编程模型和多种语言。

利用 MXNet 可以混合符号和命令式编程,以更大限度提升效率和生产力。该框架的核心是动态依赖性调度程序,可自动即时并行处理符号式操作和命令式操作 图形优化层使符号执行速度更快、内存效率更高。

MXNet 库可移植并且规模小巧。它采用 NVIDIA Pascal™ GPU 加速,可以跨多个 GPU 和多个节点进行扩展,从而更快地训练模型。

MXNet 的工作原理

MXNet(或“mix-net”)由多学术机构联合创建,并在 Apache Software Foundation 培养而成,旨在混合不同编程方法的优势,以进行深度学习模型开发。

ONNX 目前支持 Caffe2、PyTorch、Microsoft Cognitive Toolkit、Apache MXNet 等工具。

命令式编程模式:MXNet 的 NDArray 包含命令式编程,是 MXNet 存储和转换数据的主要工具。NDArray 用于将模型的输入和输出表示为多维阵列并对其进行操作。NDArray 类似于 NumPy 的 ndarray,但它们可以在 GPU 上运行,以加速计算。

命令式编程的优势在于,有程序编程背景的开发者对其很熟悉,所以参数更新和交互式调试更自然。

符号式编程模式:神经网络通过对输入参数应用多层嵌套函数来转换输入数据。每一层由一个线性函数和一个非线性变换组成。深度学习的目标是通过计算相对于损失指标的偏导数(梯度),优化这些参数(包括权重和偏差)。在前向传播中,神经网络接受输入参数,并向下一层的节点输出置信度分数,直至到达输出层,在该层计算分数误差。在一个称为梯度下降的过程中,通过反向传播,错误会再次通过网络发送回来,并调整权重,从而改进模型。

图形是由已连接节点(称为顶点)和边缘组成的数据结构。每个现代深度学习框架都基于图形的概念,其中神经网络表示为计算的图形结构。

MXNet 符号式编程允许通过计算图形抽象地定义函数。借助符号式编程,复杂函数首先采用占位符值表示。然后,可以通过将这些函数绑定到实际值来执行这些函数。符号式编程还提供预定义的神经网络层,允许以更少的重复性工作和更好的性能简单表示大型模型。

MXNet 的重要意义

数据科学家:机器学习是数据科学领域的重要组成部分。对于不熟悉深度学习模型开发重点的人,MXNet 是一个很好的起点。其广泛的语言支持、Gluon API 和灵活性非常适合开发自己的深度学习技能组合的组织。Amazon 的支持可确保 MXNet 能够长期使用,且第三方生态系统将继续发展。许多专家建议将 MXNet 作为未来深入学习更复杂框架的良好起点。

机器学习研究人员:研究人员经常使用 MXNet 快速进行原型设计,从而更轻松地将研究想法转换为模型并评估结果。它还支持命令式编程,为研究人员提供了更多的计算控制。由于 CPU 和 GPU 的利用率高,与其他框架相比,此特定框架在某些类型的模型上也表现出显著的性能。

软件开发者:灵活性是软件工程中很有价值的东西,而 MXNet 是深度学习框架中最灵活的一种。除了其广泛的语言支持之外,它还可以处理各种数据格式(包括 Amazon S3 云存储),并且可以放大或缩小以适合大多数平台。2019 年,MXNet 增加了对优步开发的分布式学习框架 Horovod 的支持。这为软件工程师在指定部署环境(可能包括从笔记本电脑到云服务器等各种环境)方面提供了更大的灵活性。

篮球识别模型

该 AI 模型由 Yolo-Word 算法生成,专为 Seeed Studio Grove Vision AI (V2) 设备设计,能够高效识别和检测蓝球。

应用场景

比赛分析:通过实时分析比赛视频,识别球员的位置、动作和战术,有助于教练和团队进行战术调整和改进。

训练指导:利用识别模型分析球员的投篮、传球等技战术动作,提供个性化的训练反馈和建议,帮助球员提高技能。

裁判辅助:在比赛中实时监测球员的行为,辅助裁判做出更准确的判罚决策,例如识别犯规、出界等情况。

观众体验:通过识别技术为观众提供增强现实(AR)体验,如在屏幕上实时显示球员统计数据、球场位置等信息,提升观赛体验。

社交媒体和内容生成:对比赛视频进行自动剪辑和标签化,将精彩瞬间分享至社交媒体,吸引更多观众参与和互动。

在Grove - Vision AI V2模块上部署此模型

1、打开SenseCraft AI平台,如果第一次使用请先注册一个会员账号,还可以设置语言为中文。平台地址:https://sensecraft.seeed.cc/ai/#/model

2、在公共AI模型第1列表中找到【篮球检测】模型,单击此模型图片,如下图所示。

3、进入【篮球检测】模型介绍页面,单击“部署模型”按钮,如下图所示。

  1. 进入部署“篮球检测”模型页面,按提示步骤先连接摄像头,再连接设备到电脑USB接口上,最后单击【连接设备】按钮,如下图所示。

5、弹出部署模型窗口,单击“确定”按钮,如下图所示。

6、弹出连接到串行端口窗口,选择端口号后单击“连接”按钮,如下图所示。

7、开始进行模型部署、固件下载、设备重启等过程,完后在预览中即可看到当前摄像头视频内容,在“设置”中调整置信率数值可以提供识别率,将摄像头对准篮球比赛相关的图片查看预测效果,如下图所示。

模型推理演示

篮球识别模型

原型设计

安徽理工大学的董鹏同学,利用篮球模型设计了篮球寻找与计数装置,可以实时监测到篮球,也可以进行预警或报警防止篮球丢失,还能进行篮球计数操作。下面观看颜色视频:

董鹏-篮球寻找与计数装置

嵌入式神经网络处理器(NPU)

嵌入式神经网络处理器(NPU)是一种特别设计用于执行神经网络计算的高效率处理器。它主要基于数据驱动并行计算架构,特别擅长处理视频、图像等大量的多媒体数据。NPU模仿了生物神经网络的架构,与CPU、GPU相比,它能够通过更少的指令(一条或几条)完成神经元的处理,因此在深度学习的处理效率方面具有明显优势。

Grove Al视觉模块 V2套装介绍

Grove Al视觉模块 V2

OV5647-62摄像头

Grove - Vision Al Module V2是一款拇指大小的人工智能视觉模块, 配备Himax WiseEye2 HX6538处理器和Arm Ethos-U55嵌入式神经网络加速单元(NPU), 该处理器采用 ArmCortex-M55双核架构。

它具有标准的CSI接口, 并与树莓派相机兼容。它有一个内置的数字麦克风和SD卡插槽。它非常适用于各种嵌入式视觉项目。

有了SenseCraft Al算法平台, 经过训练的ML模型可以部署到传感器, 而不需要编码。它兼容XIAO系列和Arduino生态系统, 是各种物体检测应用的理想选择。

主要硬件配置

- 板卡基于WiseEye2 HX6538处理器, 采用双核ARM Cortex-M55架构

- 配备集成Arm Ethos-U55嵌入式神经网络加速单元(NPU), 兼容的树莓派相机

- 板载PDM麦克风, SD卡插槽, Type-C, Grove接口, 丰富的外设支持样机开发

- Seeed Studio XIAO的可扩展性, SenseCraft Al的现成AI模型用于无代码部署。

- 支持各种有效的模型, 包括MobilenetV1、MobilenetV2、 Eficientnet-Lite、Yolov5和Yolov8.

写在最后

SenseCraft-AI平台的模型仓数量还很少,但是好消息是它支持自定义模型上传并输出推理结果,平台会逐渐增加模型仓的数量,敬请关注!


http://www.mrgr.cn/news/31110.html

相关文章:

  • java:继承题练习
  • 《Redis集群高可用环境构建与优化》
  • FreeSWITCH的介绍及应用
  • 基于Spring Boot与Redis的令牌主动失效机制实现
  • Java面向对象编程进阶之包装类
  • 在 .NET 6.0 中创建用于 CRUD 操作的 Web API
  • Python学习——【3.1】函数
  • 超详细!百分百安装成功pytorch,建议收藏
  • 【Node.js Vue】还在为选什么乐器发愁?乐器推荐系统帮你解决难题,基于用户行为分析的智能推荐,让你不再为音乐器材烦恼
  • 监控易监测对象及指标之:全面监控GBase数据库
  • NAT和代理服务
  • 基于google.protobuf的python接口解析proto
  • 2024 中秋盛景:数据璀璨,文旅辉煌
  • 【前端】--- ES6上篇(带你深入了解ES6语法)
  • Web+Mysql——MyBatis
  • HarmonyOS鸿蒙开发实战(5.0)网格元素拖动交换案例实践
  • 在 PyCharm 中配置 Anaconda 环境
  • 江科大51单片机
  • VD2811A SOP-8封装 可直接替代XB8886G芯片 大电流充放电锂保芯片
  • 怎样的数据治理状态才能被视为是良性发展的呢?
  • JVM原理-类加载过程
  • c++类和对象(6个默认成员函数)第二级中阶
  • MySQL的缓存策略
  • ssh 免密登陆服务器故障
  • 字符(串)函数
  • 分享三款简单好用的文档翻译软件