CN116954356A - 基于手势的交互方法、装置、设备及存储介质 - Google Patents
基于手势的交互方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116954356A CN116954356A CN202211522942.7A CN202211522942A CN116954356A CN 116954356 A CN116954356 A CN 116954356A CN 202211522942 A CN202211522942 A CN 202211522942A CN 116954356 A CN116954356 A CN 116954356A
- Authority
- CN
- China
- Prior art keywords
- interaction
- scene
- virtual object
- virtual
- target
- 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
- 230000003993 interaction Effects 0.000 title claims abstract description 398
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000001514 detection method Methods 0.000 claims abstract description 142
- 230000015654 memory Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 4
- 239000000919 ceramic Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000035515 penetration Effects 0.000 description 2
- 230000008485 antagonism Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000000007 visual effect Effects 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
- 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
技术领域
本申请涉及计算机技术领域,特别涉及一种基于手势的交互方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,虚拟现实(Virtual Reality,VR)技术应运而生。虚拟现实技术的特点是产生一种以视觉感受为主,包括听觉、触觉的综合感知的虚拟空间,旨在为用户提供一种身临其境的体验。如何实现用户与虚拟空间中的虚拟物体进行交互来提升用户体验是本领域研究的重点。
目前,通常采用的交互方式是通过用户的手部发出的一条检测射线,来检测是否与虚拟物体产生接触,若该检测射线与虚拟物体发生接触,则控制该虚拟物体进入可交互状态,从而用户可通过手势与该虚拟物体进行交互。
但是,当虚拟物体在虚拟空间中与用户之间的距离较远时,采用上述技术方案,仅通过一条检测射线难以选中该虚拟物体,用户需要多次调整检测射线的方向来选中,操作繁琐,导致交互效率低。
发明内容
本申请实施例提供了一种基于手势的交互方法、装置、设备及存储介质,能够更容易选中虚拟物体,从而与虚拟物体进行交互,提高了交互效率。所述技术方案如下:
一方面,提供了一种基于手势的交互方法,所述方法包括:
基于目标对象在虚拟空间中的手部位置,确定交互场景,所述交互场景包括近景交互场景和远景交互场景;
在所述交互场景下,在所述手部位置生成与所述交互场景匹配的交互检测体,不同交互场景匹配的交互检测体的三维形状不同,所述交互检测体用于检测所述目标对象的交互目标;
在所述交互检测体与所述虚拟空间中的任一虚拟物体发生体积碰撞的情况下,控制所述虚拟物体进入激活状态;
显示所述目标对象与所述虚拟物体在所述虚拟空间中进行交互。
另一方面,提供了一种基于手势的交互装置,所述装置包括:
确定模块,用于基于目标对象在虚拟空间中的手部位置,确定交互场景,所述交互场景包括近景交互场景和远景交互场景;
生成模块,用于在所述交互场景下,在所述手部位置生成与所述交互场景匹配的交互检测体,不同交互场景匹配的交互检测体的三维形状不同,所述交互检测体用于检测所述目标对象的交互目标;
控制模块,用于在所述交互检测体与所述虚拟空间中的任一虚拟物体发生体积碰撞的情况下,控制所述虚拟物体进入激活状态;
显示模块,用于显示所述目标对象与所述虚拟物体在所述虚拟空间中进行交互。
在一些实施例中,所述生成模块,包括:
第一生成单元,用于在所述交互场景为近景交互场景的情况下,在所述手部位置生成球形交互检测体;
第二生成单元,用于在所述交互场景为远景交互场景的情况下,在所述手部位置生成锥形交互检测体。
在一些实施例中,所述第一生成单元,用于在所述交互场景为近景交互场景的情况下,获取所述目标对象的中指指尖的位置;以所述中指指尖的位置为球心,以第一长度为直径,生成所述球形交互检测体。
在一些实施例中,所述第二生成单元,用于在所述交互场景为远景交互场景的情况下,获取所述目标对象的掌心的位置;以所述掌心的位置为起点,生成一条目标检测射线;以所述掌心的位置为起点,以所述目标检测射线为中心,生成多条检测射线,所述多条检测射线构成所述锥形交互检测体。
在一些实施例中,所述第二生成单元,用于在所述目标检测射线上距离所述掌心的第二长度处,以所述检测射线上的点为中心,以第三长度为直径,获取多个位置,所述多个位置构成一个圆形;基于所述掌心的位置和所述多个位置,生成所述多条检测射线。
在一些实施例中,所述控制模块,用于对于所述虚拟空间中的任一虚拟物体,在所述虚拟物体的中心位置与所述交互检测体上的任一位置重合的情况下,确定所述交互检测体与虚拟物体发生体积碰撞;以目标亮度显示所述虚拟物体,所述目标亮度用于指示所述虚拟物体处于激活状态。
在一些实施例中,所述虚拟空间显示有至少一个虚拟物体,所述虚拟物体标注有所在的区域,所述区域包括近景区域和远景区域,所述虚拟物体所在的区域基于与所述目标对象之间的距离确定;
所述确定模块用于在所述目标对象的手向位于近景区域内的虚拟物体移动的情况下,确定所述交互场景为近景交互场景;在所述交互场景不是近景交互场景的情况下,确定所述交互场景为远景交互场景。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一段计算机程序,所述至少一段计算机程序由所述处理器加载并执行以实现本申请实施例中的基于手势的交互方法。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一段计算机程序,所述至少一段计算机程序由处理器加载并执行以实现如本申请实施例中基于手势的交互方法。
另一方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述各个方面的各种可选实现方式中提供的基于手势的交互方法。
本申请实施例提供了一种基于手势的交互方法,通过目标对象在虚拟空间中的手部位置,确定交互场景,在目标对象的手部位置处生成与交互场景匹配的交互检测体,使得能够通过交互检测体检测目标对象的交互目标,当交互检测体与任一虚拟物体发生体积碰撞时,控制该虚拟物体进入激活状态,使得目标对象能够与该虚拟物体进行交互,由于交互检测体是一个三维形状的个体,能够检测一定空间范围内是否存在虚拟物体,相比于通过发射一条射线选中虚拟物体来进行交互的方案,本申请提供交互方法的检测范围更大,增加了用户操作的容错率,更容易选中虚拟物体,从而与虚拟物体进行交互,提高了交互效率以及交互的精确度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例提供的一种基于手势的交互方法的实施环境示意图;
图2是根据本申请实施例提供的一种基于手势的交互方法的流程图;
图3是根据本申请实施例提供的另一种基于手势的交互方法的流程图;
图4是根据本申请实施例提供的一种为虚拟物体进行标注的流程图;
图5是根据本申请实施例提供的一种球形交互检测体的示意图;
图6是根据本申请实施例提供的一种锥形交互检测体的示意图;
图7是根据本申请实施例提供的一种基于手势的交互方法的流程示意图;
图8是根据本申请实施例提供的一种基于手势的交互装置的框图;
图9是根据本申请实施例提供的另一种基于手势的交互装置的框图;
图10是根据本申请实施例提供的一种终端的结构框图;
图11是根据本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
本申请中术语“至少一个”是指一个或多个,“多个”的含义是指两个或两个以上。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的目标对象的手部位置都是在充分授权的情况下获取的。
本申请实施例提供的基于手势的交互方法,能够由计算机设备执行。在一些实施例中,该计算机设备为终端或服务器。下面以计算机设备为终端为例,介绍一下本申请实施例提供的基于手势的交互方法的实施环境,图1是根据本申请实施例提供的一种基于手势的交互方法的实施环境示意图。参见图1,该实施环境包括终端101和服务器102。终端101和服务器102能够通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在一些实施例中,本申请实施例提供的基于手势的交互方法,可以应用于XR(Extended Reality,扩展现实)领域。终端101是智能手机、平板电脑、笔记本电脑、台式计算机、VR设备、AR(Augmented Reality,增强现实)设备、MR(Mixed Reality,混合现实)设备、智能语音交互设备、车载终端等,但并不局限于此。终端101安装和运行有支持虚拟现实技术的应用程序。该应用程序可以是游戏类应用程序、观光类应用程序或者直播类应用程序等,本申请实施例对此不进行限制。示意性的,终端101是用户使用的终端。终端101能够基于虚拟现实技术显示虚拟空间。用户使用终端101与虚拟空间中的虚拟物体进行交互。该交互可以是移动虚拟物体、放大虚拟物体或者触发虚拟物体所关联的交互事件等,本申请实施例对此不进行限制。
本领域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述终端可以仅为一个,或者上述终端为几十个或几百个,或者更多数量。本申请实施例对终端的数量和设备类型不加以限定。
在一些实施例中,服务器102是独立的物理服务器,也能够是多个物理服务器构成的服务器集群或者分布式***,还能够是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、大数据和人工智能平台等基础云计算服务的云服务器。服务器102用于为支持虚拟现实技术的应用程序提供后台服务。在一些实施例中,服务器102承担主要计算工作,终端101承担次要计算工作;或者,服务器102承担次要计算工作,终端101承担主要计算工作;或者,服务器102和终端101二者之间采用分布式计算架构进行协同计算。
本申请实施例提供的基于手势的交互方法,也可以应用于虚拟游戏中。终端101能够显示虚拟游戏的虚拟空间。该虚拟空间中显示有虚拟对象。该虚拟对象可以是人工智能对象或者被控虚拟对象,本申请实施例对此不进行限制。目标对象可以通过手势控制被控虚拟对象去执行某一游戏任务,以实现目标对象与被控虚拟对象之间的交互。目标对象还可以通过手势与虚拟游戏中的人工智能对象进行会话或者对抗等,以实现目标对象与人工智能对象之间的交互。该虚拟空间中还可以显示虚拟道具。目标对象还可以通过手势控制虚拟道具移动、旋转或者发起攻击等,以实现目标对象与虚拟道具之间的交互。
图2是根据本申请实施例提供的一种基于手势的交互方法的流程图,参见图2,在本申请实施例中以由终端执行为例进行说明。该基于手势的交互方法包括以下步骤:
201、终端基于目标对象在虚拟空间中的手部位置,确定交互场景,该交互场景包括近景交互场景和远景交互场景。
在本申请实施例中,该虚拟空间基于虚拟现实技术显示。该虚拟空间中显示有至少一个虚拟物体。该虚拟物体可以是虚拟游戏中的虚拟道具或者虚拟对象等,本申请实施例对此不进行限制。目标对象能够与该虚拟空间中的虚拟物体进行交互。终端获取目标对象在虚拟空间中的手部位置。然后,终端根据该手部位置确定交互场景。该交互场景可以是近景交互场景,也可以是远景交互场景,本申请实施例对此不进行限制。该近景交互场景指的是目标对象与近景区域内的虚拟物体之间进行交互的场景。该远景交互场景指的是目标对象与远景区域内的虚拟物体之间进行交互的场景。近景区域和远景区域主要基于距离目标对象的远近来确定。
202、在该交互场景下,终端在手部位置生成与该交互场景匹配的交互检测体,不同交互场景匹配的交互检测体的三维形状不同,该交互检测体用于检测目标对象的交互目标。
在本申请实施例中,终端根据当前的交互场景,生成与该交互场景匹配的交互检测体。该交互检测体的三维形状可以是球体、方体或者锥体等,本申请实施例对此不进行限制。对于任一交互场景,与该交互场景匹配的交互检测体能够检测处于对应的区域内的虚拟物体。以该交互场景是近景交互场景为例,与该近景交互场景匹配的交互检测体能够检测处于近景区域内的虚拟物体。
203、在交互检测体与虚拟空间中的任一虚拟物体发生体积碰撞的情况下,终端控制虚拟物体进入激活状态。
在本申请实施例中,该体积碰撞指的是交互检测体与虚拟空间中的虚拟物体发生重叠。对于虚拟空间中的任一虚拟物体,终端能够获取该虚拟物体的位置。在该虚拟物体的位置位于交互检测体中的情况下,终端确定该虚拟物体与该交互检测体发生体积碰撞。然后,终端控制该虚拟物体进入激活状态。当虚拟物体处于激活状态时,目标对象能够与该虚拟物体进行交互。
204、终端显示目标对象与虚拟物体在虚拟空间中进行交互。
在本申请实施例中,目标对象能够通过手势与处于激活状态的虚拟物体进行交互。该交互可以是目标对象通过手势控制虚拟物体移动位置,也可以是目标对象通过手势放大该虚拟物体,还可以是目标对象通过手势旋转该虚拟物体等,本申请实施例对此不进行限制。终端能够显示目标对象与虚拟物体在该虚拟空间中的交互。
本申请实施例提供了一种基于手势的交互方法,通过目标对象在虚拟空间中的手部位置,确定交互场景,在目标对象的手部位置处生成与交互场景匹配的交互检测体,使得能够通过交互检测体检测目标对象的交互目标,当交互检测体与任一虚拟物体发生体积碰撞时,控制该虚拟物体进入激活状态,使得目标对象能够与该虚拟物体进行交互,由于交互检测体是一个三维形状的个体,能够检测一定空间范围内是否存在虚拟物体,相比于通过发射一条射线选中虚拟物体来进行交互的方案,本申请提供交互方法的检测范围更大,增加了用户操作的容错率,更容易选中虚拟物体,从而与虚拟物体进行交互,提高了交互效率以及交互操作的精确度。
图3是根据本申请实施例提供的另一种基于手势的交互方法的流程图,参见图3,在本申请实施例中以由终端执行为例进行说明。该基于手势的交互方法包括以下步骤:
301、终端基于目标对象在虚拟空间中的手部位置,确定交互场景,该交互场景包括近景交互场景和远景交互场景。
在本申请实施例中,该虚拟空间中显示有至少一个虚拟物体。对于任一虚拟物体,该虚拟物体标注有所在的区域。该区域包括近景区域和远景区域。虚拟物体所在的区域基于与目标对象之间的距离确定。在虚拟物体与目标对象之间的距离未超过区域阈值的情况下,终端确定该虚拟物***于该虚拟空间中的近景区域。在虚拟物体与目标对象之间的距离超过区域阈值的情况下,终端确定该虚拟物***于该虚拟空间中的远景区域。本申请实施例对于区域阈值的大小不进行限制。然后,终端能够根据虚拟物体所在的区域,对虚拟空间中的虚拟物体进行标注。然后,在终端确定交互场景的过程中,终端能够根据虚拟对象的标注和目标对象的手部位置,确定目标对象将要进行交互的虚拟对象所在的区域,从而确定交互场景。
例如,图4是根据本申请实施例提供的一种为虚拟物体进行标注的流程图。参见图4,当目标对象进入虚拟空间之后,终端能够获取目标对象的位置坐标P0(x1,y1,z1)和该虚拟空间中虚拟物体的位置坐标P1(x2,y2,z2)。该位置坐标P0为目标对象在虚拟空间中的头部位置。位置坐标P1为虚拟物体的中心位置。该对于任一虚拟物体,终端计算目标对象与该虚拟物体在x-z平面上的距离dP。可选地,终端通过下述公式一来确定距离dP。
公式一:
其中,该x-z平面为与目标对象的身高垂直的平面。也即是,该距离dP用于表示目标对象与虚拟物体在虚拟空间中的地面上的平面距离。然后,终端将该距离dP与虚拟空间中的区域阈值进行比较,从而确定虚拟物体所在的区域。在距离dP小于或等于40厘米的情况下,终端确定虚拟物体在超近景区域;在距离dP大于40厘米且小于或等于70厘米的情况下,终端确定虚拟物体在近景区域;在距离dP大于70厘米且小于或等于150厘米的情况下,终端确定虚拟物体在中景区域;在距离dP大于150厘米的情况下,终端确定虚拟物体在远景区域。然后,终端根据确定的区域,对虚拟物体进行标注。
然后,终端能够根据目标对象的手部位置与虚拟空间中的虚拟物体之间的距离,确定当前的交互场景。相应地,在目标对象的手向位于近景区域内的虚拟物体移动的情况下,终端确定交互场景为近景交互场景。也即是,在目标对象的手部位置与近景区域内的虚拟物体的位置越来越近的情况下,目标对象较大可能将要与位于近景区域内的虚拟物体进行交互,终端确定当前的交互场景为近景交互场景。然后,在交互场景为近景交互场景的情况下,终端继续执行步骤302。在交互场景不是近景交互场景的情况下,终端确定交互场景为远景交互场景。然后,在交互场景为远景交互场景的情况下,终端继续执行步骤303。本申请实施例提供的方案,通过计算目标对象的手部位置与虚拟空间中的虚拟物体之间的距离,来确定当前的交互场景,使得能够当目标对象的手部位置与某一区域内的虚拟物体的位置越来越近的情况下,更加准确地确定对应的交互场景,利于在后续生成匹配的交互检测体来检测交互目标的过程中,能够使得检测到的交互目标更加准确,提高交互操作的精确度,符合用户意图,提高交互效率。
可选地,虚拟空间中的虚拟物体分别位于超近景区域、近景区域、中景区域以及远景区域。若在目标对象的手向位于近景区域内或超近景区域内的虚拟物体移动时,则终端确定交互场景为近景交互场景。反之,终端确定交互场景为远景交互场景。
可选地,终端还可以根据虚拟物体的标注来显示虚拟物体。例如,终端能够显示较多的近景区域内的虚拟物体和较少的远景区域内的物体。或者,终端能够显示近景区域内的虚拟物体的更多细节以及近景区域内的虚拟物体的轮廓等,本申请实施例对此不进行限制。
302、在交互场景为近景交互场景的情况下,终端在手部位置生成球形交互检测体。
在本申请实施例中,该球形交互检测体可以是透明的,也可以是半透明的,本申请实施例对此不进行限制。该方式相比于通过目标对象的手部与虚拟物体接触才能激活虚拟物体而言,在后续过程中,当球形交互检测体与虚体物体发生碰撞时,不会发生穿模现象,显示效果更好。该球形交互检测体的直径可以是30厘米、40厘米或者50厘米,本申请实施例对此不进行限制。该球形交互检测体可以位于目标对象的手的上方、下方或者包围着目标对象的手,本申请实施例对此不进行限制。
在一些实施例中,该球形交互检测体包围着目标对象的手。相应地,在交互场景为近景交互场景的情况下,终端获取目标对象的中指指尖的位置。然后,终端以中指指尖的位置为球心,以第一长度为直径,生成球形交互检测体。本申请实施例对于第一长度的大小不进行限制。本申请实施例提供的方案,通过以目标对象的中指指尖的位置为球心,以第一长度为直径,来生成球形交互检测体,使得生成的球形交互检测体能够覆盖目标对象的手的各个方位,以便对目标对象的手的各个方位进行检测,检测范围更大,增加了用户操作的容错率,更容易选中虚拟物体,利于后续与虚拟物体进行交互,提高了交互效率以及交互的精确度。
例如,图5是根据本申请实施例提供的一种球形交互检测体的示意图。参见图5,当目标对象的手向位于近景区域内的虚拟物体移动时,终端生成球形交互检测体。目标对象的手的中指指尖位于球形交互检测体的中心。
在一些实施例中,该球形交互检测体的尺寸并不是固定的。该球形交互检测体的尺寸可以随着目标对象的手的开合程度来确定。可选地,目标对象的手张开的角度越大,该球形交互检测体的尺寸越大;目标对象的手张开的角度越小,该球形交互检测体的尺寸越小。相应地,终端基于目标对象的手的开合程度,生成球形交互检测体。本申请实施例提供的方案,通过根据目标对象的手的开合程度,来生成球形交互检测体,目标对象的手张开的角度越大,该球形交互检测体的尺寸越大,所能检测的范围也就越大,使得目标对象能够根据需求控制检测范围的大小,符合用户意图,增加了用户操作的容错率,更容易选中虚拟物体,利于后续与虚拟物体进行交互,提高了交互效率以及交互的精确度。
303、在交互场景为远景交互场景的情况下,终端在手部位置生成锥形交互检测体。
在本申请实施例中,该锥形交互检测体可以是透明的,也可以是半透明的,本申请实施例对此不进行限制。该方式相比于通过目标对象的手部与虚拟物体接触才能激活虚拟物体而言,在后续过程中,当锥形交互检测体与虚体物体发生碰撞时,同样不会发生穿模现象,显示效果更好。该锥形交互检测体的长度可以是7米、8米或者9米等,本申请实施例对此不进行限制。该锥形交互检测体的底部的直径可以是30厘米、40厘米或者50厘米,本申请实施例对此不进行限制。该锥形交互检测体的顶端可以位于目标对象的掌心、位于目标对象的中指指尖或者位于目标对象的食指指尖等,本申请实施例对此不进行限制。
在一些实施例中,该锥形交互检测体的顶端位于目标对象的掌心。相应地,在交互场景为远景交互场景的情况下,终端获取目标对象的掌心的位置。然后,终端以掌心的位置为起点,生成一条目标检测射线。然后,终端以掌心的位置为起点,以目标检测射线为中心,生成多条检测射线。该多条检测射线构成锥形交互检测体。该目标检测射线的方向可以与目标对象的手掌垂直,也可以与目标对象的手掌之间呈预设角度,本申请实施例对此不进行限制。该预设角度可以是30度、45度或者60度等,本申请实施例对此不进行限制。本申请实施例提供的方案,通过以目标对象的掌心的位置为起点,以目标检测射线为中心,来生成多条检测射线,由该多条检测射线构成锥形交互检测体,使得该锥形交互检测体能够检测一定空间范围内是否存在虚拟物体,相比于通过发射一条射线选中虚拟物体来进行交互的方案,本申请提供交互方法的检测范围更大,增加了用户操作的容错率,更容易选中虚拟物体,从而利于后续与虚拟物体进行交互,提高了交互效率以及交互的精确度。
其中,该多条检测射线与目标检测射线之间的角度与所要生成的锥形交互检测体的长度以及底部的大小相关。也即是,终端能够根据所要生成的锥形交互检测体的长度以及底部大小,来生成多条检测射线,从而得到预期的锥形交互检测体。相应地,终端在目标检测射线上距离掌心的第二长度处,以检测射线上的点为中心,以第三长度为直径,获取多个位置。然后,终端基于掌心的位置和多个位置,生成多条检测射线。其中,该第二长度等于所要生成的锥形交互检测体的长度。该多个位置构成一个圆形。该圆形即为所要生成的锥形交互检测体的底部。本申请实施例对第二长度的大小以及第三长度的大小均不进行限制。本申请实施例提供的方案,通过在目标检测射线上距离掌心的第二长度处,以检测射线上的点为中心,以第三长度为直径来获取圆形上的位置,从而根据掌心的位置和圆形上的位置来生成多条检测射线,使得该多条检测射线能够构成一个锥形交互检测体,从而能够检测一定空间范围内是否存在虚拟物体,相比于通过发射一条射线选中虚拟物体来进行交互的方案,本申请提供交互方法的检测范围更大,增加了用户操作的容错率,更容易选中虚拟物体,从而利于后续与虚拟物体进行交互,提高了交互效率以及交互的精确度。
例如,图6是根据本申请实施例提供的一种锥形交互检测体的示意图。参见图6,终端从目标对象的掌心处向外发射多条检测射线,构成了一个锥形交互检测体。该锥形交互检测体能够检测位于远景区域内的虚拟物体。该锥形交互检测体也能够检测位于近景区域内的虚拟物体,本申请实施例对此不进行限制。
在一些实施例中,该锥形交互检测体的尺寸并不是固定的。该锥形交互检测体的尺寸可以随着目标对象的手的开合程度来确定。可选地,目标对象的手张开的角度越大,该锥形交互检测体的尺寸越大;目标对象的手张开的角度越小,该锥形交互检测体的尺寸越小。例如,目标对象的手张开的角度越大,该锥形交互检测体的长度越长且底部越大;目标对象的手张开的角度越小,该锥形交互检测体的长度越短且底部越小。相应地,终端基于目标对象的手的开合程度,生成锥形交互检测体。本申请实施例提供的方案,通过根据目标对象的手的开合程度,来生成锥形交互检测体,目标对象的手张开的角度越大,该锥形交互检测体的尺寸越大,所能检测的范围也就越大,使得目标对象能够根据需求控制检测范围的大小,符合用户意图,增加了用户操作的容错率,更容易选中虚拟物体,利于后续与虚拟物体进行交互,提高了交互效率以及交互的精确度。
304、在交互检测体与虚拟空间中的任一虚拟物体发生体积碰撞的情况下,终端控制虚拟物体进入激活状态。
在本申请实施例中,对于虚拟空间中的任一虚拟物体,该虚拟物体的位置与交互检测体上的位置发生重叠的情况下,终端确定该虚拟物体与交互检测体发生体积碰撞。然后,终端控制该虚拟物体进入激活状态。终端能够突出显示进入激活状态的虚拟物体,以对目标对象进行提示。该突出显示可以是放大显示、高亮显示或者抖动显示等,本申请实施例对此不进行限制。该激活状态也称之为可交互状态。
在一些实施例中,在虚拟物体未激活之前,终端以初始亮度显示该虚拟物体。终端能够高亮显示处于激活状态的虚拟物体。相应地,对于虚拟空间中的任一虚拟物体,在虚拟物体的中心位置与交互检测体上的任一位置重合的情况下,终端确定交互检测体与虚拟物体发生体积碰撞。然后,终端以目标亮度显示虚拟物体。目标亮度用于指示虚拟物体处于激活状态。该目标亮度比初始亮度更亮。本申请实施例提供的方案,通过以目标亮度来显示被激活的虚拟物体,使得能够突出显示被激活的虚拟物体,便于目标对象更容易发现虚拟物体已进入激活状态,从而与该虚拟物体进行交互,提高了交互效率以及交互的精确度。
在一些实施例中,终端还能够为交互检测体与虚拟物体之间的体积碰撞提供辅助功能。相应地,在目标对象的手向虚拟物体移动过程中,当终端检测到交互检测体与虚拟物体之间的距离小于预设距离时,终端控制该交互检测体与该虚拟物体发生体积碰撞。然后,终端控制虚拟物体进入激活状态。本申请实施例提供的方案,通过在检测到交互检测体与虚拟物体之间的距离小于预设距离的情况下,控制交互检测体与虚拟物体发生体积碰撞,使得交互检测体更容易选中虚拟物体,增加了用户操作的容错率,从而利于后续与虚拟物体进行交互,提高了交互效率以及交互的精确度。
305、终端显示目标对象与虚拟物体在虚拟空间中进行交互。
在本申请实施例中,终端显示目标对象通过手势与处于激活状态的虚拟物体,在虚拟空间中进行交互。例如,终端显示目标对象通过食指拖动虚拟物体在虚拟空间中移动。
为了更加清楚地描述本申请提供的基于手势的交互方法,下面结合附图再次对该方法进行描述。图7是根据本申请实施例提供的一种基于手势的交互方法的流程示意图。参见图7,首先,终端基于目标对象在虚拟空间中的手部位置,确定交互场景。在目标对象的手部位置与近景区域内的虚拟物体的位置越来越近的情况下,终端确定当前的交互场景为近景交互场景。反之,终端确定当前的交互场景为远景交互场景。其中,该近景区域内的虚拟物体可以包括图4中所指示的超近景区域内的虚拟物体以及近景区域内的虚拟物体。
在交互场景为近景交互场景的情况下,终端将所有待检测的虚拟物体放入到列表objects中。然后,终端获取目标对象的中指指尖在虚拟空间中的位置p0(x,y,z);p0=Hand.GetFingerIndex(0)。然后,终端遍历所有待检测的虚拟物体,并获取虚拟物体的中心位置p1(x1,y1,z1)。然后,终端计算目标对象的中指指尖与虚拟物体在虚拟空间中的空间距离。当该空间距离小于或等于30厘米时,终端确定球形交互检测体与该虚拟物体发生体积碰撞。然后,终端将与球形交互检测体发生体积碰撞的虚拟物体放入到列表colliders中。然后,终端循环列表colliders,并将列表colliders中的虚拟物体以目标亮度显示。然后,终端结束近景交互场景下体积碰撞的检测。
上述过程可通过下述程序来实现:
在交互场景为远景交互场景的情况下,终端将所有待检测的虚拟物体放入到列表objects中。然后,终端沿指针方向绘制一根检测射线,该射线为目标检测射线mainRay。mainRay=newRay(origin,direction);origin是目标检测射线的起始位置,也即是目标对象的掌心的位置;direction是目标检测射线的方向,也即是指针方向。然后,终端以该目标检测射线为中心线,生成多根环绕该目标检测射线的检测射线。该多根检测射线形成一个锥形的射线集合,也即是该多根检测射线构成锥形交互检测体。然后,终端将目标检测射线和多根检测射线存储在数组rayList中备用。然后,终端循环每根检测射线,判断是否有虚拟物体与之碰撞,如有碰撞,则将虚拟物体放入到碰撞列表colliders中。然后,终端循环列表colliders,并将列表colliders中的虚拟物体以目标亮度显示。然后,终端结束远景交互场景下体积碰撞的检测。
其中,该多根检测射线中的每根检测射线的偏移角为:subDirection=(Quaternion.Euler(mainRay.direction)*Quaternion.AngleAxis(Vector3.forward,360/n)).eulerAngles。每根检测射线的射线表达式为:subRay=newRay(origin,subDirection)。
上述过程可通过下述程序来实现:
For(int i=0;i<rayList.Count;i++)
{
Ray currentRay=rayList[i];
For(Collider object in objects)
{
If(object.Raycast(currentRay))
{
Colliders.Add(object);
}
}
}
For(int i=0;i<colliders.Count;i++)
{
Colliders[i].Show();
}
本申请实施例提供了一种基于手势的交互方法,通过目标对象在虚拟空间中的手部位置,确定交互场景,在目标对象的手部位置处生成与交互场景匹配的交互检测体,使得能够通过交互检测体检测目标对象的交互目标,当交互检测体与任一虚拟物体发生体积碰撞时,控制该虚拟物体进入激活状态,使得目标对象能够与该虚拟物体进行交互,由于交互检测体是一个三维形状的个体,能够检测一定空间范围内是否存在虚拟物体,相比于通过发射一条射线选中虚拟物体来进行交互的方案,本申请提供交互方法的检测范围更大,增加了用户操作的容错率,更容易选中虚拟物体,从而与虚拟物体进行交互,提高了交互效率以及交互的精确度。
图8是根据本申请实施例提供的一种基于手势的交互装置的框图。该装置用于执行上述基于手势的交互方法执行时的步骤,参见图8,该基于手势的交互装置包括:确定模块801、生成模块802、控制模块803以及显示模块804。
确定模块801,用于基于目标对象在虚拟空间中的手部位置,确定交互场景,该交互场景包括近景交互场景和远景交互场景;
生成模块802,用于在交互场景下,在手部位置生成与交互场景匹配的交互检测体,不同交互场景匹配的交互检测体的三维形状不同,该交互检测体用于检测目标对象的交互目标;
控制模块803,用于在交互检测体与虚拟空间中的任一虚拟物体发生体积碰撞的情况下,控制虚拟物体进入激活状态;
显示模块804,用于显示目标对象与虚拟物体在虚拟空间中进行交互。
本申请实施例提供了一种基于手势的交互装置,通过目标对象在虚拟空间中的手部位置,确定交互场景,在目标对象的手部位置处生成与交互场景匹配的交互检测体,使得能够通过交互检测体检测目标对象的交互目标,当交互检测体与任一虚拟物体发生体积碰撞时,控制该虚拟物体进入激活状态,使得目标对象能够与该虚拟物体进行交互,由于交互检测体是一个三维形状的个体,能够检测一定空间范围内是否存在虚拟物体,相比于通过发射一条射线选中虚拟物体来进行交互的方案,本申请提供交互方法的检测范围更大,增加了用户操作的容错率,更容易选中虚拟物体,从而与虚拟物体进行交互,提高了交互效率以及交互的精确度。
在一些实施例中,图9是根据本申请实施例提供的另一种基于手势的交互装置的框图。参见图9,生成模块802,包括:
第一生成单元8021,用于在交互场景为近景交互场景的情况下,在手部位置生成球形交互检测体;
第二生成单元8022,用于在交互场景为远景交互场景的情况下,在手部位置生成锥形交互检测体。
在一些实施例中,继续参见图9,第一生成单元8021,用于在交互场景为近景交互场景的情况下,获取目标对象的中指指尖的位置;以中指指尖的位置为球心,以第一长度为直径,生成球形交互检测体。
在一些实施例中,继续参见图9,第二生成单元8022,用于在交互场景为远景交互场景的情况下,获取目标对象的掌心的位置;以掌心的位置为起点,生成一条目标检测射线;以掌心的位置为起点,以目标检测射线为中心,生成多条检测射线,多条检测射线构成锥形交互检测体。
在一些实施例中,继续参见图9,第二生成单元8022,用于在目标检测射线上距离掌心的第二长度处,以检测射线上的点为中心,以第三长度为直径,获取多个位置,多个位置构成一个圆形;基于掌心的位置和多个位置,生成多条检测射线。
在一些实施例中,继续参见图9,控制模块803,用于对于虚拟空间中的任一虚拟物体,在虚拟物体的中心位置与交互检测体上的任一位置重合的情况下,确定交互检测体与虚拟物体发生体积碰撞;以目标亮度显示虚拟物体,目标亮度用于指示虚拟物体处于激活状态。
在一些实施例中,继续参见图9,虚拟空间显示有至少一个虚拟物体,虚拟物体标注有所在的区域,区域包括近景区域和远景区域,虚拟物体所在的区域基于与目标对象之间的距离确定;
确定模块801,用于在目标对象的手向位于近景区域内的虚拟物体移动的情况下,确定交互场景为近景交互场景;在交互场景不是近景交互场景的情况下,确定交互场景为远景交互场景。
需要说明的是:上述实施例提供的基于手势的交互装置在运行应用程序时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于手势的交互装置与基于手势的交互方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10是根据本申请实施例提供的一种终端1000的结构框图。该终端1000可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving Picture Experts GroupAudio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture ExpertsGroup Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑、台式电脑、VR设备、AR设备以及MR设备。终端1000还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1000包括有:处理器1001和存储器1002。
处理器1001可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1001可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1002还可包括高速随机存取存储器以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1002中的非暂态的计算机可读存储介质用于存储至少一个计算机程序,该至少一个计算机程序用于被处理器1001所执行以实现本申请中方法实施例提供的基于手势的交互方法。
在一些实施例中,终端1000还可选包括有:***设备接口1003和至少一个***设备。处理器1001、存储器1002和***设备接口1003之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口1003相连。具体地,***设备包括:射频电路1004、显示屏1005、摄像头组件1006、音频电路1007和电源1008中的至少一种。
***设备接口1003可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器1001和存储器1002。在一些实施例中,处理器1001、存储器1002和***设备接口1003被集成在同一芯片或电路板上;在一些其他实施例中,处理器1001、存储器1002和***设备接口1003中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1004通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1004将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。在一些实施例中,射频电路1004包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1004可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1004还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1005用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1005是触摸显示屏时,显示屏1005还具有采集在显示屏1005的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1001进行处理。此时,显示屏1005还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1005可以为一个,设置在终端1000的前面板;在另一些实施例中,显示屏1005可以为至少两个,分别设置在终端1000的不同表面或呈折叠设计;在另一些实施例中,显示屏1005可以是柔性显示屏,设置在终端1000的弯曲表面上或折叠面上。甚至,显示屏1005还可以设置成非矩形的不规则图形,也即异形屏。显示屏1005可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-EmittingDiode,有机发光二极管)等材质制备。
摄像头组件1006用于采集图像或视频。在一些实施例中,摄像头组件1006包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1006还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1007可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1001进行处理,或者输入至射频电路1004以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1000的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1001或射频电路1004的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1007还可以包括耳机插孔。
电源1008用于为终端1000中的各个组件进行供电。电源1008可以是交流电、直流电、一次性电池或可充电电池。当电源1008包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1000还包括有一个或多个传感器1009。该一个或多个传感器1009包括但不限于:加速度传感器1010、陀螺仪传感器1011、压力传感器1012、光学传感器1013以及接近传感器1014。
加速度传感器1010可以检测以终端1000建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1010可以用于检测重力加速度在三个坐标轴上的分量。处理器1001可以根据加速度传感器1010采集的重力加速度信号,控制显示屏1005以横向视图或纵向视图进行用户界面的显示。加速度传感器1010还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1011可以检测终端1000的机体方向及转动角度,陀螺仪传感器1011可以与加速度传感器1010协同采集用户对终端1000的3D动作。处理器1001根据陀螺仪传感器1011采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1012可以设置在终端1000的侧边框和/或显示屏1005的下层。当压力传感器1012设置在终端1000的侧边框时,可以检测用户对终端1000的握持信号,由处理器1001根据压力传感器1012采集的握持信号进行左右手识别或快捷操作。当压力传感器1012设置在显示屏1005的下层时,由处理器1001根据用户对显示屏1005的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器1013用于采集环境光强度。在一个实施例中,处理器1001可以根据光学传感器1013采集的环境光强度,控制显示屏1005的显示亮度。具体地,当环境光强度较高时,调高显示屏1005的显示亮度;当环境光强度较低时,调低显示屏1005的显示亮度。在另一个实施例中,处理器1001还可以根据光学传感器1013采集的环境光强度,动态调整摄像头组件1006的拍摄参数。
接近传感器1014,也称距离传感器,通常设置在终端1000的前面板。接近传感器1014用于采集用户与终端1000的正面之间的距离。在一个实施例中,当接近传感器1014检测到用户与终端1000的正面之间的距离逐渐变小时,由处理器1001控制显示屏1005从亮屏状态切换为息屏状态;当接近传感器1014检测到用户与终端1000的正面之间的距离逐渐变大时,由处理器1001控制显示屏1005从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图10中示出的结构并不构成对终端1000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图11是根据本申请实施例提供的一种服务器的结构示意图,该服务器1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(CentralProcessing Units,CPU)1101和一个或一个以上的存储器1102,其中,该存储器1102中存储有至少一条计算机程序,该至少一条计算机程序由该处理器1101加载并执行以实现上述各个方法实施例提供的基于手势的交互方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一段计算机程序,该至少一段计算机程序由计算机设备的处理器加载并执行以实现上述实施例的基于手势的交互方法中计算机设备所执行的操作。例如,所述计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、光盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
本申请实施例还提供了一种计算机程序产品,包括计算机程序代码,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述各种可选实现方式中提供的基于手势的交互方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种基于手势的交互方法,其特征在于,所述方法包括:
基于目标对象在虚拟空间中的手部位置,确定交互场景,所述交互场景包括近景交互场景和远景交互场景;
在所述交互场景下,在所述手部位置生成与所述交互场景匹配的交互检测体,不同交互场景匹配的交互检测体的三维形状不同,所述交互检测体用于检测所述目标对象的交互目标;
在所述交互检测体与所述虚拟空间中的任一虚拟物体发生体积碰撞的情况下,控制所述虚拟物体进入激活状态;
显示所述目标对象与所述虚拟物体在所述虚拟空间中进行交互。
2.根据权利要求1所述的方法,其特征在于,所述在所述交互场景下,在所述手部位置生成与所述交互场景匹配的交互检测体,包括:
在所述交互场景为近景交互场景的情况下,在所述手部位置生成球形交互检测体;
在所述交互场景为远景交互场景的情况下,在所述手部位置生成锥形交互检测体。
3.根据权利要求2所述的方法,其特征在于,所述在所述交互场景为近景交互场景的情况下,在所述手部位置生成球形交互检测体,包括:
在所述交互场景为近景交互场景的情况下,获取所述目标对象的中指指尖的位置;
以所述中指指尖的位置为球心,以第一长度为直径,生成所述球形交互检测体。
4.根据权利要求2所述的方法,其特征在于,所述在所述交互场景为远景交互场景的情况下,在所述手部位置生成锥形交互检测体,包括:
在所述交互场景为远景交互场景的情况下,获取所述目标对象的掌心的位置;
以所述掌心的位置为起点,生成一条目标检测射线;
以所述掌心的位置为起点,以所述目标检测射线为中心,生成多条检测射线,所述多条检测射线构成所述锥形交互检测体。
5.根据权利要求4所述的方法,其特征在于,所述以所述掌心的位置为起点,以所述目标检测射线为中心,生成多条检测射线,包括:
在所述目标检测射线上距离所述掌心的第二长度处,以所述目标检测射线上的点为中心,以第三长度为直径,获取多个位置,所述多个位置构成一个圆形;
基于所述掌心的位置和所述多个位置,生成所述多条检测射线。
6.根据权利要求1所述的方法,其特征在于,所述在所述交互检测体与所述虚拟空间中的任一虚拟物体发生体积碰撞的情况下,控制所述虚拟物体进入激活状态,包括:
对于所述虚拟空间中的任一虚拟物体,在所述虚拟物体的中心位置与所述交互检测体上的任一位置重合的情况下,确定所述交互检测体与虚拟物体发生体积碰撞;
以目标亮度显示所述虚拟物体,所述目标亮度用于指示所述虚拟物体处于激活状态。
7.根据权利要求1所述的方法,其特征在于,所述虚拟空间显示有至少一个虚拟物体,所述虚拟物体标注有所在的区域,所述区域包括近景区域和远景区域,所述虚拟物体所在的区域基于与所述目标对象之间的距离确定;
所述基于目标对象在虚拟空间中的手部位置,确定交互场景,包括:
在所述目标对象的手向位于近景区域内的虚拟物体移动的情况下,确定所述交互场景为近景交互场景;
在所述交互场景不是近景交互场景的情况下,确定所述交互场景为远景交互场景。
8.一种基于手势的交互装置,其特征在于,所述装置包括:
确定模块,用于基于目标对象在虚拟空间中的手部位置,确定交互场景,所述交互场景包括近景交互场景和远景交互场景;
生成模块,用于在所述交互场景下,在所述手部位置生成与所述交互场景匹配的交互检测体,不同交互场景匹配的交互检测体的三维形状不同,所述交互检测体用于检测所述目标对象的交互目标;
控制模块,用于在所述交互检测体与所述虚拟空间中的任一虚拟物体发生体积碰撞的情况下,控制所述虚拟物体进入激活状态;
显示模块,用于显示所述目标对象与所述虚拟物体在所述虚拟空间中进行交互。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器用于存储至少一段计算机程序,所述至少一段计算机程序由所述处理器加载并执行权利要求1至7任一项权利要求所述的基于手势的交互方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储至少一段计算机程序,所述至少一段计算机程序用于执行权利要求1至7任一项权利要求所述的基于手势的交互方法。
11.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项权利要求所述的基于手势的交互方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211522942.7A CN116954356A (zh) | 2022-11-30 | 2022-11-30 | 基于手势的交互方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211522942.7A CN116954356A (zh) | 2022-11-30 | 2022-11-30 | 基于手势的交互方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116954356A true CN116954356A (zh) | 2023-10-27 |
Family
ID=88444976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211522942.7A Pending CN116954356A (zh) | 2022-11-30 | 2022-11-30 | 基于手势的交互方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116954356A (zh) |
-
2022
- 2022-11-30 CN CN202211522942.7A patent/CN116954356A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112044065B (zh) | 虚拟资源的显示方法、装置、设备及存储介质 | |
CN111368114B (zh) | 信息展示方法、装置、设备及存储介质 | |
CN110288689B (zh) | 对电子地图进行渲染的方法和装置 | |
CN110743168B (zh) | 虚拟场景中的虚拟对象控制方法、计算机设备及存储介质 | |
CN112565806B (zh) | 虚拟礼物赠送方法、装置、计算机设备及介质 | |
US20220291791A1 (en) | Method and apparatus for determining selected target, device, and storage medium | |
CN111437600A (zh) | 剧情展示方法、装置、设备及存储介质 | |
CN113032590B (zh) | 特效展示方法、装置、计算机设备及计算机可读存储介质 | |
CN112381729B (zh) | 图像处理方法、装置、终端及存储介质 | |
CN111752658B (zh) | 管理功能教程的方法、装置、设备以及存储介质 | |
CN111061369B (zh) | 交互方法、装置、设备及存储介质 | |
CN111860064B (zh) | 基于视频的目标检测方法、装置、设备及存储介质 | |
CN111158575A (zh) | 终端执行处理的方法、装置、设备以及存储介质 | |
CN113485596B (zh) | 虚拟模型的处理方法、装置、电子设备及存储介质 | |
CN113592874B (zh) | 图像显示方法、装置和计算机设备 | |
CN114764295B (zh) | 立体场景切换方法、装置、终端及存储介质 | |
CN112732133B (zh) | 消息处理的方法、装置、电子设备及存储介质 | |
CN109388732B (zh) | 音乐地图的生成和显示方法、装置及存储介质 | |
CN116954356A (zh) | 基于手势的交互方法、装置、设备及存储介质 | |
CN113495770A (zh) | 展示应用页面的方法、装置、终端及存储介质 | |
CN113507647B (zh) | 多媒体数据的播放控制方法、装置、终端及可读存储介质 | |
CN111381765B (zh) | 文本框的显示方法、装置、计算机设备及存储介质 | |
CN113590877B (zh) | 获取标注数据的方法及装置 | |
CN115379274B (zh) | 基于图片的互动方法、装置、电子设备及存储介质 | |
CN113220203B (zh) | 活动入口展示方法、装置、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40098990 Country of ref document: HK |