前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >七、进行运动计时、计数

七、进行运动计时、计数

原创
作者头像
alphaair
修改2024-05-23 09:01:01
1020
修改2024-05-23 09:01:01
举报
文章被收录于专栏:一步一步开发AI运动小程序

随着深度学习推理技术的不断发展,让小型设备运行深度学习成为可能,阿里体育等IT大厂,推出的“乐动力”、“天天跳绳”AI运动APP,让云上运动会、线上运动会、健身打卡、AI体育指导等概念空前火热。那么,能否将这些在APP成功应用的场景搬上微信小程序,分享这些概念的红利呢?本系列文章就带您一步一步从零开始开发一个AI运动小程序,本系列文章将使用“AI运动识别”小程序插件,插件详情可以前往微信服务市场搜索相应插件。

一、插件运动检测分析的流程

1.1、相关核心命名空间

插件关于姿态、运动检测的能力,都包含在calcsports两个命名空间下。其中sports命名空间下包含了所有的内置运动分析器类和运动检测相关计时、计数的核心逻辑抽象;calc命名空间下包含了人体姿态分析的角度、垂直、水平、视角等规则计算器、姿态相似度和关键点追踪等能力,sports也是基于此能力实现。

1.2、运动分析的过程

运动分析的过程,便是逐帧分析人体结果,当捕捉符合到要求的姿态动作,便触发计时、计数回调。UI便可以基于此回调与用户进行交互。

二、获取所有的内置运动

sports.SportBase是运动分析器抽象基类,实现了基本的计数、计时逻辑,其中SPORTS静态属性包含了所有的插件内置运动。

代码语言:javascript
复制
const SportBase = AiSport.sports.SportBase;
console.log(SportBase.SPORTS);
//输出结果
//0: {key: "Rope-Skipping", name: "跳绳"}
//1: {key: "Jumping-Jack", name: "开合跳"}
//2: {key: "Sit-Up", name: "仰卧起坐"}
//3: {key: "Push-Up", name: "俯卧撑"}
//4: {key: "Squat", name: "深蹲起"}
//5: {key: "Plank", name: "平板支撑"}
//6: {key: "Squat-Horse", name: "马步蹲"}

二、创建一个指定的运动分析器

代码语言:javascript
复制
//调用SportBase.create静态方法,创建一个俯卧撑运动分析器实例
const AiSport = requirePlugin("aiSport");
const SportBase = AiSport.sports.SportBase;
const sport = SportBase.create('Push-Up');
console.log(sport);

三、执行运动分析检测

代码语言:javascript
复制
//创建俯卧撑运动分析器
const AiSport = requirePlugin("aiSport");
const SportBase = AiSport.sports.SportBase;
const sport = SportBase.create('Push-Up');
sport.onTiCK = (cnt, times) => {
	console.log('运动计数变化');
	console.log(cnt, times);
};

//抽帧
const context = wx.createCameraContext();
const listener = context.onCameraFrame((frame) => {
	const iamge = {
		width: Number(frame.width),
		height: Number(frame.height),
		rawData: frame.data
	};
	
	//人体识别
	humanDetection.detectionAsync(image).then(human=>{
		
		//将人体识别结果推入运动分析器
		sport.pushing(human);
		
	});
});
listener.start();

下篇将为您介绍姿态分析,敬请期待...

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、插件运动检测分析的流程
    • 1.1、相关核心命名空间
      • 1.2、运动分析的过程
      • 二、获取所有的内置运动
      • 二、创建一个指定的运动分析器
      • 三、执行运动分析检测
      相关产品与服务
      人体分析
      腾讯云神图·人体分析(Body Analysis)基于腾讯优图领先的人体分析算法,提供人体检测、行人重识别(ReID)等服务。支持识别图片或视频中的半身人体轮廓;支持通过人体检测,识别行人的穿着、体态等属性信息。可应用于人像抠图、背景特效、人群密度检测等场景。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档