【一步步开发AI运动小程序】十四、插件内置的运动项目,如何进行微调,以适配多场景?
引言:本文所涉及的AI运动识别、计时、计数能力,都是基于云智「Ai运动识别引擎」实现。云智「Ai运动识别」插件识别引擎,可以为您的小程序或Uni APP赋于原生、本地、广覆盖、高性能的人体识别、姿态识别、10余种常见的运动计时、计数识别及自定义扩展运动识别能力。完善的文档、Demo项目,开箱即用,可以帮助您快速实现AI运动、AI体育、AI运动赛事、全民健身赛事、AI体测等应用场景的快速落地。
一、为什么要微调内置运动分析器
小程序版AI运动检测插件内置的检测运动项目,都是基于相关运动的标准规则进行的适配,需要用户的动作比较标准时才能被检出,这样比较适合学生体测、培训等运动评测场,但如果放在针对大众参与的AI健身、线上赛事活动等应用场景则不太适应,过高的运动标准较低的检测通过率,会挫伤用户的参与热情。
基于此原因,为了让插件能灵活兼顾各类应用场景,我们开放了内置运动分析器的检测参数允许开发者进行微调,以便可以针对应用场景灵活配置运动检测参数,甚至可以实现“初学”、“进阶”、“专业”这样的高低阶运动模式。

二、如何进行微调
插件内置的运动分析器如果使的pose-calc中的规则检测方案,则会定义有rules属性,通过该属性可以获得该运动所有的检测规则及自定义检测参数;如果使用的是pose-calc姿态相似度方案,则会定义有samples属性,通过该属性可以获得该运动使用的所有姿态样本及自定义检测参数,详见API文档。


得益于javascript的非强类型特性,可以对这两个属性内的参数直接进行修改调整,便可以改变运动检测的要求。
三、微调代码示例
//导入插件
const AiSport = requirePlugin("aiSport");
//创建跳绳运动分析器
const sport = AiSport.SportBase.create('rope-skipping');
//查看当前检测参数
console.log(sport.rules);
//放宽检测参数
const rules = sport.rules;
rules.shakeRate = 0.025;
rules.hands.rules[0].angle = 75;
rules.hands.rules[0].offset = 55;
rules.hands.rules[1].angle = 75;
rules.hands.rules[1].offset = 55;

提供全景AI运动解决方案、各类应用定制开发服务
QQ:316455841
欢迎通过各种渠道咨询了解,免费提供技术咨询服务。

浙公网安备 33010602011771号