多传感器数据融合在体感交互中的应用

2019-01-21 09:01孙浩鹏
关键词:大屏虚拟现实传感器

孙浩鹏

(1.长春工程学院;2.长白山历史文化与VR技术重构吉林省重点实验室,长春130012)

0 前言

在当前商业行为中,广告和信息发布一直是提高客流量和增加商品知名度的常用方法,在室外广告手段上最具有性价比的当属LED大屏广告系统。为增加传播过程中的信息关注度和获得受众接受广告信息的反馈,在LED大屏广告系统中添加交互行为是至关重要的。现行的体感交互技术一般是利用微软的Kinect体感交互或者红外传感器制作的触摸框等来实现的。Kinect是利用RGB、激光、红外多种摄像机进行混合拍摄,获得交互者的轮廓和位置深度等信息,从而分析交互者的骨架运动数据来进行交互的。红外触摸框安装在LED屏幕表面外侧,利用人体红外传感信息的数据进行分析,产生的实际动作模拟鼠标输入,可以实现点击、翻页和滑动等多种动作。目前,国外也有利用雷达进行数据采集进而实现交互的,但技术相对不成熟还未商用。

广告户外大屏的交互一般都存在流动性和不确定性,不能在随机流动的用户与大屏交互前指定用户的位置,也无法提前训练其动作或手势。在屏幕没有正对交互者或者交互人员较多时,Kinect就无法使用了。同时由于户外大屏无法避免灰尘,也不适合利用红外触摸技术。本文提出利用多种类型传感器进行搭配,建立合理的传感器矩阵,以实现户外LED大屏的流动性交互。这种方法是利用虚拟现实和物联网技术对广告LED大屏的一种尝试。因为LED大屏均为模块化,拟在各个LED模块安装的接缝处添加红外传感器或激光传感器进行数据采集和检测,实现距离LED大屏幕最近人员的动作检测,例如随机挥手或者在LED屏幕前来回走动等。同时,利用其他传感器进行人员的位置移动检测,以实现其他意图的交互行为。

1 多种传感器构建传感器阵列

单一传感器无法满足随机流动性的交互要求,只有多种传感器组合才可以满足交互的任意性。在分布上,如果多种传感器随机分布会造成布线、信号等各方面的困扰,最佳方法是将传感器分类后建立传感器矩阵。传感器矩阵指将一组同类的传感器按照设计的几何图案进行部署,用于收集各种传感器采集的信号,其优点是可增加信号源的维度和扩大信号辐射角度等。这里所说的几何图案目前常用的有矩形、六角形、三角形等。为实现大量无规律人流和LED大屏内容的交互,设计了两种结构模式:第一种是将红外线传感器按正方形顶点摆放和激光传感器按照正方形相邻摆放,主要间距是参考各LED屏幕的尺寸,传感器设置于LED屏幕的四角接缝处,优点是对LED屏幕破坏小,LED拼接本身就有缝隙,在缝隙处对LED拼接框架打孔即可。第二种是将激光传感器按正六边形进行摆放,中心点摆放红外线传感器。运用时先关闭激光传感器,当六边形中间的红外传感器激活时才开启周边的激光传感器,由于红外传感器的发射和接受角度较大,可以很容易地判断出是否有人体经过相关区域,在平时可大大减少激光传感器的数据数量,其缺点是需要在LED屏幕中间打孔,破环LED灯珠。具体采取方式应根据其显示内容、交互需求、数据量多少等条件具体分析。

2 数据采集方式的确定

多种传感器的数据采集一般有集中式和分布式两种。集中式数据采集设计简单,一般通过有线方式连接各传感器,所有数据线最后汇聚在某个节点统一采集数据,干扰少、稳定性高,但是对主机和网络负载要求高。分布式数据采集主要面向多地点、多种类的情况,每个地点都要有单片机和通信模块,其通信模块主要考虑各点间数据同步和干扰等,优点是便于横向扩展。

对于单一化的LED大屏,在内容和地点上不要求频繁变化,应采用集中式数据采集,通过有线方式将各个传感器按区域或者按类型分组并连,每组均可关闭和打开,其汇聚节点可直接为主机。

对于连锁商家的多地点的LED大屏,如果想实现交互并联(多地点一起交互),应采用分布式采集,将单个集中式采集汇聚点联机至通信模块,将数据通过云计算方式进行分析。

3 数据获取后的融合和优化

由于数据获取在虚拟现实系统中是按帧采集的,例如UNITY3D中在不指定采集速率的情况下每秒采集25帧(次),对多个传感器的采集数据来说数据量就相当可观了,如果每个传感器的数据都直接传回虚拟现实系统会造成数据冗余。同时,利用各个激光传感器对同一个目标采集信息也会减少系统的误差,增大精度和准确度,所以在虚拟现实平台进行交互前实现数据融合是非常必要的。数据融合最初是美国国防部的项目[1],数据融合一般分为数据、特征、决策这3个层次融合[2],本文只讨论数据融合。数据融合方法有嵌入约束、证据组合、人工神经网络等。各种方法的最后结果均统一处理并得出结果,虚拟现实系统将根据这个结果进行交互判断。由于传感器的分布和整体物理规律已经确定,所以主要讨论嵌入约束法,其常用算法有贝叶斯估算和卡尔曼滤波。

3.1 贝叶斯估算

贝叶斯理论是统计决策理论的重要分支,贝叶斯提出在先验概率和条件概率密度都已知的情况下,可以利用公式计算出后验概率,进而可以利用后验概率的值做决策[3]。贝叶斯估算法要求系统的各种决策都是独立的,一般把决策当作样本空间,在传感器数据融合过程中可以先将某些传感器的噪声分析一次,将其作为某种条件,再按照概率原则,把后验概率当作测量结果的不确定性,这样就可以很容易地将所有后验概率在一定范围内的测量结果当作不确定或者干扰结果,进而进行过滤。

3.2 卡尔曼滤波法

卡尔曼(Kalman)滤波法[4]主要用检测传感器过程中的统计特征来做数据融合,实质是利用统计结果的递推来确定数据是否是最优数据,从而去除流动交互条件下的传感器冗余数据,利用递归算法对数据存储空间要求较高,如果存储空间足够,该算法具有最优化、防发散等优点。目前,Kalman按数据处理方法可分为分散滤波(DKF)和扩展滤波(EKF)两种。DKF可实现多传感器数据融合的全部分散化,这样即使某个传感器失效也不影响整个系统的稳定性。EKF则可克服数据采集的不稳定性和减少系统线型程度的误差对融合过程产生的影响。

通过对比,在虚拟交互的过程中应该采用Kalman方法进行数据融合,由于LED大屏的交互要求的精确性,所以其传感器的感应区域必须有重叠,导致数据的冗余,那么如何将冗余数据剔除就是数据融合技术的研究内容。目前,数据融合主要考虑通信能力、计算资源和整个传感器的整体稳定性。比较经典的算法是k-means[5-6]。k-means算法先将所有的对象假设为n个,从这n个传感器中随机选k个传感器作为聚类的中心点,再根据和这k个传感器的关系(即相关程度),将其他所有传感器分配给相同关系或者类似关系的中心,并把这个分配单元叫做簇,计算每个簇的传感器数值的平均值。将这个方法不断重复,当标准测量函数开始收敛则证明这个分类有效,得到的每一个聚类(簇)也就代表一个合格的分组。其算法概率模型设计如下,假设空间样本的条件概率模型如式(1):

p(x|θ)=∑j=1∶kP(Cj)pj(x|θ2,Cj),

(1)

式中:θ=(θ1,θ2,…,θk)为等待估计参数向量,参数θj未知;p(x|θ2,Cj)是分量密度,意思为簇类型为j的概率密度;先验概率函数P(Cj)为混合计算因子。

当传感器数据获得后,假设每个簇的概率密度函数都是满足高斯分布的θj=(μj,∑),并且每个传感器都属于唯一的一个簇,那么此时可以将式(1)简化为式(2):

(2)

上述函数可通过最大似然法则求解,假设观察样本为X=(x1,…xn),对应的似然函数为式(3):

(3)

通过对式(3)该似然函数的最大化,即可得到k-means的误差平方和准则函数,该函数为所有节点对象的误差平方的综合:

(4)

式中:p代表给定的传感器;mi是分簇Ci的平均数据。

再对式(4)进行计算,可以得出各符合高斯分布的传感器数据平均值及对应的协方差矩阵如式(5):

(5)

该算法对于分类形状相似的簇效果最好,如果簇的数量较大且处理效果也很高,其复杂度与总体数量,簇的数量有关。一般来说簇的数量要小于总传感器数量,此时可以保证数据快速收敛到局部最优解,初始节点的选择会对结果有巨大影响,通过式(4)可以看出任意一个传感器的准则函数都会对结果产生决定性的影响,所以准则函数的确定是式(5)准确的前提条件。

通过测试发现,式(5)计算出的数据与真实情况有较大的误差,这是因为在人体交互行为过程中的数据属于典型的非线性数据,所以在理论上没有完美的准则函数可以适应非线性条件下的计算。对当前激光传感器的数据采集,主要需要采集人体经过某传感器整体或者肢体在设定时间内没有进行扩散的数据,如果扩散则证明人体或肢体有移动的可能,由于人体移动的规律性,必然是强调对相邻传感器数据的变化监控。

对式(4)构造一个增量函数,由于传感器物理排列为统一形态,以六边形为例,如果分簇后将相关簇的中心定义为周边6个激光传感器的数据中心,再将此中心的值与红外线传感器对比,即可得知是否有增量,所以中心数据如式(6):

(6)

式中:C为中心;Ci为相同簇的传感器的数据;ni为具有同样中心数据的簇。

增量函数根据需求定义如式(7):

(7)

式中Ci和ni都随着簇的变化而变化,这个增量函数可以很容易判断出周边簇的变化类别,确定唯一的增量值向量。将式(7)与式(4)相乘,得出的公式即为带有增量函数的准则函数,这样可以大大减少计算量,当增量函数小于给出的范围时,则跳过该簇的误差平方和计算,提高了运算速度。当增量函数大于给出的范围时,则计算该点相邻簇的中心值,可以很容易判断出人体或者肢体的运动方向。

4 算法评价和实验分析

在数据融合后,需要建立一套评价方法来评估数据融合的改进算法和传统算法的优劣,从而可以客观有效地选择各种情况对应的算法。由于本文面向的是体感交互,所以考核评价的目标应该从数据融合速度、人体动作的反应完整度两个方面来综合评价。

其中数据融合速度主要测试簇运算的速度,虽然增量函数的判断减少了簇的计算数量,但增量函数的计算又增加了新的计算时间,对此,数据的测试是非常必要的。人体动作的反应完整度主要检测数据融合过程中对人体边界的破坏程度,如果融合过程对人体边界和动作完整度破坏较高就失去了融合的意义。由于数据均来自传感器信号,本文将之定义为漏信率。漏信率主要测试方法判别融合后的簇是否包含人体数据,其百分比定义如式(8):

(8)

式中ρlx为判断信号丢失概率,如式(9):

(9)

式中Len代表数据单帧的总长度,可以判断出实际的数据融合后取舍的数据比率。此处要特殊说明的是该数据应该考虑传感器的波特率和计算机接收的数据量,如果数据量不足,即使没有数据融合,数据帧丢失的数据也不在上述公式计算之内。

为了更好地对比和评价,本文将红外线传感器、激光传感器、面阵固态激光雷达传感器和超声波传感器的数据运用传统k-means算法和带有增量函数的算法进行了计算,计算速度见表1,漏信率详细数据见表2。

表1 数据融合计算速度实验结果

表2 数据融合漏信率实验结果

通过测试表明,增加了增量函数的数据融合方法对红外线传感器和激光传感器数据计算速度提高很小,对超声波传感器和面阵激光雷达的速度增加明显,在漏信率方面,带增量函数的算法对超声波传感器影响较大。综合比较,本文提出的算法比较适合利用面阵激光雷达进行数据的融合。

虚拟现实内容要完成适合的交互,必须对人的意图进行预测[7],从传感器得到的数据不论怎样计算,对计算机而言都是模糊的,是否能依据这些模糊数据理解用户交互,虚拟现实内容是否能及时响应用户都是目前研究的内容。其主要方法仍然是通过知识库和交互式学习,其理论在1986年由Kautz等[8]提出,目前常用的算法都关注于智能体在行动的感知方面,如隐马尔可夫模型、动态贝叶斯、混合高斯等。

5 结语

目前,视觉识别和传感器识别都是虚拟现实领域的重点发展方向,在非指定条件下的流动交互还有很多问题要解决,本文所提出的激光传感器矩阵虽然实现了户外交互,但在数据获取的数据融合速度与响应时间、互相覆盖范围的传感器冗余滤波、交互行为知识库、受众反馈获取、偏差是否可以自动校正等方面还有很多内容要实现。

未来主要研究如何融合多种感知手段,减少不同模态感知手段在距离上、特性上的差异,对多种感知手段得到的信息进行融合,对多种传感器进行匹配,建立相应的传感器矩阵,从而提升虚拟现实内容对外界的感知能力。将虚拟现实技术、智能感知技术与体感交互相结合,改变虚拟或增强现实内容与使用者的交互模式。对传感器采集得到的体感交互类信息和环境信息进行有效的分析,获得人体的生理、行为、情绪等信息,挖掘体感交互信息内在特征,通过自动分类,将体感行为作为属性建立意图层面的类别,通过对交互意图的大量学习,实现通过建立的交互类别理解虚拟现实内容,从而做出不同反应,并实现根据交互方法与尺度的不同展现虚拟现实内容不同的形态,使得虚拟或增强现实内容具有智能体的特性,让受众在交互过程中从接受者、控制者进化为环境融入者。

猜你喜欢
大屏虚拟现实传感器
从618看电视发展趋势,大屏、高端以及激光电视成热门首选
康奈尔大学制造出可拉伸传感器
为大屏而生,让体验更佳 峰米4K激光家庭影院Max
超越DCI影院色彩的百寸大屏王者 海信(Hisense) 100L9-PRO
简述传感器在物联网中的应用
“传感器新闻”会带来什么
浅谈客厅大屏显示未来
跟踪导练(三)2
REALITY BITES
风口上的虚拟现实