CN112541375A - 一种手部关键点识别方法及装置 - Google Patents

一种手部关键点识别方法及装置 Download PDF

Info

Publication number
CN112541375A
CN112541375A CN201910893179.0A CN201910893179A CN112541375A CN 112541375 A CN112541375 A CN 112541375A CN 201910893179 A CN201910893179 A CN 201910893179A CN 112541375 A CN112541375 A CN 112541375A
Authority
CN
China
Prior art keywords
hand
virtual
user
input device
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910893179.0A
Other languages
English (en)
Inventor
张洁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910893179.0A priority Critical patent/CN112541375A/zh
Publication of CN112541375A publication Critical patent/CN112541375A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • G06V40/113Recognition of static hand signs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • G06V40/11Hand-related biometrics; Hand pose recognition

Abstract

本申请关于一种手部关键点识别方法及装置,所述方法包括:获取虚拟交互环境中用户的手部图像;利用手部关键点识别模型组件从所述手部图像中识别出所述用户的手部关键点;其中,所述手部关键点识别模型组件被设置为在预设姿势识别模型组件的基础上减少模型参数的数量,直至模型组件的性能达到预设要求。利用本申请各个实施例提供的手部关键点识别方法及装置,可以降低虚拟交互类设备的耗电速度,增加用户良好的体验感。

Description

一种手部关键点识别方法及装置
技术领域
本申请涉及计算机视觉技术领域,尤其涉及一种手部关键点识别方法及装置。
背景技术
目前,人机交换技术产业不断发展,尤其是虚拟现实(Virtual Reality,VR)、增强现实(Augmented Reality,AR)、混合现实(Mix Reality,MR)等技术领域,各种VR、AR、MR硬件产品不断推陈出新,用户体验大大提升。
用户在使用VR、AR、MR等产品进行人机互动的过程中,往往需要识别出用户的手部关键点。相关技术中的手部关键点识别主要是利用技术相对比较成熟的用于人体姿势识别的模型进行识别,但是,人体姿势识别的模型往往规模较大,涉及的参数数量较多。在虚拟交互环境中,手部关键点识别模块往往耦合于一些轻量级设备中,比较典型的如VR眼镜等。若手部关键点识别模块规模较大、参数较多,可能会增加轻量级设备的存储空间和计算量,进而加快设备的耗电速度,那么对于用户使用体验来说很不友好。
因此,相关技术中亟需一种轻量级的能够在虚拟交互环境中进行手部关键点识别的方式。
发明内容
本申请实施例的目的在于提供一种手部关键点识别方法及装置,可以降低交互类设备的耗电速度,增加用户良好的体验感。
本申请实施例提供的手部关键点识别方法及装置是这样实现的:
一种手部关键点识别方法,所述方法包括:
获取虚拟交互环境中用户的手部图像;
利用手部关键点识别模型组件从所述手部图像中识别出所述用户的手部关键点;其中,所述手部关键点识别模型组件被设置为在预设姿势识别模型组件的基础上减少模型参数的数量,直至模型组件的性能达到预设要求。
一种手部关键点识别装置,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现所述的手部关键点识别装置。
本申请提供的手部关键点识别方法及装置,可以利用轻量级的手部关键点识别模型组件识别虚拟交互环境中用户的手部关键点,其中,所述轻量级的手部关键点识别模型被设置为在相关技术中的姿势识别模型组件的基础上减少模型参数数量设计而成。基于此,所述手部关键点识别模型组件更加适合集成于轻量级的交互类设备中,降低交互类设备的耗电速度,增加用户良好的体验感。
一种数据处理方法,所述方法包括:
在虚拟交互环境中接收用户的指示信息;
响应于所述指示信息,确定与所述指示信息相匹配的虚拟输入设备;
在用户自定义的位置上展示所述虚拟输入设备。
一种数据处理装置,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现所述的数据处理装置。
本申请提供的数据处理方法及装置,可以在虚拟交互环境中,响应于用户的指示信息,展示与所述指示信息相匹配的虚拟输入设备,且所述虚拟输入设备的展示位置可以由用户自定义。通过在虚拟交互环境中设置虚拟输入设备,至少可以具有以下优势:
(1)虚拟输入设备设置于原生的虚拟交互设备中,相比于外接的硬件输入设备而言,虚拟交互设备的耦合度更高、兼容性更强、稳定性也更高;
(2)虚拟输入设备为虚拟成像的设备,无需考虑到其耗电、老化等硬件问题;
(3)虚拟输入设备的位置可以由用户自定义,对于用户来说,可以自由地将所述虚拟输入设备设置于任何便于操作的位置。
一种电子设备,包括摄像装置以及所述手部关键点识别装置,其中,所述摄像装置用于捕捉虚拟交互环境中用户的手部图像。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得处理器能够执行权利要求所述的方法。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的一种应用场景示意图。
图2是根据一示例性实施例示出的一种应用场景示意图。
图3是根据一示例性实施例示出的一种手部关键点识别方法流程示意图。
图4是根据一示例性实施例示出的一种应用场景示意图。
图5是根据一示例性实施例示出的一种应用场景示意图。
图6是根据一示例性实施例示出的一种数据处理方法流程示意图。
图7是根据一示例性实施例示出的一种手部关键点识别装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
为了方便本领域技术人员理解本申请实施例提供的技术方案,下面先对技术方案实现的技术环境进行说明。
本申请实施例中的虚拟交互环境可以包括基于VR、AR、MR等任何一种技术的交互环境。在所述虚拟交互环境中,用户可以通过眼镜或者头盔等硬件产品观看到虚拟场景或者虚拟与现实的混合场景等。另外,用户还可以通过射线笔、触控板、手柄、感应手套、指环、手环、座椅、跑步机等实体输入设备进行操作,这些输入设备可以感应到用户的操作,并生成操作结果。当然,用户还可以裸手在虚拟交互环境中操作,通过识别用户的手部关键点,即可以确定用户的操作。在一个示例中,用户可以触摸成像于虚拟交互环境中的虚拟猫咪,并可以与虚拟猫咪进行互动,在此场景下,需要识别出用户的手部关键点,并确定出用户手部对虚拟猫咪的操作。在实际应用中,识别用户手部关键点的模块往往集成于交互类硬件设备之内,如眼镜、头盔、手环等等,大部分交互类硬件设备都是轻量级的无线设备,因此耗电很快。基于此,降低手部关键点识别模块的耗电速度是刻不容缓的需求。
基于类似于上文所述的实际技术需求,本申请提供的手部关键点识别方法可以提供一种在虚拟交互环境中使用的轻量级的手部关键点识别方式。
下面通过一个具体的应用场景说明本申请各个实施例提供的手部关键点识别方法。
图1是本申请实施例的应用场景示意图,如图1所示,用户头戴AR眼镜101,并通过AR眼镜101沉浸于视频教学的虚拟交互环境中。用户在观看过程中,可能需要在视频中标注一些听课笔记,且听课笔记需要文字输入。本应用场景中的视频教学虚拟交互环境能够支持利用虚拟键盘输入文字,且可以通过指定的手势触发展示所述虚拟键盘。例如,该指定的手势是手掌握拳,食指向上。用户在了解到触发展示所述虚拟键盘的手势的情况下,可以在需要利用所述虚拟键盘输入文字时,做出上述手势。在本应用场景中,可以通过安装于AR眼镜101上的摄像装置103获取到用户的图像或者视频。相关处理模块在处理所述图像或者视频的过程中,可以识别出用户做出的手势图像105,并确定该手势为触发展示所述虚拟键盘的指定手势。
在本场景中,用户在成功实施触发展示所述虚拟键盘的指定手势之后,可以指定在空间中的任何位置处展示所述虚拟键盘。例如,为了提升打字的舒适度,用户可以指定在平整的能够支撑胳膊的位置处(如桌面)展示所述虚拟键盘。在一种实施场景中,用户可以指定三个不同的位置点以确定出一平面,如在桌面的三个位置点处点击以确定出一平面。当然,还可以通过圈出封闭图形的方式确定出平面,本申请在此不做限制。
在确定出指定平面之后,可以在所述指定平面中展示所述虚拟键盘。图2是用户利用AR眼镜101观看得到的球形画布203,本实施例中,可以将虚拟键盘201展示于所述球形画布203中,展示方式可以包括将虚拟键盘201嵌入至所述球形画布203中,或者,展示于所述球形画布203之外独立的画布中,在此不做限制。如图2所示,用户通过AR眼镜观看到所述虚拟键盘201之后,可以对所述虚拟键盘201进行操作,例如,移动所述虚拟键盘201位置,例如,将虚拟键盘201从一个桌面移动至另一个桌面上,或者,在所述虚拟键盘201中敲字等等。另外,所述虚拟键盘201中还可以包括触摸板区域,用户还可以通过在触摸板上操作,实现对观看到的物体移动、翻转、放大、缩小等操作。
虽然以上结合视频教学的场景对本发明的实施例进行描述,应该理解的是,本发明不限于上述应用场景,还可以应用于其他场景中。
下面结合附图对本申请所述的手部关键点识别方法进行详细的说明。图3是本申请提供的手部关键点识别方法的一种实施例的方法流程示意图。虽然本申请提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑性上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。所述方法在实际中的手部关键点识别过程中或者装置执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
具体的,如图3所示,本申请提供的手部关键点识别方法的一种实施例可以包括以下步骤:
S301:获取虚拟交互环境中用户的手部图像。
S303:利用手部关键点识别模型组件从所述手部图像中识别出所述用户的手部关键点;其中,所述手部关键点识别模型组件被设置为在预设姿势识别模型组件的基础上减少模型参数的数量,直至模型组件的性能达到预设要求。
在实际的应用场景下,用户可以在虚拟交互环境中进行操作,许多操作往往涉及到识别出用户的手部关键点。所述手部关键点例如可以包括用户的指尖、各个指关节等等,当然,也可以是手掌等手部的任何位置。
在本申请的一个实施例中,可以获取虚拟交互环境中用户的手部图像。在一个实施例中,可以在虚拟交互环境中利用摄像装置捕捉用户的图像或视频。所述摄像装置可以安装于任何能够捕捉到用户做出触发动作的位置,在一个示例中,所述摄像装置可以设置于虚拟交互设备中,如AR或VR眼镜中。
在获取到用户的图像或视频之后,可以检测所述图像或视频中是否包括手部图像。在确定所述图像或视频中包括手部图像的情况下,将所述手部图像从所述图像或视频中分割出来。在一个示例中,可以利用矩形框将手部图像从所述图像或视频中截取出来,或者,利用抠图的方式只将手部图像截取出来。在将手部图像分割出来之后,可以对分割出来的所述手部图像进行手部关键点识别,确定所述用户的手部关键点。在本申请实施例中,可以利用手部关键点模型组件识别所述手部图像中的手部关键点。
所述手部关键点识别模型组件被设置为在预设姿势识别模型组件的基础上减少模型参数的数量,直至模型组件的性能达到预设要求。所述预设姿势识别模型组件可以包括相关技术中的常用姿势识别模型组件,如DensePose、OpenPose、Realtime Multi-PersonPose Estimation、AlphaPose、Human Body Pose Estimation、DeepPose等等。由于手部关键点的数量远远小于人体关键点,并且由于虚拟交互设备大部分都是轻量级的,因此,在需要将手部关键点识别模型组件集成至所述虚拟交互设备的情况下,可以在保证一定性能要求的情况下,尽可能地压缩模型组件,减少模型组件所占用的空间。
本申请实施例可以在这些姿势识别模型组件的基础上减少模型参数的数量,并使得所述模型组件的性能能够达到预设要求。所述预设姿势识别模型组件可以包括主干网络和分类网络,在常用的姿势识别模型中,所述主干网络可以包括VGG系列网络,如VGG16网络、VGG19网络等等,所述分类网络可以包括卷积网络等。基于此,所述在预设姿势识别模型组件的基础上减少模型参数的数量的方式可以包括下述中的至少一种:
将所述主干网络调整为轻量化网络;
减小所述分类网络中卷积核的尺寸;
减少所述分类网络的卷积通道数。
本申请实施例中,可以将所述主干网络调整为轻量化网络,所述轻量化网络可以包括相关技术中一些轻量级的模型组件,如SqueezeNet、MobileNet、ShuffleNet、Xception等等。这些轻量化网络相对于其他类型的网络模型组件,能够在不损失网络性能的情况下,具有较少的网络参数。因此,将主干网络调整为轻量化网络可以起到压缩模型的作用。
在本申请的一个实施例中,所述轻量化网络还包括基于残差网络的轻量化网络。也就是说,在一些实施例中,可以对所述主干网络进行压缩处理,并利用残差网络使得网络深度的增加而不退化,并具有较好的收敛效果。在一个示例中,可以对主干网络VGG16进行压缩处理,图4是VGG16的模块结构示意图,图5是压缩改进后的VGG16的模块结构示意图,通过将图4和图5对比发现,可以将VGG16中的部分卷积层替换成fire模块,其中,所述fire模块为轻量级模型组件SqueezeNet网络中所涉及的模块,fire模块包括squeeze层和expand层,其中,squeeze层包括多个尺寸为1x1的卷积核,expand层中包括多个尺寸为1x1和3x3的卷积核。如图5所示,改进后的结构中还包括多个旁路连接,采取旁路连接的目的是为了学习输入和输出之间的残差函数,改变替换的fire模块中参数的正则化,并且根据残差函数,可以提高最终精度和训练完整模型的能力。
需要说明的是,对主干网络的压缩方式还可以包括其他任何能够减少网络参数数量的方式,本申请在此不做限制。
本申请实施例中,还可以通过减小所述分类网络中卷积核的尺寸和减少所述分类网络的卷积通道数的方式减少所述预设姿势识别模型组件中模型参数的数量。在一个示例中,在一个姿势识别模型组件的分类网络中,可以设置卷积核大小为7×7,卷积核通道数位5个通道,网络阶段数为6级。在此基础上,本申请实施例由于针对手部识别,可以将分类网络中的卷积核大小缩小为3×3,卷积核通道数减少为2个通道,网络阶段数减少为2级,当然,对于不同的网络阶段,减少的数量可以适当调整,在此不做限制。这样,可以大大加快分类网络的训练速度,减小分类网络的规模。
本申请实施例中,在利用所述手部关键点识别模型组件从所述手部图像中饭识别出用户的手部关键点之后,可以确定所述手部关键点在所述虚拟环境中的位置。根据所述手部关键点的位置,判断所述手部关键点是否与虚拟输入设备相接触。在确定所述手部关键点与所述虚拟输入设备相接触的情况下,可以确定所述手部关键点在所述虚拟输入设备中的操作。在一个实施例中,可以构建三维坐标系,并确定手部关键点在所述三维坐标系中的位置。当然,在确定手部关键点位置的情况下,还需要确定虚拟输入设备中各个输入部件在所述三维坐标系中的位置。在一个示例中,对于键盘来说,可以确定键盘中各个按键在所述三维坐标系中的位置。在另一个示例中,对于鼠标来说,可以确定鼠标中左右键在所述三维坐标系中的位置。基于此,在分别确定用户手部关键点的位置和所述虚拟输入设备中各个输入部件在所述三维坐标系中的位置的情况下,可以判断用户手部关键点是否与所述虚拟输入设备相接触。在接触的情况下,还可以确定具体跟哪个输入部件接触。进而可以根据用户的操作,获取操作所对应的操作结果。
本申请提供的手部关键点识别方法,可以利用轻量级的手部关键点识别模型组件识别虚拟交互环境中用户的手部关键点,其中,所述轻量级的手部关键点识别模型被设置为在相关技术中的姿势识别模型组件的基础上减少模型参数数量设计而成。基于此,所述手部关键点识别模型组件更加适合集成于轻量级的交互类设备中,降低交互类设备的耗电速度,增加用户良好的体验感。
本申请另一面该提供一种数据处理方法,具体的,如图6所示,本申请提供的数据处理方法的一种实施例可以包括以下步骤:
S601:在虚拟交互环境中接收用户的指示信息。
S603:响应于所述指示信息,确定与所述指示信息相匹配的虚拟输入设备。
S605:在用户自定义的位置上展示所述虚拟输入设备。
在本申请实施例中,用户可以在虚拟交互环境中指示生成虚拟输入设备,所述虚拟输入设备可以包括虚拟键盘、虚拟鼠标、虚拟触摸板、虚拟手写输入等设备。用户沉浸于虚拟交互环境中且需要通过上述虚拟输入设备进行数据输入时,可以发出指示信息。例如,在一个示例中,用户在利用VR眼镜观看教学类视频的过程中,需要在视频中标注一些笔记,因此,用户可以发出指示信息,指示生成虚拟键盘,这样,用户可以通过虚拟键盘输入一些文字。
在本申请的一个实施例中,用户的指示信息可以包括动作,即用户可以做出一或多个动作触发生成所述虚拟输入设备。所述动作包括下述中的至少一种:眼球运动、表情、手势、姿势。其中,所述眼球运动可以包括用户眼球的运动轨迹,如眼球向上下左右四个方向的运动、眨眼睛等等。用户的表情可以包括用户在面部完成的动作,如微笑、皱眉、张嘴、闭眼、眨眼等。用户的手势可以包括利用手部完成的动作,如拳头、OK、比心、作揖、作别、祈祷、我爱你、点赞、Rock、数字等等。用户的姿势可以包括用户利用肢体语言完成的动作,如单脚独立、上跳、双臂比心等等。
基于此,在本申请的一个实施例中,可以在虚拟交互环境中利用摄像装置捕捉用户的图像或视频。所述摄像装置可以安装于任何能够捕捉到用户做出触发动作的位置,例如,若所述触发动作为手势,则可以将所述摄像装置放置在面向用户的手部位置。在一个实施例中,所述摄像装置可以设置于虚拟交互设备中,如AR或VR眼镜中。
在获取到用户的图像或视频之后,可以从所述图像或视频中识别出所述用户的动作。下面以手势举例说明,首先,可以检测所述图像或视频中是否包括手部图像。在确定所述图像或视频中包括手部图像的情况下,将所述手部图像从所述图像或视频中分割出来。在一个示例中,可以利用矩形框将手部图像从所述图像或视频中截取出来,或者,利用抠图的方式只将手部图像截取出来。在将手部图像分割出来之后,可以对分割出来的所述手部图像进行手势识别,确定所述用户的手势。在一个实施例中,在确定分割出来的所述手部图像中的手势的过程中,可以确定所述手部图像中的多个手部关键点,然后,根据所述多个手部关键点,确定所述用户的手势。所述手部关键点可以包括指关节、指尖、掌心等多个关键点。需要说明的是,以上从手部图像中获取手势的过程可以通过机器模型(例如,神经网络模型)实现,在利用机器模型实现的过程中,可以利用多个标注有手势标签的手部图像样本训练所述机器模型,直至所述机器模型满足预设要求。当然,在其他实施例中,还可以通过已有的成熟的目标检测模型确定用户的手势,例如mobilenet-SSD模型,该模型为轻量模型,运算速度较快,便于部署于AR眼镜等轻量级设备上,本申请对于目标检测模型不做限制。基于此,对于识别除手势之外的动作,可以参考以上识别手势的方式,在此不再赘述。需要说明的是,所述动作不限于利用摄像装置捕捉,也可以利用其他输入设备获取,如用感应手套获取到用户的手势、利用感应服装获取到用户的姿态等等,本申请在此不做限制。另外,所述指示信息也不限于所述动作,还可以通过其他输入设备产生所述指示信息,如可以用射线笔、手柄、感应手套等生成所述指示信息,如用射线笔画出预设的符号也可以生成触发展示虚拟输入设备的指示信息,或者通过手柄上的某个按钮也可以生成触发展示虚拟输入设备的指示信息。当然,在其他实施例中,还可以语音触发生成所述指示信息,如用户可以通过发出“请打开虚拟键盘”的语音指令指示打开虚拟键盘,本申请对于用户在虚拟环境中发出指示信息的方式不做限制。
本申请实施例中,在接收到所述指示信息之后,可以响应于接收到所述指示信息,确定与所述指示信息相匹配的虚拟输入设备。在虚拟交互环境中,可以包括至少一种虚拟输入设备,如虚拟键盘、虚拟鼠标、虚拟触摸板、虚拟手写输入设备等等。本申请实施例中,所述指示信息与所述虚拟输入设备可以具有相对应的关系。在一种实施例中,所述指示信息可以与所述虚拟输入设备具有一一对应的关系,即一种指示信息可以触发展示一种虚拟输入设备。当然,在其他实施例中,一种指示信息可以触发展示多种虚拟输入设备,或者,一种虚拟输入设备可以对应于多种指示信息,本申请在此不做限制。在一个实施例中,可以在设置所述虚拟交互环境的交互逻辑的过程中,设置指示信息与虚拟输入设备对应关系。例如,可以设置手势“Rock”触发展示虚拟键盘、手势“比心”可以触发展示虚拟鼠标、手势“拳头”可以触发展示虚拟手写输入装置等等。那么,在获取用户的手势并确定所述手势为预设触发手势的情况下,可以获取所述手势所对应的虚拟输入设备。如获取到用户的手势为“拳头”,可以确定该手势所对应的虚拟输入设备为虚拟手写输入装置。当然,对于只设置一种虚拟输入设备的情况,在获取到所述指示信息之后,可以直接确定所述虚拟交互环境中唯一的虚拟输入设备。
本申请实施例中,在确定与所述指示信息相匹配的虚拟输入设备之后,可以在用户自定义的位置上展示所述虚拟输入设备。在展示所述虚拟输入设备之前,可以构建所述虚拟输入设备的二维模型或者三维模型,具体地,可以通过Unity 3D、Unreal Engine、CryEngine等虚拟平台构建完成。在利用虚拟平台构建所述虚拟输入设备的模型的过程中,可以分为两个步骤。第一步骤是设置交互逻辑,即设置用户可以在所述虚拟输入设备中实施的操作,如对于虚拟键盘,可以设置允许用户实施的操作包括点击、触摸等,对于虚拟鼠标,可以设置允许用户实施的操作包括单击、双击、移动等等。当然,对于上述虚拟输入设备的交互逻辑设置不限于上述举例,当需要对所述虚拟输入设备的操作类型越多,设置的交互逻辑随之也就越多,本申请在此不再累述。
第二个步骤是渲染画面,即渲染出能够在虚拟环境的画布中展示的虚拟输入设备的画面。在一个实施例中,可以预先在Unity 3D、Unreal Engine、Cry Engine等虚拟平台上渲染完成所述虚拟输入设备的模型,待用户沉浸于虚拟环境中时,可以将渲染生成的模型画面展示于画布中,画布类型可以包括如球形画布、半球形画布、环形画布等。在另一个实施例中,可以对所述虚拟三维模型进行实时渲染,也就是说,用户在沉浸于虚拟环境的时刻,所述虚拟平台或者图像程序(如OpenGL等)开始渲染所述虚拟输入设备。例如在一种具体的实施例中,所述虚拟平台或者所述图像程序可以分别对双眼所看到的虚拟三维模型进行体绘制,然后基于模拟双眼的立体视差(stereo)效果进行体渲染。需要说明的是,实时渲染相对于非实时渲染需要较快的帧渲染速度,例如,在本实施例中,所述帧渲染速度可以至少达到双眼180帧/s,即单眼90帧/s时才不会造成用户的眩晕感,因此,渲染所述虚拟输入设备的设备可以具有性能较高的显卡。
本申请实施例中,可以在用户自定义的位置上展示所述虚拟输入设备。在此情况下,可以接收位置信息,所述位置信息中包括用户自定义的位置信息。其中,所述位置信息可以包括点、面等多种表达形式。类似于所述指示信息,所述位置信息也可以通过多种方式触发,如动作、实体输入设备等,其中,所述动作可以包括下述中的至少一种:眼球运动、表情、手势、姿势。在一个示例中,用户可以通过手势表达所述位置信息。在实际应用中,当用户可以轻松便捷地操作输入设备时,往往希望该输入设备是平面的,如键盘、鼠标,手写板等等。
基于此,用户可以通过所述位置信息表达希望所述虚拟输入设备的成像平面位置。在一个实施例中,所述位置信息可以包括用户手指点击生成的至少三个位置点所在的平面。在此情况下,用户通过手势触发所述指示信息之后,随后可以在任意三个位置点处点击,以生成所述位置信息,指示展示所述虚拟输入设备的位置。在一个示例中,用户可以在水平面上的任意三个位置点处点击,这样,可以将所述虚拟输入设备成像于水平面上。在另一个实施例中,所述位置信息可以包括手指圈出的封闭图形所在的平面,即,用户可以通过手指圈出任意封闭图像以生成所述位置信息。在一个示例中,用户可以在水平面上画一个圆圈,这样可以将所述虚拟输入设备成像于水平面上。在另一个实施例中,所述位置信息还可以包括手掌滑动所产生的平面。当然,在其他实施例中,还可以通过其他手势或者动作以指示生成所述位置信息,如通过眼球运动轨迹生成所述位置信息,本申请在此不做限制。
在上述识别所述位置信息的实施例中,具有识别出用户指尖位置的需求。基于此,在本申请的一个实施例中,可以首先识别出用户的指尖,再确定出指尖的位置。在识别出用户的指尖可以参考上述实施例中检测并识别手势的方式,如先检测出图像或者视频中是否有手部图像,若检测出手部图像,可以将手部图像从所述图像或者视频中分割出来。然后,可以确定分割出来的手部图像中的手部关键点,所述手部关键点可以是指尖。在确定用户指尖之后,可以确定指尖的位置。在一个实施例中,可以构建三维坐标系,并确定用户指尖在所述三维坐标系中的位置。在一个示例中,若检测到用户分别点击出三个位置点A、B、C,其中,位置点A在基于XYZ坐标系的坐标值为(23,68,-20),B的坐标值为(35,70,-20),C的坐标值为(30,52,-20),基于此,可以在距离Z=0平面-20的平面上展示所述虚拟输入设备。
需要说明的是,在其他实施例中,还可以通过实体输入设备生成所述位置信息,如通过射线笔的光标轨迹指示所述虚拟输入设备的成像位置,本申请在此不做限制。
本申请实施例中,在展示所述虚拟输入设备的过程中,可以将所述虚拟输入设备以画中画的形式展示于所述虚拟交互环境的画布中。也就是说,所述虚拟输入设备和所述虚拟交互环境的成像画布为同一画布,具体的展示形式可以包括将所述虚拟输入设备嵌入或者叠加在原始画布上。当然,在其他实施例中,还可以设置独立的画布,并在独立的画布上展示所述虚拟输入设备,本申请对于所述虚拟输入设备的展示方式不做限制。
在本申请实施例中,在所述虚拟交互环境中展示所述虚拟输入设备之后,用户可以在所述虚拟输入设备中进行操作。因此,可以接收用户在所述虚拟输入设备上的输入操作,并在所述虚拟交互环境中响应所述输入操作,并生成操作结果。在一个示例中,用户利用虚拟键盘输入一段文字,并希望这段文字标注于图像中的指定位置处,那么,用户在输入完成文字后,需要响应用户的操作,并将用户输入的文字展示于用户指定的位置处。
在实际应用环境中,很多虚拟输入设备需要用户利用手指尤其是指尖进行输入,如所述虚拟输入设备包括键盘、鼠标、手写输入板的情况下。基于此,在接收并响应用户的输入操作的过程中,可以检测用户的指尖,并确定所述指尖的位置。然后,可以根据用户指尖的位置,判断用户指尖是否与所述虚拟输入设备相接触,在确定用户指尖与所述虚拟输入设备相接触的请款修改,可以确定用户之间在所述虚拟输入设备中的操作。
在本申请的一个实施例中,在检测并识别出用户的指尖可以参考上述实施例中检测并识别手势的方式,如先检测出图像或者视频中是否有手部图像,若检测出手部图像,可以将手部图像从所述图像或者视频中分割出来。然后,可以确定分割出来的手部图像中的手部关键点,所述手部关键点可以是指尖。在确定用户指尖之后,可以确定指尖的位置。在一个实施例中,可以构建三维坐标系,并确定用户指尖在所述三维坐标系中的位置。当然,在确定指尖位置的情况下,还需要确定虚拟输入设备中各个输入部件在所述三维坐标系中的位置。在一个示例中,对于键盘来说,可以确定键盘中各个按键在所述三维坐标系中的位置。在另一个示例中,对于鼠标来说,可以确定鼠标中左右键在所述三维坐标系中的位置。基于此,在分别确定用户指尖的位置和所述虚拟输入设备中各个输入部件在所述三维坐标系中的位置的情况下,可以判断用户指尖是否与所述虚拟输入设备相接触。在接触的情况下,还可以确定具体跟哪个输入部件接触。进而可以根据用户的输入操作,获取输入操作对应的操作结果。
本申请实施例中,在识别手部关键点的过程中,也可以利用机器学习模型进行识别。在本申请的一个实施例中,可以利用改进的人体姿态模型(Convolutional PoseMachines,CPM)。由于手部关键点的数量远远小于人体关键点,因此,可以降低模型的输入尺寸,如从368×368降低为320×320。同时,还可以降低卷积核尺寸、减少卷积通道数、减少网络阶段数。在一个示例中,在识别人体关键点的情况下,设置CPM的卷积核大小为7×7,卷积核通道数位5个通道,网络阶段数为6级,在此基础上,本申请实施例由于针对手部识别,可以将CPM的卷积核大小缩小为3×3,卷积核通道数减少为2个通道,网络阶段数减少为2级,当然,对于不同的网络阶段,减少的数量可以适当调整,在此不做限制。这样,可以大大加快CPM的训练速度,减小CPM的规模。
另外,相关技术中CPM的主干网络(Backbone)为VGG19网络,该网络使用3×3卷积核的卷积层堆叠并交替最大池化层,有两个4096维的全连接层,然后是softmax分类器,19代表网络中权重层的数量。在本申请实施例中,可以将CPM中的主干网络由VGG19网络替换成残差网络,所述残差网络包括例如ResNet,残差网络可以使用一个称为残差模块的标准网络组件以组成更复杂的网络,以及标准的随机梯度下降法进行训练。与VGG19网络相比,残差网络具有更多的网络层,但是由于使用全局平均池操作而不是全连接密集层,所以残差网络模型的尺寸更小。同时,残差网络的计算准确度和计算效率均高于VGG19网络,因此,更加适合部署于AR眼镜等轻量级设备上。
需要说明的是,以上检测指尖是否跟所述虚拟输入设备相接触,以及确定具体接触哪个部件的实施过程可以通过Unity 3D、Unreal Engine、Cry Engine等虚拟平台实现。即,预先在虚拟平台上设置交互逻辑,在使用过程中,可以通过所述虚拟平台实现以上功能。
此外,在本公开中,在预定时间内检测不到手势的情况下,设备可以进入休眠状态以节省电源。当检测到下一个手势后,设备可以重新启动,并检测指尖是否与虚拟输入设备相接触。
本申请提供的数据处理方法,可以在虚拟交互环境中,响应于用户的指示信息,展示与所述指示信息相匹配的虚拟输入设备,且所述虚拟输入设备的展示位置可以由用户自定义。通过在虚拟交互环境中设置虚拟输入设备,至少可以具有以下优势:
(1)虚拟输入设备设置于原生的虚拟交互设备中,相比于外接的硬件输入设备而言,虚拟交互设备的耦合度更高、兼容性更强、稳定性也更高;
(2)虚拟输入设备为虚拟成像的设备,无需考虑到其耗电、老化等硬件问题;
(3)虚拟输入设备的位置可以由用户自定义,对于用户来说,可以自由地将所述虚拟输入设备设置于任何便于操作的位置。
对应于上述手部关键点识别方法和数据处理方法,本申请还分别提供一种手部关键点识别装置和数据处理装置,所述手部关键点识别装置和所述数据处理装置可以包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时可以分别实现上述任一实施例所述的手部关键点识别方法和数据处理方法。图7是手部关键点识别装置的模块结构示意图。
本申请另一方面还提供一种电子设备,所述电子设备包括摄像装置和所述手部关键点识别装置,其中,所述摄像装置用于捕捉虚拟交互环境中用户的手部图像。在一些示例中,所述电子设备可以包括虚拟交互类硬件设备,如眼镜、头盔、手环、座椅、跑步机、游戏机等等。
本申请另一方面还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述任一实施例所述方法的步骤。
所述计算机可读存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。本实施例所述的计算机可读存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如RAM、ROM等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、U盘;利用光学方式存储信息的装置如,CD或DVD。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (25)

1.一种手部关键点识别方法,其特征在于,所述方法包括:
获取虚拟交互环境中用户的手部图像;
利用手部关键点识别模型组件从所述手部图像中识别出所述用户的手部关键点;其中,所述手部关键点识别模型组件被设置为在预设姿势识别模型组件的基础上减少模型参数的数量,直至模型组件的性能达到预设要求。
2.根据权利要求1所述的手部关键点识别方法,其特征在于,所述预设姿势识别模型组件包括主干网络和分类网络,所述在预设姿势识别模型组件的基础上减少模型参数的数量的方式包括下述中的至少一种:
将所述主干网络调整为轻量化网络;
减小所述分类网络中卷积核的尺寸;
减少所述分类网络的卷积通道数。
3.根据权利要求2所述的手部关键点识别方法,其特征在于,所述轻量化网络包括基于残差网络模型组件的轻量化网络。
4.根据权利要求1所述的手部关键点识别方法,其特征在于,所述获取虚拟交互环境中用户的手部图像,包括:
在虚拟交互环境中利用摄像装置捕捉用户的图像或视频;
检测所述图像或视频中是否包括手部图像;
在确定所述图像或视频中包括手部图像的情况下,将所述手部图像从所述图像或视频中分割出来。
5.根据权利要求1所述的手部关键点识别方法,其特征在于,在所述利用手部关键点识别模型组件从所述手部图像中识别出所述用户的手部关键点之后,所述方法还包括:
确定所述手部关键点在所述虚拟环境中的位置;
根据所述手部关键点的位置,判断所述手部关键点是否与虚拟输入设备相接触;
在确定所述手部关键点与所述虚拟输入设备相接触的情况下,确定所述手部关键点在所述虚拟输入设备中的操作。
6.根据权利要求5所述的手部关键点识别方法,其特征在于,所述确定所述手部关键点在所述虚拟环境中的位置,包括:
构建三维坐标系;
确定所述手部关键点在所述三维坐标系中的位置。
7.根据权利要求6所述的手部关键点识别方法,其特征在于,所述根据所述手部关键点的位置,判断所述手部关键点是否与虚拟输入设备相接触,包括:
确定所述虚拟输入设备所包含的输入部件在所述三维坐标系中的位置;
根据所述手部关键点以及所述输入部件所述三维坐标系中的位置,判断所述手部关键点是否与所述虚拟输入设备相接触。
8.根据权利要求5-7任一项所述的手部关键点识别方法,其特征在于,所述虚拟输入设备包括虚拟键盘、虚拟鼠标、虚拟触摸板中的至少一种。
9.一种数据处理方法,其特征在于,所述方法包括:
在虚拟交互环境中接收用户的指示信息;
响应于所述指示信息,确定与所述指示信息相匹配的虚拟输入设备;
在用户自定义的位置上展示所述虚拟输入设备。
10.根据权利要求9所述的数据处理方法,其特征在于,所述在虚拟交互环境中接收用户的指示信息,包括:
在虚拟交互环境中利用摄像装置捕捉用户的图像或视频;
从所述图像或视频中识别出所述用户的动作;
在确定所述动作为预设触发动作的情况下,将所述动作作为指示信息。
11.根据权利要求10所述的数据处理方法,其特征在于,所述动作包括下述中的至少一种:眼球运动、表情、手势、姿势。
12.根据权利要求10所述的数据处理方法,其特征在于,在所述动作包括手势的情况下,所述从所述图像或者所述视频中识别出所述用户的动作,包括:
检测所述图像或视频中是否包括手部图像;
在确定所述图像或视频中包括手部图像的情况下,将所述手部图像从所述图像或视频中分割出来;
对分割出来的所述手部图像进行手势识别,确定所述用户的手势。
13.根据权利要求12所述的数据处理方法,其特征在于,所述对分割出来的所述手部图像进行手势识别,确定所述用户的手势,包括:
确定分割出来的所述手部图像中的多个手部关键点;
根据所述多个手部关键点,确定所述用户的手势。
14.根据权利要求9所述的数据处理方法,其特征在于,所述在用户自定义的位置上展示所述虚拟输入设备,包括:
接收位置信息,所述位置信息中包括用户自定义的位置信息;
响应于接收到所述位置信息,在所述位置信息所对应的位置上构建虚拟输入设备;
在所述虚拟交互环境中展示所述虚拟输入设备。
15.根据权利要求14所述的数据处理方法,其特征在于,所述位置信息包括下述中的至少一种平面位置:
手指点击生成的至少三个位置点所确定的平面;
手指圈出的封闭图形所在的平面;
手掌滑动所产生的平面。
16.根据权利要求14所述的数据处理方法,其特征在于,所述在所述虚拟交互环境中展示所述虚拟输入设备,包括:
将所述虚拟输入设备以画中画的形式展示于所述虚拟交互环境的画布中。
17.根据权利要求9所述的数据处理方法,其特征在于,在用户自定义的位置上展示所述虚拟输入设备之后,所述方法还包括:
接收在所述虚拟输入设备上的输入操作;
在所述虚拟交互环境中响应所述输入操作,并生成操作结果。
18.根据权利要求17所述的数据处理方法,其特征在于,所述接收在所述虚拟输入设备上的输入操作,包括:
检测用户的指尖,并确定所述指尖的位置;
根据所述指尖的位置,判断所述指尖是否与所述虚拟输入设备相接触;
在确定所述指尖与所述虚拟输入设备相接触的情况下,确定所述指尖在所述虚拟输入设备中的操作。
19.根据权利要求18所述的数据处理方法,其特征在于,所述确定用户的指尖位置,包括:
检测并识别出用户的指尖;
构建三维坐标系,并确定所述指尖在所述三维坐标系中的位置。
20.根据权利要求19所述的数据处理方法,其特征在于,所述根据所述指尖的位置,判断所述指尖是否与所述虚拟输入设备相接触,包括:
确定所述虚拟输入设备所包含的输入部件在所述三维坐标系中的位置;
根据所述指尖以及所述输入部件所述三维坐标系中的位置,判断所述指尖是否与所述虚拟输入设备相接触。
21.根据权利要求9所述的数据处理方法,其特征在于,所述虚拟输入设备包括虚拟键盘、虚拟鼠标、虚拟触摸板中的至少一种。
22.一种手部关键点识别装置,其特征在于,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1-8任意一项所述的手部关键点识别装置。
23.一种数据处理装置,其特征在于,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求9-21任意一项所述的数据处理装置。
24.一种电子设备,其特征在于,包括摄像装置以及权利要求22所述的手部关键点识别装置,其中,所述摄像装置用于捕捉虚拟交互环境中用户的手部图像。
25.一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得处理器能够执行权利要求1-21任意一项所述的方法。
CN201910893179.0A 2019-09-20 2019-09-20 一种手部关键点识别方法及装置 Pending CN112541375A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910893179.0A CN112541375A (zh) 2019-09-20 2019-09-20 一种手部关键点识别方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910893179.0A CN112541375A (zh) 2019-09-20 2019-09-20 一种手部关键点识别方法及装置

Publications (1)

Publication Number Publication Date
CN112541375A true CN112541375A (zh) 2021-03-23

Family

ID=75012404

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910893179.0A Pending CN112541375A (zh) 2019-09-20 2019-09-20 一种手部关键点识别方法及装置

Country Status (1)

Country Link
CN (1) CN112541375A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238705A (zh) * 2021-05-10 2021-08-10 青岛小鸟看看科技有限公司 虚拟键盘交互方法及系统
CN113282168A (zh) * 2021-05-08 2021-08-20 青岛小鸟看看科技有限公司 头戴式显示设备的信息输入方法、装置及头戴式显示设备
CN113792573A (zh) * 2021-07-13 2021-12-14 浙江理工大学 一种小波变换低频信息与Xception网络的静态手势识别方法
WO2023173668A1 (zh) * 2022-03-16 2023-09-21 中数元宇数字科技(上海)有限公司 一种虚拟场景中的输入识别方法、设备及存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113282168A (zh) * 2021-05-08 2021-08-20 青岛小鸟看看科技有限公司 头戴式显示设备的信息输入方法、装置及头戴式显示设备
WO2022237268A1 (zh) * 2021-05-08 2022-11-17 青岛小鸟看看科技有限公司 头戴式显示设备的信息输入方法、装置及头戴式显示设备
CN113238705A (zh) * 2021-05-10 2021-08-10 青岛小鸟看看科技有限公司 虚拟键盘交互方法及系统
CN113792573A (zh) * 2021-07-13 2021-12-14 浙江理工大学 一种小波变换低频信息与Xception网络的静态手势识别方法
WO2023173668A1 (zh) * 2022-03-16 2023-09-21 中数元宇数字科技(上海)有限公司 一种虚拟场景中的输入识别方法、设备及存储介质

Similar Documents

Publication Publication Date Title
CN112541375A (zh) 一种手部关键点识别方法及装置
CN102906671A (zh) 手势输入装置及手势输入方法
US11714880B1 (en) Hand pose estimation for machine learning based gesture recognition
EP4307096A1 (en) Key function execution method, apparatus and device, and storage medium
Xiao et al. A hand gesture-based interface for design review using leap motion controller
Chun et al. A combination of static and stroke gesture with speech for multimodal interaction in a virtual environment
Huang et al. Conceptual three-dimensional modeling using intuitive gesture-based midair three-dimensional sketching technique
Ismail et al. Vision-based technique and issues for multimodal interaction in augmented reality
Ueng et al. Vision based multi-user human computer interaction
CN111860086A (zh) 基于深度神经网络的手势识别方法、装置及系统
US11854308B1 (en) Hand initialization for machine learning based gesture recognition
Liu et al. COMTIS: Customizable touchless interaction system for large screen visualization
US11841920B1 (en) Machine learning based gesture recognition
US9870063B2 (en) Multimodal interaction using a state machine and hand gestures discrete values
Vasanthagokul et al. Virtual Mouse to Enhance User Experience and Increase Accessibility
US9727138B2 (en) Nanotechnology clothing for human-computer interaction
Baraldi et al. Natural interaction on tabletops
Bai Mobile augmented reality: Free-hand gesture-based interaction
Lu et al. Realizing multi-touch-like gestures in 3d space
Sri Charan et al. Effective Gesture-Based Framework for Capturing User Input
Asgarov et al. 3D-CNNs-Based Touchless Human-Machine Interface
Piumsomboon Natural hand interaction for augmented reality.
Reimann et al. Computer vision based interaction techniques for mobile augmented reality
Fan Practical ad hoc tangible interactions in augmented reality
Ying et al. WristSketcher: Creating 2D dynamic sketches in AR with a sensing wristband

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination