手部骨骼跟踪能力,打造控制虚拟世界的手势密码

2024-01-24 16:40

本文主要是介绍手部骨骼跟踪能力,打造控制虚拟世界的手势密码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AR作为一项增强现实技术,带来了虚拟数字世界与现实世界的深度融合,这种虚实融合,不仅能应用于虚拟汽车展示、虚拟室内设计等视觉交互场景,更可通过动作交互控制虚拟世界场景,实现无边界的人机互动。

比如人们在拍摄短视频时,可以不接触屏幕,仅通过做出特定手势来控制特效切换;也可以在拍照时通过手势识别控制快门拍摄;还可以实现试用美甲款式、戒指试戴等。以上AR应用场景需做到精确的手部识别,这就要用到AR Engine的手部骨骼跟踪能力。

手部骨骼跟踪能力可识别和跟踪21个手部关节点的位置和姿态,并输出手指端点、手掌朝向、手部骨骼等手部高级特征,形成手部骨骼模型。当图像中出现多只手时,只反馈最清晰置信度最高的手的识别结果和坐标信息,目前仅支持可获取深度信息的指定华为机型。

通过手部骨骼识别能力,可将虚拟物体叠加到更为精确的手部位置,例如手指尖、手掌心等;利用手部骨骼,可驱动虚拟手做出更为丰富和精细的操控动作,能够为AR应用提供增强的交互功能,便于拓展更多新奇的玩法。

手部骨骼定义图

应用场景

一、简单的手语翻译

手部骨骼跟踪能力可以形成简单的手语理解。在对手部骨骼关键点进行提取的基础上,根据关键点的变化预测手部姿态,可以将弯曲、竖直等手指状态集映射到一组预定义的手势,比如食指直直伸出就代表计数手势“1”,通过此类算法推导出的手势动作,就是形成手语理解的基础,可应用于手语的识别和翻译。

二、构建非接触式操作界面

科幻电影中常常会出现人物隔空操作电脑界面的场景,而此类功能基于手部骨骼跟踪能力也可以实现。

通过摄像头对手部骨骼的识别跟踪,可精确定位指尖等关键节点信息,从而实现对虚拟对象的物理交互。比如使用手指按下虚拟按钮或其他UI元素;捏住虚拟对象并释放菜单项;拉伸较大对象上的小目标等物理控制;甚至用手重新调整对象大小或将其存储在虚拟口袋中等等。

该功能可应用于医疗行业的机械控制、机车界面控制等。

三、短视频直播互动

AR Engine的手部骨骼跟踪能力也可以在短视频传播过程中增添一些手部特效,比如当用户在拍摄短视频或直播时做出比耶、点赞、比心等指定手部动作时,可识别用户手势并叠加相应的特效或贴纸,实现手势触发特效、手部特效跟踪等效果,丰富视频直播过程中的交互体验。

除此之外,手部骨骼跟踪能力还可应用于影视动画制作、儿童教学、医学康复、智能家居控制等领域。

在AR技术快速发展的今天,基于手势识别的人机交互已逐渐成为热点,如何实现自然的、符合人类习惯的手势识别,是人机交互接口中的一个重要组成部分,作为手势识别的一项基础能力,手部骨骼跟踪也凸显出了在该领域的重要地位。华为AR Engine希望该能力能够帮助开发者们激发出更广泛的研究方向和更具创新力的实际应用。

了解更多详情>>

访问华为开发者联盟官网
获取开发指导文档
华为移动服务开源仓库地址:GitHub、Gitee

关注我们,第一时间了解 HMS Core 最新技术资讯~

这篇关于手部骨骼跟踪能力,打造控制虚拟世界的手势密码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/640311

相关文章

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

Python使用Tkinter打造一个完整的桌面应用

《Python使用Tkinter打造一个完整的桌面应用》在Python生态中,Tkinter就像一把瑞士军刀,它没有花哨的特效,却能快速搭建出实用的图形界面,作为Python自带的标准库,无需安装即可... 目录一、界面搭建:像搭积木一样组合控件二、菜单系统:给应用装上“控制中枢”三、事件驱动:让界面“活”

基于Python+PyQt5打造一个跨平台Emoji表情管理神器

《基于Python+PyQt5打造一个跨平台Emoji表情管理神器》在当今数字化社交时代,Emoji已成为全球通用的视觉语言,本文主要为大家详细介绍了如何使用Python和PyQt5开发一个功能全面的... 目录概述功能特性1. 全量Emoji集合2. 智能搜索系统3. 高效交互设计4. 现代化UI展示效果

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

SpringBoot如何对密码等敏感信息进行脱敏处理

《SpringBoot如何对密码等敏感信息进行脱敏处理》这篇文章主要为大家详细介绍了SpringBoot对密码等敏感信息进行脱敏处理的几个常用方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录​1. 配置文件敏感信息脱敏​​2. 日志脱敏​​3. API响应脱敏​​4. 其他注意事项​​总结

JavaScript实战:智能密码生成器开发指南

本文通过JavaScript实战开发智能密码生成器,详解如何运用crypto.getRandomValues实现加密级随机密码生成,包含多字符组合、安全强度可视化、易混淆字符排除等企业级功能。学习密码强度检测算法与信息熵计算原理,获取可直接嵌入项目的完整代码,提升Web应用的安全开发能力 目录

使用Java实现Navicat密码的加密与解密的代码解析

《使用Java实现Navicat密码的加密与解密的代码解析》:本文主要介绍使用Java实现Navicat密码的加密与解密,通过本文,我们了解了如何利用Java语言实现对Navicat保存的数据库密... 目录一、背景介绍二、环境准备三、代码解析四、核心代码展示五、总结在日常开发过程中,我们有时需要处理各种软

MySQL精准控制Binlog日志数量的三种方案

《MySQL精准控制Binlog日志数量的三种方案》作为数据库管理员,你是否经常为服务器磁盘爆满而抓狂?Binlog就像数据库的“黑匣子”,默默记录着每一次数据变动,但若放任不管,几天内这些日志文件就... 目录 一招修改配置文件:永久生效的控制术1.定位my.cnf文件2.添加核心参数不重启热更新:高手应

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设