首页 > 编程语言 >【一步步开发AI运动小程序】十八、如何识别用户上传图片中的人体、运动、动作、姿态?

【一步步开发AI运动小程序】十八、如何识别用户上传图片中的人体、运动、动作、姿态?

时间:2024-05-28 10:12:45浏览次数:32  
标签:img AI res height width 运动 识别 上传

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

一、引言

上一篇文章,为您分享了如何对用户选择(上传)的视频,进行人体检测识别,并进行姿态分析、运动计数等实现。今天我们继续为您分享如何对用户上传(选择)图片,进行人体检测及姿态运动分析。同视频识别检测原理相似,只要拿到用户上传或选择的图片RGBA数据,即可进一步进行人体识别、姿态、运动分析等,如下图所示:
image

二、解决方案

微信小程序并没有像视频解码一样,提供直接读取图片像素数据的API,所以需要我们自行实现像素数据读取部分。根据我们的经验,有两种方案可以实现选定图片的像素数据读取。一是通过Canvas画布绘制获得,一种是先读取图像文件二进行流,再进行解析。

代码实现

由于自行解析图像像素数据方案,需要针对不同的图像格式进行解析,专业性强、工作量大,不建议采用,当然在实际实现中也可以考虑将图像传至后端使用专业库进行解析再回传,就是效率偏低、成本偏高。所以推荐采用canvas方案,简单、快速,代码如下:

    let res = await wx.chooseMedia({
        mediaType: 'image',
        count: 1
   });

   let path = res.tempFiles[0].tempFilePath;
   res = await wx.getImageInfo({
       src: path,
   });

    //写入图片
    const img = canvas.createImage();
    img.src = path;
    img.width = res.width;
    img.height = res.height;
    img.onload = async () => {
        context.drawImage(img, 0, 0, res.width, res.height);
        const buffer = context.getImageData(0, 0, res.width, res.height);
        const frame = {
            data: new Uint8Array(buffer.data),
            width: buffer.width,
            height: buffer.height
        };
        let human = await humanDetection.detectionAsync(frame);
        console.log(human);
    };

好了,视频和图片人体检测、姿态和运动分析就为您介绍到这,更多插件的使用欢迎评论交流。

标签:img,AI,res,height,width,运动,识别,上传
From: https://www.cnblogs.com/alphaair/p/18217245

相关文章

  • Nginx: stat() failed (13: permission denied)
    解决server{listen[::]:80default_server;#SSLconfiguration##listen443ssldefault_server;#listen[::]:443ssldefault_server;##Note:YoushoulddisablegzipforSSLtraffic.#S......
  • AI产品经理面试——2点30开始面试,2点35就结束了
    把优秀当习惯把优秀当习惯肯定不是口头说说,那有什么判断标准吗?当我做完一件事儿的时候,我会看它有没有突破我的舒适圈、能不能惊艳到我自己。这就是我的判断标准。在自我介绍和经历介绍时,面试者应该注重以下几个方面:结构清晰:自我介绍和经历介绍应该有一个清晰的结构,按......
  • AI大模型在测试中的深度应用与实践案例
    文章目录1.示例项目背景2.环境准备3.代码实现3.1.自动生成测试用例3.2.自动化测试脚本3.3.性能测试3.4.结果分析4.进一步深入4.1.集成CI/CD管道4.1.1Jenkins示例4.2.详细的负载测试和性能监控4.2.1Locust示例4.3.测试结果分析与报告5.进一步集成和优化......
  • 基于Java的高校学生勤工助学优派系统的设计与实现(论文+源码)_kaic
    摘  要高校勤工助学管理系统的出现,让学生的工作更加标准,不仅仅使高校办公室的办公水平以及管理水平大大提高,还优化了勤工助学资金的使用方式方法,完善了资助所需费用的资源配置,可以卓有成效地缩减学校的管理经费。本系统主要采取Java语言以及面向对象的开发模式,进行编码和......
  • 基于JAVA的高校学生请假管理系统的设计与实现(论文+源码)_kaic
    摘要随着我国越来越重视教育事业的发展,学生数量在大大增加,将用基于网络的学生‎‏管理系统融入高校管理日常事务处理中,达到改善教学管理效率的目的。本系统以Java语言进行编写设计,前端使用Vue,采用Springboot框架,利用Idea开发工具,运用MySQL数据库进行数据存储,主要流程为学......
  • 自动上传文章插件
    原因​ 有谁跟我一样,每次写完博客想发布时都得重新登一次wp(因为我隐藏了wp登录的url,防爆破的),wp登录又奇慢无比,手动把标题和文章粘贴过去,设置标签、分类,封面图,慢慢的,5分钟-10分钟就过去了。如果先发到其他平台,还是得手动访问、复制、粘贴、设置标签。​ 但是,我这个插件完完全全......
  • AI绘图之Midjourney初体验
    Midjourney(MJ)使用笔记最近尝试了Midjourney绘图,简单记录下使用流程。注册及登陆首先是账号注册和登陆,基本上就是一路下一步,唯一需要注意的是加入MJ频道,具体流程为:打开Discord,点击右上角Login进入登陆界面点击登陆页面下方的Register,进入注册页面输入用于注册的相关信......
  • AIGC行业现在适合进入吗
    简介:探讨当前时机是否适合进入AIGC行业,考虑行业发展阶段和市场需求。当你考虑进入AIGC(人工智能生成内容)这个迷人的世界时,真的,有很多事情需要思考。教育科技这一块,特别是,看起来充满了无限的可能性,不是吗?但就像任何大胆的新旅程一样,它也需要仔细规划和准备。欲扬先抑:想象进入之......
  • AI大模型入门基础教程(非常详细),AI大模型入门到精通,收藏这一篇就够了!
    什么是AI大模型?AI大模型是指使用大规模数据和强大的计算能力训练出来的人工智能模型。这些模型通常具有高度的准确性和泛化能力,可以应用于各种领域,如自然语言处理、图像识别、语音识别等。为什么要学AI大模型?2024人工智能大模型的技术岗位与能力培养随着人工智能技术......
  • AI大模型知识点大梳理
    文章目录AI大模型是什么AI大模型发展历程AI大模型的底层原理AI大模型解决的问题大模型的优点和不足影响个人观点AI大模型是什么AI大模型是指具有巨大参数量的深度学习模型,通常包含数十亿甚至数万亿个参数。这些模型可以通过学习大量的数据来提高预测能力,从而在自然语言......