发明内容
为了解决现有技术中的问题,本发明提出一种填补非接触式虚拟屏操作的空白,不需要提前对用户的行为进行训练,通过RFID来减少部署开销,并能够与工业标准完全兼容的基于被动式RFID标签的非接触式虚拟屏操作识别方法。
为了实现以上目的,本发明所采用的技术方案为:包括以下步骤:
1)采用被动式RFID标签阵列平面构建虚拟屏幕,当用户的手在空中对标签阵列平面做出手势或写出笔划时,采集RFID阅读器天线和标签通信过程中标签的ID、RSS值、以及相位参数;
2)根据步骤1)采集的标签的ID、RSS、以及相位参数,首先将相位进行非周期化展开,然后计算标签的累积相位差,最后通过图像辅助来识别手做出的手势或笔划;
3)若步骤2)为手势时,则根据标签RSS值的谷值顺序,检测手影响的标签序列,识别出手做出的手势的方向;
若步骤2)为笔划时,首先把连续的相位数据流分割为彼此不重叠的帧,每一帧给定一个确定的长度,并计算每一帧的均方根;然后以若干个连续帧为一组,将一组作为一个窗,计算每个窗的均方根的标准差,通过比较与阈值的关系分割笔划;最后根据笔划推断合成为完整字母,完成识别方法。
所述步骤1)中被动式RFID标签阵列中两个相邻标签的距离为6cm,两个相邻标签的方向为面对RFID阅读器天线且反向设置,RFID阅读器天线的发射角为72°。
所述步骤2)中标签i的累积相位差Ii′的计算公式如下:
Ii′=wi -1∑(θ′ik-θij′)
其中,θij′为标签i在手运动的过程中的相位值θij与标签i在静态时的相位均值的差值,k=j+1,j=1,2,...,M-1,M是相位样本数,j对应第j个射频样本集合,wi为标签i的权重,wi的计算公式为:E(bi)是静态情况下每个标签标准差的期望,N是标签的数量。
所述图像辅助采用最大类间方差法,通过执行基于聚类的图像阈值将图像转换成二进制图像,即将标签i的累积相位差显示在灰度图中,再利用最大类间方差法使得图像仅包括两类像素:前景像素1和背景像素0,前景像素1表示手划过相应区域,通过估量标签阵列中前景像素1的数量来识别动作或笔画。
所述步骤3)中首先将连续的相位数据流分割为彼此不重叠的帧,每一帧定义为f,长度为100ms,则每一帧的均方根为:
其中,M是平面内标签的数量,n是当前帧的相位采样数,pij是第i个标签的第j次采样;然后以5个连续帧为一组,将其作为一个窗w,计算窗均方根rms(w)的标准差std(rms(w)),并看是否超过阈值thre:
std(rms(w))>thre
若满足以上公式则识别为笔划。
所述步骤3)中采用树结构语法将笔划推断合成为完整字母。
所述步骤3)中通过标签的ID来获得笔划的位置信息,并判断区分相似笔划。
与现有技术相比,本发明将一个标签阵列作为虚拟感知平面,用户用手在空中对标签阵列平面进行非接触式操作,射频信号可以产生相应的变化,将此变化和用户所写的字母或所做动作对应起来达到识别的目的,本发明不需要提前对用户的行为进行训练,并且通过利用现有RFID设施来大大减少了部署上面的开销,此外本发明可以和工业标准完全兼容,如EPC Global C1G2。本发明在不依赖设备的情况下在空中即可完成非接触式手势识别,其主要优点有:性价比高,可以评估运动方向、对环境变化有一定弹性等;本发明在不需要训练的前提下利用被动标签完成细粒度手势识别,通过在现有商用RFID设备上的实验证实了本发明的可行性和有效性。结果表明,本发明对于不同手势的检测准确性达到94%左右,识别英文字母的准确性达到91%以上。
具体实施方式
下面结合具体的实施例和说明书附图对本发明作进一步的解释说明。
参见图1,本发明包括以下步骤:
1)采用被动式RFID标签阵列平面构建虚拟屏幕,步骤1)中被动式RFID标签阵列中两个相邻标签的距离为6cm,两个相邻标签的方向为面对RFID阅读器天线且反向设置,RFID阅读器天线的发射角为72°,当用户的手在空中对标签阵列平面做出手势或写出笔划时,采集RFID阅读器天线和标签通信过程中标签的ID、RSS值、以及相位参数;
2)根据步骤1)采集的标签的ID、RSS、以及相位参数,首先将相位进行非周期化展开,然后计算标签的累积相位差,最后通过图像辅助来识别手做出的手势或笔划;
标签i的累积相位差Ii′的计算公式如下:
Ii′=wi -1∑(θ′ik-θij′)
其中,θij′为标签i在手运动的过程中的相位值θij与标签i在静态时的相位均值的差值,k=j+1,j=1,2,...,M-1,M是相位样本数,j对应第j个射频样本集合,wi为标签i的权重,wi的计算公式为:E(bi)是静态情况下每个标签标准差的期望,N是标签的数量;
图像辅助采用最大类间方差法,通过执行基于聚类的图像阈值将图像转换成二进制图像,即将标签i的累积相位差显示在灰度图中,再利用最大类间方差法使得图像仅包括两类像素:前景像素1和背景像素0,前景像素1表示手划过相应区域,通过估量标签阵列中前景像素1的数量来识别动作或笔画;
3)若步骤2)为手势时,则根据标签RSS值的谷值顺序,检测手影响的标签序列,识别出手做出的手势的方向;
若步骤2)为笔划时,首先把连续的相位数据流分割为彼此不重叠的帧,每一帧给定一个确定的长度,并计算每一帧的均方根;然后以若干个连续帧为一组,将一组作为一个窗,计算每个窗的均方根的标准差,通过比较与阈值的关系分割笔划;最后采用树结构语法根据笔划推断合成为完整字母,并通过标签的ID来获得笔划的位置信息,并判断区分相似笔划,完成识别方法。
笔划识别的具体包括:首先将连续的相位数据流分割为彼此不重叠的帧,每一帧定义为f,长度为100ms,则每一帧的均方根为:
其中,M是平面内标签的数量,n是当前帧的相位采样数,pij是第i个标签的第j次采样;然后以5个连续帧为一组,将其作为一个窗w,计算窗均方根rms(w)的标准差std(rms(w)),并看是否超过阈值thre:
std(rms(w))>thre
若满足以上公式则识别为笔划。
参见图1,本发明包括以下步骤:
1)构建虚拟屏并收集信号:本发明首先用被动式RFID标签阵列平面构建一个虚拟屏幕,在此基础上,用户可以进行非接触式动作笔划的操作,另外,在典型的RFID系统中,阅读器持续询问标签并且可以获得标签的ID、信道参数,这其中相位和信号接收强度(RSS)直接反应标签的信道特征,也可以作为周边环境变化的指标,当手在空中对标签阵列平面做出动作或写出笔划,本发明先采集RFID阅读器和标签通信过程中标签的ID以及RSS、相位等参数来进行细粒度的手势或笔划识别;
2)基于相位的动作和笔划识别:基于步骤1),当人手在标签阵列前移动,每个标签感应到的相位变化与运动轨迹有紧密的相关性,在本发明中,阅读器天线和标签的相对位置是固定的,因此每个标签对阅读器的反向散射信号在静态环境中是稳定的,当手开始在标签阵列平面前移动,信号会发生明显改变,故本发明在差异性抑制的基础上提出了利用累积相位差进行动作笔划识别;其次,RFID阅读器采集的相位值在0到2π之间周期性波动,周期性相位的变化会对本发明的结果产生影响,故而本发明采用算法将相位进行非周期化展开,最后本发明计算标签的累积相位差,并通过图像辅助技术来达到识别手做出的手势或笔划的目的;
3)如为手势则基于RSS的方向识别:当手的运动位置垂直于标签时,RSS值有明显的谷值,因此,本发明采用通过观察标签RSS值的谷值顺序,来检测手影响的标签序列,这样就可以简单有效地评估手势的方向;
若为笔划则识别英文字母:首先,本发明把连续的相位数据流中分割成彼此不重叠的帧,每一帧给定一个确定的长度,并计算每一帧的均方根,紧接着以连续几帧为一组,将其作为一个窗(w),为了确认在一个给定窗中是否有笔划,计算窗均方根的标准差,通过比较其值与阈值的关系,有效地分割笔划,其次,在完成笔划动作检测后,如图11本发明将采用树结构语法,根据笔划推断合成完整字母以达到最终目的。
步骤2)中,如图2a所示,当人手在标签阵列前移动,标签射频信号因此产生变化。假设手沿着x轴在T1(也就是1号标签)上划过,运动轨迹为A到Z,每个标签感应到的相位变化与运动轨迹有紧密的相关性。本发明假设在整个运动中的某个时间点,手位于位置B处。理论上,标签T1和T2的相位差可以分别被表示为:
其中,相对位置如图2b所示,更进一步,有:
由于是一个单调减函数,且因此
基于以上分析,考虑由A到Z整个手的运动轨迹,可以推出一个可靠的理想化猜想:T1累积的相位差比T2大,也就是对于y轴,同理有:接下来,本发明提出:检测手在特定时间经过哪个标签,只需要检测哪个标签累积的相位差比较大。假定一共有N个标签,根据上文,可以有如下目标函数:
为了验证以上理论分析,本发明在白板上部署了5×5的标签阵列,如图3所示。本发明让一名志愿者沿着第三列的标签移动手臂并收集每个标签的相位信息。不幸的是,由上式计算出来的结果与本发明提出的理想化假设不一致。不同标签的相位中心值有区别。与此同时,当手划过一个标签,另一个标签累积的相位差大于此时的标签。本发明认为造成以上现象中有两个原因:标签的差异性和位置的差异性。
步骤2)中,标签的差异性是在生产过程中造成的设备差异性,位置的差异性对不同的标签造成的多径影响不同。因此,这两个差异性是影响阵列中标签相位信息最主要的原因。本发明通过具体实验来解释这两个影响,我们从5×5的标签阵列中收集信号,每个标签被询问100次且在收集过程中没有手的运动。相位均值信息如图4a所示。结果表明,相位值不规则的分布在[0,2π]的区间内,同样我们也测量了每个标签静态时的射频信号,如图4b所示的是来自静态场景中多组实验中相位的标准差。结果表明,相位值在不同层级波动,也就是标签的标准差(本发明称之为偏差)是有明显差异的。结果同样表明,运用本发明提出的利用累积相位差识别动作之前非常有必要抑制差异性。
差异性抑制过程如下:假定阅读器和标签之间的距离是d,则从阅读器天线发出的射频信号经过反向散射传播的距离是2d。这些信号的相位可以被表达为:λ是波长,θT,θR,和θtag是分别是由阅读器传输电路,阅读器接受电路和标签反射特性引起的相位转角。值得注意的是,由硬件缺陷使得不同标签的θtag不同。
本发明利用对标签射频信号的连续采样来补偿标签的差异性。θij表示标签i在手运动的过程中相位值,j对应第j个射频样本集合。假定表示标签i在静态时的相位均值,dij表示在收集第j个样本的时间点上阅读器和标签i的距离。则有:
用(5)式减去(4)式,则有:
有上式可见,θT,θR,和θtag已经被消除。结果表明,标签差异性的影响已经被抑制。与此同时,每个标签的相位值在同一中心值(大约为0)左右波动。
另一方面,本发明通过以下两步抑制位置差异性。首先,本发明估量阵列中每个标签的偏差,并且形成一个权重公式:
其中k=j+1,j=1,2,...,M-1(M是相位样本数),E(bi)是静态情况下每个标签标准差的期望,N是标签的数量。进一步,标签i的累积相位差可以被表达为:
Ii′=wi -1∑(θ′ik-θij′) (8)
公式(8)是权重公式,其核心思想是:标签的bi越高表明该标签对环境的变化比较敏感,因此该标签(或该位置)的相位测量值权重比较低。相反,标签的bi越低意味着由位置差异性造成的影响越低,该标签的相位值权重比较高。通过这样的适应性调节,位置的差异性可以被有效减轻。
步骤2)中,基于以上差异性抑制,具体动作识别分为三个部分:相位非周期化展开,累积相位差计算,图像辅助的动作识别。
相位非周期化展开:众所周知,RFID阅读器采集的相位值在0到2π之间周期性波动。这就造成相位值可能会发生0到2π的突变,反之也可能发生,这就会对权重公式的计算结果造成误差。为了解决这个问题,本发明采用现有成熟方法对相位进行展开。如图5a、5b所示,相位的走向经历了一个突变,经过展开后其走向变得平滑。
图像辅助的动作识别:经过相位非周期化展开,标签i的累积相位差Ii′可通过公式(8)计算。为了做进一步解释,我们将Ii′显示在灰度图中并运用最大类间方差算法,此法是通过执行基于聚类的图像阈值将图像转换成一个二进制图像。特别值得注意的是,经过最大类间方差算法后,图像仅仅包括两类像素,前景像素和背景像素(也就是0和1)。像素“1”表明手划过相应区域。本发明通过估量标签阵列中“1”的数量来识别动作。图6a~6c所示是志愿者拿手经过阵列中第三列的图像。像素点越白,标签的Ii′越大。图6a和6b分别表示差异性抑制前后的结果。这些结果表明,通过本发明提出的抑制算法后,差异性得到了显著的改善。紧接着在图6b中执行最大类间方差算法,结果如图6c所示,可以发现,手势动作显而易见。
步骤3)中,由于在实际中方向往往包含了很多信息。一般的,在不同方向上两个相似轨迹的动作通常对应不同的操作,比如开(灯)和关(灯)。接下来,本发明通过评估手经过标签序列先后来识别动作方向。例如,在图6c,区分该动作是↑还是↓。为了完成这个目标,有两个方案,通过相位或者RSS值。相位值跟阵列中标签的位置以及手相对移动位置有关。因此,当手经过不同标签,相位值走向可能是单调的,轴对称的,中心对称的。因此,不同的相位趋势很难去推断标签序列。另一方面,RSS与相位评估方向完全不同:当手的运动垂直于标签时,RSS值有明显的谷值。因此,本发明采用通过观察标签RSS值的谷值顺序,来检测由手影响的标签序列,这样就可以简单有效地评估动作/笔划的方向。
步骤3)中通过以下两步识别英文字母:第一步是分割:本发明首先从连续的相位数据流中分割了笔划。笔划分割的原理是基于人们在书写完单个独立的笔划后都有一个短暂的停顿以便来调整手或者胳膊对于下一笔划的起始点位置。我们把这样一个过程叫做调整间隔。本发明通过检测调整间隔来分离笔划基于以下两个思考:其一是当手经过标签阵列的上方,每个标签相位值的变化不同;其二是在调整间隔中,所有标签的相位波动是非常细微的。
为了减轻时域内可能由于不均匀分布式采样造成的干扰,我们把相位分割成彼此不重叠的帧,每一帧定义为f,长度为100ms。然后,我们计算每一帧的均方根:
其中,M是平面内标签的数量,n是当前帧的相位采样数,pij是第i个标签的第j次采样。由于一个笔划(动作)可能持续几秒钟并且可能覆盖几帧,这就造成仅仅用一帧来检测笔划变得十分困难。因此,我们以几个连续帧为一组,将其作为一个窗w来进行处理。本发明把窗的默认大小设置为0.5秒,也就是5帧。为了确认在一个给定窗中是否有笔划,我们计算窗均方根的标准差,来看看其值是否超过了阈值:
std(rms(w))>thre (10)
其中的thre可以由经验给定。例如,图7a~图7c中显示了当一个志愿者写字母“H”时,相位均值,均方根RMS和均方根的标准差Std(RMS)的情况。我们可以发现,在调整间隔内,Std(RMS)的几乎为0,在书写中,Std(RMS)的值就比较大,如图7c。因此,我们可以有效滤除调整间隔并通过笔划窗口来识别笔划。
步骤3)中,识别英文字母,第二步是推断字母:在完成笔划/动作检测后,本发明将根据笔划推断合成为完整的字母。我们采用树结构语法来识别字母,如图11所示。例如,我们依次观察到笔划“—”和“|”。根据树结构语法的提示,这些动作可以被识别为字母“T”。进一步,本发明可以自然地消除识别“D”和“P”、或者“O”和“S”的误差,虽然它们都是由几乎相同顺序的笔划构成的。这是因为根据人的书写习惯和字母特性,当书写“D”的时候,最后一个动作会与笔划“|”的底部重合。这样的物理位置信息在区分相似笔划时是非常有用的。幸运的是,本发明可以很容易通过相应标签的ID来获得笔划的位置信息。因此,即便有些字母的笔划书写顺序相似,本发明也可以十分明确的将笔划组合成正确字母。
步骤1)中,本发明中标签阵列平面的具体部署情况如下:
在反向散射通信中,标签天线把接收到阅读器的射频信号转化为驱动自身的电流。与此同时,邻近标签之间会产生电场。因此,在部署标签阵列前,有必要研究标签之间的相互影响。影响可以分为:标签对之间的影响和标签阵列内部的影响。
标签对之间的影响:为了研究相邻标签之间互相影响,我们实施了一系列实验,如图8所示,(a)为放置一个距离阅读器天线2m的目标标签,它的RSS大约是-41dBm。另一个标签作为测试标签,我们来观察目标标签RSS的变化。进一步,我们测试两个标签相距很近且彼此平行的情况(大约3cm,在近场范围λ/2π≈5.2cm),如图(b)所示,目标标签RSS值发生了明显的衰减。这也就表明测试标签抑制了目标标签的接收能量,我们称之为阴影影响。这种影响造成可能最坏的情况是目标标签完全被抑制,其接受能量不足以驱动标签的IC电路,造成目标标签不可读。大量实验表明,有两种方法来消除阴影的影响,其一是选择一个合适的天线方向,我们把两个标签反方向放置,如图(c)所示。我们发现目标标签RSS值和测试标签的值近似,这就意味着阴影影响得到了有效缓解。其二是将两个标签之间的距离增大到12cm(也就是远场范围2λ/2π),如图(d)所示,测试标签对于目标标签的影响几乎是可以忽略的。综上所述,考虑到标签阵列的部署规模,本发明最终将两个相邻标签的距离设置为6cm,方向为面对天线的反方向。
标签阵列内部的影响:标签阵列之间的影响十分复杂。每个单独的标签都可能因为阴影对周围标签产生严重影响。如图9a所示,我们检测了标签阵列之间的影响,阅读器天线与标签阵列平面相距50cm,阵列中的标签横纵相距都是6cm。我们使用不同的天线测试了不同厂商不同型号的商业标签,如图9c。在每个测试中,阵列中使用同种标签,并且将一个单独标签作为目标标签放置在阵列后来研究其他标签对其造成的影响,结果如图9b所示。我们得到如下结论:
·当阵列中只有一列标签,该列中标签个数越多,阴影现象越剧烈。
·当在阵列中增加列数,目标标签的RSS值进一步减少。
·不同型号标签之间的影响不尽相同。例如,三列D类标签中,目标标签接受能量减少了20dBm。然而三列B类标签中,目标标签接受能量只平均减少了2dBm。
综上,证明B类标签(Impinj AZ-E53)是部署标签阵列的最好选择。
阵列与阅读器天线之间的距离:在实际实施中,确定阅读器天线和标签阵列的最小距离来保证所有标签可读是十分必要的。众所周知,典型的被动RFID系统是受限于前向链路的,也就是标签通过阅读器发射能量来驱动自身的IC电路。基于此,阅读器天线的增益和阅读范围是两个必要的因素。我们从这两个观点来研究决定距离的有效方法。
定向天线的增益代表了最大辐射强度。如图10a,假设天线的辐射能量呈立体角Ωs均匀分布,天线的增益(G)可以被大致表达为单位球体和立体角的比值:
上式成立的条件是天线辐射的所有能量都被接受。在这种情况下,天线的发射角可以大致表示成:
因此,天线的增益越大发射角越窄。根据上式,本发明阅读器天线发射角大约为72°
理想上,定向天线的辐射模式是椭圆的。实践中,由于多种因素的影响,阅读器天线的阅读范围很难确定。图10b展示了一个理想的阅读范围。沿着天线的发送中心可以达到最远的阅读距离(Rmax)且沿着边缘减少。Rmax取决于阅读器的发送功率。
为了确定阅读器在标签阵列中有均衡的覆盖范围,我们设定阵列与阅读器天线平行。因为标签的大小是4.4cm且彼此间隔为6cm,标签阵列平面总长为46cm。基于三角公式,阅读器天线与标签阵列平面的最小距离在此距离下,所有标签都可被覆盖。
本发明的基础手势和笔划:
为了满足触摸屏的操作和英文字幕的输入,本发明定义了七种基础手势,分别是:“⊙”、“—”、“|”、“╱”、“╲”、(编号为#1到#7)。其中“⊙”、“—”、“|”作为触摸屏的基础操作。⊙意味着接近某一标签,这对应于“点击”的动作。“—”、“|”这两个动作包含了两类方向,也就是“←”和“→”、“↑”和“↓”,这分别对应于翻页和滑动操作。另一方面,“—”、“|”、“╱”、“╲”、是在空中手写英文字母的基础笔划。例如,字母“H”包括三个连续笔划,分别是“|”、“—”、“|”,如果这三个独立的笔划可以通过手势被识别出来,那么我们可以推断出对应的字母。
本发明将一个标签阵列作为虚拟感知平面。用户用手在空中对标签阵列平面进行非接触式操作,射频信号可以产生相应的变化,我们将此变化和用户所写的字母或所做动作对应起来达到识别的目的。本发明的方法包括三个部分:基础动作和笔划识别、方向识别、英文字母识别。
本发明填补了非接触式虚拟屏操作的空白。本发明不需要提前对用户的行为进行训练,并且通过利用现有RFID设施来大大减少了部署上面的开销,此外本发明可以和工业标准完全兼容,如EPC Global C1G2。设计初衷有三个:其一是基于对射频信号研究发现的现象:当手接近或远离RFID标签时,会导致反向散射的射频信号产生明显的变化;其二是缓解用户需要携带设备(如标签)访问射频设备的压力;其三是尽可能减轻在公共场合因为触摸屏操作造成的细菌和病毒传播。
本发明将一个标签阵列平面转化为一个虚拟屏幕,在一些公共场合,用户可以在空中对此操作屏进行非接触式动作/笔划的操作。本发明不需要用户携带设备,没有额外开销。本发明的实现利用了现有商用RFID设备并进行了大量的实验测试。结果表明,本发明与现有工业标准完全兼容,在检测动作和笔划时准确度和可靠度都是十分可观。