APP下载

基于神经网络及虚拟现实技术的智能手势识别研究

2018-06-25

长春师范大学学报 2018年6期
关键词:手势虚拟现实滤波

刘 敏

(湄洲湾职业技术学院,福建莆田 351254)

随着虚拟现实技术以及神经网络技术的不断发展,各种智能识别及交互技术不断涌现,手势识别就是其中一种,该种技术属于智能生物识别技术,在人类交流中具有广泛用途。当前手势识别技术仍旧处于研究阶段,在众多方面有待突破,其图像处理以及数据处理部分为该技术运行基础,可通过神经网络以及虚拟现实技术进行解析并推进其应用进程。

1 手势识别图像处理及模型构建

视频图像处理是将收集到的图像进行有效处理,使之成为智能系统可识别的量化数据。手势识别主要是将收集到视频文件进行有效识别,并将其与标准数据库进行比对,从而得出手势识别得到的结果,以输入输出进行信息的录入和传输。

1.1 手势识别捕捉

对手势目标检测是开展手势内容分析的基础,在实际检测过程中需要准确提取手势图像,后续手势特征提取及识别均建立在精确检测基础上,若检测精度不够则无法展开后续工作。实际检测过程中会存在一些无法控制的干扰因素,例如捕捉装置晃动、环境光线变化、背景色调影响等,为运动检测带来一定难度。因此,需要建立科学有效的捕捉算法。在本研究中通过虚拟现实技术结合笛卡尔坐标进行手势动作的有效捕捉[1]。

图1所示为笛卡尔三维坐标系,本研究中该坐标系在建立过程中遵循左手定则,以大拇指朝向为X轴正方向,反方向则为X轴负方向。以食指所指方向为Y轴正方向,反方向则为Y轴负方向;以中指所指方向为Z轴正方向,反方向则为Z轴负方向。建立该坐标系后便可结合实践形成空间4D坐标系,从而可在该坐标系基础上实现人体运动过程的动态追踪。

在该坐标系中,手势主要有6个自由度方向,可分别围绕X、Y、Z三个轴进行旋转,并可旋转相应的角度,通过手势自由度分析便可得到相应的坐标转换过程。如图2所示,设定手势在实际运动过程中分别围绕X、Y、Z三个轴进行旋转的角度分别为ψ,θ,φ,则可将其旋转角度采用空间向量矩阵形式表达出来,将4D过程表示为式(1),其中各项参数均表示虚数单位,并假设该四元数q表示手在空间结构中以其向量N为轴,旋转α角度。则可将以上参数关系表示为式(2)[2]。

图1 笛卡尔三维坐标系

图2 坐标变换

(1)

q=[cos(α/2),sin(α/2)N].

(2)

通过以上分析便可建立手势模型围绕中心轴旋转α角度后的关系式:

α=2arccos(w).

(3)

(4)

(5)

(6)

对其进行四维坐标变换后便可得到如下结果:

qw=cos(α/2)cos(θ/2)-sin(α/2)sin(θ/2)sin(ψ/2).

(7)

qx=cos(φ/2)sin(φ/2)sin(ψ/2)+sin(ψ/2)cos(θ/2)cos(ψ/2).

(8)

qy=cos(φ/2)sin(θ/2)sin(ψ/2)+sin(φ/2)cos(θ/2)sin(ψ/2).

(9)

qz=cos(φ/2)cos(θ/2)sin(ψ/2)-sin(φ/2)sin(θ/2)sin(ψ/2).

(10)

1.2 BP神经网络

图3 BP神经网络

BP神经网络属于一种多目标优化问题,其主要过程见图3。图中分别用[X1,X2,…,Xn]以及[Y1,Y2,…,Yn]表示输入以及输出值,则在此基础上分别通过w和b表示该网络的权值以及阈值,从本质上来说BP神经网络的主要作用就是通过人的思维方式解决问题,并在实际发展过程中通过多种方式将人的工作过程表示出来,结合专家经验实现对各种不确定问题的有效改进,在此基础上得到准确结果,并将所得到的结果作为后续决策的依据,制定出具有一定针对性的策略。BP神经网络是一种可靠的计算机算法,在制作过程中存在一定自身弊端,因此在实际工作中可对该种算法进行分类处理,结合其他算法进行优化后得到效率更高、可靠性更强的系统,实现对该种系统网络的有效提升[3]。

1.3 虚拟现实技术构建智能手势模型

在构建模型过程中采用UML作为可视化建模语言。相较于其他模型在实际构建过程中的唯一性,需要结合实际情况,从多个角度对模型进行综合性分析,建立与模型相关的算法结构。图4所示为采用UML作为可视化建模语言的一种范例,通过多角度设计的观察,促进该系统的不断完善,构建具有一定实际效应的系统,并能够及时发现问题所在,是一种高效的可视化建模语言[4]。

图4 可视化建模语言使用范例

可视化建模语言在实际建模过程中还需要对图像进行转换,实现由2D图像向3D图像的转变,在图4中设定推向设定运动矢量为V,转换深度为D,则可将其表达为:

(11)

设定活动窗口大小表示为W×H,M(x,y)可表示为该窗口的样本均值,中心点设置为(x,y),表示以中心点为中心的窗口区域,则可将其高阶矩阵表示为式(12),设定该图像的任一点图像灰度值为ρ,可得到如式(13)所示的转换方式。

(12)

ρ=xcos(θ)+ysin(θ).

(13)

图5 手掌部分的可视化建模示意图

通过以上分析不难发现,在进行手势建模过程中需要对各个部分进行综合性分析,尤其是手掌姿势等。通过可视化建模语言对手掌各个部分进行精细化处理,能够有效提升建模效果,通过设置各个网络点方式构建出较为详细的模型结构,降低模型构建中可能出现的误差[5]。

图5为手掌部分的可视化建模示意图,通过可视化建模语言建模,将手势各个部分进行拆分,结合各个部分的实际状况进行综合性分析,并在此基础上得出相应特点,从实际情况出发,在细节部分予以修正。采用网格模型结构对模型进行分析,将其与实际手势进行比对,得出相应的结果。

2 图像处理

2.1 图像预处理技术

通过BP神经网络结合图像处理算法对图像进行智能处理。对人的手势目标检测主要是将运动中的研究目标的连续图像展现出来,从图像中检测出所需部分,锁定具体目标,将其从背景中分离,便于后续处理及分析、判断。提取人体运动过程,后续运动特征提取及运动识别均建立在精确检测的基础上。而实际检测过程中会存在一些无法控制的干扰因素,例如捕捉装置晃动、环境光线变化、背景色调影响等,为运动检测带来一定难度。

2.2 中值滤波

所谓中值滤波主要是指一种非线性平滑可抑制噪声的方法,该方法特点是操作简单,运算过程便捷,具有一定可行性,尤其对脉冲噪声有一定抑制作用,且对图像边缘具有良好保护作用,避免边缘模糊不清。中值滤波实现方法为将处理窗原图灰度值中值作为窗口中心处新值,下面就该过程展开分析。

一维环境下,假设a1,a2,…,an表示原始信号序列,其排列顺序由大到小。则其中值可表示为:

(14)

假设原始信号为一维5点形式,序列为“70,80,200,110,120”,从分布来看中心处存在最大孤立噪声。在对该类信号进行中值滤波处理时应该将中值“110”作为原“200”处新值。由此可见,无论孤立噪声多大,均可通过中值滤波将噪声有效消除。再如序列为“100,100,200,200,200”,则通过中值滤波处理后其中心位置仍旧是“200”,即不会出现边缘模糊现象。若噪声并非孤立,而是以序列情况出现,如序列为“100,200,200,100,100”,则利用中值滤波可将噪声完全消除。因此,相较于其他处理方法,中值滤波处理效果更佳。在二维情况下,通过中值滤波处理时将二维窗像素灰度值中值作为窗口中心处新值,表达式为[6]:

g(m,n)=Median[f(i,j)]或g(m,n)=Median[f(m-i,n-j)].

(15)

式(15)分别表达中心坐标为(m,n)和(0,0)的情况。常用二维窗形状见图6。

图6 常用二维窗形状

进行中值滤波处理时为选择合适处理窗,本文选用多窗口中值滤波法——MWMF(Multi-Windows Median Filter)。假设3×3处理窗中心点为O,则可表示为:

(16)

利用MWMF法进行处理,计算上述3×3十字窗像素中值:

md1=Median{b,d,f,h,O}.

(17)

计算上述3×3X形窗像素中值:

md2=Median{a,c,e,g,O}.

(18)

计算处理窗均值:

(19)

计算差值:

(20)

窗口处新值为:

(21)

2.3 图像锐化增强

在进行手势运动分析时,往往需要增强图像边缘和灰度跳变部分,即将图像锐化增强。该方法的基本原理是将对图像进行微分处理,计算出结果,并将结果与图像进行叠加处理。微分处理为二阶,一般指拉氏算子,用于对刻画图像变化。从性质上来看,拉氏算子属于线性算子,可对点、线等边界进行有效提取,使各项具有唯一不变性,定义为:

(22)

在成像过程中常会出现扩散效应,此时可通过拉氏算子解决因扩散效应造成的图像问题。通过扩散方程表示扩散效应:

(23)

其中,f(x,y,t)表示t时刻图像,k表示大于0的常数,当t=τ>0时图像受影响会变模糊,此时可对其进行泰勒级数展开:

(24)

其中,t=0,g(x,y)≈f(x,y,τ),f(x,y)≈f(x,y,τ)。在此基础上省略高阶项,得到:

(25)

当图像因为散射而造成图像模糊时,模糊图像在其基础上减去拉氏运算结果的α倍便可得到清晰图像,α表示控制锐化程度的影子。实际检测过程中,散射并非导致图像模糊的唯一因素,对其他因素造成图像模糊的情况,利用图像与其拉氏运算结果之差也可加强边界锐化程度。进行数字图像处理时选取α为常数,拉氏算子四邻域、对角邻域、八邻域矩阵图见图7。

(a)四领域 (b)对角领域 (c)八领域矩阵图

将收集到的手势视频图像进行深入处理,消除图片中的噪声,将其转变为系统可识别的量化数据,并与标准数据库进行对比,从而对手势进行翻译,得出其具体含义,并以人性化方式将其展示在终端界面。

3 系统构建

基于BP神经网络以及虚拟现实基础构建智能手势识别系统,通过智能捕捉硬件设备捕捉手势动作,并将收集到的视频文件输入到系统中进行处理得出相应结果。

3.1 系统构建

图8 手势智能识别系统框架图

构建智能手势识别系统,根据虚拟现实技术构建其数据库标准对比样本系统,并结合BP神经网络进行数据处理,将收集到的视频文件进行二值化处理,与所建立的标准数据库系统进行对比。本研究构建的系统结构如图8所示。

本研究构建的手势智能识别系统主要包括登入系统、数据传入系统、数据处理系统、数据库系统、数据传出系统、终端显示系统。其中,登入系统:用户注册身份,进入系统的入口,设定器用户名及密码;数据传入系统:通过客户端系统进行手势的录入,并将视频文件传输至系统;数据处理系统:主要采用神经网络算法构建出系统数据处理系统,将视频文件处理为系统可识别的量化数据,对数据进行有效分析,将系统处理得到的数据与标准数据库进行对比,判断出手势代表的意思。之后便可通过数据传输系统将结果传输至显示终端。

3.2 数据库系统

图9 智能手势识别系统数据库

本系统数据库系统需要将收集到的手势含义进行解释,构建大量的标准手势数据库,建立专属数据库结构。建立分布式数据库结构,输入全套手语。图9为智能手势识别系统数据库,存储大量手语标准解释。在实际应用中只要输入相应的手势便可将其翻译成相应的语言,从实质上说,该系统属于一种一对多的系统结构。

对于重复率比较高的待识别手势,在处理过程中可先使用预翻译功能进行预翻译,运用翻译记忆体和数据库中储存的标准解释,自动替换待处理手势,进行自动匹配。对于非完全匹配的部分,会以最相似的注释方式进行匹配,再使用精细化方式进行调整。

3.3 系统测试

为研究系统对手势的识别效果,构建如表1所示的配置构建系统进行测试。

表1 系统配置

基于表1数据构建系统结构,通过神经网络以及虚拟现实技术构建系统软件结构,将标准手势库存储于其硬盘中。通过Kinect 2.0进行手势视频收集。在测试中,通过手势表现出0~9的数字,并由系统进行测试。为保证测试的准确性,将0~9数字添加在对话中,并设置每个数字测试100次,在测试过程中运用数字混乱出现的方式,通过快速手势和慢速手势将测试结果表示出来(表2)。

表2 数字手势测试结果

如表2所示,在慢速手势测试中,系统可实现100%的数字手势识别,快速手势识别率超过90%。造成误差的原因主要是CPU版本较低,以及CPU影响到系统实时处理数据的效率低,导致一些数据在处理过程中出现误差,从而影响到其识别效果。从以上测试来看,本研究构建的系统具有一定实用效果。

4 结语

综上所述,将神经网络以及虚拟现实技术作为系统运行的基础,构建智能手势识别系统。该系统将Kinect 2.0作为视频收集装备进行手势图像收集,经过图像过滤处理以及图像量化处理使识别对象成为系统可识别的数据类型,构建出对应系统,并对系统进行测试。研究表明,该系统具备一定实用性,在进行配置优化后可推广应用。

[参考文献]

[1]贾维闯,宫进,吴雄华.基于加速度的BP神经网络手势识别设计[J].电子技术与软件工程,2016(21):94.

[2]金小湘.虚拟现实结合互联网的应用研究[J].科学家,2016(15):109-110.

[3]操小文,薄华.基于卷积神经网络的手势识别研究[J].微型机与应用,2016(9):55-57.

[4]卓少伟,柳培忠,黄德天,等.基于CW-RNNs网络的手势识别算法[J].海峡科学,2016(7):51-56.

[5]蔡娟,蔡坚勇,廖晓东,等.基于卷积神经网络的手势识别初探[J].计算机系统应用,2015(4):113-117.

[6]马岩.基于BP神经网络的Kinect手势识别方法[J].软件导刊,2016(3):6-8.

猜你喜欢

手势虚拟现实滤波
挑战!神秘手势
V字手势的由来
胜利的手势
REALITY BITES
风口上的虚拟现实
虚拟现实技术向科幻小说借灵感
基于自适应Kalman滤波的改进PSO算法
RTS平滑滤波在事后姿态确定中的应用
基于线性正则变换的 LMS 自适应滤波
基于随机加权估计的Sage自适应滤波及其在导航中的应用