CN117555416A - 手势控制方法、装置、设备和介质 - Google Patents
手势控制方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN117555416A CN117555416A CN202210938444.4A CN202210938444A CN117555416A CN 117555416 A CN117555416 A CN 117555416A CN 202210938444 A CN202210938444 A CN 202210938444A CN 117555416 A CN117555416 A CN 117555416A
- Authority
- CN
- China
- Prior art keywords
- event
- determining
- mouse
- mouse event
- user
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 230000003993 interaction Effects 0.000 claims abstract description 48
- 230000001960 triggered effect Effects 0.000 claims abstract description 30
- 238000003825 pressing Methods 0.000 claims description 100
- 230000033001 locomotion Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 15
- 238000003860 storage Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 4
- 238000005096 rolling process Methods 0.000 claims description 2
- 230000002093 peripheral effect Effects 0.000 abstract description 17
- 230000002452 interceptive effect Effects 0.000 abstract description 16
- 230000008569 process Effects 0.000 abstract description 16
- 210000003811 finger Anatomy 0.000 description 145
- 210000003813 thumb Anatomy 0.000 description 53
- 230000003190 augmentative effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 230000009471 action Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 6
- 230000008447 perception Effects 0.000 description 5
- 230000001953 sensory effect Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 210000001145 finger joint Anatomy 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000016776 visual perception Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000014860 sensory perception of taste Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0354—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
- G06F3/03543—Mice or pucks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种手势控制方法、装置、设备和介质,其中方法包括:获取手势图像;对手势图像进行识别,确定在预设手指指节中触发的目标区域;根据目标区域内的用户操作,确定关联的鼠标事件;根据鼠标事件执行相应操作。本申请通过手势操作,达到在交互设备中实现鼠标操作的目的,从而能够摆脱外设装置,使得人机交互过程简单且易于实现,有效提升了用户的使用体验。
Description
技术领域
本申请实施例涉及人机交互技术领域,尤其涉及一种手势控制方法、装置、设备和介质。
背景技术
扩展现实(Extended Reality,XR)是一种包括虚拟现实(Virtual Reality,VR)、增强现实(Augmented Reality,AR)、混合现实(Mixed Reality,MR)等各种沉浸式技术的统称。对于扩展现实设备等交互设备的人机交互方式,通常是利用手柄等外设装置与交互设备进行人机交互。但因为这种方式需要使用外设装置,不仅成本高昂,且需要用户长时间握持外设装置。并且,对于不便于握持外设装置的用户而言,这种交互方式会造成用户无法与交互设备进行流畅交互的情况发生,导致用户交互体验较差。
发明内容
本申请实施例提供一种手势控制方法、装置、设备和介质,通过手势操作,达到在交互设备中实现鼠标操作的目的,从而能够摆脱外设装置,使得人机交互过程简单且易于实现,有效提升了用户的使用体验。
第一方面,本申请实施例提供了一种手势控制方法,应用于头戴式显示设备包括:
获取手势图像;
对所述手势图像进行识别,确定在预设手指指节中触发的目标区域;
根据所述目标区域内的用户操作,确定关联的鼠标事件;
根据所述鼠标事件执行相应操作。
第二方面,本申请实施例提供了一种手势控制装置,配置于头戴式显示设备包括:
图像获取模块,用于获取手势图像;
图像识别模块,用于对所述手势图像进行识别,确定在预设手指指节中触发的目标区域;
事件确定模块,用于根据所述目标区域内的用户操作,确定关联的鼠标事件;
交互响应模块,用于根据所述鼠标事件执行相应操作。
第三方面,本申请实施例提供了一种电子设备,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行第一方面实施例所述的手势控制方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,用于存储计算机程序,所述计算机程序使得计算机执行如第一方面实施例所述的手势控制方法。
第五方面,本申请实施例提供了一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如第一方面实施例所述的手势控制方法。
本申请实施例公开的技术方案,至少具有如下有益效果:
通过获取手势图像,并对手势图像进行识别,确定在预设手指指节中触发的目标区域,以根据目标区域内的用户操作,确定关联的鼠标事件,然后根据鼠标事件执行相应操作。由此,实现通过手势操作,达到在交互设备中实现鼠标操作的目的,从而能够摆脱外设装置,使得人机交互过程简单且易于实现,有效提升了用户的使用体验。此外,通过将手指指节划分成不同的可操作区域,使得基于该可操作区域执行不同鼠标事件的准确性更高,并且触发位于手指指节上的任意可操作区域时,使得整个操作具有支撑感,同时在手势指节上操作也更便于用户操作,灵活性和可操作性更高。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种手势控制方法的流程示意图;
图2是本申请实施例提供的另一种手势控制方法的流程示意图;
图3是本申请实施例提供的一种构建预设的用户操作和鼠标事件关联关系的流程示意图;
图4a是本申请实施例提供的一种滚动操作的示意图;
图4b是本申请实施例提供的另一种滚动操作的示意图;
图4c是本申请实施例提供的一种第一按压操作的示意图;
图4d是本申请实施例提供的一种第二按压操作的示意图;
图5是本申请实施例提供的构建的用户操作和鼠标事件关联关系示意图;
图6是本申请实施例提供的一种手势控制装置的示意性框图;
图7是本申请实施例提供的一种电子设备的示意性框图;
图8是本申请实施例提供的电子设备为HMD的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。根据本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请适用于人机交互的场景。考虑到目前人机交互方式,是通过利用手柄等外设装置与交互设备进行交互,但因为这种方式需要使用额外的外设装置,不仅成本高昂,且需要用户长时间握持外设装置。并且,对于不便于握持外设装置的用户而言,这种交互方式还会造成用户无法与交互设备进行流畅交互的情况发生,进而导致用户交互体验差的问题。因此,本申请设计了一种手势控制方法,以通过该方法使得用户通过手势操作即可与交互设备进行人机交互,以在交互设备中实现鼠标操作,从而摆脱外设装置,使得人机交互过程简单且易于实现,能够有效提升用户的使用体验。
为了便于理解本申请实施例,在描述本申请各个实施例之前,首先对本申请所有实施例中所涉及到的一些概念进行适当的解释说明,具体如下:
1)虚拟现实(Virtual Reality,简称为VR),创建和体验虚拟世界的技术,计算生成一种虚拟环境,是一种多源信息(本文中提到的虚拟现实至少包括视觉感知,此外还可以包括听觉感知、触觉感知、运动感知,甚至还包括味觉感知、嗅觉感知等),实现虚拟环境的融合的、交互式的三维动态视景和实体行为的仿真,使用户沉浸到模拟的虚拟现实环境中,实现在诸如地图、游戏、视频、教育、医疗、模拟、协同训练、销售、协助制造、维护和修复等多种虚拟环境的应用。
2)虚拟现实设备(VR设备),实现虚拟现实效果的终端,通常可以提供为眼镜、头盔式显示器(Head Mount Display,简称为HMD)、隐形眼镜的形态,以用于实现视觉感知和其他形式的感知,当然虚拟现实设备实现的形态不限于此,根据实际需要可以进一步小型化或大型化。
可选的,本申请实施例中记载的虚拟现实设备可以包括但不限于如下几个类型:
2.1)电脑端虚拟现实(PCVR)设备,利用PC端进行虚拟现实功能的相关计算以及数据输出,外接的电脑端虚拟现实设备利用PC端输出的数据实现虚拟现实的效果。
2.2)移动虚拟现实设备,支持以各种方式(如设置有专门的卡槽的头戴式显示器)设置移动终端(如智能手机),通过与移动终端有线或无线方式的连接,由移动终端进行虚拟现实功能的相关计算,并输出数据至移动虚拟现实设备,例如通过移动终端的APP观看虚拟现实视频。
2.3)一体机虚拟现实设备,具备用于进行虚拟功能的相关计算的处理器,因而具备独立的虚拟现实输入和输出的功能,不需要与PC端或移动终端连接,使用自由度高。
3)增强现实(Augmented Reality,AR):一种在相机采集图像的过程中,实时地计算相机在现实世界(或称三维世界、真实世界)中的相机姿态参数,根据该相机姿态参数在相机采集的图像上添加虚拟元素的技术。虚拟元素包括但不限于:图像、视频和三维模型。AR技术的目标是在屏幕上把虚拟世界套接在现实世界上进行互动。
4)混合现实(Mixed Reality,简称为:MR):将计算机创建的感官输入(例如,虚拟对象)与来自物理布景的感官输入或其表示集成的模拟布景,一些MR布景中,计算机创建的感官输入可以适应于来自物理布景的感官输入的变化。另外,用于呈现MR布景的一些电子系统可以监测相对于物理布景的取向和/或位置,以使虚拟对象能够与真实对象(即来自物理布景的物理元素或其表示)交互。例如,系统可监测运动,使得虚拟植物相对于物理建筑物看起来是静止的。
5)扩展现实(Extended Reality,简称XR)是指由计算机技术和可穿戴设备生成的所有真实和虚拟组合环境以及人机交互,其包含了虚拟现实(VR)、增强现实(AR)以及混合现实(MR)等多种形式。
6)虚拟场景,是应用程序在电子设备上运行时显示(或提供)的虚拟场景。该虚拟场景可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟场景,还可以是纯虚构的虚拟场景。虚拟场景可以是二维虚拟场景、2.5维虚拟场景或者三维虚拟场景中的任意一种,本申请实施例对虚拟场景的维度不加以限定。例如,虚拟场景可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟对象在该虚拟场景中进行移动。
7)虚拟对象,是虚拟场景中进行交互的对象,受到用户或机器人程序(例如,基于人工智能的机器人程序)的控制,能够在虚拟场景中静止、移动以及进行各种行为的对象,例如游戏中的各种角色等。
在介绍了本申请实施例所涉及的一些概念之后,下面结合附图对本申请实施例提供的一种手势控制方法进行详细说明。
图1是本申请实施例提供的一种手势控制方法的流程示意图。本申请实施例可适用于人机交互的场景,该手势控制方法可由手势控制装置来执行,以实现对人机交互过程进行控制。该手势控制装置可由硬件和/或软件组成,并可集成于诸如头戴式显示设备等交互设备中。
在本申请实施例中,交互设备可以是任意能够向用户提供虚拟场景的电子设备。可选的,该电子设备可选为扩展现实(Extended Reality,XR)设备等设备。该XR设备可以为VR设备、增强现实(Augmented Reality,AR)设备或者混合现实(Mix reality,MR)设备等,本申请对其不做具体限制。
其中,虚拟场景是根据电子设备中运行的应用程序类型确定的,或者也还可以是根据真实环境而虚构的虚拟场景,本申请对此不做具体限制。
如图1所示,该方法可以包括以下步骤:
S101,获取手势图像。
其中,手势图像为包括用户手部区域的图像。
考虑到交互设备上安装有用于追踪的追踪摄像头,因此用户使用交互设备过程中,可通过追踪摄像头获取用户的手势图像。
在本实施例中,追踪摄像头可以是任意类型摄像头,比如鱼眼相机、普通相机、彩色相机或深度相机等,此处对其不做具体限制。
可选的,本申请获取手势图像,可包括如下方式:
方式一
获取追踪摄像头实时采集的追踪图像,并确定追踪图像中是否存在用户手部。如果确定追踪图像中存在用户手部,则对追踪图像进行处理,以获取手部图像,并将该手部图像确定为手势图像。
示例性的,本申请确定追踪图像中是否存在用户手部,可以是根据目标检测技术结合肤色检测算法实现,或者,也可以是通过目标识别模型,识别追踪图像等方式,此处对其不做具体限制。其中,目标识别模型是基于大量具有用户手部特征的图像集训练得到的一个模型。
当确定追踪图像中存在用户手部时,本申请可对追踪图像进行分割处理,以将用户手势区域分割出来,作为手势图像。可选的可将追踪图像中的用户手势区域作为前景区域,其他区域作为背景区域,然后采用前背景分割技术得到用户手势区域。其中,前背景分割技术为本领域的常规技术,此处对其不做过多赘述。
方式二
通过追踪摄像头对用户手部进行实时追踪,以获取到用户的手势图像。
需要说明的是,上述两种方式仅作为本申请实施例的示例性说明,不作为对本申请的具体限制。
S102,对手势图像进行识别,确定在预设手指指节中触发的目标区域。
其中,对手势图像进行识别,具体是识别手势图像中用户手部区域的手势和动作等信息。比如拇指位于什么地方,或者拇指位于食指哪一个指节区域等。
在本实施例中,预设手指是指除目标手指之外的任意手指,目标手指可以是用户手指中的任意手指。比如,预设手指为食指,目标手指为拇指等,此处对其不做具体限制。
其中,目标区域为手指的任意指节区域。即,手指的一个或多个指节区域均可作为目标区域。
也就是说,本申请通过将预设手指的指节作为操作区域,并将预设手指指节划分成多个操作区域,以满足用户在不同操作区域中的人机交互操作,为实现不同的人机交互操作提供条件。
其中,将预设手指指节划分成多个操作区域,可根据手指名称,将手指的指节划分成不同的操作区域。比如,如果预设手指为食指,则可将食指的第一指节、第二指节以及第三指节作为第一操作区域,食指的第一指节和第二指节作为第二操作区域,食指的第二指节和第三指节作为第三操作区域,或者还可将食指的第一指节作为第四操作区域等,此处对其不做具体限制。
作为一种实现方式,获取到手势图像之后,本申请可对手势图像进行识别,以确定在预设手指指节中触发的目标区域。可选的,本实施例可采用现有的手势图像识别方式进行手势识别,此处对其不做具体限制。
考虑到手势图像可以为多帧连续的手势图像,那么本申请可选的识别手势图像可包括如下情况:
情况一
将手势图像作为输入数据,输入至手势识别模型中,以通过该手势识别模型识别手势图像,以确定出手势图像中用户手部的手型、手势和动作。然后,根据识别的手型、手势和/或动作等,确定在预设手指指节中触发的目标区域。
需要说明的是,本申请中手势识别模型是指预先基于大量手势图像训练的一种模型,此处对此不做过多赘述。
情况二
采用3D手势识别技术,对多帧连续的手势图像进行连续识别,以识别出手势图像中用户手部的手型、手势和动作等。然后,根据识别的手型、手势和/或动作等,确定在预设手指指节中触发的目标区域。
举例说明,假设目标手指为拇指、预设手指为食指,且将食指的指节划分成三个操作区域,分别为第一指节对应的第一操作区域,第二指节对应的第二操作区域以及第三指节对应的第三操作区域。那么,当识别手势图像中用户的拇指位于食指的第二指节区域时,可确定用户触发的目标区域为食指的第二指节区域。
S103,根据目标区域内的用户操作,确定关联的鼠标事件。
在本实施例中,用户操作,是指目标手指在触发的目标区域内执行的动作。比如按压操作或者滑动操作等。
其中,鼠标事件,是指与鼠标上各按键对应的事件。比如,与鼠标上滚轮键对应的滚动事件、与鼠标上左键对应的左键事件,以及与鼠标上右键对应的右键事件。在本实施例中,左键事件可包括:左击事件、左键长按事件和左键双击事件;相应的,右键事件可包括:右击事件、右键长按事件和右键双击事件。
示例性的,本申请根据目标区域内的用户操作,确定关联的鼠标事件,可包括如下几种情况:
第一种情况
根据预设的用户操作和鼠标事件关联关系,确定关联的鼠标事件。
可选的,利用获取到的用户操作,在预设的用户操作和鼠标事件关联关系中查找相同的目标用户操作。然后,确定与该目标用户操作关联的目标鼠标事件,并将该目标鼠标事件确定为关联的鼠标事件。
例如,若用户操作为拇指按压时长小于第一时长阈值的第一按压操作,且目标区域为食指第一指节和第二指节对应的第二操作区域,则在预设的用户操作和鼠标事件关联关系中,确定出与该第一按压操作对应的目标用户操作为操作A。那么当操作A关联的目标鼠标事件为左击事件时,即可确定该左击事件为作用于第二操作区域内第一按压操作关联的鼠标事件。
又例如,若用户操作为拇指按压时长大于第一时长阈值的第一按压操作,且目标区域为食指第一指节和第二指节对应的第二操作区域,则在预设的用户操作和鼠标事件关联关系中,确定出与该第一按压操作对应的目标用户操作为操作B。那么当操作B关联的目标鼠标事件为左键长按事件时,即可确定该左键长按事件为作用于第二操作区域内第一按压操作关联的鼠标事件。
其中,第一时长阈值可根据真实鼠标中单击情况进行灵活设置,比如第一时长阈值设置为200ms等,此处对其不做具体限制。
需要说明的是,本申请实施例中预设的用户操作和鼠标事件关联关系,将在下面实施例部分进行详细说明,此处对其不做过多赘述。
第二种情况
根据历史用户操作和鼠标事件的映射关系,确定与用户操作关联的鼠标事件。
考虑到用户过去使用交互设备过程中,可能会与该交互设备进行交互。那么交互设备可将用户每次交互的用户操作以及对应的鼠标事件,按照用户操作和鼠标事件的映射关系进行存储。从而,当用户再次与交互设备进行人机交互时,交互设备可调用存储的历史用户操作和鼠标事件的映射关系。然后,将目标区域内的用户操作,与映射关系中的历史用户操作进行比对,以在历史用户操作和鼠标事件的映射关系中,确定与目标区域内的用户操作相同的目标历史用户操作。进而,将目标历史用户操作对应的目标鼠标事件,确定为与目标区域内的用户操作关联的鼠标事件。
需要说明的是,考虑到本实施例中历史用户操作和鼠标事件的映射关系前期可能没有包括所有鼠标事件,以及与每个鼠标事件对应的用户操作。因此,针对此种情况时本申请优选利用第一种情况,确定与用户操作关联的鼠标事件。
又因为用户每次使用交互设备之后,本申请可自动根据用户与交互设备的人机交互操作,对历史用户操作和鼠标事件的映射关系进行更新完善,以使更新后的历史用户操作和鼠标事件的映射关系能够包括所有鼠标事件,以及每个鼠标事件对应的用户操作,从而后续可从历史用户操作和鼠标事件的映射关系中,确定出与用户操作关联的鼠标事件。
S104,根据鼠标事件执行相应操作。
确定出鼠标事件之后,本申请即可根据鼠标事件执行相应操作。可选的,本申请中执行相应操作是预先根据鼠标事件确定好的。比如,当鼠标事件为滚动事件时,那么相应操作可选为向上滚动当前显示画面,或者向下滚动当前显示画面。又比如,当鼠标事件为右击事件时,那么相应操作可选为打开与操作相关的快捷菜单等。再比如,当鼠标事件为右键双击事件时,那么相应操作可选为打开或启动虚拟对象。其中,该虚拟对象可选为应用程序、图像或者文档等,此处对其不做具体限制。
本申请提供的手势控制方法,通过获取手势图像,并对手势图像进行识别,确定在预设手指指节中触发的目标区域,以根据目标区域内的用户操作,确定关联的鼠标事件,然后根据鼠标事件执行相应操作。由此,实现通过手势操作,达到在交互设备中实现鼠标操作的目的,从而能够摆脱外设装置,使得人机交互过程简单且易于实现,有效提升了用户的使用体验。此外,通过将手指指节划分成不同的可操作区域,使得基于该可操作区域执行不同鼠标事件的准确性更高,并且触发位于手指指节上的任意可操作区域时,使得整个操作具有支撑感,同时在手势指节上操作也更便于用户操作,灵活性和可操作性更高。
以下结合一个具体场景对本申请进行说明:
随着虚拟技术的不断发展,交互设备可向用户提供办公功能,比如显示办公文档等。而用户使用办公功能过程中,可能需要进行一些操作,比如滚动当前显示的文档内容,或者切换显示内容,又或者提交审核请求等。此时,用户可通过利用手势操作触发预设手指指节中的操作区域控制交互设备执行相应操作,以达到通过手势来模拟真实鼠标的所有操作,使得用户基于交互设备进行办公操作,不仅增加了交互设备的使用场景的多样性,而且还能摆脱外设装置,使得人机交互过程简单且易于实现。此外,对于不便于使用外设装置的用户而言,可以更为方便的进行人机交互,从而能够提高用户粘性,以及用户使用体验。并且,通过将手指指节划分成不同的可操作区域,使得基于该可操作区域执行不同鼠标事件的准确性更高,并且触发位于手指指节上的任意可操作区域时,使得整个操作具有支撑感,同时在手势指节上操作也更便于用户操作,灵活性和可操作性更高。
通过上述描述可知,本申请实施例通过对手势图像进行识别,以确定在预设手指指节中触发的目标区域,进而根据目标区域内用户操作,确定关联的鼠标事件并执行相应操作,以实现人机交互目的。
在前述实施例的基础上,下面对本申请中对手势图像进行识别,确定在预设手指指节中触发的目标区域进行进一步优化,具体参见图2。
如图2所示,该方法可包括以下步骤:
S201,获取手势图像。
S202,对手势图像进行识别,确定手势图像中目标手指的位置信息和/或移动轨迹。
S203,根据目标手指的位置信息和/或移动轨迹,确定在预设手指指节中触发的目标区域。
在本实施例中,目标手指可以是用户手指中的任意手指,预设手指是指除目标手指之外的任意手指。比如,预设手指为食指,目标手指为拇指等,此处对其不做具体限制。
其中,目标手指的位置信息和/或移动轨迹,可以是目标手指的位置信息;或者,目标手指的移动轨迹;又或者,目标手指的位置信息和移动轨迹,此处对其不做限制。
可选的,通过手势识别模型或者3D手势识别技术,识别手势图像,以确定手指图像中目标手指的位置信息和/或移动轨迹。进而,确定该目标手指的位置信息和/或移动轨迹处于预设手指的哪一操作区域中。然后,将该操作区域确定为触发的目标区域。
举例说明,假设目标手指为拇指,预设手指为食指,且基于该食指指节确定的操作区域有三个,分别为:第一操作区域、第二操作区域和第三操作区域。其中,第一操作区域可基于食指的第一指节、第二指节以及第三指节确定,第二操作区域可基于食指的第一指节和第二指节确定,以及第三操作区域可基于食指的第二指节和第三指节确定。那么当识别手势图像中拇指的位置信息位于第一操作区域,且该位置信息包括第一位置信息和第二位置信息。此外,拇指的移动轨迹是从第一位置向第二位置移动。那么可确定拇指触发的目标区域是食指指节中的第一操作区域。
又例如,假设目标手指为拇指,预设手指为食指,且基于该食指指节确定的操作区域有三个,分别为:第一操作区域、第二操作区域和第三操作区域。其中,第一操作区域可基于食指的第一指节、第二指节以及第三指节确定,第二操作区域可基于食指的第一指节和第二指节确定,以及第三操作区域可基于食指的第二指节和第三指节确定。那么当识别手势图像中拇指的位置信息位于第二操作区域。此时,可确定拇指触发的目标区域是食指指节中的第二操作区域。
再例如,假设目标手指为拇指,预设手指为食指,且基于该食指指节确定的操作区域有三个,分别为:第一操作区域、第二操作区域和第三操作区域。其中,第一操作区域可基于食指的第一指节、第二指节以及第三指节确定,第二操作区域可基于食指的第一指节和第二指节确定,以及第三操作区域可基于食指的第二指节和第三指节确定。那么当识别手势图像中拇指的位置信息位于第三操作区域。此时,可确定拇指触发的目标区域是食指指节中的第三操作区域。
S204,根据目标区域内的用户操作,确定关联的鼠标事件。
S205,根据鼠标事件执行相应操作。
本申请提供的手势控制方法,通过获取手势图像,并对手势图像进行识别,确定在预设手指指节中触发的目标区域,以根据目标区域内的用户操作,确定关联的鼠标事件,然后根据鼠标事件执行相应操作。由此,实现通过手势操作,达到在交互设备中实现鼠标操作的目的,从而能够摆脱外设装置,使得人机交互过程简单且易于实现,有效提升了用户的使用体验。此外,通过将手指指节划分成不同的可操作区域,使得基于该可操作区域执行不同鼠标事件的准确性更高,并且触发位于手指指节上的任意可操作区域时,使得整个操作具有支撑感,同时在手势指节上操作也更便于用户操作,灵活性和可操作性更高。
下面结合图3,对前述实施例中涉及的预设的用户操作和鼠标事件关联关系构建过程进行说明。
如图3所示,构建用户操作和鼠标事件关联关系包括如下步骤:
S301,确定鼠标上每个按键的鼠标事件。
考虑到真实鼠标包括如下按键:滚轮、左键和右键。基于此,本申请可根据鼠标上每个按键,确定每个按键的鼠标事件。
示例性的,若按键为滚轮,则确定鼠标事件为滚动事件;若按键为左键,则确定鼠标事件为左击事件、左键长按事件或左键双击事件;若按键为右键,则确定鼠标事件为右击事件、右键长按事件或右键双击事件。
S302,根据鼠标事件,确定每个鼠标事件关联的用户操作。
可选的,确定每个鼠标事件关联的用户操作,可包括如下:
若所述鼠标事件为滚动事件,则将滑动操作确定为所述滚动事件关联的用户操作;
若所述鼠标事件为左击事件,则将按压时长小于第一时长阈值的第一按压操作,确定为所述左击事件关联的用户操作;
若所述鼠标事件为左键长按事件,则将按压时长大于或者等于所述第一时长阈值的第一按压操作,确定为所述左键长按事件关联的用户操作;
若所述鼠标事件为左键双击事件,则将时间间隔小于第二时长阈值的任意相邻两次的第一按压操作,确定为所述左键双击事件关联的用户操作;
若所述鼠标事件为右击事件,则将按压时长小于所述第一时长阈值的第二按压操作,确定为所述右击事件关联的用户操作;
若所述鼠标事件为右键长按事件,则将按压时长大于或者等于所述第一时长阈值的第二按压操作,确定为所述右键长按事件关联的用户操作;
若所述鼠标事件为右键双击事件,则将时间间隔小于所述第二时长阈值的任意相邻两次的第二按压操作,确定为所述右键双击事件关联的用户操作。
其中,滑动操作,是指目标手指从一个位置向另一个位置移动的操作。
在本实施例中,第一时长阈值可根据真实鼠标中单击情况进行灵活设置,比如第一时长阈值设置为200ms等,此处对其不做具体限制。
第二时长阈值可根据真实鼠标中双击情况进行灵活设置,比如第二时长阈值设置为400ms等,此处对其不做具体限制。
其中,本实施例上述各用户操作的具体形态可如下情形:
需要说明的是,本申请实施例以目标手指为拇指,预设手指为食指,且基于该食指指节确定的三个操作区域,分别为:第一操作区域、第二操作区域和第三操作区域为例,对用户操作的具体形态进行示例性说明。实际使用过程中,也可以采用其他手指作为目标手指,以及采用除目标手指之外的其他手指作为预设手指,本申请对此不做具体说明。
在本实施例中,第一操作区域是基于食指的第一指节、第二指节以及第三指节确定,第二操作区域是基于食指的第一指节和第二指节确定,以及第三操作区域是基于食指的第二指节和第三指节确定。
情形一
如果用户操作为滑动操作,则该滑动操作可包括如下两种:
第一种,拇指位于食指上方,且拇指沿着与食指平行的方向,从第一操作区域的第一位置向第二位置移动,和/或从第一操作区域的第二位置向第一位置移动。
第二种,拇指位于食指上方,且拇指沿着与食指垂直的方向移动,从第一操作区域的第三位置向第四位置移动,和/或从第一操作区域的第四位置向第三位置移动。
其中,拇指位于食指上方,可以是拇指位于食指上方,且拇指与食指相接触;或者,也可以是拇指位于食指上方,且拇指与食指不接触,此处对其不做具体限制。
需要说明的是,从第一位置向第二位置移动,和/或从所述第二位置向所述第一位置移动,可以是从第一位置向第二位置移动;或者,从第二位置向第一位置移动;又或者,先从第一位置向第二位置移动,再从第二位置向第一位置移动等,此处对其不做具体限制。
相应的,从第三位置向第四位置移动,和/或从第四位置向第三位置移动,可以是从第三位置向第四位置移动;或者,从第四位置向第三位置移动;或者,先从第三位置向第四位置移动,再从第四位置向第三位置移动等。
例如,如图4a所示,第一位置为位置a,第二位置为位置b,那么滑动操作可以是拇指沿着与食指平行的方向,从第一操作区域的位置a向位置b移动,和/或从第一操作区域的位置b向位置a移动。
又例如,如图4b所示,第三位置为位置c,第四位置为位置d,那么滑动操作可以是拇指沿着与食指垂直的方向,从第一操作区域的位置c向位置d移动,和/或从第一操作区域的位置d向位置c移动。
情形二
如果用户操作为第一按压操作,则该第一按压操作可包括如下几种:
第一种,拇指按压食指的第二操作区域,且第一按压操作的按压时长小于第一时长阈值。
例如,如图4c所示,假设第一时长阈值为200ms,那么当第一按压操作为拇指按压食指的第二操作区域,且按压状态持续时长(即停留时长)小于200ms时,确定与该用户操作关联的鼠标事件为左击事件。
第二种,拇指按压食指的第二操作区域,且第一按压操作的按压时长大于或者等于第一时长阈值。
考虑到长按事件包括两种,分别为:长按long press和长按long click。并且,这两种长按事件的生效机制存在区别。具体的,长按long press的生效机制为从按下相应按键开始直至松开该按键截止,这一按压过程的持续时长需要达到一定的时长阈值,比如本申请中拇指按压第二操作区域的持续时长大于第一时长阈值,即可确定与该用户操作关联的鼠标事件为左键长按事件。而长按long click的生效机制为按下相应按键且持续一定时长阈值后松开该按键,比如本申请中拇指按压食指的第二操作区域,且按压的持续时长大于第一时长阈值时抬起拇指,此时即可确定与该用户操作关联的鼠标事件为左键长按事件。
第三种,拇指按压食指的第二操作区域,且任意相邻两次的第一按压操作之间的时间间隔小于第二时长阈值。
比如,假设第二时长阈值为400ms,那么当拇指连续两次点击第二操作区域,且两次点击之间的时间间隔小于400ms时,确定与该用户操作关联的鼠标事件为左键双击事件。
情形三
如果用户操作为第二按压操作,则该第二按压操作可包括如下几种:
第一种,拇指按压食指的第三操作区域,且第二按压操作的按压时长小于第一时长阈值。
例如,如图4d所示,假设第一时长阈值为200ms,那么当第二按压操作为拇指按压食指的第三操作区域,且按压状态持续时长(即停留时长)小于200ms时,确定与该用户操作关联的鼠标事件为右击事件。
需要说明的是,因为第二操作区域和第三操作区域均包括有食指的第二指节,那么实际应用过程中可能存在用户拇指按压食指时,拇指按压的是食指的第二指节。此时,本申请可能无法准确识别该第一按压操作作用于第二操作区域还是第三操作区域。
基于此,本申请可首先确定拇指分别与食指的第一指节和第三指节之间的距离值,并确定哪一距离值更小。如果拇指与食指的第一指节之间的距离值,小于拇指与食指的第三指节之间的距离值,则确定该第一按压操作作用于第二操作区域;如果拇指与食指的第一指节之间的距离值,大于拇指与食指的第三指节之间的距离值,则确定该第一按压操作作用于第三操作区域;如果拇指与食指的第一指节之间的距离值,等于拇指与食指的第三指节之间的距离值,则此时随机确定该第一按压操作作用于第二操作区域或第三操作区域,或者向用户发送“无法识别用户操作,请重新输入用户操作”等提示信息,以使用户调整手部动作,以提高识别准确度。
第二种,拇指按压食指的第三操作区域,且第二按压操作的按压时长大于或者等于第一时长阈值。
考虑到长按事件包括两种,分别为:长按long press和长按long click。并且,这两种长按事件的生效机制存在区别。具体的,长按long press的生效机制为从按下相应按键开始直至松开该按键截止,这一按压过程的持续时长需要达到一定的时长阈值,比如本申请中拇指按压第三操作区域的持续时长大于第一时长阈值,即可确定与该用户操作关联的鼠标事件为右键长按事件。而长按long click的生效机制为按下相应按键且持续一定时长阈值后松开该按键,比如本申请中拇指按压食指的第三操作区域,且按压的持续时长大于第一时长阈值时抬起拇指,此时即可确定与该用户操作关联的鼠标事件为右键长按事件。
第三种,拇指按压食指的第三操作区域,且任意相邻两次的第二按压操作之间的时间间隔小于第二时长阈值。
比如,假设第二时长阈值为400ms,那么当拇指连续两次点击第三操作区域,且两次点击之间的时间间隔小于400ms时,确定与该用户操作关联的鼠标事件为右键双击事件。
需要说明的是,上述各用户操作仅作为本申请的一种示例性的说明,具体可根据实际需要对用户操作进行灵活调整,此处对此不做具体限制。
值得注意的是,上述各用户操作的执行主体可以是用户左手,也可以是用户右手,此处对其不做具体限制。
S303,根据每个鼠标事件以及与每个鼠标事件关联的用户操作,构建预设的用户操作和鼠标事件关联关系。
确定出每个鼠标事件,以及与每个鼠标事件关联的用户操作之后,本申请即可建立每个鼠标事件与每个鼠标事件关联的用户操作之间的映射关系,以得到预设的用户操作和鼠标事件关联关系,具体如图5所示。其中,图5的关联关系中还包括对每个用户操作及对应关联鼠标事件的操作说明。
也就是说,本申请实施例通过确定鼠标上每个按键的鼠标事件,以及确定每个鼠标事件关联的用户操作,然后根据每个鼠标事件以及与每个鼠标事件关联的用户操作,构建预设的用户操作和鼠标事件关联关系。由此,基于该关联关系可快速且准确的确定出与目标区域内用户操作关联的鼠标事件,从而为提高人机交互效率和准确性提供了条件。例如:
若用户操作为滑动操作,则确定与所述滑动操作关联的鼠标事件为滚动事件;
若用户操作为按压时长小于第一时长阈值的第一按压操作,则确定与所述第一按压操作关联的鼠标事件为左击事件;
若用户操作为按压时长大于或者等于所述第一时长阈值的第一按压操作,则确定与所述第一按压操作关联的鼠标事件为左键长按事件;
若用户操作为时间间隔小于第二时长阈值的任意相邻两次的第一按压操作,则确定与所述第一按压操作关联的鼠标事件为左键双击事件;
若用户操作为按压时长小于所述第一时长阈值的第二按压操作,则确定与所述第二按压操作关联的鼠标事件为右击事件;
若用户操作为按压时长大于或者等于所述第一时长阈值的第二按压操作,则确定与所述第二按压操作关联的鼠标事件为右键长按事件;
若用户操作为时间间隔小于所述第二时长阈值的任意相邻两次的第二按压操作,则确定与所述第二按压操作关联的鼠标事件为右键双击事件。
下面参照附图6,对本申请实施例提出的一种手势控制装置进行描述。图6是本申请实施例提供的一种手势控制装置的示意性框图。
其中,该手势控制装置400包括:图像获取模块410、图像识别模块420、事件确定模块430和交互响应模块440。
其中,图像获取模块410,用于获取手势图像;
图像识别模块420,用于对所述手势图像进行识别,确定在预设手指指节中触发的目标区域;
事件确定模块430,用于根据所述目标区域内的用户操作,确定关联的鼠标事件;
交互响应模块440,用于根据所述鼠标事件执行相应操作。
本申请实施例的一种可选实现方式,图像识别模块420,具体用于:
确定所述手势图像中目标手指的位置信息和/或移动轨迹;
根据所述目标手指的位置信息和/或移动轨迹,确定在预设手指指节中触发的目标区域。
本申请实施例的一种可选实现方式,所述目标区域为所述预设手指的任意指节区域。
本申请实施例的一种可选实现方式,事件确定模块430,具体用于:
根据预设的用户操作和鼠标事件关联关系,确定关联的鼠标事件;
或者,
根据历史用户操作和鼠标事件的映射关系,确定与所述用户操作关联的鼠标事件。
本申请实施例的一种可选实现方式,装置300,还包括:构建模块;
其中,构建模块,用于确定鼠标上每个按键的鼠标事件;根据所述鼠标事件,确定每个鼠标事件关联的用户操作;根据每个鼠标事件以及与每个所述鼠标事件关联的用户操作,构建预设的用户操作和鼠标事件关联关系。
本申请实施例的一种可选实现方式,构建模块,具体用于:
若按键为滚轮,则确定所述鼠标事件为滚动事件;
若按键为左键,则确定所述鼠标事件为左击事件、左键长按事件或左键双击事件;
若按键为右键,则确定所述鼠标事件为右击事件、右键长按事件或右键双击事件。
本申请实施例的一种可选实现方式,构建模块,还用于:
若所述鼠标事件为滚动事件,则将滑动操作确定为所述滚动事件关联的用户操作;
若所述鼠标事件为左击事件,则将按压时长小于第一时长阈值的第一按压操作,确定为所述左击事件关联的用户操作;
若所述鼠标事件为左键长按事件,则将按压时长大于或者等于所述第一时长阈值的第一按压操作,确定为所述左键长按事件关联的用户操作;
若所述鼠标事件为左键双击事件,则将时间间隔小于第二时长阈值的任意相邻两次的第一按压操作,确定为所述左键双击事件关联的用户操作;
若所述鼠标事件为右击事件,则将按压时长小于所述第一时长阈值的第二按压操作,确定为所述右击事件关联的用户操作;
若所述鼠标事件为右键长按事件,则将按压时长大于或者等于所述第一时长阈值的第二按压操作,确定为所述右键长按事件关联的用户操作;
若所述鼠标事件为右键双击事件,则将时间间隔小于所述第二时长阈值的任意相邻两次的第二按压操作,确定为所述右键双击事件关联的用户操作。
本申请实施例的一种可选实现方式,事件确定模块330,还用于:
在所述历史用户操作和鼠标事件的映射关系中,确定与所述用户操作相同的目标历史用户操作;
将所述目标历史用户操作对应的目标鼠标事件,确定为与所述用户操作关联的鼠标事件。
本申请实施例的一种可选实现方式,手势图像为多帧连续的手势图像。
本申请实施例提供的手势控制装置,通过获取手势图像,并对手势图像进行识别,确定在预设手指指节中触发的目标区域,以根据目标区域内的用户操作,确定关联的鼠标事件,然后根据鼠标事件执行相应操作。由此,实现通过手势操作,达到在交互设备中实现鼠标操作的目的,从而能够摆脱外设装置,使得人机交互过程简单且易于实现,有效提升了用户的使用体验。此外,通过将手指指节划分成不同的可操作区域,使得基于该可操作区域执行不同鼠标事件的准确性更高,并且触发位于手指指节上的任意可操作区域时,使得整个操作具有支撑感,同时在手势指节上操作也更便于用户操作,灵活性和可操作性更高。
应理解的是,装置实施例与前述方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图6所示的装置400可以执行图1对应的方法实施例,并且装置400中的各个模块的前述和其它操作和/或功能分别为了实现图1中的各个方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置400。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的第一方面方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的第一方面方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述第一方面方法实施例中的步骤。
图7是本申请实施例提供的一种电子设备的示意性框图。其中,该电子设备可选为任意能够向用户提供虚拟场景的硬件设备。可选的,该电子设备可选为扩展现实(ExtendedReality,XR)设备。该XR设备可以为VR设备、增强现实(Augmented Reality,AR)设备或者混合现实(Mix reality,MR)设备等,本申请对其不做具体限制。
如图7所示,该电子设备500可包括:
存储器510和处理器520,该存储器510用于存储计算机程序,并将该程序代码传输给该处理器520。换言之,该处理器520可以从存储器510中调用并运行计算机程序,以实现本申请实施例中的手势控制方法。
例如,该处理器520可用于根据该计算机程序中的指令执行上述手势控制方法实施例。
在本申请的一些实施例中,该处理器520可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器510包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器410中,并由该处理器420执行,以完成本申请提供的手势控制方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
如图7所示,该电子设备还可包括:
收发器530,该收发器530可连接至该处理器520或存储器510。
其中,处理器520可以控制该收发器530与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器530可以包括发射机和接收机。收发器530还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请实施例中的,当电子设备为HMD时,本申请实施例提供了一种HMD的示意性框图,如图8所示。
如图8所示,该HMD600的主要功能模块可以包括但不限于以下:检测模块610、反馈模块620、传感器630、控制模块640、建模模块650。
其中,检测模块610被配置为使用各种传感器检测用户的操作命令,并作用于虚拟环境,如跟随用户的视线而不断更新在显示屏上显示的影像,实现用户与虚拟场景的交互。
反馈模块620被配置为接收来自传感器的数据,为用户提供实时反馈。例如,反馈模块620可以根据用户操作数据生成反馈指令,并输出该反馈指令。
传感器630一方面被配置为接受来自用户的操作命令,并将其作用于虚拟环境;另一方面被配置为将操作后产生的结果以各种反馈的形式提供给用户。
控制模块640被配置为对传感器和各种输入/输出装置进行控制,包括获得用户的数据如动作、语音等和输出感知数据,如图像、振动、温度和声音等,对用户、虚拟环境和现实世界产生作用。例如,控制模块640可以获取用户手势、语音等。
建模模块650被配置为构造虚拟环境的三维模型,还可以包括三维模型中的声音、触感等各种反馈机制。
应当理解,该HMD600中的各个功能模块通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线等。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。
本申请实施例还提供一种包含程序指令的计算机程序产品,当所述程序指令在电子设备上运行时,使得所述电子设备执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digitalvideo disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (13)
1.一种手势控制方法,其特征在于,包括:
获取手势图像;
对所述手势图像进行识别,确定在预设手指指节中触发的目标区域;
根据所述目标区域内的用户操作,确定关联的鼠标事件;
根据所述鼠标事件执行相应操作。
2.根据权利要求1所述的方法,其特征在于,确定在预设手指指节中触发的目标区域,包括:
确定所述手势图像中目标手指的位置信息和/或移动轨迹;
根据所述目标手指的位置信息和/或移动轨迹,确定在预设手指指节中触发的目标区域。
3.根据权利要求1或2所述的方法,其特征在于,所述目标区域为所述预设手指的任意指节区域。
4.根据权利要求1所述的方法,其特征在于,根据所述目标区域内的用户操作,确定关联的鼠标事件,包括:
根据预设的用户操作和鼠标事件关联关系,确定关联的鼠标事件;
或者,
根据历史用户操作和鼠标事件的映射关系,确定与所述用户操作关联的鼠标事件。
5.根据权利要求4所述的方法,其特征在于,预设的用户操作和鼠标事件关联关系通过如下方式构建:
确定鼠标上每个按键的鼠标事件;
根据所述鼠标事件,确定每个鼠标事件关联的用户操作;
根据每个鼠标事件以及与每个所述鼠标事件关联的用户操作,构建预设的用户操作和鼠标事件关联关系。
6.根据权利要求5所述的方法,其特征在于,确定鼠标上每个按键的鼠标事件,包括:
若按键为滚轮,则确定所述鼠标事件为滚动事件;
若按键为左键,则确定所述鼠标事件为左击事件、左键长按事件或左键双击事件;
若按键为右键,则确定所述鼠标事件为右击事件、右键长按事件或右键双击事件。
7.根据权利要求4所述的方法,其特征在于,根据预设的用户操作和鼠标事件关联关系,确定关联的鼠标事件,包括:
若用户操作为滑动操作,则确定与所述滑动操作关联的鼠标事件为滚动事件;
若用户操作为按压时长小于第一时长阈值的第一按压操作,则确定与所述第一按压操作关联的鼠标事件为左击事件;
若用户操作为按压时长大于或者等于所述第一时长阈值的第一按压操作,则确定与所述第一按压操作关联的鼠标事件为左键长按事件;
若用户操作为时间间隔小于第二时长阈值的任意相邻两次的第一按压操作,则确定与所述第一按压操作关联的鼠标事件为左键双击事件;
若用户操作为按压时长小于所述第一时长阈值的第二按压操作,则确定与所述第二按压操作关联的鼠标事件为右击事件;
若用户操作为按压时长大于或者等于所述第一时长阈值的第二按压操作,则确定与所述第二按压操作关联的鼠标事件为右键长按事件;
若用户操作为时间间隔小于所述第二时长阈值的任意相邻两次的第二按压操作,则确定与所述第二按压操作关联的鼠标事件为右键双击事件。
8.根据权利要求4所述的方法,其特征在于,根据历史用户操作和鼠标事件的映射关系,确定与所述用户操作关联的鼠标事件,包括:
在所述历史用户操作和鼠标事件的映射关系中,确定与所述用户操作相同的目标历史用户操作;
将所述目标历史用户操作对应的目标鼠标事件,确定为与所述用户操作关联的鼠标事件。
9.根据权利要求1所述的方法,其特征在于,所述手势图像为多帧连续的手势图像。
10.一种手势控制装置,其特征在于,包括:
图像获取模块,用于获取手势图像;
图像识别模块,用于对所述手势图像进行识别,确定在预设手指指节中触发的目标区域;
事件确定模块,用于根据所述目标区域内的用户操作,确定关联的鼠标事件;
交互响应模块,用于根据所述鼠标事件执行相应操作。
11.一种电子设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行如权利要求1至9中任一项所述的手势控制方法。
12.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1至9中任一项所述的手势控制方法。
13.一种包含程序指令的计算机程序产品,其特征在于,当所述程序指令在电子设备上运行时,使得所述电子设备执行如权利要求1至9中任一项所述的手势控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210938444.4A CN117555416A (zh) | 2022-08-05 | 2022-08-05 | 手势控制方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210938444.4A CN117555416A (zh) | 2022-08-05 | 2022-08-05 | 手势控制方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117555416A true CN117555416A (zh) | 2024-02-13 |
Family
ID=89811622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210938444.4A Pending CN117555416A (zh) | 2022-08-05 | 2022-08-05 | 手势控制方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117555416A (zh) |
-
2022
- 2022-08-05 CN CN202210938444.4A patent/CN117555416A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107469354B (zh) | 补偿声音信息的视觉方法及装置、存储介质、电子设备 | |
CN108885521A (zh) | 跨环境共享 | |
CN115509361B (zh) | 虚拟空间交互方法、装置、设备和介质 | |
CN114387400A (zh) | 三维场景的显示方法、显示装置、电子设备和服务器 | |
US20240028130A1 (en) | Object movement control method, apparatus, and device | |
CN110908568B (zh) | 一种虚拟对象的控制方法和装置 | |
CN116339501A (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
CN117555416A (zh) | 手势控制方法、装置、设备和介质 | |
CN117765600A (zh) | 手部关键点预测模型训练方法、预测方法及装置 | |
CN117742555A (zh) | 控件交互方法、装置、设备和介质 | |
CN118012265A (zh) | 人机交互方法、装置、设备和介质 | |
CN113112613B (zh) | 模型显示方法、装置、电子设备和存储介质 | |
CN117742554A (zh) | 人机交互方法、装置、设备和介质 | |
CN117850655A (zh) | 信息输入方法、装置、设备和介质 | |
CN117850606A (zh) | 信息输入方法、装置、设备和介质 | |
CN117742478A (zh) | 信息显示方法、装置、设备和介质 | |
CN114968053B (zh) | 操作处理方法及装置、计算机可读存储介质和电子设备 | |
CN117075770A (zh) | 基于扩展现实的交互控制方法、装置、电子设备和存储介质 | |
CN117636386A (zh) | 手部关键点的检测方法、装置、设备和介质 | |
CN117369677A (zh) | 光标位置的确定方法、装置、设备及介质 | |
CN117369622A (zh) | 虚拟对象的控制方法、装置、设备及介质 | |
CN117631810A (zh) | 基于虚拟现实空间的操作处理方法、装置、设备及介质 | |
CN118349138A (zh) | 人机交互方法、装置、设备和介质 | |
CN117742479A (zh) | 人机交互方法、装置、设备和介质 | |
CN117785344A (zh) | 提示信息的显示方法、装置、设备和介质 |
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 |