VR中姿态、定位和身份识别系统的设计

在VR中为了获取好的沉浸感,显示的画面与玩家的实际动作要尽可能地一致,如果不一致,会使人与日常形成的习惯不一样,眩晕就发生了。所以这里有两个关键点:

1、环境、动作的识别

2、及时将变化反馈到头显


在VR中环境是完全虚拟的,但在虚拟的空间中场景的变化要与玩家的动作一致,要让玩家感觉不到延迟。那么问题就变成,如何及时地感知玩家的动作的变化。这里涉及到空间定位和肢体的识别(主要是手的识别)技术。


先来说空间定位,就是确定用户在空间内的位置和移动方向,并将用户位置信息传递给应用程序,使得用户移动方式与所感知的虚拟场景一致,增强虚拟场景的真实性。系统实现的关键是:

1、确定用户的位置

2、移动方向

用户位置确定的前提是要能够识别用户的特征,通过识别后的用户特征,应用定位算法对该用户进行定位,从而得出用户位置。移动轨迹则可以通过一系列的位置变化来获取。


在这里需要说明一个就是计算机视觉和机器视觉的问题,想到特征我们自然会想到眼睛看东西时候分辨特征的过程,感觉是非常轻松的事情,其实不然。因为人脑处理的分层结构和并行性,所以可以快速的分辨。按照前面获取诺贝尔奖的David H. Hubel的研究,人脑识别物体是分层次进行的,首先将光信号变为神经信号,大脑对神经信号进行处理形成线条,再由线条形成物体的轮廓,将轮廓进行模式识别为特定的物体,将物体和大脑有关的高级概念进行关联,比如这是桌子,这是书等。是一个非常复杂的过程。所以如果要模拟这样一个复杂的过程,并能够实时地得到结果,计算量太大,在有限的计算机资源中难于实现。目前有采用深度学习的技术去做这个事的。图像的精确识别是计算机视觉要处理的问题,在医学影像,视频监控等都有广阔的应用。


为了减少计算量,在工程上进行简化,做一个在特定的使用场景下就可以达到工程目标的系统。在VR的姿态、定位和身份识别系统中,关心的是姿态、定位和身份,不关系其他的一些特征,比如使用者是男的女的。上衣呢,我们实现系统时候就可以大大地简化,只是将我们关心的特征提取出来就行。这样我们就可以为此特定场景设计一个视觉处理系统,这就是机器视觉。


为了达到简化的目的,我们在对要识别的特征的选取上可以做非常多的事情,在数据的采集上也可以做非常多的事情,从而达到简化计算量,降低实现难度的目的。


(一)  物体的特征

机器要将关心的物体从环境背景中分离出来,首先需要采集信息,而后将采集的信息通过特征区分,将关心的物体标识出来。信息的采集可以通过超声,电磁波,光等媒介进行。通过模型的计算,将获取的信息中根据特定的特征将物体从背景中分离出来。

物体的特征可以是物体本征信息,比如形状,大小,强弱,颜色等。也可以是人为附加的特征信息,比如强弱的变化模式,形状的变化模式,颜色的变化模式等。人为附加的特征信息,因为有已知的特征变化信息,在这一前提下可以更方便地将物体与背景区分开来,可以减少识别的难度和提高识别的效率。


(二)  特征的选取

选取特征需要考虑特征形成的简单性,采集的便利性,分离的简单性,对环境的影响程度,所实现系统的效率和成本等因素。考虑到这些因素,采用自然存在的物理现象,和目前工业化的传感器能够获取的特征是要优先考虑的。

可以考虑的特征包括颜色,形状,声音,微波和光。颜色和形状因为背景环境干扰比较大,分离比较困难。声音因为波长和衍射等物理原因,定位不精确。微波是可以考虑的方案,但各国政府对微波的频率和功率有严格管制,同时微波的接收设备也更为复杂。所以光(可见光和红外光)是备选的方式,因为光有以下优点:相当可控,对环境影响小;接收传感器简单;定位准确。缺点是会被遮挡。


(三)  光的人为附加特征

光的人为附件特征可以考虑有:光颜色(频率)变化,光的强弱(闪烁)变化。颜色容易受环境影响。特定频率的强弱(闪烁)变化容易实现和有足够区分特征(特定闪烁的频率),难点在闪烁的特征获取上面。但是通过日常生活的观察,闪烁的特征是比较容易获取的。


(四)  定位和移动

获取特征后,可以通过计算机视觉方法去定位特定特征物体在空间位置,通过前后位置的变化可以判断移动的方向。


(五)  遮挡处理

当特征物体发的光被遮挡时,可以采用IMU进行定位。

 

(六)采集特征的传感器

采集特征的传感器是简化系统设计,减低难度,减少计算量的重点和难点。可以设想的传感器比如Camera,可以进行图像的采集,而且成本比较低,但是速度存在一些问题。而且Camera是为图像的获取优化的,获取的图像是为人看而优化的。在获取的图像中进行特征的提取必然会导致计算量比较大,比如OpenCV里面光斑的提取,通过光流的计算特征等,都涉及非常大的计算量,帧率必然受限,满足不了使用的要求。我们可以考虑设计一个专用的传感器,只对我所关心的特征进行提取,这样就过滤掉很多不需要的信息,减少了计算量。这里有很多方法可以去考虑,我发现一个很好的方法,可以大大地减少工作量,不过在博客里面我就不进行说明了,有需要可以私下探讨。


  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值