一种基于机器视觉的动作检测计数系统及其方法-半岛BOB·(中国)官方网站

文档序号:34131600发布日期:2023-11-28阅读:827来源:国知局


1.本发明涉及人体姿态估计技术领域,种基尤其是于机涉及一种基于机器视觉的动作检测计数系统及其方法。


背景技术:

2.随着人工智能的器视发展,运动健身行业与人工智能技术的觉的检测计数及联系愈发紧密,目前人工智能技术在智能运动健身行业中得到不同程度应用。动作在智能健身硬件上,系统产品将搭载光敏、种基声敏、于机压敏等多种传感方案,器视跟踪捕获用户运动表现和运动姿态等信息,觉的检测计数及再依靠人工智能通过对采集数据进行处理分析、动作以实现动作识别等,系统同时还可通过分析用户的种基运动表现为其提供健身课程的个性化建议。
3.然而,于机现有技术大多仅仅通过人体姿态估计网络来识别人体动作,器视考虑到健身过程中对动作是否标准、动作是否到位等进行监测记录是一项十分必要的工作,借助软件健身尽管可以在不使用任何体育器材的情况下,利用碎片化的时间进行训练。但是,这种训练方法相对来说比较单调,而且在训练的过程中缺少动作检测的功能,无法准确知道用户有没有完成训练动作,并且缺少了监督性。同时,运动过程中,用户还需手动计数、缺少自检性。为此,有必要探索一种新的健身训练监督与自检方式,以弥补当前智能运动健身训练方式的不足。


技术实现要素:

4.本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于机器视觉的动作检测计数系统及其方法,能够实时准确高效地对用户运动健身动作进行检测及计数,提升智能运动健身的监督性和自检性。
5.本发明的目的可以通过以下技术方案来实现:一种基于机器视觉的动作检测计数系统,包括摄像头、人体姿态估计模块、动作分类模块和计数器,所述摄像头用于实时拍摄用户运动画面;所述人体姿态估计模块用于从用户运动画面中提取人体关节点位置信息;所述动作分类模块用于计算人体各关节点之间距离,以识别出当前动作;所述计数器用于对当前动作的置信度进行阈值检测,输出得到用户执行当前动作的次数。
6.进一步地,所述人体姿态估计模块具体是通过blazepose网络来提取人体关节点位置信息。
7.进一步地,所述人体姿态估计模块包括具有姿态对齐的人脸检测器。
8.进一步地,所述动作分类模块具体是通过knn(k-nearest neighbor,k-近邻)算法来计算人体各关节点之间距离。
9.进一步地,所述计数器包括显示屏,用于实时展示当前动作计数以及置信度变化曲线信息。
10.一种基于机器视觉的动作检测计数方法,包括以下步骤:
11.s1、摄像头实时采集画面内包含用户完整头部的图像、并传输至人体姿态估计模
块;
12.s2、人体姿态估计模块从接收的图像中提取出人体关节点位置信息,包括33个关键点坐标数据;
13.s3、根据人体关节点位置信息,由动作分类器对应计算各关节点之间距离,以确定出当前动作;
14.s4、计数器通过对当前动作的置信度进行阈值检测,输出得到用户执行当前动作的次数。
15.进一步地,所述步骤s2的具体过程为:当接收第一帧画面图像后,首先进行人脸检测,待检测到人脸后,则预测人体出现的区域,确定出人体候选框并从中检测出33个关键点坐标;
16.当接收下一帧画面图像时,则将上一帧人体候选框的位置直接生成在下一帧图像上、并从中检测出33个关键点坐标。
17.进一步地,所述步骤s3具体包括以下步骤:
18.s31、将关键点坐标数据转换为特征向量;
19.s32、根据各关节点对应的特征向量,分别计算出各关节点之间距离;
20.s33、基于各关节点之间距离,结合预设的关节点距离-动作映射关系,确定出当前动作。
21.进一步地,所述各关节点之间距离包括手腕与手腕、手腕与肩膀、手腕与胯部、手腕与脚踝、脚踝与脚踝、脚踝与胯部之间的距离。
22.进一步地,所述步骤s4的具体过程为:实时计算当前动作的置信度,若当前动作的置信度从低到高直至达到对应阈值时,则判断用户执行当前动作完成一次、计数加一。
23.与现有技术相比,本发明具有以下优点:
24.一、本发明通过设置摄像头、人体姿态估计模块、动作分类模块和计数器,利用摄像头实时拍摄用户运动画面;利用人体姿态估计模块从用户运动画面中提取人体关节点位置信息;利用动作分类模块计算人体各关节点之间距离,以识别出当前动作;利用计数器对当前动作的置信度进行阈值检测,输出得到用户执行当前动作的次数。由此能够实时准确高效地对用户运动健身动作进行检测及计数,提升智能运动健身的监督性和自检性。
25.二、本发明中,人体姿态估计模块通过blazepose网络来提取人体关节点位置信息,包含具有姿态对齐的人脸检测器;动作分类模块则通过knn算法来计算人体各关节点之间距离。由此能够快速准确地检测出人体关节点位置信息、并完成关节点之间距离地计算,从而确保对于用户当前动作的准确检测。
26.三、本发明中,计数器通过对当前动作的置信度设置阈值进行检测,即通过动作变化过程中置信度变化来判断动作被执行次数,以实现自动计数功能,此外,还可结合显示屏实时显示动作计数和置信度变化的曲线等信息,进一步方便用户进行实时运动监控和调整。
附图说明
27.图1为本发明的系统结构示意图;
28.图2为本发明的方法流程示意图;
29.图3为本发明中人体姿态估计模块的工作过程示意图;
30.图4为实施例中关节点之间距离示意图;
31.图中标记说明:
32.1、摄像头,2、人体姿态估计模块,3、动作分类模块,4、计数器。
具体实施方式
33.下面结合附图和具体实施例对本发明进行详细说明。
34.实施例
35.如图1所示,一种基于机器视觉的动作检测计数系统,包括摄像头1、人体姿态估计模块2、动作分类模块3和计数器4,其中,摄像头1用于实时拍摄用户运动画面;人体姿态估计模块2用于从用户运动画面中提取人体关节点位置信息;动作分类模块3用于计算人体各关节点之间距离,以识别出当前动作;计数器4用于对当前动作的置信度进行阈值检测,输出得到用户执行当前动作的次数。
36.应用上述系统,实现一种基于机器视觉的动作检测计数方法,如图2所示,包括以下步骤:
37.s1、摄像头实时采集画面内包含用户完整头部的图像、并传输至人体姿态估计模块;
38.s2、人体姿态估计模块从接收的图像中提取出人体关节点位置信息,包括33个关键点坐标数据;
39.s3、根据人体关节点位置信息,由动作分类器对应计算各关节点之间距离,以确定出当前动作;
40.s4、计数器通过对当前动作的置信度进行阈值检测,输出得到用户执行当前动作的次数。
41.本实施例首先设计人体姿态估计模块、动作分类模块及计数器。其中,人体姿态估计模块通过使用轻量级卷积神经网络(blazepose)来获取人体关节点位置信息,实现人体姿态估计;其次是动作分类模块,该模块通过knn分类器,将关键点位置信息转化为特征向量,计算出各关键点之间的距离,来判断当前动作;最后是计数器,该模块通过对当前动作的置信度设置阈值进行检测,实现计数功能。具体的:
42.一、人体姿态估计模块
43.blazepose是一个用于人体姿态估计的轻量化的卷积神经网络。它是为在移动终端设备上实时运算而量身定做的。这个神经网络在预测阶段会为单人生成33个人体关键点的坐标,并能在手机上以每秒30帧的速度运行。在预测的过程中,输出的33个人体关键点位置信息(x,y,z)参照了真实世界的信息,并以米作为单位。每张图片输出的骨骼点坐标不仅都以臀部中心为坐标原点,原点位于臀部之间的中心,并且每次输出的数据尺度也相同,这样在比较不同样本之间的骨骼点数据时,就不需要对骨骼点数据进行归一化等处理。
44.为了保证blazepose算法的精确性和稳定性,在使用该算法进行人体跟踪时,打开摄像头后,需要确保拍摄的人物头部始终处于画面内,以便算法能够准确地识别并跟踪人体的各个部位。这是因为blazepose人体跟踪算法是利用nms非极大值抑制的方法来预测人体框的。对于人体而言,四肢躯干的摆动会使得外形产生很大的变化,而且人体关节点总是
不可避免的会出现遮挡的情况,这些因素都会导致nms的iou(intersection over union,交并比)超过阈值,从而剔除正确的人体框图。因此,为了避免出现这样的情况,blazepose选择只检测人脸。
45.blazepose把对人体姿态的检测变为了人脸检测。当第一帧画面进入模型里后,模型会先对它进行人脸检测,待检测到人脸后,模型会预测人体出现的区域并从中检测出33个关键点坐标。因为画面是连续的,所以下一帧画面进入模型时,模型不再去检测人脸的位置,而是把上一帧人体候选框的位置直接生成在下一帧上,如图3所示,只有在图像中没有检测出人体的时候,人脸检测器才会再次启用来获取人可能所在的候选框,否则就直接用上一帧输出的这个区域构建出的候选框来进行,来作为下一帧的候选框。将图像输入到blazepose网络结构中,即可得到图像坐标系下各个关节点位置信息,每个关节点位置信息可表示为(x,y,z)。
46.二、动作分类模块
47.knn是一种基于距离度量的统计分类算法,它在进行数据特征变量筛选方面表现出色。该算法的核心思想是输入未标记的新数据,即尚未进行分类的数据,提取新数据的特征,并将其与测试集中每个数据的特征进行比较。接着,从测试集中找出与新数据距离最近的k个数据,然后统计这k个数据中出现次数最多的类别作为新数据的类别。
48.在knn分类器中,首先需要计算待分类数据特征与训练数据特征之间的距离,并对它们进行排序。然后,从排序结果中选出距离最近的k个训练数据特征。接着,根据这k个被选出的数据特征的类别进行计分,最终根据分数确定新的样本类别。
49.knn算法依赖于距离,blazepose在提取关键点时已经自动将人体姿势对齐,完成归一化操作以获得相同的躯干大小和方向。在knn分类器读取之前,会将姿势坐标转换为特征向量。通过关节点之间的距离,例如手腕与手腕、手腕与肩膀、手腕与胯部、手腕与脚踝、脚踝与脚踝、脚踝与胯部等之间的距离来判断出当前动作,如图4所示。
50.三、计数器
51.计数器对当前动作的置信度设置阈值进行检测,该计数器通过设置一个阈值,来实现在健身动作变化过程中的置信度变化来判断动作次数的计数功能。当置信度从低到高达到阈值时,计数器就会自动加1,从而实现动作次数的计数。
52.计数器会通过判断目标动作的概率来计算是否完成动作。以深蹲为例,本实施例将深蹲动作分为两个阶段,站立与下蹲。在动作开始时,人体处于站姿状态,此时下蹲置信度为0。当人体处于下蹲过程中时,下蹲置信度会逐渐提高直到概率高于设置的阈值时,此时便会进入下蹲的标记状态。当人体再从下蹲状态恢复到站立状态时,下蹲置信度会逐渐下降,直至概率低于设置的阈值时,便会进入站立的标记状态,此时计数器加一。为了避免动作终止时处于下蹲标记与站立标记之间导致计数混乱,在阈值设置时,检测进入下蹲状态的阈值略微高于站立状态的阈值。
53.综上所述,本技术方案通过blazepose卷积神经模型获取人体骨骼关键点坐标,将处理过的坐标数据放入knn分类器中得到当前动作的完成度,最后使用计数器计数健身动作的次数,计数器还可具有可视化界面,进而在屏幕上实时显示动作计数和置信度变化的曲线等信息,方便用户进行实时监控和调整。本方案可以搭载在移动终端设备上,并能使用设备上的默认摄像头对健身动作进行实时检测计数,能够帮助用户更好地掌握自己的健身
动作姿态和计数。
网友询问留言已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
技术分类