吴秋雨,高 勇
(四川大学 电子信息学院,四川 成都 610065)
汽车雷达传感器是当前驾驶辅助系统和自动驾驶应用的重要模块,用来检测目标、测量目标的距离和速度,以保障道路安全感。常用于汽车领域的雷达有调频连续波(Frequency Modulated Continuous Wave,FMCW)雷达[1],它能够连续发射频率随时间线性变化的啁啾信号。随着自动驾驶技术的高速发展,越来越多的汽车装载车载雷达,不同车辆的车载雷达之间不可避免地会产生相互干扰,导致虚假目标的出现或基底噪声的增加,降低检测性能。
传统的汽车雷达干扰抑制方法包括归零法(Zeroing)法、自适应阈值迭代法、斜坡滤波法、估计和减去干扰成分法等,文献[2-3]给出了这些方法的介绍和对比。其中最基本的方法是归零法,通过将受干扰部分的样本值设为零来消除干扰,该方法虽然简单,但是容易去除有用信号,且当干扰时间段较长时此方法的效果会下降。
近年来,深度学习技术不断发展,并逐渐应用到雷达信号处理。文献[4]首次在时域运用深度学习方法消除相互干扰,采用基于门控循环单元(Gated Recurrent Unit,GRU)的循环神经网络(Recurrent Neural Network,RNN),与传统方法相比,性能更佳且处理速度更快。文献[5]在文献[4]的基础上增加了注意力模块,能更好地捕捉时间序列之间的关系,提升模型性能。文献[6]采用全卷积神经网络(Fully Convolutional Neural Network,FCN)解决射频干扰问题,能将受干扰信号经短时傅里叶变换后的频谱图转换为消除干扰后的距离像。文献[7]利用双向长短时记忆网络(Bidirectional Long Short-Term Memory,Bi-LSTM)来抑制相互干扰。上述方法可以成功地预测目标幅度,但无法保留目标的相位信息,而相位对于测量目标的多普勒效应至关重要[8]。
文献[9]采用基于自动编码器的卷积神经网络(Convolutional Neural Network,CNN),将干扰信号距离-多普勒图的幅度和相位作为双通道数据输入网络来消除干扰,保留了相位信息。文献[10]使用CNN来抑制干扰,将频域干扰信号的实部和虚部作为双通道数据输入网络,能预测目标的相位信息。文献[11]在文献[6]的基础上引入了WeNoRT(Weighted Noise Reduction Training)训练机制,同时将频域干扰信号的幅度、实部和虚部作为三通道数据输入网络,可以得到目标的相位信息。
由于雷达信号多为复数,而上述方法仅将信号的实部和虚部作为双通道数据输入网络,然后用实数网络将实部和虚部作为2个独立的信息进行特征提取,没有挖掘实部和虚部之间的相关性。因此本文将语音增强领域的深度复数卷积循环网络(Deep Complex Convolution Recurrent Network,DCCRN)[12]应用到汽车雷达干扰抑制上并作了改进,提出了一种基于注意力机制的深度复数卷积循环网络(Deep Complex Convolution Recurrent Network with Attention,DCCRN-Attention)。不同于以往的实数网络,本文模型使用复数卷积、复数批归一化和复数长短时记忆网络(LSTM)模块,通过模拟复数运算来提取信号的实部和虚部之间的相关性,具有更丰富的特征学习能力,且能同时预测干扰抑制后目标的幅度和相位信息。本文模型中引入了注意力(Attention)机制,因此可以捕捉上下文之间的关联信息,聚焦局部信息。在公开数据集[6]中的实验结果表明,与基线方法相比较,本文模型在抑制汽车雷达相互干扰方面的性能更好。
FMCW雷达发射的是线性调频信号,也称为chirp信号,其频率随时间线性变化,如图1所示。单个周期内的发射信号ST(t)表示为:
(1)
图1 无干扰信号Fig.1 Signal without interference
式中:t为时间变量,f0为t=0时刻的初始频率,Tc为扫频周期,α=B/Tc为调频斜率,B为扫频带宽。
发射信号经目标反射后,雷达接收到的回波信号SR(t)表示为:
(2)
式中:Nt为目标个数,Ai为幅度,τi=2Ri/c为第i个目标的传播时延,Ri为第i个目标的距离,c为光速。
接收的回波信号与发射信号混频后,再经过低通滤波器得到差频信号,差频信号Sb(t)表示为:
(3)
汽车雷达干扰分为相干干扰和非相干干扰。相干干扰指干扰信号的调频斜率与发射信号相同,会导致频域上出现假目标;非相干干扰指干扰信号的调频斜率与发射信号不同,会导致频域上基底噪声增加[13]。本文讨论的是非相干干扰。
受干扰信号如图2所示。当出现非相干干扰时,受干扰部分发生在时间段β内,干扰信号SI(t)表示为:
(4)
图2 受干扰信号Fig.2 Signal with interference
式中:AI为干扰信号的幅度,fI为干扰信号的初始频率,τd为干扰信号的时延,αI=BI/TI为干扰信号的调频斜率,BI、TI分别为干扰信号的扫频带宽和扫频周期。
接收机接收到的含有干扰的回波信号SRI(t)表示为:
SRI(t)=SR(t)+SI(t)。
(5)
图3 受干扰信号的时域图Fig.3 Time domain diagram of signal with interference
(6)
图4 无干扰信号和受干扰信号的频域图Fig.4 Frequency domain diagrams of signal with and without interference
对于非相干干扰,时域上,受干扰部分的信号幅度远大于未受干扰部分的信号幅度;频域上,干扰会导致基底噪声增加和低功率目标被覆盖,从而降低检测概率。
本文使用的网络模型是基于文献[12]提出的DCCRN,该模型在语音增强领域显示出较好的效果,并获得了Interspeech 2020 DNS挑战赛实时赛道的第一名。本文提出的DCCRN-Attention模型的总体框架如图5所示,该模型在文献[12]的基础上做了改进,同时增加了注意力机制,能够抑制汽车雷达间的非相干干扰,且能同时预测目标的幅度和相位信息。
图5 DCCRN-Attention模型总体框架Fig.5 Overall framework of DCCRN-Attention model
本文将受干扰信号经快速傅里叶变换(Fast Fourier Transformation,FFT)后的频域特征作为输入特征,标签为未受干扰信号经FFT后的频域特征。输入为频域干扰信号的实部和虚部,经过DCCRN-Attention模型后,输出为频域抑制干扰后的实部和虚部,通过输出的实部和虚部可以计算出目标的幅度和相位大小。损失函数采用均方误差(Mean Squared Error,MSE),计算方式为:
(7)
在目前的使用深度学习抑制干扰并预测目标的幅度和相位信息的方法中,仅将信号的实部和虚部作为双通道数据输入网络中,用实数网络来处理,这与复数乘法运算不一致,并未考虑到信号的实部和虚部之间的相关性。本文所用的DCCRN结构如图6所示,该网络中的复数模块通过模拟复数乘法来获取信号的实部和虚部之间的相关性。
图6 DCCRN结构Fig.6 DCCRN structure
DCCRN结构由6层复数编码器、2层复数LSTM和6层复数解码器组成,其中编码器旨在从输入特征中提取高维特征,解码器进行特征重构,从而使解码器-编码器结构形成对称设计,中间的LSTM用于对时间依赖进行建模,同时采用跳跃连接将对应的编码层和解码层连接起来,实现多尺度的特征融合。对复数编码器、复数解码器和复数LSTM的介绍如下:
① 复数编码器模块如图7所示,包含复数卷积、复数批归一化[14]和参数修正线性单元(Parametric Rectified Linear Unit,PReLU)激活函数[15]。复数卷积由4个传统的卷积操作组成,控制着整个编码器的复数信息流。复数卷积滤波器W定义为:W=Wr+jWi,其中Wr和Wi分别表示复数卷积核的实部和虚部。复数形式的输入X定义为:X=Xr+jXi,其中Xr和Xi分别表示输入的实部和虚部。通过复数卷积运算X*W,可以得到复数形式的输出:
图7 复数编码器模块Fig.7 Complex encoder module
Fout=(Xr*Wr-Xi*Wi)+j(Xr*Wi+Xi*Wr),
(8)
式中:Fout为输入经复数卷积操作后的输出,*表示卷积操作。
② 复数解码器模块则由复数转置卷积、复数批归一化和PReLU激活函数组成,复数转置卷积的实现方式与上述复数卷积类似。
③ 同时,给定复数输入Xr和Xi,复数LSTM的输出Fout可以表示为:
Frr=LSTMr(Xr),Fir=LSTMr(Xi),
(9)
Fri=LSTMi(Xr),Fii=LSTMi(Xi),
(10)
Fout=(Frr-Fri)+j(Fri+Fir),
(11)
式中:LSTMr和LSTMi表示实部和虚部的传统LSTM操作,Fir为Xi通过LSTMr计算得到,其余类似。
原始的DCCRN在跳跃连接部分直接将编码层的输出和对应解码层的输入拼接起来进行数据重构,即解码层在重构数据时没有针对性地选择数据。因此,本文基于文献[16]提出的注意力门控(Attention Gate,AG),在DCCRN的跳跃连接部分引入了Attention模块,使解码器在重构数据时抑制无关信息,并突出特定区域的显著特征。
Attention机制的提出源自于人脑对外部信息的处理能力,人脑在处理信息时,会将Attention集中到重要的、感兴趣的信息上,而忽略无关的信息。在神经网络中引入Attention机制,可以在计算能力有限的情况下,将计算资源分配给更重要的任务,解决信息过载问题,并提高任务处理的效率和准确性。Attention机制[17]的本质为一个查询Q(Query)到一系列键值对(Key-Value)的映射,通过对Query和Key的相关性进行建模来得到Attention系数,再实现对Value的权重分配。具体而言,用键值对(K,V)=[(k1,v1),(k2,v2),…,(kN,vN)]来表示N组输入信息,当给定一个查询Q时,经典的Attention机制的计算方式如下:
αi=softmax(s(ki,Q)),
(12)
(13)
式中:αi表示ki与Q的相关程度,即Attention系数;s为计算相关程度的函数,常见的形式包括加性模型、点积模型和双线性模型等;softmax为归一化指数函数,Attention((K,V),Q)表示根据Attention系数对Value进行加权求和后的结果。
本文引入的Attention机制原理如图8所示,x为编码层的输出,g为对应解码层的输入,这里可以将g理解为上述Attention机制中的查询Q,x理解为键值对(K,V)。这样,跳跃连接部分不是将编码层输出直接与解码层输入拼接,而是先通过x与g计算Attention权重系数α,将α赋值到x后再与g进行拼接。由于编解码层的特征维度不同,多次利用1×1的卷积对数据进行升维和降维,使数据g、x和α的尺寸大小一致,以便进行相加和相乘操作。
图8 Attention机制原理Fig.8 Principle of Attention mechanism
具体的计算如下:
α=σ2(Φ(σ1(Wg(g)+Wx(x)))),
(14)
x1=α·x,
(15)
式中:α为Attention权重系数,x为编码层的输出,g为对应解码层的输入,Wg、Wx、Φ均表示1×1的卷积,σ1、σ2分别表示ReLU和Sigmoid激活函数,x1为赋予Attention权重系数后的编码层输出。实现了对编码层信息的过滤,赋予不同的权重,抑制无关信息,捕捉重要特征。
本文实验采用了大规模的汽车雷达干扰抑制(Automotive Radar Interference Mitigation,ARIM)公开数据集[6],该数据集模拟了含有单个干扰源的真实汽车场景,FMCW雷达的模拟参数如表1所示。
表1 FMCW雷达模拟参数
ARIM数据集共包含48 000个样本,并且被随机划分成含40 000个样本的训练集和含8 000个样本的测试集,每个样本都包含无干扰的时域差频信号(标签信号)和受干扰的时域差频信号。样本数据是前文介绍的差频信号的采样值,由表2列出的参数的随机值生成,具体而言,信噪比(Signal to Noise Ratio,SNR)、信干比(Signal to Interference Ratio,SIR)这2个参数在最小值和最大值之间根据固定步长而线性变化,相对干扰斜率k=αI/α(αI为干扰信号的调频斜率,α为发射信号的调频斜率)、目标个数、目标的幅度、距离和相位这5个参数在最小值和最大值之间遵循均匀分布。
表2 ARIM数据集的样本参数
本文的目的是抑制干扰并同时恢复目标的幅度和相位信息,为了衡量模型抑制汽车雷达干扰的性能,实验选取平均SNR变化(Mean SNR Improvement,ΔMSNR)、幅度平均绝对误差(Mean Absolute Error,MAE)和相位MAE作为评价指标。其中,ΔMSNR是指接收信号中的目标在干扰抑制前后的平均SNR变化,数值越大说明效果越好。幅度MAE由标签信号的目标幅度和网络输出信号的目标幅度之间的MAE计算得到,单位为dB;相位MAE则是指标签信号的目标相位和网络输出信号的目标相位之间的MAE,单位为(°),这2个指标的数值越小说明性能越好。
在数据预处理阶段,FFT的采样点数为2 048,受干扰信号做FFT后,其实部和虚部先作为双通道数据输入模型中,在复数层时将实部和虚部分别取出再进行相应的复数卷积等操作。为了减少过拟合,实验中将20%的训练集(8 000个样本)用作验证集。实验使用PyTorch框架来训练DCCRN-Attention模型,优化器为Adam,训练100轮,训练批次大小为64,模型的初始学习率设置为 0.001,同时学习率每10轮下降0.5,权重衰减系数为0.000 001。
DCCRN-Attention模型中,复数编码器每层的通道数分别为{32、64、128、256、256、256},复数解码器每层的通道数分别为{256、256、256、128、64、32},卷积核的大小和步长分别设置为5×2和2×1,中间的2层复数LSTM的隐藏层分别为256、1 024个单元。
本文模型的干扰抑制效果如图9所示。图9(a)为无干扰的标签信号的频谱图;图9(b)为受干扰信号的频谱图,可以看到干扰信号导致基底噪声增加了近40 dB,淹没了目标;图9(c)为经DCCRN-Attention模型抑制干扰后的信号频谱图,能检测出目标,且目标幅度与标签信号基本一致。
(a)标签信号频谱图
(c)干扰抑制后信号频谱图
表3为图9中目标的SNR值,从表中可以看出受到干扰后,目标的SNR大幅度下降,影响目标的检测概率,而经过本文模型抑制干扰后的信号,其目标的SNR得到了提升,接近标签信号,有利于目标的检测。
表3 图9中目标的SNR
为了验证本文提出的DCCRN-Attention模型在汽车雷达干扰抑制方向的有效性,实验选取标签信号、Zeroing法和文献[12]的DCCRN模型得到的结果作为对比。Zeroing法应用在时域,通过将高于阈值的振幅替换为0来消除干扰[18];DCCRN模型除了未引入Attention机制,其余结构和参数设置与DCCRN-Attention模型一致。
不同方法在ARIM数据集的验证集和测试集上的实验结果如表4和表5所示。首先,与Zeroing方法相比,在验证集上,DCCRN模型的ΔMSNR、幅度MAE和相位MAE值分别优化了2.95 dB、4.68 dB和5.94°,而本文DCCRN-Attention模型的ΔMSNR、幅度MAE和相位MAE值分别优化了2.98 dB、4.89 dB和6.14°;在测试集上,DCCRN模型的ΔMSNR、幅度MAE和相位MAE值分别优化了2.90 dB、4.61 dB和5.52°,而本文DCCRN-Attention模型的ΔMSNR、幅度MAE和相位MAE值分别优化了2.93 dB、4.81 dB和5.79°。DCCRN和DCCRN-Attention模型的3项评价指标均优于Zeroing方法,说明将语音增强领域的方法应用到汽车雷达干扰抑制上的有效性。其次,与DCCRN模型相比,在验证集上,本文DCCRN-Attention模型的ΔMSNR、幅度MAE和相位MAE值分别优化了0.03 dB、0.21 dB和0.20°;在测试集上,本文DCCRN-Attention模型的ΔMSNR、幅度MAE和相位MAE值分别优化了0.03 dB、0.20 dB和0.27°,DCCRN-Attention模型的3项评价指标均优于DCCRN模型,表明引入Attention机制能够提升模型性能。
表4 不同方法在ARIM数据集的验证集上的结果对比
表5 不同方法在ARIM数据集的测试集上的结果对比
为了分析不同SNR下3种方法的干扰抑制效果,图10为本文模型在ΔMSNR、幅度MAE和相位MAE这3个评价指标上,与Zeroing方法、DCCRN模型的效果对比图。由图10可以看出,随着SNR的增加,本文模型和Zeroing方法之间的性能差异越来越大;此外,本文模型的干扰抑制效果总体上要优于DCCRN模型,再次验证了增加Attention机制可以提升模型性能。
(a)ΔMSNR
(c)相位MAE
本文提出了一种DCCRN-Attention的汽车雷达干扰抑制模型,模型使用复数网络模块学习信号实部和虚部之间的相关性,预测目标的幅度和相位信息,并且通过在跳跃连接中引入Attention机制来减少序列信息的丢失,使模型聚焦重要信息,抑制无关信息。实验结果表明,本文提出的模型能够有效抑制干扰,提高检测目标的SNR,并且模型的各项评价指标均优于基线方法Zeroing法和DCCRN模型,验证了所提模型在抑制汽车雷达干扰任务中的有效性。目前本文只考虑了单个干扰下的抑制,未来将进一步研究含多个干扰的抑制方法和效果。