之前我们为您分享了【一步步开发AI运动小程序】开发系列博文,通过该系列博文,很多开发者开发出了很多精美的AI健身、线上运动赛事、AI学生体测、美体、康复锻炼等应用场景的AI运动小程序;为了帮助开发者继续深耕AI运动领域市场,今天开始我们将为您分享新系列【一步步开发AI运动APP】的博文,带您开发性能更强、体验更好的AI运动APP。
一、自定义扩展运动场景
通过之前的章节介绍,您已可以使用插件完成人体检测、运动计时计数调用、自定义姿态识别,虽然插件提供了大部分常见的运动项目,可以满足大部分的线上赛事、体测、健身等应用需求,但是像美体、健美、教学、矫正、康复等场景中需要识别检特定动作,内置库很难全面覆盖,插件也充分考虑了这些场景需求,提供了完善的自定义运动扩展机制,来帮助开发者快速实现这些特定动作的识别检测。
二、APP端扩展运动机制的细微差异
受限于uni-app新旧两个APP框架(app、app-x)及在各平台插件和页面渲染引擎的工作差异,为了让您的扩展运动代码能兼容uni-app新旧两框、各平台,插件的APP版的运动扩展机制在原小程序版的基础做了一些调整,但整体差别不大,主要差别在扩展运动列表及扩展运动的创建上,具体差异我们将在后续示例中详细介绍。
三、扩展运动涉及的API
ExtendSportBuilder
扩展运动构建对象主要负责定义扩展运动的 KEY、名称、计数方式、视角等基本参数,和运动分析调中的启动、停止、姿态流处理等各阶段的处理函数等。
IExtendSportContext
扩展运动上下文本,此对象为插件内运动分析器调用代理,用于调用分析器的计时、计数、回调触发等基本的运动分析器能力。
createExtendSportContext()
创建扩展运动上下文,创建一个IExtendSportContext 实例。
当然自定义扩展运动涉及最多的还是
Pose-Calc
自定义姿态识别相关API,详细可参考前面的章节。
const context = createExtendSportContext({key: 'both-hands-up',name: '自定义-双手并举',tickMode: true,view: 'front_back',start(){console.log('运动分析器启动');},pushing(fragment){//分析人体姿态流}
});
好了,扩展新运动的第一节就为您介绍到这,下一节继续为您介绍自定义运动的后续实现,敬请期待...