一种输入设备的虚拟方法、装置、设备和存储介质与流程

allin2022-07-13  183



1.本公开涉及数据技术领域,尤其涉及一种输入设备的虚拟方法、装置、设备和存储介质。


背景技术:

2.目前,虚拟场景应用广泛,要将现实中的实体输入设备对应的模型映射到虚拟场景中,需要确定模型的形态和位置,现阶段主要通过彩色或红外等各类摄像头拍摄的图像数据,或雷达波等各类探测式传感器获取的探测数据来识别实体输入设备的形态和位置。现有摄像头和探测式传感器共有的问题是当摄像头或探测式传感器和被识别的实体输入设备之间有遮挡物的时候,获取的图像或探测数据则会出现大幅残缺,甚至获取不到图像或数据,这会导致对实体输入设备形态和位置的识别出现不准确,甚至无法识别的情况,进一步导致无法将实体输入设备的模型在虚拟场景中完整的显示出来。


技术实现要素:

3.为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种输入设备的虚拟方法、装置、设备和存储介质,能够将现实空间中输入设备对应的三维模型准确的映射到虚拟现实场景中,便于用户后续根据虚拟现实场景中的三维模型,使输入设备进行交互操作。
4.第一方面,本公开实施例提供了一种输入设备的虚拟方法,包括:
5.获取输入设备的数据;
6.基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息;
7.获取输入设备上配置的惯性传感器的三维数据;
8.根据惯性传感器的三维数据,更新三维模型在虚拟现实系统中的目标信息。
9.基于更新后的目标信息,将三维模型映射到虚拟现实系统对应的虚拟现实场景中。
10.第二方面,本公开实施例提供了一种输入设备的虚拟装置,包括:
11.第一获取单元,用于获取输入设备的数据;
12.确定单元,用于基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息;
13.第二获取单元,用于获取惯性传感器的数据;
14.更新单元,用于根据惯性传感器的三维数据,更新三维模型在虚拟现实系统中的目标信息。
15.映射单元,用于基于更新后的目标信息,将三维模型映射到虚拟现实系统对应的虚拟现实场景中。
16.第三方面,本公开实施例提供了一种电子设备,包括:
17.存储器;
18.处理器;以及
19.计算机程序;
20.其中,计算机程序存储在存储器中,并被配置为由处理器执行以实现如上述的输入设备的虚拟方法。
21.第四方面,本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述的输入设备的虚拟方法的步骤。
22.第五方面,本公开实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的输入设备的虚拟方法。
23.本公开实施例提供的一种输入设备的虚拟方法,通过获取输入设备的数据,随后基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息,同时实时获取输入设备上安装的惯性传感器所检测到的三维数据,再根据惯性传感器所检测到的三维数据,更新三维模型在虚拟现实系统中的目标信息,并在虚拟现实场景中更新后的目标信息处显示三维模型。本公开提供的一种输入设备的虚拟方法,能够将现实空间中的输入设备准确的映射到虚拟显示场景中,便于后续用户根据虚拟现实场景中的三维模型,高效的使用输入设备进行交互。
附图说明
24.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
25.为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
26.图1为本公开实施例提供的一种应用场景的示意图;
27.图2为本公开实施例提供的一种输入设备的虚拟方法的流程示意图;
28.图3a为本公开实施例提供的另一种应用场景的示意图;
29.图3b为本公开实施例提供的一种虚拟现实场景的示意图;
30.图3c为本公开实施例提供的另一种应用场景的示意图;
31.图4为本公开实施例提供的一种输入设备的虚拟方法的流程示意图;
32.图5为本公开实施例提供的一种输入设备的虚拟装置的结构示意图;
33.图6为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
34.为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
35.在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施
例,而不是全部的实施例。
36.目前,在虚拟现实系统中,用户和虚拟场景的交互方式通常是通过输入设备实现的,虚拟现实系统包括头戴式显示器和虚拟现实软件系统,虚拟现实软件系统具体可以包括操作系统、用于图像识别的软件算法、用于空间计算的软件算法和用于渲染虚拟场景的渲染软件。示例性的,参见图1,图1为本公开实施例提供的一种应用场景的示意图,图1中包括头戴式显示器110,头戴式显示器110可以是一体机,一体机是指头戴式显示器110上配置了虚拟现实软件系统,头戴式显示器110还可以连接服务器,服务器上配置虚拟现实软件系统。具体的,下述实施例以虚拟现实软件系统配置在头戴式显示器上为例,对本公开提供的输入设备的虚拟方法进行详细说明,头戴式显示设备和输入设备连接,输入设备具体可以是鼠标或键盘。
37.针对上述技术问题,本公开实施例提供了一种输入设备的虚拟方法,本发明通过获取固定在实体输入设备内部或外部的惯性传感器的磁力、陀螺仪和加速度等组成的三维数据,计算实体输入设备的姿态信息和位置信息,从而将与实体输入设备对应的三维模型显示在虚拟场景中,使用户可以通过三维模型使用实体输入设备,进行高效的输入操作。本公开提供的输入设备的虚拟方法不受遮挡影响,且能够有效解决现有方法中摄像头拍摄图像或探测式传感器被遮挡的问题,即使完全遮住实体输入设备也能正常工作。具体的,通过下述一个或多个实施例对输入设备的虚拟方法进行详细说明。
38.图2为本公开实施例提供的一种输入设备的虚拟方法的流程示意图,应用于虚拟现实系统,具体包括如图2所示的如下步骤s210至s240:
39.可理解的,虚拟现实软件系统可以配置在头戴式显示器中,虚拟现实软件系统可以对接收到的由输入设备传输的输入信号或数据进行处理,并将处理结果返回至头戴式显示器中的显示屏幕,随后显示屏幕根据处理结果实时改变虚拟现实场景中输入设备的显示状态。
40.示例性的,参见图3a,图3a为本公开实施例提供的另一种应用场景的示意图,图3a中包括鼠标310、头戴式显示器320、用户手部330。鼠标310中包括左键311、滚轮312、右键313和配置的惯性传感器314,惯性传感器314为图3a中鼠标310上的黑色方框,惯性传感器314可以配置在鼠标310的表面,用户头部佩戴头戴式显示器320,手部330操作鼠标310,同时鼠标310和头戴式显示器320连接,图3b中的340是图3a中头戴式显示器320内构建的场景,可以称为虚拟现实场景340,用户通过观看虚拟现实场景340中显示的鼠标设备310对应的鼠标模型350来了解并操控鼠标设备310,让用户可以看到,在虚拟现实场景340中,用户手部330对应的三维模型360操作鼠标310对应的鼠标模型350,操作界面370为鼠标进行操作的界面,类似于终端的显示屏,在虚拟现实场景340中手部模型360操作鼠标模型350的操作情况和用户手部330实际使用鼠标310进行操作的情况在一定程度上可以同步,相当于用户双眼直接看到鼠标中的元件并进行后续操作,提高了用户的使用体验,也提高了交互速度。可理解的,下述实施例提供的输入设备的虚拟方法以图3a所示的应用场景为例进行说明,也就是以输入设备是鼠标、三维模型为鼠标模型为例对本公开提供的输入设备的虚拟方法进行详细说明。
41.示例性的,参见图3c,图3c为本公开实施例提供的另一种应用场景的示意图,图3c中包括键盘380、头戴式显示器320和用户手部330,键盘380的应用场景同图3a中鼠标310,
在此不作赘述。
42.s210、获取输入设备的数据。
43.可理解的,虚拟现实软件系统实时获取输入设备的数据,其中,输入设备的数据具体包括输入设备的配置信息、输入信号和输入设备的图像等,其中,配置信息包括型号信息,型号信息是指输入设备的型号。
44.可选的,在基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息之前,还可以获取输入设备的型号信息;根据型号信息,确定输入设备对应的三维模型。
45.可理解的是,首次确输入设备对应的三维模型后,在用户没有更换输入设备的情况下,后续只需要获取输入设备的输入信号和输入设备的图像即可,以便于快速、准确的更新三维模型在虚拟现实场景中的显示状态。
46.s220、基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息。
47.可理解的,在上述s210的基础上,根据鼠标设备的配置信息确定鼠标设备对应的鼠标模型后,虚拟现实软件系统可以基于鼠标设备的输入信号或鼠标设备的图像,确定鼠标模型在虚拟现实系统中的目标信息,其中目标信息包括位置信息和姿态信息。
48.示例性的,图3a中显示的头戴式显示器320会配置多个摄像头,具体的可以配置3至4个摄像头,来实时拍摄用户头部周围的环境信息,并确定拍摄到的环境信息和头部佩戴的头戴式显示器的位置关系,构建空间,该空间可以称为目标空间,鼠标和用户手部就在确定的目标空间内。可理解的是,虚拟现实场景中显示的场景是目标空间内的场景。目标信息也就是目标空间内的位置信息和姿态信息。
49.可选的,上述s220中基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息,具体包括:基于输入设备的输入信号,确定输入设备对应的三维模型在虚拟现实系统中的目标信息。
50.可理解的,虚拟现实软件系统可以根据获取的鼠标设备的输入信号,输入信号可以是按下鼠标设备上的按键或滚动滚轮产生的,确定鼠标模型在虚拟现实系统中的目标信息,以便于在虚拟现实场景中、该目标信息处显示鼠标模型。此时,虚拟现实场景显示的鼠标模型的姿态和现实空间中鼠标设备的姿态相同。
51.可选的,上述s220中基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息,还可以包括:基于输入设备的图像,确定输入设备对应的三维模型在虚拟现实系统中的目标信息。
52.可理解的,虚拟现实软件系统还可以根据获取的鼠标设备的图像,确定鼠标模型在虚拟现实系统中的目标信息,以便于在虚拟现实场景中的该目标信息处显示鼠标模型。此时,虚拟现实场景显示的鼠标模型的姿态和现实空间中鼠标设备的姿态相同。鼠标设备的图像可以是头戴式显示器320上安装的摄像头实时拍摄生成的,其中摄像头可以是红外摄像头、彩色摄像头或者灰度摄像头。具体的,可以由图3a中头戴式显示器320上安装的摄像头拍摄包括鼠标310的图像,并将图像传输至头戴式显示器中的虚拟现实软件系统进行处理。
53.可理解的是,可以通过上述识别鼠标设备的输入信号和/或鼠标设备的图像中的
按键的两种方式,确定鼠标设备对应的鼠标模型在虚拟现实系统中的目标信息,可以选择上述两种方式的任一种方式,或是同时选择两种方式,来确定鼠标模型在虚拟现实系统中的目标信息,能够有效避免出现无法拍摄鼠标设备的完整图像,或无法正常接收鼠标设备的输入信号时,还能继续进行交互操作,提高可使用性。上述两种方式确定的鼠标模型在虚拟现实系统中的目标信息可以看作下述鼠标设备对应的初始目标信息,初始目标信息也可以称为初始位置。
54.可选的,确定三维模型在虚拟现实系统中的目标信息之后,在虚拟现实系统构建的虚拟现实场景中映射三维模型。
55.可理解的,确定鼠标模型在虚拟现实系统中的目标信息后,可以在虚拟现实场景中、目标信息处显示鼠标模型,也就是在确定的初始目标信息处显示鼠标模型。
56.s230、获取输入设备上配置的惯性传感器的三维数据。
57.可理解的,鼠标设备上预先配置有惯性传感器,惯性传感器会实时采集关于鼠标设备的三维数据;其中,惯性传感器也称为惯性测量单元(inertial measurement unit、imu),是测量物体三轴姿态角及加速度的装置。
58.可理解的,惯性传感器的数据还可以理解为包括三轴陀螺仪、三轴加速度计和三轴磁力计等3组数据,每组数据中包括xyz三个方向上的数据,也就是包括9个数据,三轴陀螺仪用来测量鼠标设备在三轴的角速度,三轴加速度计用来测量鼠标设备在三轴的加速度,三轴磁力计用来提供鼠标设备在三轴的朝向,上述9个数据组成定位信息,根据定位信息和初始目标信息,能够准确的确定鼠标模型在虚拟现实系统中的目标信息。
59.可选的,输入设备上配置的惯性传感器至少包括如下一种情况:惯性传感器配置在输入设备的表面;惯性传感器配置在输入设备的内部。
60.可理解的,惯性传感器可以配置在鼠标设备的表面,例如图3a所示场景,惯性传感器配置在普通鼠标设备的表面,例如右上角,此时的惯性传感器可以理解为不受鼠标控制的独立器件,带有电源模块等,可以直接安装在鼠标设备上。惯性传感器还可以配置在鼠标设备的内部,例如配置在鼠标设备内部电路中,该种情况下,可以理解为带有惯性传感器的鼠标设备。
61.s240、根据惯性传感器的三维数据,更新三维模型在虚拟现实系统中的目标信息。
62.可理解的,在上述s230和s220的基础上,根据实时获取的惯性传感器的三维数据,重新确定鼠标模型在虚拟现实系统中的目标信息,并在虚拟现实场景中、重新确定的目标信息处显示鼠标模型。确定鼠标模型在虚拟现实系统中的初始目标信息后,现实空间中的鼠标设备可能会发生移动,此时,就可以根据惯性传感器实时获取的关于鼠标设备的定位信息,重新确定鼠标模型在虚拟现实系统中的目标信息,该目标信息是相对于初始目标信息确定的。
63.s250、基于更新后的目标信息,将三维模型映射到虚拟现实系统对应的虚拟现实场景中。
64.可理解的,在上述s240的基础上,更新鼠标模型在目标空间中的目标信息后,在虚拟现实场景中、在重新确定的目标信息处显示鼠标模型,其中虚拟现实场景显示的是目标空间内的场景。
65.本公开实施例提供的一种输入设备的虚拟方法,通过获取输入设备的数据,随后
基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息,同时实时获取输入设备上安装的惯性传感器所检测到的三维数据,再根据惯性传感器所检测到的三维数据,更新三维模型在虚拟现实系统中的目标信息,并在虚拟现实场景中、更新后的目标信息处显示三维模型。本公开的输入设备的虚拟方法,能够将现实空间中的输入设备准确的映射到虚拟现实场景中,便于后续用户根据虚拟现实场景中的三维模型,高效的使用输入设备进行交互。
66.在上述实施例的基础上,图4为本公开实施例提供的一种输入设备的虚拟方法的流程示意图,可选的,目标信息包括空间位置信息,空间位置信息是指在输入设备在目标空间内的位置信息;随后,根据惯性传感器的三维数据,更新三维模型在虚拟现实系统中的目标信息,也就是更新三维模型在目标空间中的空间位置信息,具体包括如图4所示的步骤s410至s430:
67.s410、将三维模型在虚拟现实系统中的空间位置信息作为初始空间位置。
68.可理解的,惯性传感器是实时获取输入设备从某时刻开始相对于某个初始位置的运动轨迹和姿态的,也就是惯性传感器采集到的数据需要给定初始位置,以明确后续采集到的轨迹和姿态具体的起点或标准。例如,若没有给定初始位置,惯性传感器也会实时采集鼠标设备的数据,但是采集到的数据没有参照物,可能只是包括向右平移等轨迹和姿态信息,但是无法准确的确定是从何处向右平移的以及平移后的具体位置,因此需要确定一个初始空间位置,来准确的确定鼠标设备移动后的具体位置,初始空间位置是在上述构建的目标空间内的,该具体位置也是在同一目标空间内。
69.s420、根据惯性传感器的三维磁力数据、三维加速度数据和三维陀螺仪数据,计算输入设备在空间坐标系三个方向的位置移动相对量。
70.可理解的,根据惯性传感器采集的关于鼠标设备的三维数据,三维数据包括三维磁力数据、三维加速度数据和三维陀螺仪数据,计算输入设备在目标空间的空间坐标系下三个方向的位置移动相对量,位置移动相对量也就是输入设备在目标空间内xyz三个方向上的移动距离。其中,惯性传感器的数据也可以理解为是基于初始空间位置的距离变化量。
71.s430、根据初始空间位置和输入设备在空间坐标系三个方向的位置移动相对量,更新三维模型在虚拟现实系统中的空间位置信息。
72.可理解的,在上述s410和s420的基础上,根据初始空间位置和鼠标设备在空间坐标系三个方向的位置移动相对量,更新鼠标模型在虚拟现实系统中的目标信息,例如,初始位置中空间三维坐标为(1,2,3),惯性传感器测量到鼠标设备沿着x轴移动1个单位,在鼠标姿态没有改变的情况下,鼠标模型的空间三维坐标更新为(2,2,3),此时的空间三维坐标(位置信息)和没有改变的姿态信息就是更新后的鼠标模型在虚拟现实系统中的目标信息。
73.可选的,方法还包括:更新初始空间位置;根据更新后的初始空间位置校正计算误差。
74.可理解的,通过惯性传感器获取的数据和初始空间位置计算鼠标模型更新后的目标信息的时候,通常会累积计算误差。可以通过重新确定初始空间位置来校正计算误差,更新初始空间位置的方法如上所述,具体可以通过图像识别方法和/或按下按键方法获得初始空间位置,在此不作赘述。例如,确定初始空间位置a后,后续5次确定鼠标设备在虚拟现实系统中的目标信息,可以基于初始目标信息a和惯性传感器的数据,超过5次之后,重新确
定初始空间位置b,并基于初始空间位置b纠正基于初始空间位置a计算而产生的误差,也就是周期性的根据初始空间位置校正计算误差。
75.可选的,目标信息还包括姿态信息;根据惯性传感器的三维数据,更新三维模型在虚拟现实系统中的目标信息,包括:根据惯性传感器的三维磁力数据、三维加速度数据和三维陀螺仪数据以及惯性传感器在输入设备上的相对空间位置关系,更新三维模型在虚拟现实系统中的姿态信息。
76.可理解的,目标信息还包括姿态信息,根据三维数据确定输入设备在目标空间内的姿态信息的方法具体包括:根据惯性传感器的三维磁力数据、三维加速度数据和三维陀螺仪数据以及惯性传感器在输入设备上的相对空间位置关系,更新三维模型在虚拟现实系统中的姿态信息,惯性传感器在输入设备上的相对空间位置关系是指传感器在输入设备上的具体位置,例如图3a中惯性传感器在314配置在鼠标310表面的右上方,也就是建立输入设备上惯性传感器和目标空间的对应关系,从而计算输入设备对应的三维模型在目标空间内的姿态信息。可理解的是,计算三维模型的姿态信息的过程中,不需要输入设备的初始空间位置。
77.本公开实施例提供的一种输入设备的虚拟方法,确定三维模型在虚拟现实场景中的初始空间位置后,获取的惯性传感器的三维数据以该初始空间位置为基准,重新确定三维模型在虚拟现实系统中的目标信息,以便于根据现实空间中输入设备的状态实时、快速、准确的更新三维模型在虚拟现实场景中的显示状态,便于后续操作。
78.图5为本公开实施例提供的输入设备的虚拟装置的结构示意图。本公开实施例提供的输入设备的虚拟装置可以执行上述输入设备的虚拟方法实施例提供的处理流程,如图5所示,装置500包括:
79.第一获取单元510,用于获取输入设备的数据;
80.确定单元520,用于基于输入设备的数据,确定输入设备对应的三维模型在虚拟现实系统中的目标信息;
81.第二获取单元530,用于获取惯性传感器的三维数据;
82.更新单元540,用于根据惯性传感器的三维数据,更新三维模型在虚拟现实系统中的目标信息;
83.映射单元550,用于基于更新后的目标信息,将三维模型映射到虚拟现实系统对应的虚拟现实场景中。
84.可选的,装置500中目标信息包括姿态信息。
85.可选的,更新单元540中根据惯性传感器的三维数据,更新三维模型在虚拟现实系统中的目标信息,具体用于:
86.根据惯性传感器的三维磁力数据、三维加速度数据和三维陀螺仪数据以及惯性传感器在输入设备上的相对空间位置关系,更新所述三维模型在虚拟现实系统中的姿态信息。
87.可选的,装置500中目标信息还包括空间位置信息。
88.可选的,更新单元540中根据惯性传感器的三维数据,更新三维模型在虚拟现实系统中的目标信息,具体用于:
89.将三维模型在虚拟现实系统中的空间位置信息作为初始空间位置;
90.根据惯性传感器的三维磁力数据、三维加速度数据和三维陀螺仪数据,计算输入设备在空间坐标系三个方向的位置移动相对量;
91.根据初始空间位置和输入设备在空间坐标系三个方向的位置移动相对量,更新三维模型在虚拟现实系统中的空间位置信息。
92.可选的,装置500中输入设备上配置的惯性传感器至少包括如下一种情况:
93.惯性传感器配置在输入设备的表面;
94.惯性传感器配置在输入设备的内部。
95.可选的,装置500中还包括校正单元,用于更新初始空间位置;根据更新后的初始空间位置校正计算误差。
96.图5所示实施例的输入设备的虚拟装置可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
97.图6为本公开实施例提供的一种电子设备的结构示意图。本公开实施例提供的电子设备可以执行上述实施例提供的处理流程,如图6所示,电子设备600包括:处理器610、通讯接口620和存储器630;其中,计算机程序存储在存储器630中,并被配置为由处理器610执行如上述的输入设备的虚拟方法。
98.另外,本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行以实现上述实施例的输入设备的虚拟方法。
99.此外,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上的输入设备的虚拟方法。
100.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
101.以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
转载请注明原文地址: https://www.8miu.com/read-1377.html

最新回复(0)