一步步开发AI运动小程序七进行运动计时计数

Posted Alphaair

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一步步开发AI运动小程序七进行运动计时计数相关的知识,希望对你有一定的参考价值。

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

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

1.1、相关核心命名空间

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

1.2、运动分析的过程

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

二、获取所有的内置运动

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

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: "马步蹲"

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

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

三、执行运动分析检测


//创建俯卧撑运动分析器
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();

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

一步步学OpenGL(41) -《物体运动模糊》

教程 41

物体运动模糊

原文: http://ogldev.atspace.co.uk/www/tutorial41/tutorial41.html

CSDN完整版专栏: https://blog.csdn.net/cordova/article/category/9266966


理论介绍

运动模糊是快节奏的3D游戏中比较常用的技术,给运动的物体添加模糊效果,视觉上可以提高速度感,提高玩家的真实感体验。运动模糊的实现也有多种方法,主要分为基于相机运动的模糊基于物体运动的模糊,这里会介绍其中的一种简单的基础实现。

运动模糊技术的中最重要的一个概念是:运动向量(Montion Vector),运动向量描述的是渲染出的同一个像素,在两帧之间的移动方向和距离。

从当前像素出发,沿着Montion Vector在当前帧的Color buffer上采样附近像素

以上是关于一步步开发AI运动小程序七进行运动计时计数的主要内容,如果未能解决你的问题,请参考以下文章

一步步开发AI运动小程序三运动识别处理流程

一步步开发AI运动小程序一准备工作

一步步开发AI运动小程序六人体骨骼图绘制

一步步开发AI运动小程序五帧图像人体识别

一步步开发AI运动小程序九姿态辅助调试桌面工具折使用

微信小程序原生AI运动(动作)检测识别解决方案