一种增强现实虚拟键盘输入方法及使用该方法的装置的制造方法
【技术领域】
[0001]本发明涉及虚拟键盘输入技术领域,尤其涉及一种增强现实虚拟键盘输入方法及使用该方法的装置。本发明可以用于使用键盘输入信息的设备,例如移动智能设备,穿戴式智能设备,单片机设备,智能家具,智能电器,个人电脑,中型电脑,大型电脑等。
【背景技术】
[0002]现在的便携式智能设备有两类,一类是适合以触摸屏为输入解决方案的智能设备(例如平板电脑,带有触摸屏的智能手机),另一类是不适合以触摸屏为输入解决方案的智能设备(例如以智能眼镜、智能手表为代表的可穿戴智能设备)。
[0003]可穿戴智能设备由于不便通过触摸屏操作,通过语音识别是常见的输入方案,但是在公众场合用语音识别输入会泄露隐私并影响到他人,而且易遭到噪音干扰从而出现识别失误。
[0004]还有一种激光投射键盘输入方案,通过智能设备内置的激光投影仪模块将虚拟键盘投射显示出来,通过摄像头可以解读操作者手势,操作者就能通过点击虚拟按键来输入信息。但这种方式需要集成一个微型投影仪到接受装置上,由于激光投影仪模块耗电量很大,因此使用此方案会大大降低续航时间。另外激光投影仪对于操作者的光线环境有很高的要求,过于明亮的环境无法使用,对操作手势也有很高的要求,要求操作者不能在剧烈摇晃的车厢中或运动中使用。
[0005]还有一种方式需要在多个手指上套一个环,通过指环监视手指的加速度动作进行输入,但这类设备的指环除了佩戴不舒适外还需要充电。
[0006]在一个现有的技术方案中也是通过采集手势,先检测哪根手指是操作者意图进行点击动作的手指,再根据词库辅助猜词。因为操作者操作时手指势必一起动作,所以需要先捕获到各个手指的动作幅度,然后配以实现设定的位移和时间的阀值,经过一定算法来过滤分析出哪根手指是操作者真正意图去点击按键的手指。对于检测到的结果会存入到系统的一块存储区域,直到检测到一个结束输入动作为止。这个结束输入动作一般是大拇指动作,因为通常在键盘输入过程中,大拇指对应的按键是空格键。当结束输入动作被检测到后,意味着一个单词或某种语言的文字组合的输入结束,系统对之前存储区域中的一连串结果进行分析,并用词库来进行辅助猜词。例如,存储区域中的结果是三个手指动作,分别是左手中指敲击动作,左手小拇指敲击动作,左手食指敲击动作,那么可能的结果有如下排列:
EQR;EQT;EQF;EGG;EQV;EQB;
EAR;EAT;EAF;EAG;EAV;EAB;
EZR;EZT;EZF;EZG;EZV;EZB;
DQR;DQT;DQF;DQG;DQV;DQB;
DAR;DAT;DAF;DAG;DAV;DAB;
DZR;DZT;DZF;DZG;DZV;DZB;CQR;CQT;CQF;CQG;CQV;CQB;
CAR;CAT;CAF;CAG;CAV;CAB;
CZR;CZT;CZE;CZG;CZV;CZB;
将如上排列中每一种组合在词库中查询后,可知常见有意义的单词为EAR,EAT, CAR,CAT四个,操作者需要输出的可能性最大的就是这四个。接下来将会把这四个组合作为结果选项反馈给操作者,由操作者选择最终结果是哪个。系统还可以根据操作者之前输入的词来判断操作者的意图,如果操作者输入的是“DRIVE”,那么可以认为结果是“CAR”的可能性更大。
[0007]可以看出这种方案需要词库来辅助,每检测到一个击键动作,都要将该手指对应的所有字符组合在词库中进行检索,会占用大量的系统资源,降低系统响应速度。单词或文字组合的字符数量越大,生成的需要在词库中检索的组合数量将呈现几何级数式的增加。此外,如果操作者不是要输出一个常见单词而是一种特殊缩写,那么词库内也许就无法找到这个词了。即使选项够全面,由于操作者需要在大量结果中进行选择,也会降低输入速度。而如果系统自动根据操作者的上一个输出来判断本次结果,那么不但响应速度会降低,还可能造成结果的不准确;此外每个操作者的按键习惯幅度不同,会导致不同的操作者都需要去适应该方案的默认幅度,例如右手食指从起始位置向显示器移动多远才是数字7,而不是U。
[0008]还有一种虚拟键盘技术的专利是通过静态手势信息和手指弯曲度来判断的,但需要操作者进行训练,适应性和鲁棒性也有待进一步提高。
[0009]近年来,虚拟现实在各个行业和领域应用得越来越广泛,而同时也暴露出了一些不可忽视的问题。如对现实世界的隔离,与人类感知外部世界的方式有冲突等等。为了克服这些问题,增强现实技术应运而生。它将计算机生成的虚拟物体或关于真实物体的非几何信息叠加到真实世界的场景之上,实现了对真实世界的增强。同时由于用于与真实世界的联系并未被切断,交互方式也就显得更加自然。增强现实是在虚拟现实基础上发展起来的新技术,是通过计算机系统提供的信息增加用户对现实世界感知的技术,并将计算机生成的虚拟物体、场景或系统提示信息叠加到真实场景中,从而实现对现实的“增强”。
[0010]本发明的说明书和权利要求书所提到的能够侦测人体动作的模块或设备可以选用体感模块或体感设备来实现本发明的技术方案,但不仅限于体感设备或体感模块。本发明可通过体感设备或体感模块这样的能够侦测人体动作的模块或设备捕获操作者的手势动作信息,并转化为空间位置坐标信息。目前比较先进的体感设备或三维扫描设备都已经使用了三维扫描分析相关技术和3D模型重建技术。已经出现的一种体感设备利用红外摄像头采集所标记的结构光激光散斑(结构光),交由芯片进行计算后得到空间中物体的三维景深数据,传感器生成景深图像流,重建3D模型和再现周围环境。本发明需要的硬件的技术已经出现。
【发明内容】
[0011]针对现有技术存在的上述不足,本发明的目的是提供一种增强现实虚拟键盘输入方法及使用该方法的装置。
[0012]为实现上述目的,下面将列出本发明的技术方案,下面所列出的对本发明的技术方案的方法进行描述的那部分仅仅是对本发明方法的内容进行描述,并没有对方法的步骤和顺序进行限定,本发明所采用的技术方案是:
一种增强现实虚拟键盘输入方法,应用于使用键盘输入信息的设备,该方法包括:通过增强现实技术将虚拟键盘叠加到真实场景中;侦测模块侦测和捕获操作者操作虚拟键盘的动作并获得动作数据;通过对侦测模块捕获到的动作数据进行识别和分析,使得虚拟键盘可以对操作者操作键盘的动作做出感应,并分析出操作者意图输入的结果;将分析出的输入结果发送给操作系统或应用程序。
[0013]该方法包括:根据侦测模块侦测捕获操作者手势动作的数据来确定虚拟键盘在真实场景中的摆放位置和摆放角度,或根据预先设置来确定虚拟键盘在真实场景中的摆放位置和摆放角度。
[0014]该方法包括:通过对侦测模块捕获操作者的手势动作进行识别和分析,识别出该手势动作的类型。
[0015]该方法包括:对侦测模块捕获到的动作数据进行识别和分析,从而识别出动作的类型,若动作的类型为定位键盘动作,则根据该手势动作获得对虚拟键盘叠加到真实场景时的摆放位置和摆放角度,并通过增强现实技术将该虚拟键盘叠加到真实场景中或调整虚拟键盘在场景中的摆放位置和摆放角度。
[0016]该方法包括:通过增强现实技术将虚拟键盘叠加到真实场景中,侦测模块和分析模块对操作者的动作进行分析,使得该虚拟键盘对操作者操作键盘的动作能做出感应,但对是否让操作者通过视觉感知到该虚拟键盘的存在不做要求,即该虚拟键盘是可见的或隐形的。
[0017]该方法包括:对侦测模块捕获到的动作数据进行识别和分析,从而识别出动作的类型,若动作的类型为模拟击键动作,则根据操作者做出该模拟击键动作时手指空间坐标变化识别出操作者意图击键的那根手指,并获得那根手指的击键位置。
[0018]该方法包括:对一次或多次连续的模拟击键的手势动作进行分析,并最终将分析出的候选项提供给操作者选择以便确认输入,该流程采用方案Al或方案A2或方案A3 ;
方案Al:每当检测到一次模拟击键动作,都将保存模拟击键的数据,该模拟击键的数据至少包括击键位置的数据,直到识别到操作者做出结束输入动作再根据这些模拟击键数据和虚拟键盘的位置来分析这些模拟击键动作可能产生的候选项,即识别到操作者做出结束输入动作后再计算出操作者意图击键的那根手指的击键位置与虚拟键盘上符合某种规则的那些键的位置之间的距离的值,再将该距离的值根据排序规则来求出排序结果;
方案A2:每当检测到一次模拟击键动作,先求出虚拟键盘上符合某种规则的那些键的位置与该击键位置的距离的值,并保存这些距离的值,直到识别到操作者做出结束输入动作再将该距离的值根据排序规则来求出排序结果;
方案A3:在每一次模拟击键动作完成后,根据本次模拟击键动作求得的以上提到的距离值和之前的那些模拟击键动作求出的以上提到的距离的值根据排序规则进行分析,并更新候选项以便操作者可以选择确认输入,如果操作者不选择这些候选项来确认输入,而是继续做出模拟击键动作,则重复执行本方案,直到操作者选择了候选项确认输入才结束输入,本方案的流程中没有侦测、分析和判断操作者是否做出了结束输入动作的步骤。
[0019]该方法包括:为了避免在模拟击键过程中因手指触摸不到虚拟键盘上键的位置而导致对模拟击键动作无法做出响应,采取方案BI或方案B2来应对;
方案BI:
在操作者做出模拟击键动作的过程中,根据意图击键的那根手指做出击键动作时的击键位置来调整虚拟键盘的位置,使得虚拟键盘自动贴合到该击键位置上;或调整虚拟键盘的位置使得虚拟键盘放置在手指下方的位置,以便在做出模拟击键动作时做出模拟击键动作的那根手指指尖可以敲击到虚拟键盘的位置;
模拟击键位置和键盘在同一个平面上,操作者意图击键的那根手指的击键位置与虚拟键盘上符合某种规则的那些键的位置的距离是指在二维空间中的距离;
方案B2:
在操作者做出模拟击键动作的过程中,虚拟键盘的位置不做调整,所以模拟击键位置和键盘不在同一个平面上,操作者意图击键的那根手指的击键位置与虚拟键盘上符合某种规则的那些键的位置的距离是指在三维空间中的距离。
[0020]对侦测模块捕获到的动作数据进行识别和分析,从而识别出动作的类型,若该动作的类型为结束输入动作,则对该结束命令前作出的一系列模拟击键动作进行分析,或对该结束命令前作出的每一步模拟击键动作完成时分析产生的中间变量来进行进一步分析,并将最终分析出的排序结果作为候选项提供给操作者以便确认输入。
[0021]该方法包括:对模拟击键动作进行分析以便确认排序结果时,对是否结合输入法进行分析不做要求。
[0022]该方法包括:根据排序规则和做出结束输入动作前的每一次模拟击键操作中虚拟键盘上的一个或多个符合某种规则的键和操作者本次模拟击键位置之间的距离来求出排序结果,该排序规则体现了概率与该距离的关系。
[0023]一种使用增强现实虚拟键盘输入方法的装置,该装置包括:侦测模块、分析模块、增强现实输出模块,其中,
侦测模块:侦测和捕获操作者操作虚拟键盘的动作并获得动作数据,将捕获到的数据发送给分析模块;
分析模块:分析模块对侦测模块发送来的操作者的动作数据进行识别和分析,使得通过增强现实技术叠加到真实场景中的虚拟键盘能对操作者操作键盘的动作做出感应,并分析出操作者意图输入的结果;将分析出的输入结果发送给操作系统或应用程序;
增强现实输出模块:若采用虚拟键盘是可见的方案,通过增强现实技术将虚拟键盘叠加到真实场景中,通过增强现实输出模块的输出让操作者通过视觉感知到该虚拟键盘的存在,通过增强现实输出模块的输出让操作者通过视觉感知到输入过程中输入的字符和候选项;若采用虚拟键盘是隐形的方案,通过增强现实技术将虚拟键盘叠加到真实场景中,无需让操作者通过视觉感知到该虚拟键盘的存在,通过增强现实输出模块的输出让操作者通过视觉感知到输入过程中输入的字符和候选项。
[0024]所述装置的分析模块根据侦测模块侦测捕获操作者手势动作的数据来确定虚拟键盘在真实场景中的摆放位置和摆放角度,或根据预先设置来确定虚拟键盘在真实场景中的摆放位置和摆放角度。
[0025]所述装置的分析模块对侦测模块发送来的数据进行识别和分析,识别出该手势动作的类型。
[0026]所述装置的分析模块对侦测模块捕获到的动作数据进行识别和分析,从而识别出动作的类型,若该动作的类型为定位键盘动作,则分析模块根据该手势动作获得对虚拟键盘叠加到真实场景时的摆放位置和摆放角度,并通过增强现实技术将该虚拟键盘叠加到真实场景中或调整虚拟键盘在场景中的摆放位置和摆放角度。
[0027]所述装置的通过增强现实技术将虚拟键盘叠加到真实场景中,侦测模块和分析模块对操作者的动作进行分析,使得该虚拟键盘对操作者操作键盘的动作能做出感应,但对是否让操作者通过视觉感知到该虚拟键盘的存在不做要求,即该虚拟键盘是可见的或隐形的。
[0028]所述装置的分析模块对侦测模块发送来的数据进行识别和分析,若该动作的类型为模拟击键动作,则根据操作者做出该模拟击键动作时手指空间坐标变化识别出操作者意图击键的那根手指,并获得那根手指的击键位置。
[0029]所述装置的分析模块对一次或多次连续的模拟击键的手势动作进行分析,并最终将分析出的候选项提供给操作者选择以便确认输入,该流程采用方案Cl或方案C2或方案C3 ;
方案Cl:每当检测到一次模拟击键动作,都将保存模拟击键的数据,该模拟击键的数据至少包括击键位置的数据,直到识别到操作者做出结束输入动作再根据这些模拟击键数据和虚拟键盘的位置来分析这些模拟击键动作可能产生的候选项,即识别到操作者做出结束输入动作后再计算出操作者意图击键的那根手指的击键位置与虚拟键盘上符合某种规则的那些键的位置之