CN111427446B - 头戴显示设备的虚拟键盘显示方法、装置及头戴显示设备 - Google Patents
头戴显示设备的虚拟键盘显示方法、装置及头戴显示设备 Download PDFInfo
- Publication number
- CN111427446B CN111427446B CN202010144808.2A CN202010144808A CN111427446B CN 111427446 B CN111427446 B CN 111427446B CN 202010144808 A CN202010144808 A CN 202010144808A CN 111427446 B CN111427446 B CN 111427446B
- Authority
- CN
- China
- Prior art keywords
- key
- keyboard
- label
- information
- determining
- 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.)
- Active
Links
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/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- 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
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Optics & Photonics (AREA)
- Input From Keyboards Or The Like (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种头戴显示设备的虚拟键盘显示方法、装置及头戴显示设备,该方法包括:获取键盘图像,键盘图像中键盘的按键表面设置有编码图案标签;识别键盘图像中的编码图案标签,获取编码信息,编码信息至少包括编码图案标签的角点信息;在成功识别键盘图像中的编码图案标签的情况下,根据编码图案标签的角点信息,确定编码图案标签对应的第一按键的位置信息;根据第一按键的位置信息向用户呈现虚拟键盘。
Description
技术领域
本发明涉及虚拟现实技术领域,更具体地,本发明涉及一种头戴显示设备中虚拟键盘的显示方法、一种头戴显示设备中虚拟键盘的显示装置、及一种头戴显示设备。
背景技术
虚拟现实(Virtual Reality,VR)技术通过计算机系统模拟出虚拟的三维世界,借助显示系统和交互系统,向使用者提供视觉、听觉、触觉等感官的模拟体验,同时使用者能够与虚拟场景进行互动交互,带给使用者身临其境的感受。因此,交互技术是虚拟现实系统实现的关键性技术之一,决定了使用者如何在虚拟世界中与目标进行互动。
现有技术方案中,键盘检测与定位方法主要依赖键盘的形态学特征。在头戴VR设备运动变化丰富的应用场景下,键盘在不同拍摄角度下的形态会产生变化,导致难以通过单一的形态特征完成持续稳定且精准的检测与定位;对于不同品牌键盘的几何形状不同,这种检测与定位方式需要进行适配,检测难度较大;此外,手部在于键盘的交互过程中不可避免的对键盘产生一定的遮挡,在一定程度上破坏了键盘在图像中几何形状的完整性,这种检测与定位方式难以实现对键盘的精确定位。
因此,有必要提供一种新的显示虚拟键盘的方案。
发明内容
本发明的目的在于提供一种虚拟键盘显示的新技术方案。
根据本发明的第一方面,提供了一种头戴显示设备中虚拟键盘的显示装置,所述方法包括:
获取键盘图像,所述键盘图像中键盘的按键表面设置有编码图案标签;
识别所述键盘图像中的编码图案标签,获取编码信息,所述编码信息至少包括所述编码图案标签的角点信息;
在成功识别所述键盘图像中的编码图案标签的情况下,根据所述编码图案标签的角点信息,确定所述编码图案标签对应的第一按键的位置信息;
根据所述第一按键的位置信息向用户呈现虚拟键盘。
可选地,还包括:
在未成功识别所述键盘图像中的编码图案标签的情况下,将呈现的虚拟键盘与预设的键盘进行比较,确定虚拟键盘中缺少的第二按键;
根据所述第一按键与所述第二按键的位置关系、所述第一按键对应的所述编码图案标签的角点信息,确定所述第二按键对应的编码图案标签的角点信息;
根据所述第二按键对应的编码图案标签的角点信息,确定第二按键的位置信息;
根据所述第二按键的位置信息,向用户呈现虚拟键盘中缺少的所述第二按键。
可选地,所述键盘图像中还包括用户的手部形状;所述方法还包括:
提取所述键盘图像中的手部轮廓;
根据所述手部轮廓,确定所述手部轮廓的位置信息;
根据所述手部轮廓的位置信息,向用户呈现与所述虚拟键盘交互的手部形状。
可选地,还包括:
根据所述手部轮廓的位置信息,确定用户按压的按键;
执行与所述用户按压的按键对应的指令。
可选地,所述键盘图像包括通过双目相机采集的第一目图像和第二目图像,所述编码信息还包括标签编号;
所述根据所述编码图案标签的角点信息,确定所述编码图案标签对应的第一按键的位置信息,包括:
识别所述第一目图像中的编码图案标签,获取标签编号和编码图案标签的第一角点信息;
根据所述编码图案标签的标签编号,查找所述第二目图像中与所述标签编号对应的编码图案标签的第二角点信息;
利用双目视觉测距原理,根据所述第一角点信息、所述第二角点信息、以及双目相机的内参数和外参数,确定第一角点在双目相机坐标系下的三维坐标信息;
将所述第一角点在双目相机坐标系下的三维坐标信息作为所述编码图案标签对应的第一按键的位置信息。
可选地,所述编码图案标签是基于Apriltag开源编码库生成的。
根据本发明的第二方面,提供了一种头戴显示设备中虚拟键盘的显示装置,所述装置包括:
图像获取模块,用于获取键盘图像,所述键盘图像中键盘的按键表面设置有编码图案标签;
识别模块,用于识别所述键盘图像中的编码图案标签,获取编码信息,所述编码信息至少包括所述编码图案标签的角点信息;
第一按键的位置信息确定模块,用于在成功识别所述键盘图像中的编码图案标签的情况下,根据所述编码图案标签的角点信息,确定所述编码图案标签对应的第一按键的位置信息;
显示模块,用于根据所述第一按键的位置信息向用户呈现虚拟键盘。
可选地,还包括:
第二按键确定模块,用于在未成功识别所述键盘图像中的编码图案标签的情况下,将呈现的虚拟键盘与预设的键盘进行比较,确定虚拟键盘中缺少的第二按键;
第二按键的角点信息确定模块,用于根据所述第一按键与所述第二按键的位置关系、所述第一按键对应的所述编码图案标签的角点信息,确定所述第二按键对应的编码图案标签的角点信息;
第二按键的位置信息确定模块,用于根据所述第二按键对应的编码图案标签的角点信息,确定第二按键的位置信息;
重建模块,用于根据所述第二按键的位置信息,向用户呈现虚拟键盘中缺少的所述第二按键。
可选地,还包括:
手部轮廓提取模块,用于提取所述键盘图像中的手部轮廓;
手部轮廓的位置信息确定模块,用于根据所述手部轮廓,确定所述手部轮廓的位置信息;
手部形状显示模块,用于根据所述手部轮廓的位置信息,向用户呈现与所述虚拟键盘交互的手部形状。
根据本发明公开的第三方面,提供了一种头戴显示设备中虚拟键盘的显示装置,包括:
存储器,所述存储器用于存储计算机指令;
处理器,所述处理器用于从所述存储器中调用所述计算机指令,并在所述计算机指令的控制下执行如本发明第一方面中任一项所述的头戴显示设备中虚拟键盘的显示方法。
根据本发明公开的第四方面,提供了一种头戴显示设备,包括:如本发明第一方面或者第二方面中任一项所述的头戴显示设备中虚拟键盘的显示装置。
根据本发明的一个实施例,通过识别设置于键盘按键表面的编码图案标签,可以获取编码图案标签的角点信息,从而确定编码图案标签对应的按键的位置信息,从而实现键盘的定位。本实施例可以不依赖与键盘的形态学特征对键盘进行定位,降低了检测难度,并且能够在头戴显示设备不同的应用场景下实现键盘的精准定位,提高了定位的准确性,用户体验更好。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的头戴显示设备的硬件配置示意图;
图2示出了本发明实施例提供的头戴显示设备中虚拟键盘的显示方法的流程示意图;
图3示出了本发明实施例提供的键盘的结构示意图;
图4示出了本发明实施例提供的头戴显示设备中虚拟键盘的显示装置的一种实施结构的框图;
图5示出了本发明实施例提供的头戴显示设备中虚拟键盘的显示装置的另一种实施结构的框图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<硬件配置>
图1是可用于实现本发明的头戴显示设备100的硬件配置的框图。
该头戴显示设备100可以是VR(虚拟现实,Virtual Reality)设备、AR(增强现实,Augmented Reality)设备及MR(混合现实,Mixed Reality)设备等。
在一个例子中,如图1所示,该头戴显示设备100可以包括处理器110、存储器120、接口装置130、通信装置140、显示装置150、输入装置160、音频装置170、摄像头180等。
其中,处理器110例如可以是中央处理器CPU、微处理器MCU等。存储器120例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置130例如包括USB接口、串行接口、红外接口等。通信装置140例如能够进行有线或无线通信。显示装置150例如是液晶显示屏、LED显示屏、触摸显示屏等。输入装置160例如包括触摸屏、手柄、体感输入、键盘等。音频装置170可以用于输入/输出语音信息。摄像头180可以用于获取图像信息,通过摄像头180可以获取与头戴显示设备配对的键盘的图像,键盘的图像中,包括设置于键盘的按键表面的编码图案标签,例如可以是双目摄像头。
尽管在图1中对头戴显示设备100示出了多个装置,但是,本发明可以仅涉及其中的部分装置,例如头戴显示设备100只涉及理器110、存储器120。
在上述描述中,技术人员可以根据本公开所提供的方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。
图1所示的头戴显示设备仅是解释性的,并且决不是为了要限制本公开、其应用或用途。
<头戴显示设备中虚拟键盘的显示方法>
图2是本说明书的一个实施例提供的头戴显示设备中虚拟键盘的显示方法的示意图。该实施例提供的虚拟键盘的显示方法,通过计算机技术实现,可以由图1所述的头戴显示设备100实施。
该实施例提供的头戴显示设备中虚拟键盘的显示方法,包括步骤S2100-S2400。
步骤S2100,获取键盘图像,键盘图像中键盘的按键表面设置有编码图案标签。
本说明书实施例中,键盘图像可以通过头戴显示设备的相机获取,该相机可以是双目相机。
编码图案标签可以设置多个。编码图案标签的数量可以根据需要标记的按键的数量设定。不同的按键对应的不同的编码图案标签。编码图案标签可以用于存储该编码图案标签的角点信息。编码图案标签设置在键盘按键的表面,编码图案标签的尺寸可以根据键盘的按键的尺寸而定。编码图案标签与键盘的按键的尺寸一致,能够通过获取编码图案标签的角点信息,确定键盘的按键的位置信息。
在本说明书的一个实施例中,对键盘的每个按键生成唯一的编码图案标签,识别每个按键对应的编码图案标签,可以确定每个按键的位置信息,从而实现对键盘的定位。
在本说明书的一个实施例中,编码图案标签是基于Apriltag开源编码库生成的。例如,采用36H9、25H9等Apriltag开源编码库生成编码图案标签。
在获取键盘图像之后,进入:
步骤S2200,识别键盘图像中的编码图案标签,获取编码信息,编码信息至少包括编码图案标签的角点信息。
本说明书实施例中,对键盘图像中的编码图案标签进行识别,可以获取编码信息。
在本说明书的一个实施例中,编码信息至少包括编码图案标签的角点信息。编码标签图案设置于键盘按键的表面,并且编码标签图案的尺寸与对应的按键的尺寸一致,可以将编码图案标签的角点信息作为该编码图案标签对应的按键的角点信息,从而可以确定该编码图案标签对应的按键的位置信息,以实现对键盘的定位。
在本说明书的一个实施例中,编码信息还包括标签编号。标签编号(ID号)可以表示与该编码图案标签对应的按键的按键名称。标签编号与编码图案标签一一对应,并且标签编号与按键名称存在映射关系。根据标签编号可以确定与编码图案标签对应的按键的按键名称,根据编码图案标签的角点信息可以确定与编码图案标签对应的按键的位置信息,实现对与编码图案标签对应的按键的定位,从而实现对键盘的定位。
标签编号可以按照预设的标记顺序进行排列。例如,参考图3,该键盘包括18个按键,按照从左至右的顺序依次对每一排按键进行编号,每个按键的标签编号如图所示。
在获取编码信息之后,进入:
步骤S2300,在成功识别键盘图像中的编码图案标签的情况下,根据编码图案标签的角点信息,确定编码图案标签对应的第一按键的位置信息。
在本说明书的一个实施例中,编码图案标签的角点信息包括多个角点信息,例如编码图案标签为方形,编码图案标签的角点信息包括编码图案标签的四个角的角点信息。
在本说明书的一个实施例中,通过头戴显示设备的双目相机采集键盘图像,该键盘图像包括第一目图像和第二目图像。通过识别第一目图像中的编码图案标签可以获取与编码图案标签对应的第一角点信息,通过识别第二目图像中的编码图案标签可以获取与编码图案标签对应的第二角点信息,利用双目视觉测距原理,根据同一编码图案标签的第一角点信息和第二角点信息,可以计算出该编码图案标签的角点的三维坐标信息,从而可以实现对编码图案标签对应的按键的定位。
在本说明书的一个更具体的例子中,根据编码图案标签的角点信息,确定编码图案标签对应的第一按键的位置信息的步骤,可以进一步包括:步骤S2310~S2340。
步骤S2310,识别第一目图像中的编码图案标签,获取标签编号和编码图案标签的第一角点信息。
该例子中,编码图案标签的第一角点信息可以包括编码图案标签的四个第一角点的像素坐标。
步骤S2310,根据编码图案标签的标签编号,查找第二目图像中与标签编号对应的编码图案标签的第二角点信息;
该例子中,编码图案标签的第二角点信息可以包括编码图案标签的四个第二角点的像素坐标。可以用个识别编码图案标签获取的标签编号,查找出与该标签编号对于的第二角点信息。
步骤S2320,利用双目视觉测距原理,根据第一角点信息、第二角点信息、以及双目相机的内参数和外参数,确定第一角点在双目相机坐标系下的三维坐标信息;
该例子中,第一角点信息为第一目图像中编码图案标签的第一角点的像素坐标,第二角点信息为第二目图像中编码图案标签的第二角点的像素坐标。双目相机的参数包括焦距、左右光心的距离等。利用双目视觉测距原理,可以计算出编码图案标签的第一角点在双目相机坐标系下的三维坐标信息。例如,依次计算出编码图案标签的四个第一角点的三维坐标信息。
步骤S2330,将第一角点在双目相机坐标系下的三维坐标信息作为编码图案标签对应的第一按键的位置信息。
该例子中,第一按键可以表示成功识别编码图案标签的按键,即未被用户手部遮挡的按键。
编码图案标签设置于第一按键的表面,且尺寸与第一按键一致,编码图案标签的四个角点的三维坐标信息,认为是对应第一按键的四个角点的三维坐标信息,即第一按键的位置信息。
在确定第一按键的位置信息之后,进入:
步骤S2400,根据第一按键的位置信息向用户呈现虚拟键盘。
根据本说明的实施例,通过识别设置于键盘按键表面的编码图案标签,可以获取编码图案标签的角点信息,从而确定编码图案标签对应的按键的位置信息,从而实现键盘的定位。本实施例可以不依赖与键盘的形态学特征对键盘进行定位,降低了检测难度,并且能够在头戴显示设备不同的应用场景下实现键盘的精准定位,提高了定位的准确性,用户体验更好。
在本说明书的一个实施例中,该头戴显示设备中虚拟键盘的显示方法,还可以包括:步骤S3100~S3400。
步骤S3100,在未成功识别键盘图像中的编码图案标签的情况下,将呈现的虚拟键盘与预设的键盘进行比较,确定虚拟键盘中缺少的第二按键。
该实施例中,第二按键可以表示未成功识别编码图案标签的按键,即被用户手部遮挡的按键。
预设的键盘可以是预先存储的、与头戴显示设备配对的键盘的图像,通过根据第一按键呈现的虚拟键盘与预先存储的键盘的图像进行对比,确定虚拟键盘中缺少的按键,即被用户遮挡的按键。
在本说明的一个更具体的例子中,可以将成功识别的编码图案标签后得到的标签编号与预存的键盘的所有按键对应的标签编号进行比对,根据缺少的标签编号确定缺少的第二按键。
步骤S3200,根据第一按键与第二按键的位置关系、第一按键对应的编码图案标签的角点信息,确定第二按键对应的编码图案标签的角点信息;
该实施例中,第一按键与第二按键的位置关系可以表示第一按键对应的编码图案标签与第二按键对应的编码图案标签的位置关系,该位置关系包括第一按键对应的编码图案标签与第二按键对应的编码图案标签之间的间距。
步骤S3300,根据第二按键对应的编码图案标签的角点信息,确定第二按键的位置信息;
在本说明一个更具体的例子中,根据识别第一目图像中第一按键的编码图案标签获取的第一角点的像素坐标、第一按键与第二按键的位置关系,确定第二按键的编码图案标签的第一角点的像素坐标。根据识别第二目图像中第一按键的编码图案标签获取的第二角点的像素坐标、第一按键与第二按键的位置关系,确定第二按键的编码图案标签的第二角点的像素坐标。利用双目视觉测距原理,根据第一角点的像素坐标、第二角点的像素坐标、以及双目相机的内参数和外参数,确定第二按键的第一角点在双目相机坐标系下的三维坐标信息,从而确定第二按键的位置信息。
步骤S3400,根据第二按键的位置信息,向用户呈现虚拟键盘中缺少的第二按键。
<例子>
参考图3所示,该键盘中,按键15、按键18、按键19、按键24的编码图案标签被遮挡,以定位按键18为例,说明确定第二按键的位置信息的过程,具体为:将呈现的虚拟键盘与预设的键盘进行比较,确定与缺少的第二按键18的左侧为第一按键17,第二按键18的上方为第一按键14。获取第一按键17的右上方的角点的像素坐标为(x1,y1)。根据第一按键17与第二按键18之间的间距a,可以计算出第二按键18的左上方的角点的像素坐标为(x1+a,y1)。同理,第二按键18的右上方角点的像素坐标可以由第二按键18的左上方角点的像素坐标,沿着第一按键17上方两个角点组成的直线的方向,加上第一按键17上方两个角点之间的距离得到。
根据本说明的实施例,在未成功识别键盘图像中的编码图案标签的情况下,根据第一按键与第二按键的位置关系、第一按键对应的编码图案标签的角点信息,可以确定缺少的第二按键对应的编码图案标签的角点信息,从而可以重建键盘被遮挡的部分,避免用户的手部遮挡键盘而影响对键盘的定位,同时能够在虚拟场景中获取完整的虚拟键盘,用户体验更好。
在本说明书的一个实施例中,该头戴显示设备中虚拟键盘的显示方法,还可以包括:步骤S4100~S4300。
步骤S4100,提取键盘图像中的手部轮廓;
该实施例中,键盘图像中还包括用户的手部形状。
步骤S4200,根据手部轮廓,确定手部轮廓的位置信息;
步骤S4300,根据手部轮廓的位置信息,向用户呈现与虚拟键盘交互的手部形状。
根据本说明的实施例,在完成对虚拟键盘的定位之后,从图像中提取手部轮廓,确定手部轮廓的位置信息,根据手部轮廓的位置信息,可以向用户呈现与虚拟键盘交互的手部形状。
在一个实施例中,在根据手部轮廓,确定手部轮廓的位置信息的步骤之后,该方法还包括:步骤5100~5200。
步骤S5100,根据手部轮廓的位置信息,确定用户按压的按键。
步骤S5200,执行与用户按压的按键对应的指令。
在本说明书的一个更具体的例子中,该头戴显示设备中虚拟键盘的显示方法,还可以包括:步骤S601~S605。
步骤S601,对键盘图像进行中值滤波,去除椒盐噪声;
步骤S602,将除燥后的键盘图像转换到HSV(Hue,Saturation,Value)颜色空间,得到二值化键盘图像;
步骤S603,使用opencv的形态学函数findContours,从二值化键盘图像中提取手部轮廓,并去掉伪轮廓;
步骤S604,使用opencv的convexHull函数提取手部轮廓的凸包络线;
步骤S605,键盘图像包括第一目图像和第二目图像,使用opencv的特征点匹配方法,匹配第一目图像和第二目图像中的双目凸包络线点,利用双目测距算法确定手部轮廓在相机坐标系下的位置信息。
根据本说明的实施例,在完成对虚拟键盘的定位之后,从图像中提取手部轮廓,确定手部轮廓的位置信息,根据手部轮廓的位置信息,可以向用户呈现与虚拟键盘交互的手部形状,并且根据手部轮廓的位置信息与键盘按键的位置信息,可以确定用户按压的按键,提高了定位精度,以及提升了用户的交互体验。
根据本说明的实施例,通过识别设置于键盘按键表面的编码图案标签,可以获取编码图案标签的角点信息,从而确定编码图案标签对应的按键的位置信息,从而实现键盘的定位。本实施例可以不依赖与键盘的形态学特征对键盘进行定位,降低了检测难度,并且能够在头戴显示设备不同的应用场景下实现键盘的精准定位,提高了定位的准确性,用户体验更好。
<头戴显示设备中虚拟键盘的显示装置>
图4是本说明书的一个实施例提供的头戴显示设备中虚拟键盘的显示装置的示意图。
该实施例提供的头戴显示设备中虚拟键盘的显示装置400,包括图像获取模块401、识别模块402、第一按键的位置信息确定模块403、显示模块404。
该图像获取模块401可以用于获取键盘图像,键盘图像中键盘的按键表面设置有编码图案标签。
该识别模块402可以用于识别键盘图像中的编码图案标签,获取编码信息,编码信息至少包括编码图案标签的角点信息。
该第一按键的位置信息确定模403块可以用于在成功识别键盘图像中的编码图案标签的情况下,根据编码图案标签的角点信息,确定编码图案标签对应的第一按键的位置信息。
该显示模块404可以用于根据第一按键的位置信息向用户呈现虚拟键盘。
根据本说明的实施例,通过识别设置于键盘按键表面的编码图案标签,可以获取编码图案标签的角点信息,从而确定编码图案标签对应的按键的位置信息,从而实现键盘的定位。本实施例可以不依赖与键盘的形态学特征对键盘进行定位,降低了检测难度,并且能够在头戴显示设备不同的应用场景下实现键盘的精准定位,提高了定位的准确性,用户体验更好。
在本说明书的一个实施例中,该头戴显示设备中虚拟键盘的显示装置400还包括:第二按键确定模块405、第二按键的角点信息确定模块406、第二按键的位置信息确定模块407、重建模块408。
该第二按键确定模块405可以用于在未成功识别键盘图像中的编码图案标签的情况下,将呈现的虚拟键盘与预设的键盘进行比较,确定虚拟键盘中缺少的第二按键。
该第二按键的角点信息确定模块406可以用于根据第一按键与第二按键的位置关系、第一按键对应的编码图案标签的角点信息,确定第二按键对应的编码图案标签的角点信息。
该第二按键的位置信息确定模块407可以用于根据第二按键对应的编码图案标签的角点信息,确定第二按键的位置信息。
该重建模块408可以用于根据第二按键的位置信息,向用户呈现虚拟键盘中缺少的第二按键。
根据本说明的实施例,在未成功识别键盘图像中的编码图案标签的情况下,根据第一按键与第二按键的位置关系、第一按键对应的编码图案标签的角点信息,可以确定缺少的第二按键对应的编码图案标签的角点信息,从而可以重建键盘被遮挡的部分,避免用户的手部遮挡键盘而影响对键盘的定位,同时能够在虚拟场景中获取完整的虚拟键盘,用户体验更好。
在本说明书的一个实施例中,该头戴显示设备中虚拟键盘的显示装置400还包括:手部轮廓提取模块409、手部轮廓的位置信息确定模块410、手部形状显示模块411。
该手部轮廓提取模块409可以用于提取键盘图像中的手部轮廓。
该手部轮廓的位置信息确定模块410可以用于根据手部轮廓,确定手部轮廓的位置信息。
手部形状显示模块411可以用于根据手部轮廓的位置信息,向用户呈现与虚拟键盘交互的手部形状。
根据本说明的实施例,在完成对虚拟键盘的定位之后,从图像中提取手部轮廓,确定手部轮廓的位置信息,根据手部轮廓的位置信息,可以向用户呈现与虚拟键盘交互的手部形状,并且根据手部轮廓的位置信息与键盘按键的位置信息,可以确定用户按压的按键,提高了定位精度,以及提升了用户的交互体验。
<头戴显示设备中虚拟键盘的显示装置>
图5是本说明书的一个实施例提供的头戴显示设备中虚拟键盘的显示装置的示意图。
该实施例提供的头戴显示设备中虚拟键盘的显示装置500,包括处理器501和存储器502,存储器502中存储有计算机指令,所述计算机指令被处理器501运行时执行前述任一实施例的头戴显示设备中虚拟键盘的显示方法。
根据本说明的实施例,通过识别设置于键盘按键表面的编码图案标签,可以获取编码图案标签的角点信息,从而确定编码图案标签对应的按键的位置信息,从而实现键盘的定位。本实施例可以不依赖与键盘的形态学特征对键盘进行定位,降低了检测难度,并且能够在头戴显示设备不同的应用场景下实现键盘的精准定位,提高了定位的准确性,用户体验更好。
<头戴显示设备>
该头戴显示设备可以是如图1所示头戴显示设备。该头戴显示设备可以是VR设备、AR设备及MR设备等。
该头戴显示设备可以包括如前述任一项实施例的头戴显示设备中虚拟键盘的显示装置。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分相互参见即可,每个实施例重点说明的都是与其他实施例的不同之处,但本领域技术人员应当清楚的是,上述各实施例可以根据需要单独使用或者相互结合使用。另外,对于装置实施例而言,由于其是与方法实施例相对应,所以描述得比较简单,相关之处参见方法实施例的对应部分的说明即可。以上所描述的系统实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。
Claims (9)
1.一种头戴显示设备中虚拟键盘的显示方法,所述方法包括:
获取键盘图像,所述键盘图像中键盘的按键表面设置有编码图案标签;
识别所述键盘图像中的编码图案标签,获取编码信息,所述编码信息至少包括所述编码图案标签的角点信息和标签编号;其中,所述标签编号与所述编码图案标签一一对应,且所述标签编号与按键名称存在映射关系;
在成功识别所述键盘图像中的编码图案标签的情况下,根据所述编码图案标签的角点信息和标签编号,确定所述编码图案标签对应的第一按键的位置信息;
根据所述第一按键的位置信息向用户呈现虚拟键盘;
在未成功识别所述键盘图像中的编码图案标签的情况下,将呈现的虚拟键盘与预设的键盘进行比较,确定虚拟键盘中缺少的第二按键;
根据所述第一按键与所述第二按键的位置关系、所述第一按键对应的所述编码图案标签的角点信息,确定所述第二按键对应的编码图案标签的角点信息;
根据所述第二按键对应的编码图案标签的角点信息,确定第二按键的位置信息;
根据所述第二按键的位置信息,向用户呈现虚拟键盘中缺少的所述第二按键;
其中,所述在未成功识别所述键盘图像中的编码图案标签的情况下,将呈现的虚拟键盘与预设的键盘进行比较,确定虚拟键盘中缺少的第二按键,包括:
在未成功识别所述键盘图像中的全部编码图案标签的情况下,将成功识别的编码图案标签对应的标签编号与预存的键盘的全部按键对应的标签编号进行对比,得到缺少的标签编号;
将缺少的标签编号对应的按键确定为第二按键。
2.根据权利要求1所述的方法,所述键盘图像中还包括用户的手部形状;所述方法还包括:
提取所述键盘图像中的手部轮廓;
根据所述手部轮廓,确定所述手部轮廓的位置信息;
根据所述手部轮廓的位置信息,向用户呈现与所述虚拟键盘交互的手部形状。
3.根据权利要求2所述的方法,还包括:
根据所述手部轮廓的位置信息,确定用户按压的按键;
执行与所述用户按压的按键对应的指令。
4.根据权利要求1所述的方法,所述键盘图像包括通过双目相机采集的第一目图像和第二目图像,所述编码信息还包括标签编号;
所述根据所述编码图案标签的角点信息,确定所述编码图案标签对应的第一按键的位置信息,包括:
识别所述第一目图像中的编码图案标签,获取标签编号和编码图案标签的第一角点信息;
根据所述编码图案标签的标签编号,查找所述第二目图像中与所述标签编号对应的编码图案标签的第二角点信息;
利用双目视觉测距原理,根据所述第一角点信息、所述第二角点信息、以及双目相机的内参数和外参数,确定第一角点在双目相机坐标系下的三维坐标信息;
将所述第一角点在双目相机坐标系下的三维坐标信息作为所述编码图案标签对应的第一按键的位置信息。
5.根据权利要求1所述的方法,所述编码图案标签是基于Apriltag开源编码库生成的。
6.一种头戴显示设备中虚拟键盘的显示装置,包括:
图像获取模块,用于获取键盘图像,所述键盘图像中键盘的按键表面设置有编码图案标签;
识别模块,用于识别所述键盘图像中的编码图案标签,获取编码信息,所述编码信息至少包括所述编码图案标签的角点信息和标签编号;其中,所述标签编号与所述编码图案标签一一对应,且所述标签编号与按键名称存在映射关系;
第一按键的位置信息确定模块,用于在成功识别所述键盘图像中的编码图案标签的情况下,根据所述编码图案标签的角点信息和标签编号,确定所述编码图案标签对应的第一按键的位置信息;
显示模块,用于根据所述第一按键的位置信息向用户呈现虚拟键盘;
第二按键确定模块,用于在未成功识别所述键盘图像中的编码图案标签的情况下,将呈现的虚拟键盘与预设的键盘进行比较,确定虚拟键盘中缺少的第二按键;
第二按键的角点信息确定模块,用于根据所述第一按键与所述第二按键的位置关系、所述第一按键对应的所述编码图案标签的角点信息,确定所述第二按键对应的编码图案标签的角点信息;
第二按键的位置信息确定模块,用于根据所述第二按键对应的编码图案标签的角点信息,确定第二按键的位置信息;
重建模块,用于根据所述第二按键的位置信息,向用户呈现虚拟键盘中缺少的所述第二按键;
其中,所述第二按键确定模块还用于在未成功识别所述键盘图像中的全部编码图案标签的情况下,将成功识别的编码图案标签对应的标签编号与预存的键盘的全部按键对应的标签编号进行对比,得到缺少的标签编号;将缺少的标签编号对应的按键确定为第二按键。
7.根据权利要求6所述的装置,还包括:
手部轮廓提取模块,用于提取所述键盘图像中的手部轮廓;
手部轮廓的位置信息确定模块,用于根据所述手部轮廓,确定所述手部轮廓的位置信息;
手部形状显示模块,用于根据所述手部轮廓的位置信息,向用户呈现与所述虚拟键盘交互的手部形状。
8.一种头戴显示设备中虚拟键盘的显示装置,包括:
存储器,所述存储器用于存储计算机指令;
处理器,所述处理器用于从所述存储器中调用所述计算机指令,并在所述计算机指令的控制下执行如权利要求1-5中任一项所述的头戴显示设备中虚拟键盘的显示方法。
9.一种头戴显示设备,包括如权利要求6-8中任一项所述的头戴显示设备中虚拟键盘的显示装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010144808.2A CN111427446B (zh) | 2020-03-04 | 2020-03-04 | 头戴显示设备的虚拟键盘显示方法、装置及头戴显示设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010144808.2A CN111427446B (zh) | 2020-03-04 | 2020-03-04 | 头戴显示设备的虚拟键盘显示方法、装置及头戴显示设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111427446A CN111427446A (zh) | 2020-07-17 |
CN111427446B true CN111427446B (zh) | 2023-10-13 |
Family
ID=71546137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010144808.2A Active CN111427446B (zh) | 2020-03-04 | 2020-03-04 | 头戴显示设备的虚拟键盘显示方法、装置及头戴显示设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111427446B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112506463A (zh) * | 2020-12-04 | 2021-03-16 | 歌尔光学科技有限公司 | 基于头戴设备的显示器显示方法、装置及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103391480A (zh) * | 2013-07-15 | 2013-11-13 | Tcl集团股份有限公司 | 一种向电视机输入字符的方法及系统 |
CN104571653A (zh) * | 2013-10-10 | 2015-04-29 | 联想(北京)有限公司 | 一种电子设备辅助装置 |
CN110298878A (zh) * | 2018-03-21 | 2019-10-01 | 北京猎户星空科技有限公司 | 一种目标物体三维位姿的确定方法、装置及电子设备 |
CN110705551A (zh) * | 2019-10-09 | 2020-01-17 | 北京百度网讯科技有限公司 | 按键位置的识别方法、装置、电子设备和存储介质 |
CN110832441A (zh) * | 2017-05-19 | 2020-02-21 | 奇跃公司 | 用于虚拟、增强和混合现实显示系统的键盘 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL151255A0 (en) * | 2002-08-14 | 2003-04-10 | Ariel Yedidya | System and method for interacting with computer using a video-camera image on screen and appurtenances useful therewith |
US20140205138A1 (en) * | 2013-01-18 | 2014-07-24 | Microsoft Corporation | Detecting the location of a keyboard on a desktop |
-
2020
- 2020-03-04 CN CN202010144808.2A patent/CN111427446B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103391480A (zh) * | 2013-07-15 | 2013-11-13 | Tcl集团股份有限公司 | 一种向电视机输入字符的方法及系统 |
CN104571653A (zh) * | 2013-10-10 | 2015-04-29 | 联想(北京)有限公司 | 一种电子设备辅助装置 |
CN110832441A (zh) * | 2017-05-19 | 2020-02-21 | 奇跃公司 | 用于虚拟、增强和混合现实显示系统的键盘 |
CN110298878A (zh) * | 2018-03-21 | 2019-10-01 | 北京猎户星空科技有限公司 | 一种目标物体三维位姿的确定方法、装置及电子设备 |
CN110705551A (zh) * | 2019-10-09 | 2020-01-17 | 北京百度网讯科技有限公司 | 按键位置的识别方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111427446A (zh) | 2020-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104243952B (zh) | 图像处理设备、图像处理方法、程序、印刷介质和印刷介质套件 | |
CN106355153B (zh) | 一种基于增强现实的虚拟对象显示方法、装置以及系统 | |
CN113238650B (zh) | 手势识别和控制的方法、装置及虚拟现实设备 | |
EP2745237B1 (en) | Dynamic selection of surfaces in real world for projection of information thereon | |
CN105493154B (zh) | 用于确定增强现实环境中的平面的范围的系统和方法 | |
JP2015153046A (ja) | 画像処理装置、画像処理方法およびプログラム | |
Shah et al. | Occlusion in augmented reality | |
CN106062780A (zh) | 3d剪影感测系统 | |
KR20140082610A (ko) | 휴대용 단말을 이용한 증강현실 전시 콘텐츠 재생 방법 및 장치 | |
CN104834379A (zh) | 一种基于ar技术的维修向导系统 | |
KR102314787B1 (ko) | 가상 공간 제공 방법 및 장치 | |
CN108734769A (zh) | 三维模型分析方法、电子装置及非暂态电脑可读取媒体 | |
CN110866977A (zh) | 增强现实处理方法及装置、系统、存储介质和电子设备 | |
CN111833458A (zh) | 图像显示方法及装置、设备、计算机可读存储介质 | |
WO2014193418A1 (en) | Three dimensional data visualization | |
JP5812550B1 (ja) | 画像表示装置、画像表示方法及びプログラム | |
JP2014170483A (ja) | 情報処理システム、情報処理装置、情報処理方法、および情報処理用プログラム | |
CN107079139A (zh) | 没有物理触发的增强现实 | |
CN111427446B (zh) | 头戴显示设备的虚拟键盘显示方法、装置及头戴显示设备 | |
CN112991555B (zh) | 数据展示方法、装置、设备以及存储介质 | |
CN112328088B (zh) | 图像的呈现方法和装置 | |
CN112365607A (zh) | 一种增强现实ar交互的方法、装置、设备及存储介质 | |
CN111105440B (zh) | 视频中目标物体的跟踪方法、装置、设备及存储介质 | |
KR20170039953A (ko) | 증강현실을 이용한 학습장치 | |
CN109461203B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |