【一步步开发AI运动APP】七、自定义姿态动作识别检测——之规则配置检测

简介: 本文介绍了如何通过【一步步开发AI运动APP】系列博文,利用自定义姿态识别检测技术开发高性能的AI运动应用。核心内容包括:1) 自定义姿态识别检测,满足人像入镜、动作开始/停止等需求;2) Pose-Calc引擎详解,支持角度匹配、逻辑运算等多种人体分析规则;3) 姿态检测规则编写与执行方法;4) 完整示例展示左右手平举姿态检测。通过这些技术,开发者可轻松实现定制化运动分析功能。

之前我们为您分享了【一步步开发AI运动小程序】开发系列博文,通过该系列博文,很多开发者开发出了很多精美的AI健身、线上运动赛事、AI学生体测、美体、康复锻炼等应用场景的AI运动小程序;为了帮助开发者继续深耕AI运动领域市场,今天开始我们将为您分享新系列【一步步开发AI运动APP】的博文,带您开发性能更强、体验更好的AI运动APP。

一、什么是自定义姿态识别检测

您在开发AI运动小程序或APP时,可能会面这样的需求场景,比如:人像必须全部入镜、站立远近要求检查、用户做某个动作开始/停止运动识别、内置运动不满足场景需求需要扩展新运动项目等等,这些都需要用到自定义姿态动作识别检测,插件提供了基于规则配置姿态相似度比较两种姿态识别检测方案,本章将先为您介绍基于规则配置方案,姿态相似度比较方案和自定义运动扩展将在后续章节为您介绍。
115969-20250421203207313-701884138.png

二、Pose-Calc引擎介绍

插件姿态识别引擎pose-calc(原body-calc)实现了诸如⻆度匹配、垂直、⽔平、逻辑运算、姿态相似度⽐较、姿态旋转等常⽤的⼈体分析计算器;插件的内置运动分析器都基于此计算层实现,通过pose-calc只要配置好计算规则(⽆代码或代少量代码)即可实现自定义姿态动作检测或运动分析,也⽅便实现运动分析可配置化。
姿态计算引擎中的检测规则分为姿态计算逻辑计算两种类型,姿态计算类型主要包含全身入镜视角检测相对位置站立卧躺角度匹配等人体姿态计算规则;逻辑计算包含三个逻辑运算,用于实现姿态计算规则的组合运算,详情可以参考pose-calc指南文档。

三、编写姿态检测规则

姿态计算规则为方便持久化,采用类js匿名类型和JSON对象语法配置,定义语法如下:

let rule = {
   
    calc: 'stand',  //必填,要调用的计算规则
    name: '保持站立姿态' //必填,自定义规则名称
    ... //该计算规则所需的其它参数,具体参考文档
};

四、执行自定义姿态规则检测

定义好计算规则、检测出人体结构后,便可以调用计算规则执行对象Calculator进行检测了,代码如下:

import {
    createCalculator } from "@/uni_modules/yz-ai-sport";
const calculator = createCalculator();
let rule = {
   
    name: 'test',
    calc: '$and',
    rules: [{
   
        name: '正⾯视图',
        calc: 'camera-view',
        position: 'front'
        }, {
   
        name: '全身需⼊镜',
        calc: 'whole',
        relaxed: true
    }]
};
let human = ... //调用人体检测接口,得到实时人体结构
let pass = calculator.calculating(human, rule);
console.log(pass);
//Calculator还有calculatingAnd、calculatingOr、calculatingNot⽅法供快捷调⽤,详⻅API参考⽂档

五、完整示例

下面以左右手平举姿态检测的示例,为您演示插件的基于计算规则配置的自定义姿态动作检测能力:

import {
    createCalculator, createHumanDetector } from "@/uni_modules/yz-ai-sport";

let rules={
   
    name: '基本姿态',
    calc: '$and',
    rules: [{
   
        name: '全身需入镜',
        calc: 'whole'
    }, {
   
        name: '站立姿态',
        calc: 'stand'
    }, {
   
        name: '任一手平直',
        calc: '$or',
        rules: [{
   
            name: '左平直状态',
            calc: 'match-angle',
            angleKey: 'left_shoulder',
            secondKey: 'left_hip',
            thirdKey: 'left_wrist',
            angle: 90,
            offset: 20
        }, {
   
            name: '右平直状态',
            calc: 'match-angle',
            angleKey: 'right_shoulder',
            secondKey: 'right_hip',
            thirdKey: 'right_wrist',
            angle: 90,
            offset: 20
        }]
    }]
};

const calculator = createCalculator();
let options = {
   
    multiple: false,
    enabledGPU: true,
    highPerformance: false
};
const humanDetector = createHumanDetector(options);
humanDetector.startExtractAndDetect({
   
    onDetected(result){
   
        let humans = result.humans;
        let pass = calculator.calculating(humans[0], rule);
    }
});

115969-20250421202623502-216157057.png

相关文章
|
10天前
|
人工智能 缓存 JavaScript
通义灵码深度体验:AI编程助手如何提升全栈开发效率
通义灵码是一款强大的AI编程助手,支持从代码补全到智能体自主开发的全流程辅助。在React+Node.js项目中,其实现了100%字段匹配的Mongoose Schema生成;通过`@灵码`指令,30秒内完成天气查询CLI工具开发,包含依赖管理与文档编写。其上下文记忆能力可自动关联模块逻辑,如为商品模型扩展库存校验。集成MCP服务时,不仅生成基础代码,还推荐最佳实践并添加缓存优化。测试显示,其响应速度快、复杂任务准确率高,适合中小型项目快速迭代,初期开发效率提升约40%。尽管存在文档同步延迟和TypeScript支持不足的问题,仍是一款优秀的AI编程伙伴。
51 6
|
11天前
|
人工智能 小程序 API
【一步步开发AI运动APP】九、自定义姿态动作识别检测——之关键点追踪
本文介绍了【一步步开发AI运动APP】系列中的关键点追踪技术。此前分享的系列博文助力开发者打造了多种AI健身场景的小程序,而新系列将聚焦性能更优的AI运动APP开发。文章重点讲解了“关键点位变化追踪”能力,适用于动态运动(如跳跃)分析,弥补了静态姿态检测的不足。通过`pose-calc`插件,开发者可设置关键点(如鼻子)、追踪方向(X或Y轴)及变化幅度。示例代码展示了如何在`uni-app`框架中使用`createPointTracker`实现关键点追踪,并结合人体识别结果完成动态分析。具体实现可参考文档与Demo示例。
|
9天前
|
人工智能 开发框架 前端开发
斩获3K+ star,再见传统开发!这款开源AI后台开发框架让效率提升300%
ruoyi-ai 是基于 ruoyi-plus 框架开发的开源 AI 平台,集成 ChatGPT4、DALL·E-3 和 MidJourney 等前沿模型,提供聊天、绘画、语音克隆等全栈式 AI 能力。其核心价值在于多模态交互与企业级部署支持,开发者可快速搭建智能应用,个人用户亦能轻松体验 AI 创作魅力。项目支持自定义知识库训练、AI 绘画生成、语音克隆、弹幕互动等功能,采用 Java17+SpringBoot3.X 技术栈,前后端分离设计,具备高效性能与扩展性。相比同类项目,ruoyi-ai 提供更丰富的功能组合和企业级管理能力,适用于多种场景需求。
100 3
|
17天前
|
开发框架 人工智能 Java
破茧成蝶:阿里云应用服务器让传统 J2EE 应用无缝升级 AI 原生时代
本文详细介绍了阿里云应用服务器如何助力传统J2EE应用实现智能化升级。文章分为三部分:第一部分阐述了传统J2EE应用在智能化转型中的痛点,如协议鸿沟、资源冲突和观测失明;第二部分展示了阿里云应用服务器的解决方案,包括兼容传统EJB容器与微服务架构、支持大模型即插即用及全景可观测性;第三部分则通过具体步骤说明如何基于EDAS开启J2EE应用的智能化进程,确保十年代码无需重写,轻松实现智能化跃迁。
182 33
|
16天前
|
人工智能 数据挖掘 大数据
“龟速”到“光速”?算力如何加速 AI 应用进入“快车道”
阿里云将联合英特尔、蚂蚁数字科技专家,带来“云端进化论”特别直播。
59 11
|
1月前
|
开发框架 人工智能 Java
破茧成蝶:传统J2EE应用无缝升级AI原生
本文探讨了技术挑战和解决方案,还提供了具体的实施步骤,旨在帮助企业顺利实现从传统应用到智能应用的过渡。
破茧成蝶:传统J2EE应用无缝升级AI原生
|
1月前
|
人工智能 开发框架 安全
Serverless MCP 运行时业界首发,函数计算让 AI 应用最后一公里提速
作为云上托管 MCP 服务的最佳运行时,函数计算 FC 为阿里云百炼 MCP 提供弹性调用能力,用户只需提交 npx 命令即可“零改造”将开源 MCP Server 部署到云上,函数计算 FC 会准备好计算资源,并以弹性、可靠的方式运行 MCP 服务,按实际调用时长和次数计费,欢迎你在阿里云百炼和函数计算 FC 上体验 MCP 服务。
255 29
|
27天前
|
数据采集 人工智能 大数据
演讲实录:中小企业如何快速构建AI应用?
AI时代飞速发展,大模型和AI的应用创新不断涌现,面对百花齐放的AI模型,阿里云计算平台大数据AI解决方案总监魏博文分享如何通过阿里云提供的大数据AI一体化平台,解决企业开发难、部署繁、成本高等一系列问题,让中小企业快速搭建AI应用。
|
27天前
|
人工智能 搜索推荐 API
AI赋能大学计划·大模型技术与应用实战学生训练营——华东师范大学站圆满结营
4月24日,由中国软件行业校园招聘与实习公共服务平台携手阿里魔搭社区共同举办的AI赋能大学计划·大模型技术与产业趋势高校行大模型应用实战学生训练营——华东师范大学站圆满结营。
79 2
|
1月前
|
存储 人工智能 监控
一键部署 Dify + MCP Server,高效开发 AI 智能体应用
本文将着重介绍如何通过 SAE 快速搭建 Dify AI 研发平台,依托 Serverless 架构提供全托管、免运维的解决方案,高效开发 AI 智能体应用。
3527 64