

AI运动:阿里体育端智能最佳实践
source link: https://my.oschina.net/alimobile/blog/5311656
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

作者:其声
过去一年,阿里体育技术团队在端智能方面不断探索,特别地,在运动健康场景下实现了实践落地和业务赋能,这就是AI运动项目。AI运动项目践行运动数字化的理念,为运动人口的上翻提供了重要支撑,迈出了阿里体育端智能运动领域的第一步,为用户带来了更加有趣的新颖玩法。上线以来,项目受到了广泛关注。
2020年因新冠疫情,传统的线下运动受到限制,居家运动逐渐成为新趋势。基于阿里巴巴强大的技术沉淀,阿里体育团队顺应线上运动的迫切需要,开发出基于AI识别的智能运动,为用户提供了简便、好玩的新型居家运动方式。只需一部手机和3-4平米的场地,就可以开展AI运动。运动时,用户打开乐动力APP,将手机固定在场地一侧,适当设置手机角度,根据应用的自动语音提示调整身体与手机距离,直到人体完全位于识别框内,即可开始运动。
端智能实践
经过⼀年的探索和完善,从验证DEMO到囊括多种动作、支持能力迁移的AI运动智能平台,阿⾥体育建立了系统化的客户端运动智能体系。端智能运动体系基于阿里深度推理引擎在手机端进行推理,识别⼈体姿态和动作,分析人体姿态、运动轨迹、动作角度等,给出实时反馈并进行动作纠正,通过能力的模块化组合,现已支持十多种运动动作和数十种玩法,实现了运动与AI的有机整合,让用户的线上运动变得上手简单而又充满趣味。
端智能运动的基本技术思路是运用MNN推理引擎进行推理和姿态识别。即
- 实时检测图像及视频中的人体轮廓,定位人体14个关键骨骼点,包括头、肩、脚等重点关节部位;
- 基于这些关键点信息,连点成线、连线形成动作,可以分析人体姿态、动作角度和运动轨迹;
- 通过动作姿态匹配,检测用户运动动作,实现动作的计时与计数。同时,实时检测分析动作标准化程度,给出状态反馈,纠正用户动作,实现互动,提高交互体验。
传统运动方式下,用户在运动时可以及时得到现场辅助人员(教练员、考官或亲友)的实时提醒和帮助。端智能运动方式下,用户在做动作时只能与手机应用进行交互。交互的能力和识别水平会受到推理模型能力、运动场景复杂度、运动匹配识别算法等一系列因素的影响。在端智能运动能力的探索和落地过程中,会遇到一些新的问题或者难题,如人机方位匹配、骨骼点识别丢点、点误识别、二维失真、用户移动、手机晃动、场景噪声等。这些问题不一一赘述,仅选取几个有代表性的问题进行分享:
- 动作的有效性判断及关键算法设计,以提高动作匹配精度,这是智能运动能力的基础;
- 在保证识别效果的前提下,采取有效措施,降低移动终端的资源消耗,以提升用户体验,主要表现是费电和发热;
- 采取更加灵活的方式,减轻移动端测试的人力和时间消耗,提高开发和测试效率,为团队的交付保障提供有力支撑。
提升识别精度
智能运动带给用户的最直观、最基础的感受就是动作计数准确性。如果动作识别计数不准,用户使用APP的积极性就会打消,参与性就不高。为此,我们要首先解决计数准不准的问题。
智能运动计数的基本原理是,把一个完整动作分解成若干个小步骤,然后对每个步骤触发识别和判断,全部步骤遍历后,对整个动作进行有效性确认。如果有效,计数加1;反之就重复上述过程。简言之,智能运动识别与计数是一个状态机。将一个运动动作离散化,抽象成N个状态机,{s(0),s(1),s(2),...,s(n-1)},状态机按照一定的顺序依次进行检测,全部检测到意味用户完成了该动作,对计数加1;若某个状态未被检测到,触发对应反馈信息,重置状态机进入新的循环。每一个状态机对应着一定的触发条件,通过实时骨骼点坐标与状态的循环匹配性检测,获取一个动作匹配结果。
不难看出,动作识别精度与动作匹配算法紧密相关,算法匹配效果好,识别精度就越高。为提高动作识别精度,可以选取影响匹配算法的因素作为切入点和突破口,骨骼点、状态机、匹配等。相应的解决办法为:
- 提高骨骼点稳定性,确保状态匹配结果精度;
- 选择骨骼点稳定、易识别、具有代表性的动作作为状态机;
- 帧率要能够覆盖一个动作的所有状态机。
下面将举例进行说明。
骨骼点识别准确度对动作匹配有着重要影响。如下图所示:测试对象左手臂骨骼点识别出现错误。如果径直进行匹配,显然会得到错误的结果。针对这种情况,应当利用好用户的历史动作信息,在动作匹配算法上对动作匹配进行纠正。
还有一种情况,用户已经完成某种动作的全部动作,如下图中的开合跳,由于采样帧率低,无法捕获和识别全部开合跳运动过程中的全部姿态,造成某个状态匹配不成功,最终导致开合跳动作匹配错误。对于低帧率问题,可从模型和输入源两个方面着手。对于模型来说,在不影响动作识别精度情况下,采用精简模型,减少推理耗时。对不同的终端设备,采用不同分辨率的输入源,降低原始数据处理操作耗时。
降低性能消耗
受物理条件影响,手机端算力和存储空间有限。此外,深度学习推理本身包含大量的运算,资源消耗大。如果直接在端上进行深度学习推理,再考虑上手机端自身业务(如摄像头、录制视频、动画效果)的资源消耗,CPU和内存开销就显著增长,直观表现是手机发热明显,电量消耗很快。智能运动在端智能上落地时,要特别考虑降低性能消耗,这对于提升用户体验来说至关重要。
降低整体性能消耗,要追根溯源,从降低单帧消耗处着手。单帧处理可以划分为三个阶段:分别是推理前、推理和推理后。
这三个阶段分别起着不同的作用。推理前阶段主要完成格式转换,将摄像头获取的流数据转换为推理需要的数据格式,如YUV格式、RGBA格式。推理阶段主要完成计算输出骨骼点坐标。对输入的帧数据,经过推理引擎,执行一系列算法,输出推理结果,如姿态识别是将输入图片的RGBA数据转换成骨骼点坐标数据。推理后阶段主要完成展示,进行渲染操作和业务相关操作,如UI展示、动画效果展示。
相应地,可对上述三个阶段分别进行优化。其中,推理过程中的优化由阿里深度推理引擎MNN负责,这里不作讨论。对于推理前阶段的数据转换,应减少不必要的中间转换环节,直接将摄像头流数据转换成为需要的格式。如推理使用RGBA裸数据,就直接将摄像头流数据转换为RGBA格式。对于推理后阶段,应根据承载的平台选择合适的渲染方案,降低渲染消耗。对于iOS平台,可直接采用Metal进行渲染提效。
提高测试效率
AI智能运动是阿里体育团队在体育数字化上的一次大胆尝试。在应用开发特别是测试环节中,投入相当的人力、设备及时间,不断完善应用功能、优化应用性能、提升用户体验。此外,AI运动识别的效果测试受环境因素的影响较大,如光线、背景、距离、人物在摄像头中的成像大小等。这就对测试方式提出了考验。
以传统测试方案为例:一般是真人、实地、实时动作,测试人员手动记录结果再事后分析,如下图所示。
不难想象,AI智能运动所运行的手机有着不同的品牌、型号、系统版本和性能参数,AI智能运动的用户可能处于不同的使用环境,若采用传统的测试方式,对不同因素进行测试覆盖,对测试人员、测试时间提出了很大的挑战,测试的一致性与精度也难以保证。具体原因如下:
- 人工成本较高:一次测试需多名同学配合,耗时耗力;
- 测试环境较单一:无法应对线上复杂多样的环境;
- 测试结果量化难。无法对模型的精度、算法的效率、动动匹配准确度、精度提升度、性能消耗等量化评估;
- 问题定位难。事后分析排查,无法复现定位线上客诉问题。
传统的测试方法难以为继,为克服上述困难,阿里体育技术团队开发了一套AI运动自动测试工具,专门用于解决AI智能项目测试难题,实现了线上问题的快捷定位与回归,并对模型算法精度实现量化评估。
自动测试工具的解决思路是:批量解析视频集,模拟真实场景,获取骨骼点数据,进行业务结果测试,自动生成测试报告。具体技术方案如下图所示:
采用新的测试工具后,显著地降低了人工成本、提高了测试效率。具体测试效果如下:
需要注意的是,测试工具的效果与测试样本的数量相关,样本越丰富,测试精度越好。
阿里体育智能运动现已支持数十种运动动作,开发出丰富的AI训练课程,同时通过运动能力的模块化组合,支持未来不断拓展新的动作。
自AI智能运动诞生以来,乐动力APP陆续上线了直臂开合跳、俯卧撑等上肢动作,臀桥、深蹲等下肢动作以及跳绳、开合跳等全身动作等多种运动形式,使得用户可以不受时间和场地限制,随时随地和朋友一起参与到AI运动,提升了APP的用户吸引力和趣味性。此外,AI训练课程创新引进明星资源,推进全年52周每周7天不间断的“明星陪练”课,以明星带动用户养成运动习惯、快乐运动、爱上运动。阿里体育团队也将不断地根据用户需要打造更多的运动玩法,丰富产品功能,形成阿里体育端智能的独特业务品牌和创新产品特色。
Recommend
-
109
智能分析最佳实践——指标逻辑树2017年12月04日 作者: 萍丽 夷山 文章链接 2993字...
-
21
简介:用户直接访问OSS资源,访问速度会受到OSS的下行带宽以及Bucket地域的限制。如果通过CDN来访问OSS资源,带宽上限更高,并且可以将OSS的资源缓存至就近的CDN节点,通过CDN节点进行分发,访问速度更快,且费用更低。如果采用动静分离...
-
5
体育年的VR新契机,网易影核引领“VR+运动”新浪潮 发布时间:2021-10-22 09:42 | 标签: 网易
-
4
作者:lucasfan,腾讯 IEG 客户端开发工程师 智能指针在 C++11 标准中被引入真正标准库(C++98 中引入的 auto_ptr 存在较多问题),但目前很多 C++开发者仍习惯用原生指针,视智能指针为洪水猛兽。但很多实际场景下,智能指针却是解决问题的...
-
2
高品质的运动和体育竞技插画图标 6月 1, 2022 发表于: 优秀设计资源.
-
4
摘要:精益产品开发体系最佳实践及原则。精益求精是工匠精神实现的最佳方法,通过引入实践精益思想的原则和方法进行精益产品开发,打造对客户最好的产品进行交付,其次通过精益思想的理念降低企业的运营成本,提高企业的运营效率。精益思想的定义
-
7
article 5G消息puppet-walnut的最佳实践-...
-
4
京东运动:骑行、游泳、露营成8.8北京体育消费节三大热门运动 2022年“8.8北京体育消费节”,北京体育局携手京东运动为广大民众打造了一场以“悦运动 悦精彩”为主题的运...
-
11
体育电商巨头Fanatics收购拉美运动品牌Fexpro品牌方舟BrandArk关注品牌出海的一切变化,深度研究出海发展动向。
-
9
全球运动品牌集团「亚玛芬体育」赴美上市!品牌方舟BrandArk关...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK