高性能嵌入式AI计算平台的人机交互手势控制识别

2022-07-08 07:20何之源
电子技术与软件工程 2022年2期
关键词:手势像素点灰度

何之源

(爱丁堡大学 英国爱丁堡 EH8 9YL)

现如今,有关人机交互如何更加便捷、高效已经成为科技研究领域的热点,而在这一领域中,手势识别技术是非常重要的一项内容,在科技不断进步的过程中,手势识别技术也在逐渐发展变化。在人们生活质量不断提升的环境下,对于用户体验这一指标越来越看中,以往基于传感器加速硬件的手势识别,要想实现相关操作需要通过相应的硬件设备,便携性较差,而且成本较高,而基于嵌入式平台的手势识别系统,获得了较好的应用效果。

1 整体设计

嵌入式平台具有成本低、可裁剪、专用性以及体积小等优点,因此,在这一平台基础上,建立手势控制识别系统,经过系统设计以及测试实验得出,这种人机交互手势控制识别系统在便携性以及实用性方面具有良好的表现。手势控制识别系统总体包含嵌入式计算平台开发板、触摸屏以及摄像头。完整流程图如图1所示。

图1:流程图

2 图像预处理

2.1 灰度化处理

采集的彩色手势图像中,对其进行直接识别通常会受到复杂背景的影响,其中含有很多无用信息,会增加计算复杂度,所以,图像要先进行转换。其中转换公式为:

式中,Y表示颜色亮度信息,也就是图像灰度值,U和V表示色调。

2.2 平滑去噪处理

使用摄像头采集手势视频图像进行传输时,因为系统的可移动性等特点,使得图像会受到外界多方面因素的影响,原始图像中会包含较多的冗余信息,所以,针对图像进行去噪,将没有用的信息排除。该文使用的方法技术要点为:将数字图像中的一个像素点灰度值使用其邻域值的中值替代掉。其中中值主要是指假定宽度w、高度h的一幅图像f(x,y)(0≤x

n为奇数时,取(1)式,n为偶数时,取(2)式。

中值滤波处理的主要过程为:依照灰度值的大小将区域内所有像素进行排序,这样就能直接获得中值,将需要处理的数据和该值进行替换输出。从小到大排序并取中值后,干扰点像素值和其邻近像素灰度值一样,这样干扰像素就会被消除。使用这一技术方法进行去噪处理,具有较好的除噪效果,而且图像边界的模糊性降低,原始图像中的信息可以最大化的保留,灰度值在处理前后具有较小的变化。

2.3 锐化处理

传输图像的过程中,因为存在部分高频的衰减,使得图像变模糊,其中手势的有些细节轮廓就会变得不清晰,所以,就要进行这一步骤的处理,提高图像的清晰性。

使用Laplacian算子法进行处理,其表达式为:

式中,f(x,y)表示原图像,g(x,y)表示经过高通滤波处理后的图像, 是Laplacian算子,与掩膜中心系数存在关联。

对图像进行高通滤波处理的过程为:围绕中心将掩膜旋转180°,对其边缘进行重复填充,利用相应的计算,除去边界,进而完成最终的处理。对手势图像经过锐化处理后,其中边缘以及灰度跳变得到了加强,图像中部分细节轮廓更加清晰。

3 手势图像分割

在对手势特征信息提取以及控制识别之前,需要进行图像分割,其中分割的质量会对后续环节产生较大的影响。对手势图像进行分割主要是依照图像中的形状、色彩、灰度以及空间纹理等特征进行区域分割,相互之间不重叠,并且符合特定区域的一致性。对目标区域进行分割可以使用阈值分割法。这种方法较为简单,而且对数据量可以进行较大程度的压缩,分析和处理的有关工作得到了较大的简化,所以在图像特征提取和识别之前,阈值分割属于关键的处理步骤。将原始图像设定为f(x,y),依照相应的准则找出特征值,接着进行分割,之后的图像可以表示为:

如果取b=0(黑),b=1(白),就是图像二值化。

在进行阈值分割时,使用的算法是最大类间方差法。原理是依照灰度特性,对图像进行手势目标和背景部分的分割,如果目标手势和背景之间存在较大的方差,也就表示图像中手势和背景之间存在较大的差异,如果出现错分,就会使两部分之间的差异减小,所以,使用类间方差最大分割可以减小出错的几率。

手势目标灰度级C={1,2,…,k} 背景灰度级C={k+1,…, M}

背景像素点在图像整体中的比例w=1-w

图像总均值μ=wμ+wμ

分割阈值T从1~M进行变化,其中使类间方差最大的就是最佳阈值。

4 手势特征提取

通常经过图像预处理、手势分割之后,原始特征仍然具有较大的数据量,如果这样进行识别还是存在较大的困难,所以,还需要经过这一步骤处理。

这个过程最主要就是进行特征映射,公式表达为:

A:Y→X

式中的A表示特征映射,Y表示测量空间,X表示特征空间。

图像原始特征的数据量较大,利用映射变换得到的图像特征属于原始特征的组合形式。在对手势图像进行识别前,特征提取是非常重要的内容。

图像中包含较多的特征信息,在进行提取时,对其中具有代表性的信息做处理分析,其中Hu距的相关变换如下:

4.1 Hu距变换特征

4.1.1 比例变换

在X轴和Y轴方向上对图像函数f(x,y)进行比例变换,图像变换后为函数f’(x,y),距M’和M经过变换之后,α以及β作为比例变换的倍数:

经过归一化处理之后变为:

4.1.2 反射变换

对图像f(x,y)对应做x轴和y轴的反射变换,经过变换后,距M’和M之间的关系为:

4.1.3 平移变换

将图像函数f(x,y)分别在x轴和y轴上进行平移变换,从而得到函数f’(x,y),平移之后的距M’和M之间的关系表示为:

4.1.4 旋转变换

以图像的坐标原点为中心进行逆时针旋转,经过旋转之后,图像函数f’(x,y)表示为:

经过变换之后,距为:

距的关系式为:

4.2 其他图像特征

在坐标x轴和y轴上分别对目标物体进行投影,从而获得投影特征,因为其存在比例、平移性质不变的特点,所以能够当做描述物体形状的特征。另外,比例特征,针对不同形状、相同面积的图像,由于光滑边界的圆形周长最短,被看做最密集形状,圆形密集度C=1,边界凹凸变化的过程中,随着周长的增加,圆形密集度也随着增大。具有相似形状的几何,其位置、面积等可能存在不同,但是其圆形密集度一样,与形状特征有关。再者,边心距特征,在旋转或平移的过程中,目标物体的形中心到边界上某一点的距离不变,这一特征就可以对目标物体的形状进行描述,经过归一化处理之后,这一特征具有比例不变的特性。

4.3 手势特征值计算

这里使用的方法能够对矩形特征进行叠加处理,而且也没有特殊的要求,方法的自由性较高。将矩形特征获取之后,有关的特征值需要进行计算。这里主要使用积分图的方法来求取特征值。积分图如图2表示。

图2:积分图

图像f(x,y)内一坐标A(x,y)的积分图是图中的阴影部分的所有像素之和。表示为:

式中,ii(x,y)为积分图,i(x,y)为原始图像,针对灰度图像来讲,是其灰度值,在0-255范围内,A(x,y)表示点(x,y)的积分图,s(x,y)表示点(x,y)的Y方向的所有原始图像之和。积分图也可以表示为:

s(x,y)=s(x,y-1)+i(x,y)

ii(x,y)=ii(x-1,y)+s(x,y)

有关像素值的计算可以通过区域内端点的积分图获得。如图3所示。

图3:目标区域像素值计算

A的像素值为ii(1),A+B的像素值为ii(2),A+C的像素值为ii(3),A+B+C+D的像素值为ii(4)。区域D的像素值则=ii(4)+ii(1)-ii(2)-ii(3)。

5 手势识别与跟踪

对图像信息进行特征提取之后,需要根据这些特征信息对手势图像进行识别,其中,使用的算法有较多种。

5.1 模板匹配法

这一算法识别主要是通过利用手势图像与手势模板两者之间的特征信息进行相互比对。通过对待测图像采取二值化、归一化以及阈值分割等预处理之后,再利用其像素的灰度值对手势图像采取相似度计算。

设定在手势的模板库中,经过二值化后的手势图像像素点(i,j)的灰度值用f(i,j)来表示,经过归一化处理之后得到的尺寸大小为M×N,然后对采集的手势图像进行阈值分割处理并获得二值化图像,在像素点(i,j)处的灰度值为g(i,j),让处理后的图像与模板库中的手势模板逐一进行匹配,利用灰度值相似度函数表示最终的匹配结果。函数表示为:

借助模板库中的手势图像与待测手势图像,对两者之间存在的相似度进行分别计算,将计算得出的相似度中的最大值S找出,将其看做相似度函数,同时将其中最大值手势图像的阈值找出,使其与相对应的手势模板阈值r作对比。如果S≥r,那么此图像就是该手势模板的图像。

5.2 BP神经网络识别法

这种算法属于一种多层前馈型神经网络,现阶段使用较广,主要是利用误差传播算法对阈值和权值进行训练,从而使层与层之间的误差尽可能的降低,从而实现给定的前后映射关系。其结构包含输入层、一个或多个隐层以及输出层。而学习过程包含正向传播过程以及反向传播过程。前者是输入信息由输入层到一个或多个隐层逐层处理,再到输出层,而后者则是在没有达到预想的输出值时,将输出的误差依照原先的路径反馈,对各层之间的权值进行逐层计算,从而最大化的降低误差。

5.3 运动目标检测与跟踪

图像的背景主要有两种状态,包含静态背景和动态背景。这里主要以静态背景为基础,检测动态手势目标。具体是,先使用相应的方法将目标手势在图像中检测出来,接着跟踪其中的运动手势。由于进行图像采集的摄像头是固定的,所以将背景可以看做是静止状态。在采集的过程中,利用对应的方法判断有没有出现运动物体,借助图像分割算法进行提取,完成目标检测。而在对动态手势进行识别跟踪时,为了能够完成更高级别的识别任务,需要对目标进行准确定位和跟踪,提取目标的位置、速度等相关数据。其实现的过程是对视频的每一帧图像进行处理,检测出所要提取的目标,然后对后面每一帧图像中的目标进行建模,最后完成跟踪模型的建立。

6 系统实现

6.1 系统软硬件

手势识别系统硬件开发环境为ARM开发板,64mm× 85mmLCD触摸屏,采用USB2.0接口的摄像头。

6.2 视频采集

对图像进行视频采集时,主要使用的是编程接口V4L2。这种接口采集范围较广,而且扩展性较好,使用较为灵活。采集了动态视频之后,对于静止状态的图片信息进行获取,主要使用映射的方法。

6.3 手势识别实验

对训练过后的手势数据集进行收集,其中10种手势模板以及经过算子改进后得到的手势轮廓如图4、图5所示。

图4:手势模板

图5:手势轮廓

对于系统是否具有较好的实用性,需要经过样本检测,选取1000张手势样本,得到表1数据。

表1:不同背景下10种手势识别率

从表1的数据中能够看出,背景不同,其识别率也存在相应的差异。总体来讲,背景较为简单的情况下,整体具有较高的识别率,而背景较为复杂的情况下,整体的识别率相对较低。同时,由于存在光线强度、手势相似等因素的影响,使得识别的结果也会存在相应的不同。如果是在背景较为复杂的情况下对手势特征进行提取时,手势的Hu距值会受到一定的影响,这样和模板之间的Hu距值就会有较大的差距,这样在识别时,整体的效果就会受到影响。而如果是在背景较为简单的情况下对图像进行处理时,有关的特征值会较为稳定,因此,系统整体具有较高的识别率。

7 结束语

总而言之,现阶段,大多数的手势识别技术都是在PC机上实现及应用,虽然带来了较大的便利,但是在便携性以及实用性方面还存在一定的不足。随着科技的不断进步,在原有的手势识别技术前提下,基于嵌入式计算平台,进行手势控制识别系统设计和实现,使得人机交互控制有了良好的基础。手势识别系统经过实验验证,具有较好的实时性和实用便捷性等特征。

猜你喜欢
手势像素点灰度
采用改进导重法的拓扑结构灰度单元过滤技术
基于灰度拉伸的图像水位识别方法研究
挑战!神秘手势
V字手势的由来
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密
基于最大加权投影求解的彩色图像灰度化对比度保留算法
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割
基于灰度线性建模的亚像素图像抖动量计算