开发者实战|基于LabVIEW和YOLOv8-Pose的跳绳计数装置

‍‍🏡博客主页: virobotics(仪酷智能):LabVIEW深度学习、人工智能博主
🎄所属专栏:『LabVIEW深度学习实战』
📑推荐文章:『LabVIEW人工智能深度学习指南』
🍻本文由virobotics(仪酷智能)原创

🥳欢迎大家关注✌点赞👍收藏⭐留言📝订阅专栏


大家好,这里是 仪酷智能 VIRobotics

本文为李筱语投稿内容,以下是投稿内容。

跳绳是一项广受欢迎的运动项目,因其简单易行而备受学生和运动爱好者青睐。然而,在实际运动中,人工计数容易出现误差,影响比赛和训练效果。本文提出了一种基于LabVIEW和YOLOv8-Pose的跳绳计数装置,利用深度学习的姿态检测能力和LabVIEW的实时处理功能,实现跳绳动作的精准识别与计数。本装置具有操作简单、检测精准、实时性强等优点,适用于学校、体育馆及家庭训练场景。

1. 引言

随着人工智能技术的发展,计算机视觉在体育领域的应用日益广泛。传统的跳绳计数方法主要依赖人工记录,存在效率低、误差大的问题。近年来,基于机器视觉的自动计数方法逐渐受到关注,其中人体姿态识别技术为跳绳计数提供了全新的解决方案。

2. 系统设计

2.1 硬件设计

本装置的硬件包括:

  • 摄像头:用于采集跳绳者的视频图像,支持USB接口的普通网络摄像头或工业相机。摄像头的采样速率建议高于30FPS(每秒30帧)。

在这里插入图片描述

  • AIPC:搭载GPU的台式机或笔记本电脑,用于运行YOLOv8-Pose模型。

在这里插入图片描述

2.2 软件模块

  • YOLOv8-Pose模型:基于深度学习的开源模型,能够精准识别人体关节点位置。模型通过训练,能够检测跳绳者的肢体动作。

在这里插入图片描述

  • LabVIEW:用于构建图形化界面和处理逻辑,包括摄像头采集、处理、计数及结果显示。

在这里插入图片描述
在这里插入图片描述

  • OpenVINO:用于加快的模型推理速度,支持Intel的CPU/GPU/NPU。在AIPC的Intel 11代1165G7芯片下,YOLOv8n-Pose的最大推理速度可达到60FPS。

2.3 软件设计

步骤1:模型和摄像头初始化
使用LabVIEW中的Opencv Camera模块,即可快速采集摄像头的图像,并将图像显示在前面板上。程序中,我们需要设置采集图像的宽度为640个像素,高度为480个像素。同时,我们初始化yolov8-pose模型,加载至OpenVINO推理引擎中。跳绳计数器归零,然后进入循环。
在这里插入图片描述

步骤2:实时采集与姿态识别
每次循环从摄像头获取图像帧,送入YOLOv8-Pose推理函数中,获得识别结果图像和第一人的所有关键点位置。

在这里插入图片描述

步骤3:跳绳计数逻辑判断
调用跳绳计数器算法,判断是否跳绳数加1。

3. 跳绳计数算法设计

3.1 YOLOv8-Pose模型输出解析

YOLOv8-Pose的输出分为两部分:

  • Box:每个人的外接矩形 [left, top, width, height](左边的像素点、上边的像素点、宽度,高度)
  • Keypoints:由17个关键点构成,17个点的定义如下图:
    在这里插入图片描述

3.2 跳绳过程中的坐标变化

以双脚跳为例,采集某同学整个跳绳过程中的keypoint-15(左脚踝)或者keypoint-16(右脚踝)的y轴数值。Y值越小表示跳得越高。波形图可以清晰地看出跳跃周期,停止跳跃时Y轴波动减小。
在这里插入图片描述
波形图中,左右两边部分表示了正常的跳跃时间段,中间有一部分y轴变化较小,说明学生暂停跳跃。

3.3 算法实现思路

1) 在正常跳跃时,当学生脚部处于一个周期的最低点(即曲线的极大值)时可认为跳了一个。
2) 但是,曲线在接近最高点时,由于AI产生的误差,曲线会有毛刺。因此需要判断当前新产生的最高点与上一次最高点的循环间隔,如果间隔太小,就可以忽略。
3) 当学生失误停止跳绳时,由于学生本身还在移动或测量误差导致的y值变化也应去除。只需判断当前值与历史数据中的最高点(y的最小值)的差,如果小于一个阈值就可忽略。

3.4 算法实现代码逻辑(LabVIEW)

  • 在LabVIEW中,我们取最近的10个点分析,其中最后5个点用来判断曲线的极大值,如果5个值中第2个(从0开始计数)为最大值的,且与10个数的最小值的差大于60(最高点与最低点的高度像素差),可将该点作为候选点。

在这里插入图片描述

  • 获取候选点所对应的时间,与它之前的一个候选点做比较。如果时间大于150毫秒(5帧,假设人类跳绳速度小于每分钟360个),则忽略,小于则计数器加1。

在这里插入图片描述

  • 将算法保存为子vi :跳绳计数判断.vi,放入主程序,最终程序如下图:

在这里插入图片描述

4. 实验

4.1 实验设置

在校内体育馆搭建实验场景,选取10名学生进行跳绳测试,包含单人跳和双人交替跳两种模式,采集多组视频数据。

4.2 测试结果

在这里插入图片描述

实验结果表明,该装置在双脚跳绳场景下的计数准确率达98.5%,在左右脚交替跳绳场景下准确率为95.3%。与人工计数相比,误差控制在±2次以内。
误差原因主要与相机位置有关,相机需要放在学生正前方2~3米左右,高度大约为学生身高的一半,且相机镜头水平向前。如果相机斜着,可能造成一定误差。

4.3 性能分析

  • 实时性:使用OpenVINO GPU加速,系统处理帧率可达60 FPS,满足实时计数需求。
  • 稳定性:即使在光照变化和背景复杂的情况下,模型依然能够有效识别关键动作。

5. 创新点与优势

  1. 将LabVIEW与YOLOv8-Pose结合,实现深度学习模型的实时调用与可视化界面交互。
  2. 提出了基于关键点运动轨迹的跳绳动作识别算法,有效降低误判率。
  3. 系统成本低、部署简单,适合中学生科创比赛和实际推广。

6. 结论与展望

本文设计了一种基于LabVIEW和YOLOv8-Pose的跳绳计数装置,成功解决了人工计数误差大的问题。未来可进一步优化算法,使用平均滤波算法提高人体位置(如脚踝位置的准确度)、并兼容双脚跳和单脚跳两种跳绳模式。同时探索硬件设备的小型化与便携化,使其适应更多应用场景。

参考文献

  1. Redmon J., Farhadi A. YOLOv8: Real-Time Object Detection and Pose Estimation. arXiv preprint.
  2. National Instruments. LabVIEW User Manual. NI.
  3. Cao Z., Simon T., Wei S. Pose Estimation in Sports Applications. IEEE Transactions.
  4. https://doc.virobotics.net/zh_cn/ai_toolkit_for_ov

🎯总结

以上就是今天要给大家分享的内容,希望对大家有用。如有笔误,还请各位及时指正。后续我们将为大家更新更多关于AI模型在LabVIEW的部署案例,欢迎大家关注博主。我是virobotics(仪酷智能),我们下篇文章见~

如您想要探讨更多关于LabVIEW与人工智能技术,欢迎加入我们的技术交流群:705637299。进群请备注:仪酷智能

更多内容可查看

如果文章对你有帮助,欢迎✌关注、👍点赞、✌收藏、👍订阅专栏

推荐阅读

AI Vision Toolkit for LabVIEW重磅升级:2.0版本支持本地部署DeepSeek R1

【YOLOv5】LabVIEW+TensorRT的yolov5部署实战(含源码))
【YOLOv5】手把手教你使用LabVIEW ONNX Runtime部署 TensorRT加速,实现YOLOv5实时物体识别(含源码)
【YOLOv8】实战一:手把手教你使用YOLOv8实现实时目标检测
【YOLOv8】实战二:YOLOv8 OpenVINO2022版 windows部署实战
【YOLOv8】实战三:基于LabVIEW TensorRT部署YOLOv8
【YOLOv9】实战一:在 Windows 上使用LabVIEW OpenVINO工具包部署YOLOv9实现实时目标检测(含源码)
【YOLOv9】实战二:手把手教你使用TensorRT实现YOLOv9实时目标检测(含源码)
【YOLOv11】实战一:在LabVIEW 中使用OpenVINO实现YOLOv11

👇技术交流 · 一起学习 · 咨询分享,请联系👇

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

virobotics

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值