APP下载

基于小样本学习的毫米波雷达手势识别方法*

2023-10-08龚树凤李棋斌施汉银

传感技术学报 2023年8期
关键词:手势雷达距离

龚树凤,李棋斌,施汉银,林 超,李 翔

(1.浙江工业大学信息学院,浙江 杭州 310023;2.中国通信服务浙江慧展科技公司,浙江 杭州 311215)

近年来,随着神经网络、深度学习等人工智能技术的长足发展,手势动作识别技术已成为无线感知、模式识别、计算机视觉、信号处理等领域的研究热点之一,在安防监控、人机交互、安全驾驶等领域,具有广阔的市场前景和深远的社会应用价值。 为此,工业界和学术界对手势动作识别技术开展了诸多相关研究。 现有较为成熟的手势识别技术,大多通过可穿戴设备[1-2]或者光学图像[3-5]获取手势特征信息来实现手势识别。 其中,基于可穿戴设备的手势识别技术大多应用传感器或者数据手套等进行信息获取,存在着便携性差且设备成本较高的问题;而基于光学图像的手势识别技术大多通过摄像头来拍摄手势信息,存在着高功耗问题;此外手势识别技术的数据以图像或者视频的形式进行存储,这种形式容易导致用户隐私性、安全性等问题,且手势识别技术本身在复杂环境中信息提取效率较低。 因此,研究一种基于其他传感器的手势识别技术具有非常重大的意义。

近几年,由于雷达所具有的高分辨和低功率等特点使其在手势识别技术方面得到了越来越广泛的关注。 2014 年,Wan 等[6]为智能家居场景的手势识别应用分别设计了举手、伸手以及摇头三种动作,并使用连续波雷达获取手势的距离、角度以及速度信息;2016 年,TI[7]使用FMCW 雷达提取手势的距离与速度信息,使用隐马尔可夫模型(Hidden Markov Model,HMM)进行手势识别;2017 年,李刚等[8]使用时频分析方法来提取手势信号特征,并对四种微手势进行识别。 然而,CW 雷达只能获取手势动作的速度信息,无法获取距离信息,这影响了手势识别精度。 2018 年,王俊等[9]提出了一种通过雷达多普勒信息实现的手势识别方法;2019 年,王勇等[10]通过研究端到端的多维卷积神经网络结构提高了微动手势识别网络训练效率,并且还提出了一种基于雷达的双流融合网络进行手势识别[11]。 2020 年,夏朝阳等[12]利用轻量化卷积神经网络实现了对雷达手势特征图像的识别。 2021 年,章东平等[13]通过手部关键点及其相互间连接信息来增强手部图像特征,以提高手势识别的准确率;靳标等[14]利用串联式一维神经网络(1D-ScNN)对回波数据进行特征提取并用长短期记忆网络进行聚合分类识别,取得了很好的识别精度。

虽然上述方法的识别精度高,但是所利用的算法模型普遍具有大数据集依赖性和计算复杂性。 基于深度学习的手势识别是一种数据驱动算法,尚不能有效解决训练数据稀缺和计算资源受限等问题。通常来说,高性能的识别网络往往需要采用更深层的网络结构,模型的参数规模越大,所需训练样本越多带来计算复杂度越高,模型的过拟合风险也越大。基于雷达的手势动作识别鲜有公开数据集,大多都是基于自测数据或仿真数据,并且实验中在有限时间内也难以获得大量雷达回波数据。 因此,如何在雷达手势动作感知中有效借鉴迁移学习方法,研究在小样本数据量的基础上实现对手势动作识别训练,从而降低计算复杂度并保持较高的识别率是需要解决的问题之一。

基于上述分析,本文提出了一种基于毫米波雷达在小样本场景下的手势识别方法,首先对手势的回波信号进行预处理,然后利用二维傅里叶变换得到手势动作的距离-时间和速度-时间谱图,最后设计了双流融合的原型网络进行加权融合来实现手势识别。 本文采用77 GHz FMCW 雷达,验证了本文网络在不同样本数量下对六类手势的识别效果,结果表明所提算法能有效提高手势识别的准确率,并且降低了计算复杂度。

1 系统原理及实验方法

系统架构如图1 所示,包括雷达信号采集、数据预处理和手势识别等部分。 其中,毫米波雷达发射器用来发射雷达信号,通过数据采集卡进行不同手势回波信号的采集并将数据传输到电脑保存并处理。

图1 手势识别系统框图

1.1 数据预处理

1.1.1 中频信号提取

中频信号获取流程如图2 所示,设雷达发射的锯齿波信号为:

图2 中频信号获取流程

式中:fT(τ)是发射信号频率随着时间变化的线性函数,fc是载波频率,B是带宽,ATX是发射信号的幅值,T是信号脉宽。

发射信号经过t0=的时延和手势运动使得接收端的频移可表示为:

在接收端的信号由于时延和多普勒频移,频率变为:

接收信号可表示为:

式中:v是手势在雷达径向的运动速度,R0是在时间t=0 时手势与雷达的距离,c为光速,ARX是接收信号的幅值。

为了获取发射信号和接收信号中的频移和相位差,将发射信号STX(t)和接收信号SRX(t)输入到混频器后得到中频信号:

由于实际测量中t0非常小,中频信号频率可近似为:

1.1.2 基于一维FFT 的距离信息提取

对所获得的中频信号进行一维傅里叶变换得到信号频谱,然后通过峰值分析找到频谱的谱峰位置,得到该中频信号的频率:

式中:k为信号调频斜率,R为目标距离,c为光速,则可以得到:

然后对各个脉冲计算得出的距离进行整合,即可得到手势距离随时间变化信息。 由于手势属于微小的动作,若是参数设置不合理,容易产生无法识别的问题,所以还要考虑雷达的距离分辨力问题。 设相邻两目标间隔为ΔR,可以得到:

式中:T为信号脉宽,可以得到距离分辨率为:

本文对50 帧内总计6 400 个脉冲做快速傅里叶变换,并对所有脉冲蕴含的距离信息按照时间顺序(帧的先后)进行整合排列,即可得到手势距离随时间的变化信息。 以手势“后拉”为例,对单支天线采集的复数形式回波数据以幅值画图,其时域图如图3所示。 对每帧回波信号做一维FFT,就可得到手势的距离信息,如图4 所示。 通过谱峰位置搜索法得到每一帧的谱峰位置,在时间上进行拼接整合,最后可以得到手势动作的距离-时间特征信息,如图5 所示。

图3 “后拉”手势回波信号时域图

图4 “后拉”手势不同帧的距离图

图5 “后拉”手势的距离-时间特征图

1.1.3 基于二维FFT 的速度信息提取

在一维傅里叶变换中,可以通过对谱峰位置分析得出距离信息。 但是在雷达实际工作中,由于手势的运动导致回波信号和发射信号之间存在频率差,从而产生多普勒频率偏移,所以可以通过对多普勒频率峰值的搜索得出物体的速度信息。

实验中,雷达接收到的每一个信号在混频得到中频信号后,信号都分为50 帧,每一帧中有128 个chirp,每一个chirp 中共有128 个采样点,所以每一帧的数据构成了一个128×128 的矩阵。 当人处于静止状态时,中频信号的频率基本恒定,经过一维傅里叶变换得到的距离信息相同,当人手势发生变化时,信号的频率随着手势的变化而变化。 对同一帧的目标进行二维傅里叶变换,得到该目标的多普勒频率:

式中:f为chirp 信号中心频率,可以得到:

将得到的目标多普勒频率的峰值频率进一步处理,得到每一帧数据中蕴含的速度-距离信息,如图6所示;再将多帧数据根据谱峰位置搜索和拼接将每一帧中蕴含的速度信息进行整合排列,可以得到手势的速度随时间变化信息,手势“后拉”经过二维傅里叶变换和多帧整合后得到的速度-时间特征信息如图7 所示。

图6 “后拉”手势不同帧的距离-速度图

图7 “后拉”手势的速度-时间特征图

1.1.4 标准化处理

深度学习算法的效率不仅取决于网络本身参数,还取决于输入数据样本的质量。 为了能够更加准确地识别,本文将得到的图片进行尺寸和像素值标准化。 尺寸标准化是让每一个样本数据图像大小相同。 由于绝大多数深度网络都存在全连接层,需要将参数的数量与输入图像的大小相关联,所以在训练测试以及验证时,都要输入同样大小和格式的图像数据。 而像素值标准化目的是为了将样本中的像素值统一在灰度范围[0,255]内。 为了能够让提取的特征更加显著,本文将图像设置为黑白图像,采用28×28 的bmp 格式图像用来作为神经网络的输入,其中单个手势“后拉”的距离-时间特征和速度-时间特征经过处理后的图像如图8 所示。

图8 “后拉”手势归一化后的特征图

1.2 网络结构设计

1.2.1 算法设计

本文的网络结构主要在原型网络[15]算法上进行改进,主要分为特征提取和距离度量两个部分。特征提取通过一个卷积神经网络提取出输入图片的特征,然后将其映射到一个空间内得到高维特征向量;通过对处于同一标签的样本进行特征向量求平均来计算原型中心向量,然后再计算测试样本的特征向量,计算两个向量之间的欧氏距离,将测试样本分到距离最小的那一类。

具体的算法过程如下:

将包含k类的训练集Sk输入网络中,网络通过具有可学习参数φ的映射函数fφ(x)将样本映射到映射空间中,得到样本的特征向量,通过将训练集中同一类的特征向量取平均得到每个类别的原型中心向量Ck,如下式所示:

式中:xi为第i个样本的特征向量,yi为第i个样本对应的标签。 得到对应的原型中心向量后,将输入的测试集样本映射到样本空间内,计算它和各个原型之间的欧氏距离,然后和它的真实类别的原型中心距离进行比较,得到分到每类的概率q。 计算公式如下:

式中:x为测试集样本,M为样本x的真实类别,CM为真实类别的原型中心向量,M′为所有可能的类别,fφ(x)是样本x的特征向量。 其中距离最小的为最后的分类结果y。 具体计算公式如下:

根据测试集的分类结果来判断映射函数的泛化能力,不断对参数φ进行改进,得到最优的映射函数fφ(x)。

1.2.2 网络设计

本文整体的网络结构如图9 所示。 主要由两路卷积神经网络构成,分别由4 个卷积块构成,包括一个二维卷积层、批处理归一化层、激活函数层和最大池化层。 这种结构设计可以降低计算复杂度,从而缩短运行时间。 每个卷积块的参数设置如表1 所示。 在实现手势分类的过程中,首先将经过预处理后的距离-时间特征图和速度-时间图分别输入两路卷积神经网络中,输出2 种特征图的分类结果,将得到的2 个输出结果进行加权融合,融合公式如式(16)所示,然后得出最终的预测结果P。

表1 网络参数设置

图9 整体网络结构图

式中:W1和W2为权重系数,和为1,本文中W1和W2都等于0.5,S1和S2为双流的两个输出结果。

2 实验设计

我们对上述的整个系统进行了实验设计和结果测试。

2.1 实验设置

本文实验采用的是TI 公司型号为IWR1443 的毫米波雷达和DCA1000 数据采集卡,如图10(a)所示。 IWR1443 是工作在77 GHz ~81 GHz 频段的FMCW 毫米波雷达,具有3 根天线发射线性调频信号,4 根天线接收回波信号。 混频器中得到的中频信号经AD 采样后由DCA1000 采集卡将数据传输到PC 端并在CPU 上进行解析和预处理,生成特征图,然后送入网络进行训练。

图10 实验设置

整套雷达采集设备放置在房间内,每个受试者在雷达正前方0.3 m ~1.0 m 的范围内完成手势动作,如图10(b)所示。 为了采集到完整的手势信号,还需要对雷达参数进行一定的配置,表2 给出了雷达系统的配置参数。

表2 雷达参数设置

2.2 实验数据集

为了能够完整地获取所需的手势特征信息,需要对信号进行多帧积累。 其中,采集手势特征的帧窗长度如果太短或手势持续时间过短,就有可能无法完整捕捉持续时间长的手势动作;而如果帧窗长度太长,得到一次手势特征的时间较长,不利于后续对手势动作的实时性研究及应用。 为了控制单个样本规模并提高回波解析效率,本文在进行数据集制作时采用的时间基本都维持在了1.5 s 到2.0 s 左右。 手势动作如图11 所示。 为了模拟真实情况,注重实际中手势的变化与多样性,本文的手势数据由5 名受试者共同采集,每名受试者每个动作采集10次,4 个接收通道则可以采集到40 个样本,6 个手势一共采集了1 200 个实际样本数据。 这些样本构成了一个比较小的手势数据集,在每个手势的200 个手势样本中随机选取100 个样本作为训练集,其余的按1 ∶1 比例分别作为验证集和测试集。

图11 手势示意图

3 实验结果分析

3.1 网络训练

本文所提出的双流原型网络是基于Pytorch 深度学习框架,在配置为Intel Core i7-8700 CPU(3.2 GHz)和NVIDIA GeForce RTX 2080Ti GPU 的服务器上进行训练和测试。 采用随机梯度下降法,初始学习率为0.01,每10 次迭代学习率减少为原来的一半。 迭代次数一共35 次,随着迭代次数的增加,网络的损失函数变化如图12 所示,可以看出在20 轮之后的损失值趋于平稳。 图13 展现了多特征网络的实验预测结果,横坐标代表预测值,纵坐标代表真实值,可以看出大部分手势都能够准确识别,也证明了网络的有效性。 为了进一步验证网络的有效性,单支网络的单特征手势识别结果如表3 所示,可以看出测试中的6 个手势在单个特征下的平均识别精度也都达到了90%以上,但比多特征融合的效果要差一些。

表3 手势识别准确率 单位:%

图12 模型损失函数

图13 多特征识别混淆矩阵图(训练集100)

3.2 不同方法实验结果比较

为了验证系统的高识别准确度,我们与1DscNN[14],RDA-T[11],VGG16_Net[16]等模型进行了比较。表4 将不同模型的单个特征和多特征经过网络训练,比较结果可知:一方面,相较于单特征识别网络,多特征识别网络能够达到更高的准确率,说明多特征数据集能够提供更丰富的信息,体现了进行双流融合的优越性;另一方面,本文所提的双流网络在每类样本训练集为100 时准确率达到了98.3%,相较于单特征识别网络提高了4%~7%,体现了本文所设计的双流网络结构的可靠性。 通过对单特征识别网络结构的改进和优化,在保证识别准确率的基础上有效降低了使用样本数以及单个样本训练所需时间。 同时,比较同类方法的多特征识别网络可知,VGG16-Net[16]、RDA-T[11]等多特征识别网络,所需要的样本大多在1 200 个以上,而1D-ScNN[14]网络在训练样本为4 000 时才能够达到96%左右。 本文网络不仅在准确率上优于同类方法,而且在样本数量上减少了一半,大大降低了训练时间。

表4 不同模型性能比较

3.3 训练集大小对结果的影响

为了体现所提出的网络结构在小样本下的可靠性,实验比较了不同训练集大小对测试结果的影响。如图14 所示,虽然提高样本数量可以提高识别精度,但即使单个手势样本数只有20 个时也能够达到95%准确度,这说明小样本也依然能够准确识别大部分手势;当单个手势训练样本为90 以后,识别准确率基本维持在98%左右,体现了本文小样本识别方法的有效性,即只需要很少的训练数据就能够准确进行手势识别,提供了工程应用实时性的技术基础。

图14 训练集大小对结果的影响

4 总结

本文详细介绍了一种基于多通道调频连续波FMCW 毫米波雷达在小样本场景下的手势识别算法。 首先搭建了基于FMCW 雷达的手势采集系统,对采集的手势回波信号利用两次FFT 及相关算法提取了手势动作的距离-时间和多普勒-时间谱图,进一步将其转化为灰度图像且做归一化处理;然后设计了双流融合的度量学习原型网络,基于归一化的灰度手势谱图进行训练以最终获得一个预测模型,实现了6 种手势识别。 实验结果和分析表明,本文提出的方法在训练集个数为100 时,整体识别精度达到了98.3%,且提高了运行效率。

手势识别虽已取得了较多的研究成果,但由于现实生活中的干扰情况很多,实际的应用效果仍需进一步提高,所以在未来的工作中,我们还将继续优化算法,以提升系统的抗干扰能力和泛化能力;此外,本文中的手势识别只针对单个手势而言,还没有涉及到实际应用时连续手势动作或多个手势动作的识别,因此在未来工作中,我们还将研究手势分割的问题,以实现连续手势动作或多个手势动作的识别。

猜你喜欢

手势雷达距离
挑战!神秘手势
DLD-100C型雷达测试方法和应用
雷达
V字手势的由来
算距离
胜利的手势
每次失败都会距离成功更近一步
基于空时二维随机辐射场的弹载雷达前视成像
现代“千里眼”——雷达
爱的距离