用于虚拟现实设备的手势识别方法、装置及虚拟现实设备
技术领域
本发明涉及虚拟现实设备技术领域,更具体地,涉及一种用于虚拟现实设备的手势识别方法、装置及虚拟现实设备。
背景技术
虚拟现实(Virtual Reality,简称VR),虚拟现实技术将是支撑一个定性和定量相结合,感性认识和理性认识相结合的综合集成多维信息空间的关键技术。随着网络的速度的提升,基于虚拟现实技术的一个互联网时代正悄然走来,它将极大地改变人们的生产和生活方式。其具体内涵是:综合利用计算机图形系统和各种现实及控制等接口设备,在计算机上生成的、可交互的三维环境中提供沉浸感觉的技术。
虚拟现实设备的沉浸感来自于与外界的隔绝,尤其是视觉和听觉的隔绝,使得大脑被欺骗,产生脱离于现实世界的虚拟沉浸感。目前,虚拟现实设备的人机交互的方式主要是语言识别,眼球追踪以及手势识别等。手势识别可促进虚拟现实设备使用者的沉浸感避免用户在虚拟世界成为一个看客。但是目前的虚拟现实设备手势识别的范围较窄,角度为80度左右,无法使用户尽情的沉浸其中。
发明内容
本发明的一个目的是提供一种基于多个摄像头的图像拼接完成虚拟现实设备的超180度视角的手势识别的新技术方案。
根据本发明的第一方面,提供了一种用于虚拟现实设备的手势识别方法,所述虚拟现实设备包括至少两个摄像头,所述手势识别方法包括:
控制每一所述摄像头采集当前用户的当前手势图像;
将每一所述当前手势图像进行拼接处理,得到当前拼接图像;
根据所述当前拼接图像进行手势识别。
可选的是,所述将每一所述当前手势图像进行拼接处理,得到当前拼接图像具体包括:
对每一所述当前手势图像均进行预处理,得到对应的待配准图像;
将所有所述待配准图像进行配准处理,得到待融合图像;
对所述待融合图像进行图像融合与边界平滑处理,得到所述当前拼接图像。
可选的是,所述根据所述当前拼接图像进行手势识别具体为:
提取所述当前拼接图像中的当前手势特征;
将所述当前手势特征与数据库中的指定手势特征进行比对;
根据比对结果确定当前手势动作。
根据本发明的第二方面,提供了一种用于虚拟现实设备的手势识别装置,所述虚拟现实设备包括至少两个摄像头,所述手势识别装置包括:
当前控制模块,用于控制每一所述摄像头采集当前用户的当前手势图像;
当前拼接模块,用于将每一所述当前手势图像进行拼接处理,得到当前拼接图像;
手势识别模块,用于根据所述当前拼接图像进行手势识别。
可选的是,所述当前拼接模块具体包括:
预处理单元,用于对每一所述当前手势图像均进行预处理,得到对应的待配准图像;
配准单元,用于将所有所述待配准图像进行配准处理,得到待融合图像;
融合单元,用于对所述待融合图像进行图像融合与边界平滑处理,得到所述当前拼接图像。
可选的是,所述手势识别模块还包括:
特征提取单元,用于提取所述当前拼接图像中的当前手势特征;
比对单元,用于将所述当前手势特征与数据库中的指定手势特征进行比对;
动作确定单元,用于根据比对结果确定当前手势动作。
根据本发明的第三方面,提供了一种虚拟现实设备,包括处理器和存储器,所述存储器用于存储指令,所述指令用于控制所述处理器执行根据本发明第一方面所述的手势识别方法。
根据本发明的第四方面,提供了一种虚拟现实设备,包括:
至少两个设置在不同位置的摄像头,且相邻设置的摄像头的拍摄视角部分重叠;
根据本发明第二方面所述的手势识别装置;
可选的是,所述虚拟现实设备的前盖上设置有四个第一摄像头,且相邻的第一摄像头之间的视角部分重叠;所述虚拟现实设备相对的两个侧盖上分别设置有一个第二摄像头,且每一所述第二摄像头与相邻的第一摄像头之间的视角部分重叠。
可选的是,每一所述摄像头均为深度摄像头。
本发明的发明人发现,在现有技术中,存在虚拟现实设备手势识别的范围较窄,无法使用户尽情的沉浸其中的问题。因此,本发明所要实现的技术任务或者所要解决的技术问题是本领域技术人员从未想到的或者没有预期到的,故本发明是一种新的技术方案。
本发明的一个有益效果在于,在不同位置放置摄像头,能够扩大摄像头拍摄角度,不同位置的摄像头得到的图片通过拼接模块进行拼接处理得到一帧拍摄角度超过单摄像头视角的拼接图片,这样,就提高了用户在使用虚拟现实设备时的沉浸感。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1为根据本发明一种用于虚拟现实设备的手势识别方法的一种实施方式的流程图;
图2为根据本发明一种用于虚拟现实设备的手势识别方法的另一种实施方式的流程图;
图3为根据本发明一种用于虚拟现实设备的手势识别装置的一种实施结构的方框原理图;
图4为根据本发明一种用于虚拟现实设备的手势识别装置的另一种实施结构的方框原理图;
图5为根据本发明一种虚拟现实设备的一种实施结构的方框原理图;
图6为根据本发明一种虚拟现实设备的另一种实施结构的左视图;
图7为根据本发明一种虚拟现实设备的另一种实施结构的右视图。
附图标记说明:
1-摄像头; 11-第一摄像头;
12-第二摄像头。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为了解决现有技术中存在的虚拟现实设备手势识别的范围较窄,无法使用户尽情的沉浸其中的问题,提供了一种用于虚拟现实设备的手势识别方法,其中,该虚拟现实设备包括至少两个摄像头,这两个摄像头可以都是普通的彩色摄像头;也可以都是深度摄像头;还可以一个是彩色摄像头,另一个是深度摄像头。
图1为根据本发明一种用于虚拟现实设备的手势识别方法的一种实施方式的流程图。
根据图1所示,该手势识别方法包括以下步骤:
步骤S110,控制每一摄像头采集当前用户的当前手势图像。
具体的,摄像头采集当前用户的当前手势图像的方式例如可以是以帧为单位进行采集的。
步骤S120,将每一当前手势图像进行拼接处理,得到当前拼接图像。
图像拼接技术分为图像配准和图像融合。为了将多个图像拼接为一张,可以先进行图像配准,根据Lowe提出的SIFT特征点,用来对图片的匹配点进行选取和标定,之后通过仿射模型将所有图片注册到一个坐标系下。图像配准除了统一坐标系还可得到相邻两个摄像头拍摄图像的重叠区域。图像融合会将配准后图片的有用信息融合到一张图片,同时对配准后图片的视角、光照等因素造成的拼接位置模糊进行处理。图像融合例如可以采用高斯金字塔技术。
根据图2所示,该步骤S120具体可以包括以下步骤:
步骤S121,对每一当前手势图像均进行预处理,得到对应的待配准图像。
预处理具体为对获取的当前手势图像数据进行去噪、增强等处理,统一数据格式、图像大小和分辨率。
步骤S122,将所有待配准图像进行配准处理,得到待融合图像。
图像配准具体就是每一待配准图像之间的对齐,对从不同摄像头或者不同时间或者不同角度获得的多幅待配准图像进行最佳匹配,得到待融合图像。
图像配准总是相对于多幅图像来讲的,在实际工作中,通常取其中的一幅待配准图像作为配准的基准,称它为参考图,另一幅待配准图像,为搜索图。图像配准的一般做法是,首先在参考图上选取以某一目标点为中心的图像子块,并称它为图像配准的模板,然后让模板在搜索图上有秩序地移动,每移到一个位置,把模板与搜索图中的对应部分进行相关比较,直到找到配准位置为止。
图像配准中所遇到的同一目标的两幅待配准图像常常是在不同条件下获得的,如不同的成像时间、不同的成像位置、甚至不同的成像系统等,再加上成像中各种噪声的影响,使同一目标的两幅待配准图像不可能完全相同,只能做到某种程度的相似。
根据图像匹配方法的不同仁阔,一般可以将图像拼接算法分为以下两个类型:基于区域相关的拼接算法,基于区域的配准方法是从待拼接图像的灰度值出发,对待配准图像中一块区域与参考图像中的相同尺寸的区域使用最小二乘法或者其它数学方法计算其灰度值的差异,对此差异比较后来判断待拼接图像重叠区域的相似程度,由此得到待拼接图像重叠区域的范围和位置,从而实现图像拼接。也可以通过FFT变换将图像由时域变换到频域,然后再进行配准。对位移量比较大的图像,可以先校正图像的旋转,然后建立两幅图像之间的映射关系。具体可以采用逐一比较法、分层比较法或者是相位相关法。
基于特征的配准方法不是直接利用图像的像素值,而是通过像素导出图像的特征,然后以图像特征为标准,对图像重叠部分的对应特征区域进行搜索匹配。具体的方法例如可以为比值匹配法或者特征点匹配法。
基于特征的配准方法有两个过程:特征抽取和特征配准。首先从待配准图像中提取灰度变化明显的点、线、区域等特征形成特征集冈。然后在待配准图像对应的特征集中利用特征匹配算法尽可能地将存在对应关系的特征对选择出来。一系列的图像分割技术都被用到特征的抽取和边界检测上。如canny算子、拉普拉斯高斯算子、区域生长。抽取出来的空间特征有闭合的边界、开边界、交叉线以及其他特征。特征匹配的算法有:交叉相关、距离变换、动态编程、结构匹配、链码相关等算法。
步骤S123,对待融合图像进图像融合与边界平滑处理,得到当前拼接图像。
将待拼接图像的重合区域进行融合得到拼接重构的平滑无缝的当前拼接图像。
图像融合是把多个不同模式的图像传感器获得的同一场景的多幅图像或同一传感器在不同时刻获得的同一场景的多幅图像合成为一幅拼接图像的过程。
图像配准之后,由于图像重叠区域之间差异的存在,如果将图像象素简单叠加,拼接处就会出现明显的拼接缝,因此需要修正待拼接图像拼接缝附近的颜色值,使之平滑过渡,实现无缝合成。
常用的融合方法有HIS融合法、KL变换融合法、高通滤波融合法、小波变换融合法、金字塔变换融合法、样条变换融合法等。
步骤S130,根据该当前拼接图像进行手势识别。
这样,就扩大了摄像头采集图像的视角,扩大了用户在进行手势识别过程中的手部移动范围,很好的调高用户使用的灵活性,增加了用户使用VR的沉浸感。
根据图2所示,该步骤S130具体可以包括:
步骤S131,提取当前拼接图像中的当前手势特征;
步骤S132,将当前手势特征与数据库中的指定手势特征进行比对。
步骤S133,根据比对结果确定当前手势动作。
指定手势特征可以是在虚拟现实设备出厂前预存在数据库中的,也可以是当前用户在使用之前存储在数据库中的,在本发明的一个具体实施例中,该手势识别方法还包括:
控制每一摄像头采集指定用户的指定手势图像;
将每一指定手势图像进行拼接处理,得到参考拼接图像;
将参考拼接图像中的对应指定手势的指定手势特征存储在数据库中。
如果当前手势特征与一个指定手势例如可以是左滑的指定手势特征比对成功,即当前手势动作为指定手势动作左滑,则响应对应该指定手势动作左滑的功能,例如是打开某项应用等。
本发明还提供了一种用于虚拟现实设备的手势识别装置。图3为根据本发明一种用于虚拟现实设备的手势识别装置的一种实施结构的方框原理图。
根据图3所示,该手势识别装置300包括当前控制模块310、当前拼接模块320和手势识别模块330,该当前控制模块310用于控制每一摄像头采集当前用户的当前手势图像;该当前拼接模块320用于将每一当前手势图像进行拼接处理,得到当前拼接图像;该手势识别模块330用于根据当前拼接图像进行手势识别。
图4为根据本发明一种用于虚拟现实设备的手势识别装置的另一种实施结构的方框原理图。
根据图4所示,该当前拼接模块320还可以包括预处理单元321、配准单元322和融合单元323,该预处理单元321用于对每一当前手势图像均进行预处理,得到对应的待配准图像;该配准单元322用于将所有待配准图像进行配准处理,得到待融合图像;该融合单元323用于对待融合图像进行图像融合与边界平滑处理,得到当前拼接图像。
进一步地,该手势识别装置300还可以包括特征提取单元331、比对单元332和动作确定单元333,该特征提取单元331用于提取当前拼接图像中的当前手势特征;该比对单元332用于将当前手势特征与数据库中的指定手势特征进行比对;该动作确定单元333用于根据比对结果确定当前手势动作。
本发明还提供了一种虚拟现实设备,在一方面,如图5所示,包括处理器502和存储器501,该存储器501用于存储指令,该指令用于控制处理器502进行操作以执行上述用于虚拟现实设备的手势识别方法。
除此之外,根据图5所示,该虚拟现实设备500还包括接口装置503、输入装置504、显示装置505、通信装置506等等。尽管在图5中示出了多个装置,但是,本发明可以仅涉及其中的部分装置,例如,处理器501、存储器502、接口装置503等。
上述通信装置506例如能够进行有有线或无线通信。
上述接口装置503例如包括耳机插孔、USB接口等。
上述输入装置504例如可以包括触摸屏、按键等。
上述显示装置505例如是液晶显示屏、触摸显示屏等。
该虚拟现实设备例如可以是虚拟现实头盔或者是虚拟现实眼镜等。
在另一方面,该虚拟现实设备包括至少两个摄像头1和上述用于虚拟现实设备的手势识别装置200,摄像头1用于采集手势图像。该虚拟现实设备例如可以是虚拟现实头盔或者是虚拟现实眼镜等。
在本发明的一个具体实施例中,如图6图7所示,该虚拟现实设备的前盖上设置有四个第一摄像头11,且这四个第一摄像头11在前盖上构成一个矩形或者是方形,且相邻的第一摄像头11之间的视角部分重叠;虚拟现实设备相对的两个侧盖上分别设置有一个第二摄像头12,且每个第二摄像头12与相邻的第一摄像头11之间的视角部分重叠。
这四个第一摄像头11可以扩大横向和纵向的角度,增大用户手部上下、左右移动的范围;另外两个第二摄像头12可以增大横向或者纵向的角度,扩大用户手部左右或者上下移动范围。这样,就实现了超180度视角的拍摄,且避免出现拍摄盲区。
上述“前盖”具体为在虚拟现实设备在佩戴过程中远离用户眼睛的一侧,上述“侧盖”具体为除了“前盖”及与“前盖”相对表面之外的其他表面。
在本发明的一个具体实施例中,摄像头1均为深度摄像头,由于深度摄像头采集的图像均为灰度图,没有将彩色图像转换为灰度图的步骤,因此,使得该虚拟现实设备执行上述的手势识别方法的速度更快,而且,深度摄像头采集的图像的噪点比较少。
上述各实施例主要重点描述与其他实施例的不同之处,但本领域技术人员应当清楚的是,上述各实施例可以根据需要单独使用或者相互结合使用。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分相互参见即可,每个实施例重点说明的都是与其他实施例的不同之处,但本领域技术人员应当清楚的是,上述各实施例可以根据需要单独使用或者相互结合使用。另外,对于装置实施例而言,由于其是与方法实施例相对应,所以描述得比较简单,相关之处参见方法实施例的对应部分的说明即可。以上所描述的系统实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。