【一步步开发AI运动小程序】十五、AI运动识别中,如何判断人体站位的远近?

简介: 【云智AI运动识别小程序插件】提供人体、运动及姿态检测的AI能力,无需后台支持,具有快速、体验好、易集成等特点。本文介绍如何利用插件判断人体与摄像头的远近,确保人体图像在帧内的比例适中,以优化识别效果。通过`whole`检测规则,分别实现人体过近和过远的判断,并给出相应示例代码。

【云智AI运动识别小程序插件】,可以为您的小程序,赋于人体检测识别、运动检测识别、姿态识别检测AI能力。本地原生识别引擎,无需依赖任何后台或第三方服务,有着识别速度快、体验佳、扩展性强、集成快、成本低的特点,本篇实现需要使用此插件,请先行在微信服务市场或官网了解详情。

一、为什么要判断人体与摄像头的远近?

在进行运动和姿态识别时,离摄像头太近,则无法取得全身关键点;若离摄像头太远,则人体图像太小,关键点将混成一团,识别效果太差,如下图所示:
image.png

基于此,就非常有必要在正式开始运动前,对人体站位进行预检,再通过语音等方式提醒用户调整站位至合适距离,以便获得最佳体验和识别效果,我们建议将人体控制在帧图像的55%-85%之间。

二、whole检测规则

whole是插件姿态计算引擎body-calc提供检测整个人体是否全部位于帧图像(或指定的范围)内,我们可以利用此规则进行人体远近的检测,如果人体只有部分在帧图像的85%范围内(whole执行结果为false)则表示站得太近了;如果人体全部在帧图像的55%范围内(whole执行结果为true)则表示离得太远了。
image.png

三、离摄像头太判断

在进行远近判断前,请查阅本系列博文了解抽帧、人体识别、body-calc应用等内容。

const AiSport = requirePlugin("aiSport");
const humanDetection = AiSport.humanDetection;
const Calculator = AiSport.calc.Calculator;

const RANGE = 0.85; //人体必须在帧图像中间85%区域内
const rule = {
   
    name: '人体太近检查',
    calc: 'whole',
    range: {
   
        top: 0,
        left: 0,
        width: 0,
        height: 0
    },
    relaxed: true
};
const calculator = new Calculator();

//抽帧
const context = wx.createCameraContext();
const listener = context.onCameraFrame((frame) => {
   
    const iamge = {
   
        width: Number(frame.width),
        height: Number(frame.height),
        rawData: frame.data
    };

    rule.range.top = frame.height * (1 - RANGE) / 2;
    rule.range.left = frame.width * (1 - RANGE) / 2;
    rule.range.height = frame.height * RANGE;
    rule.range.width = frame.width * RANGE;

    //人体识别
    humanDetection.detectionAsync(image).then(human=>{
   

        //执行检测
        if(!calculator.calculating(human, rule)){
   
            console.log('站得太近了,请远离');
            //播放语音、UI提示...
            return;
        }

        //通过,则进入运动检测等应用环节..
    });
});
listener.start();

四、离摄像头太判断

const AiSport = requirePlugin("aiSport");
const humanDetection = AiSport.humanDetection;
const Calculator = AiSport.calc.Calculator;

const RANGE = 0.55; //人体必须在帧图像中间55%区域以外
const rule = {
   
    name: '人体远离检查',
    calc: 'whole',
    range: {
   
        top: 0,
        left: 0,
        width: 0,
        height: 0
    },
    relaxed: true
};
const calculator = new Calculator();

//抽帧
const context = wx.createCameraContext();
const listener = context.onCameraFrame((frame) => {
   
    const iamge = {
   
        width: Number(frame.width),
        height: Number(frame.height),
        rawData: frame.data
    };

    rule.range.top = frame.height * (1 - RANGE) / 2;
    rule.range.left = frame.width * (1 - RANGE) / 2;
    rule.range.height = frame.height * RANGE;
    rule.range.width = frame.width * RANGE;

    //人体识别
    humanDetection.detectionAsync(image).then(human=>{
   

        //执行检测
        if(calculator.calculating(human, rule)){
   
            console.log('站得太远了,请近些');
            //播放语音、UI提示...
            return;
        }

        //通过,则进入运动检测等应用环节..
    });
});
listener.start();

好了,远近检测就为您介绍到这,下篇将带您进行站力视角检查,敬请期待...

相关文章
|
3月前
|
人工智能 安全 API
20 万奖金池就位!Higress AI 网关开发挑战赛参赛指南
本次赛事共设三大赛题方向,参赛者可以任选一个方向参赛。本文是对每个赛题方向的参赛指南。
413 32
|
3月前
|
人工智能 监控 安全
人体姿态[站着、摔倒、坐、深蹲、跑]检测数据集(6000张图片已划分、已标注)| AI训练适用于目标检测
本数据集包含6000张已标注人体姿态图片,覆盖站着、摔倒、坐、深蹲、跑五类动作,按5:1划分训练集与验证集,标注格式兼容YOLO等主流框架,适用于跌倒检测、健身分析、安防监控等AI目标检测任务,开箱即用,助力模型快速训练与部署。
|
3月前
|
人工智能 运维 安全
加速智能体开发:从 Serverless 运行时到 Serverless AI 运行时
在云计算与人工智能深度融合的背景下,Serverless 技术作为云原生架构的集大成者,正加速向 AI 原生架构演进。阿里云函数计算(FC)率先提出并实践“Serverless AI 运行时”概念,通过技术创新与生态联动,为智能体(Agent)开发提供高效、安全、低成本的基础设施支持。本文从技术演进路径、核心能力及未来展望三方面解析 Serverless AI 的突破性价值。
|
3月前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
5052 76
|
3月前
|
人工智能 小程序 前端开发
一个小程序轻量AR体感游戏,开发实现解决方案
针对青少年运动兴趣不足问题,AR体感游戏凭借沉浸式互动体验脱颖而出。结合小程序“AI运动识别”插件与WebGL渲染技术,可实现无需外设的轻量化AR健身游戏,如跳糕、切水果等,兼具趣味性与锻炼效果,适用于儿童健身及职工团建,即开即玩,低门槛高参与。
|
3月前
|
移动开发 小程序 前端开发
小程序开发平台有哪些?哪个好
小程序的开发方式丰富多元,开发团队可根据自身的技术背景、项目具体需求以及资源状况,灵活挑选最为适宜的开发路径。以下将详细介绍几种主流的小程序开发方式。
446 2
|
3月前
|
运维 小程序 数据可视化
小程序开发平台有哪些?SaaS小程序制作平台哪个好
小程序开发模式详解:自主开发、SaaS小程序制作平台与外包全对比 选择合适的小程序开发模式,是项目成功的基石。这三种模式在成本、周期、控制力和灵活性上各有千秋,适用于不同阶段和不同类型的企业。下面我们将逐一深入剖析。
350 7
|
移动开发 小程序
thinkphp+uniapp开发的多端商城系统源码/H5/小程序/APP支持DIY模板直播分销
thinkphp+uniapp开发的多端商城系统源码/H5/小程序/APP支持DIY模板直播分销
570 0

热门文章

最新文章