水声瞬态信号检测方法研究与仿真∗
2019-11-13王红萍余义德
王红萍 余义德
(中国人民解放军91550部队43分队 大连 116023)
1 引言
水声瞬态信号具有信号持续时间短、频带宽、突发性和不稳定性等特点,如果对其进行检测和识别就显得非常困难。水声瞬态信号在武器装备应用方面比较常见,比如舰艇武器装备的发射、空投鱼雷冲击入水、火箭助飞深弹入水等瞬间都将产生水声瞬态信号[1,7,10,11]。这些水声瞬态信号蕴含了目标源丰富的特征,可以为目标探测、识别和分类等军事应用提供有用的信息,所以,对水声瞬态信号进行检测就显得尤为迫切和重要[6]。
2 水声瞬态信号检测方法研究
2.1 水声瞬态信号检测问题的提出
在水声信号检测方法相关研究中,比较常用概率密度函数、相关函数以及功率谱密度函数等方法来分析水声稳态噪声信号,通过研究噪声信号的谱线形状、频率分布范围等特性,来了解噪声源的特征。但水声瞬态信号的持续时间短、频带较宽、局部能量高、部分特征随时间而变化[12],若以常用的稳态噪声处理方法来处理瞬态噪声信号,其中的瞬态特征会被淹没,得到不确定的结果,所以不能用常规处理水声稳态信号的方法来处理水声瞬态信号[2]。
那么水声瞬态信号的检测就应该有其特有的检测方法。一般处理这类问题的方法可以概括为以下三步。第一,对水声瞬态信号实测值通过预处理以去除杂音和起伏。第二,在时域或转换域主要通过提高信噪比来构造以实现检测功能。最后,暂态信号检测通过峰值采样算法完成,依赖于二项假设检验确定是否有信号[4~5]。综上所述,下面就重点研究了对信号进行预处理的谱矩阵分解去噪算法。
2.2 RPCA 算法(鲁棒性主成分分解方法)
主成分分析(PCA)是进行降维的一种统计方法。PCA属于数据分析方法,它主要用于将高维数据样本转化成低维数据样本,达到减小数据运算复杂度的目的[8~9]。当水声瞬态信号受到低水平高斯噪声的污染时,PCA算法只需进行一次特征分解就可以获得比较准确的去噪信号。但是当噪声比较大时,PCA 算法求解出的结果就会出现很大的误差,因此Wright 等提出了鲁棒主成分分析(Robust PCA,RPCA),鲁棒主成分分析是矩阵恢复模型的一种,该算法比普通的PCA 算法对噪声更具鲁棒性。
鲁棒主成分分析模型如下式(1)所示:
Candes 等已证明只要原始数据本身具有低秩性,就可利用矩阵核范数最小化问题等价表示秩的最小化约束,从而得到去噪后的数据矩阵。因此为了对含噪信号进行去噪,可以将一个m 行k 列的噪声矩阵Z 分解为两个矩阵之和,即Z=Y+X,其中X是噪声,具有稀疏性,Y为要求解的低秩矩阵,λ 的作用主要是平衡低秩矩阵和稀疏矩阵。
对于稀疏矩阵X 来说,因为含有干扰,所以需要进行进一步的滤波。滤波公式如下:
然后将原矩阵X 与F 矩阵叉乘得到新的稀疏矩阵E。最后得出如下滤波探测器式(3)。
水声瞬态信号RPCA仿真过程分析如下:
来自于专业脚手架承包商的正式雇员,全过程监督指导脚手架工进行脚手架搭设及拆除等相关作业,检查验收脚手架是否符合要求,同时负责作业过程安全。脚手架主管必须经过阿美认证,其证书有效期为三年。脚手架主管分为三种类型。
1)输入采样水声瞬态信号,对其进行短时傅里叶变换转换到复合域内,得到矩阵Z;
2)使用式(1)将矩阵分解为一个低维的实矩阵Y和一个稀疏矩阵X;
3)对分离后的稀疏矩阵X 使用式(2)进行去噪,然后通过叉乘得到矩阵E;
4)利用式(3)得到滤波探测器;
5)最后利用二项检测法是否有信号。
2.3 NMF(非负矩阵分解)
矩阵分解是实现大规模数据处理与分析的一种有效工具,非负矩阵分解(Non-negative Matrix Factorization,NMF)算法[3]为矩阵分解提供了一种新的思路,NMF 能对原始矩阵的重构误差最小化,且原始数据的统计信息也可以得到保持,是当前国际上新的矩阵分解方法。它添加了“矩阵中所有元素均为非负数”的限制,具有占用存储空间少、实现上的简便性和分解结果的可解释性等优点,便于将高维的数据进行降维,使得NMF 分解算法成为目前研究的一个热点问题,已成功应用于图像分析、文本聚类、数据挖掘等领域。
它的思想是V=WH(W 为权重矩阵、H 为特征矩阵、V 为原矩阵),通过计算从原矩阵提取权重和特征两个不同的矩阵出来。属于一个无监督学习的算法,其中限制条件就是W 和H 中的所有元素都要大于0,其算法即为求解。假设矩阵Z ∈CM*K,可用两个非负矩阵W ∈CM*R和H ∈CR*K来表示,如式(4)所示:
非特殊矩阵分解问题可通过多乘法更新规则来求解。
其中V 为原矩阵,W 与H 为分解后的左右矩阵。对分解后H 矩阵的列向量进行相加来实现其探测功能,矩阵H中每行的最小峰值函数来确定代表噪声的行向量。峰值函数的公式如下所示:
然后对F 矩阵与H 矩阵进行叉乘得到新的滤波后的Hˉ矩阵,最后对Hˉ矩阵的行向量进行相加求和。即可得到滤波检测器。
水声瞬态信号NMF仿真过程分析如下:
1)输入采样水声瞬态信号,对其进行短时傅里叶变换转换到复合域内,得到矩阵Z;
2)使用式(5)将矩阵分解为两个非负矩阵W和H;
3)对分解得到的矩阵H 使用式(7)、(8)进行去噪,并通过叉乘得到矩阵Hˉ;
4)利用式(9)构造滤波检测器;
5)最后利用二项检测法来检测是否有信号。
3 水声瞬态信号检测的仿真分析
3.1 水声瞬态信号的模拟
采用空气中振动发出的脉冲声响来模拟水中瞬态发生的声音声压变化。采样时间为12.4s,其原始信号如图1所示。
对原始采样信号加入白噪声后模拟水中环境信息,如图2 所示,加入噪声后构成信噪比为-30dB的信号模型。如图2(b)所示,在时频分析图中也很难发现信号的踪迹。
图2 加入噪声后SNR为-25dB的时域及时频图
3.2 检测水声瞬态信号的仿真分析
我们采用上述的SNR 为-25dB 的噪声模型进行RPCA 仿真分析,将信号经过GAbor 转换(加窗傅里叶算法)产生能量谱并输出数据。输出的数据表示为矩阵Z ,求解这类矩阵问题的方法比较多,文中采用了一个比较成熟及经典的增广拉格朗日乘子法(ALM),通过ALM 来求解得到矩阵Y 和矩阵X,并对矩阵X 做一些必要的滤波分解处理后,对矩阵X 的所有的行向量进行相加比对,得到图3所示的RPCA相对值。
可以看到经过处理后就能很明显得到了信号的谱峰值,之后通过设置RPCA 相对值相应检测门限,便可以通过二元测试的方法完成检测。然后和做一定系数扩大的未加噪声的时域波形进行比对,可以看出在相对时间可以准确地检测到信号的谱峰值。经过实验,在SNR 为-30dB 以上的环境中都可以在准确时间采出信号的相对频谱峰值,从而通过二元检测方法来解决水声瞬态信号的检测问题。
图4 得到的相对RPCA值与时域波形在时间上比较
在NMF 仿真分析中还是采用上述的SNR为-25dB 的噪声信号,通过多次采样更新的方法对上述式子求解,得到W 矩阵和H 矩阵两个矩阵,W矩阵包含频率信息,H 矩阵包含特征信息。利用NMF 仿真分析步骤对H 矩阵进行特征处理,如下图所示,最后结果显示也可以准确分解出信号的谱峰值,达到检测出水声瞬态信号的目的。
图5 矩阵H经过处理后得到的谱矩阵峰值
4 结语
舰艇武器装备的发射、空投鱼雷冲击入水、火箭助飞深弹入水等都将产生水声瞬态信号。本文针对水声瞬态信号的突发性和强烈的不稳定性的特点,采用RPCA(鲁棒性主成分分解方法)及NMF(非负矩阵分解)两种矩阵分解算法对水声瞬态信号进行特殊值分解及去噪,并构建相应的滤波检测器,最后利用二项检测法来检测是否有信号。仿真分析结果表明两种方法均成功地采出水声瞬态信号的相对频谱峰值,可应用于实测的水声瞬态信号的检测和识别中,具有重要的军用价值。