APP下载

基于CBAM-CNN-BiGRU的Morse信号智能识别译码算法研究

2022-09-09高振斌宿绍莹

无线电工程 2022年9期
关键词:译码时频字符

高振斌,张 毅,宿绍莹

(1.河北工业大学 电子信息工程学院,天津 300401;2.国防科技大学 电子科学学院,湖南 长沙 410073)

0 引言

Morse电报设备简单、频带窄、建联迅速、机动性强[1],是战争、灾害等突发状况下不可替代的应急通信方式之一。长期以来,Morse电报由人工听抄译码,在信道质量恶劣、码速率较高时正确率难以保证,且长时间工作会对报务员的身心健康产生诸多负面影响。此外,培养合格的报务员时间久、花销大,士兵服役期较短,人员短缺严重。因此,实现Morse电报的自动接收译码具有迫切的应用需求。

识别译码是根据Morse信号的点、划和3种间隔的时长比例(1∶3∶1∶3∶5)对它们进行种类判别,并按照其排列组合实现报文信息输出。与人工听抄译码相类似,时频分析[2]能够同时提取时域和频域信息,具有较强的抗干扰能力。基于时频分析的Morse信号接收译码方法可以分为传统机器学习聚类法和深度学习神经网络方法。聚类法包括支持向量机[3]、K均值聚类[4]、改进K均值聚类[5]和模糊C均值聚类[6]等,在高信噪比情况下,可达到90%以上的识别准确率。但聚类法需经过点划识别、间隔识别、查表译码和纠错等多个步骤,信噪比在0 dB以下时,识别准确率明显下降,远达不到实用要求。神经网络方法有应用隐马尔可夫模型的深度神经网络(Deep Neural Networks,DNN)[7]、卷积循环神经网络(Convolutional Recurrent Neural Network,CRNN)[8]等,与聚类法相比,此类方法可以实现端到端译码,且对低信噪比环境适应性更好。本文以CRNN为基础,提出融入卷积注意力机制模块(Convolutional Block Attention Module,CBAM)的卷积神经网络(Convolutional Neural Network,CNN)的双向门控循环单元(Bi-directional Gated Recurrent Unit,BiGRU)网络结构,实现小训练样本条件下,不同信噪比、字长、频率、码速和幅度的Morse信号智能识别译码。

1 智能识别译码算法设计

Morse信号智能识别译码算法结构如图1所示。首先,对原始音频信号进行时频变换和图像伪彩色处理,获取标准的待处理图像;然后,采用CBAM-CNN网络提取信号频率位置、信号能量等有效特征,输出特征序列;最后,依据BiGRU网络捕捉特征序列之间的长期依赖性来预测电报信息,并由连接时序分类(Connectionist Temporal Classification,CTC)层自行对齐输出。

图1 译码算法结构Fig.1 Structure of decoding algorithm

1.1 时频图像预处理

假设发报频点未知,参照文献[9],对音频信号依次进行短时傅里叶变换、能量分选及特征分类,预检测出目标信号频率,进行窄带滤波去噪;去噪后的时域信号进行有利于译码的高时间分辨率短时傅里叶变换[10],再次利用能量分选方法将有效信号区域时频图提取并统一尺寸输出。如图 1中灰度图所示,短、长矩形亮条分别代表Morse信号的点、划,点、划之间的暗区按长度从小到大的顺序分别代表码间隔、字间隔和词间隔。

伪彩色图像将灰度图变换成不同的颜色,使经过处理的图像更适合人类视觉系统或计算机识别系统,是视觉效果显著且不太复杂的图像增强技术[11]。本文选用灰度分层法的viridis映射将灰度图伪彩色化,通过改变色彩的饱和度形成渐变色,彼此接近的像素值颜色相似,远离的值具有更多不同的颜色。viridis映射充分利用色彩空间,保证持续均匀性,突出了不同区域的细节差异[12],适用于Morse时频图像素值线性分布的情况。图1中可观察到,伪彩色化后,时频图的点、划更加突出,更有利于卷积层提取到点、划及间隔的持续时间。

1.2 深度特征提取

计算机视觉中的注意机制本质在于模拟人眼的视觉感知[13],通过训练过后的自动调整配置参数,可以像人类视觉一样重视有用信息,减少无效信息的干扰,提高效率与准确率,是自然语言处理研究中不可或缺的重要组件[14]。CBAM模块将通道(Channel)和空间(Spatial)注意力机制按照先后顺序相互结合[15],有效地提升卷积层对关键特征的提取能力,抑制不必要的特征。CBAM结构如图2所示,为轻量级即插即拔挂件式模块,可以无缝集成到任何CNN架构中(在每层卷积层后接入)并忽略开销进行端到端训练,满足Morse电报的快速译码要求。

MC(F)=σ(MLP(MaxPool(F))+MLP(AvgPool(F)))=

(1)

式中,σ,W0,W1分别为激活函数及MLP的权重。

MS(F′)=σ(f7×7([AvgPool(F′);MaxPool(F′)]))=

(2)

式中,σ,f7×7分别为激活函数及拥有7×7卷积核的卷积层。

MS(F′)与F′对应元素逐个相乘,最终生成特征图F″,整个CBAM过程可表示为:

(3)

式中,⊗表示对应元素逐个相乘。

CBAM-CNN模块的具体设置如表1所示,组合层依次为卷积层、正则化层、线性整流函数(Rectified Linear Unit,ReLU)、注意力机制模块和最大池化层。设计连续2个组合层,输入图片尺寸高度统一为32 pixel,宽度不定,只设置最大宽度。经过此网络,Morse信号时频图的频率方向维度(高度)变为1,时间方向维度(宽度)变为原图片的1/4,通道方向维度为64,即图1中CBAM-CNN模块虚线处所示,时间维度每个点提取有64个通道特征值,形成特征序列。

表1 CBAM-CNN模块结构

1.3 报文预测

图3 GRU单元结构Fig.3 GRU unit structure

Morse电报任意时刻码字预测与其前后、码之间均有重要关联,但GRU网络只在一个方向上对信息流进行建模[17],只能单向感知按时间正序传递的前码信息,无法顾及到未来的码字。BiGRU网络同时训练2个方向相反、参数独立的GRU网络,每一时刻得到的特征信息都考虑了上下文,能更精准地预测当前报文。

BiGRU每个序列输出都对应一个字符元素,实际情况中Morse信号字长不确定且每字符对应时间长度不等,很难做到字符对齐。CTC提出一种不需要对齐的损失函数计算方法,将其添加到BiGRU的输出层,减轻了网络预测不确定的压力,实现了端到端自动对齐输出。BiGRU与CTC的拼接模块结构如图4所示。

图4 BiGRU(CTC)单元结构Fig.4 BiGRU(CTC) unit structure

2 试验与分析

2.1 数据集

数据分为2种:仿真生成的Morse信号和实录电台音频信号。其中,仿真Morse信号的具体生成步骤如下:

① 确定信噪比在-20~10 dB,以每2 dB为间隔,设置信号具体的信噪比为:-20,-18,…,10 dB,准备将数据按不同信噪比来分批产生。

② 在每种信噪比情况下,生成660条长度不大于5个字符的不重复的随机字符串,长度大于2个字符的字符串中加入了代表词间隔的空格字符。

③ 根据Morse信号的译码表编写字典,将字符串转化为点、划和3种间隔的序列。根据发报常用码速(35~150字符/分钟)、单字符包含的最小单位个数、常用字符组合等信息,估算出每个最小单位对应的时间约为0.015~0.25 s,等概率随机取其中一值,将序列中的点、划分别生成为持续1,3个最小单位对应时长的高电平,码间隔、字间隔和词间隔分别生成为持续1,3,5个最小单位对应时长的零电平。选取合适的采样频率,采样得到对应码速的基带信号。

④ 将基带信号依次与直流信号、正弦载波相乘,直流信号的幅值为1~100 V的随机整数,载波的频率等概地500~4 000 Hz整百数随机选取。

⑤ 在信号中加入对应信噪比的白噪声,生成待识别的仿真Morse信号。

10 560个仿真信号的时频图按比例分为训练集、验证集和测试集1,在实时录制的数百个时长为10 s的电台音频数据中检测到的447路Morse信号的时频图作为测试集2。具体参数设置如表2所示,2种数据的时频图宽度分别根据报长、时长来确定,保证每个最小单位(点的时长)至少可以有2个像素点。需要说明的是,在实录数据中,除目标Morse信号所传递的信息及其几个参数的所在范围外,目标信号具体的频率、幅值、码速,以及信道环境、噪声干扰等情况均是未知的,故信噪比无法确定。

表2 数据集设置

2.2 实验环境与评估方法

实验运行环境:CPU Intel© CoreTMi9-10900K@3.70 GHz,GPU NVIDIA GeForce RTX3080;代码在 Windows系统Tensorflow2.4框架下编写运行。根据训练结果,选择使验证集结果最优的超参数,分别为:优化方式选用RMSProp,学习率设为0.001递减到0.000 1,batch_size设为100,epoch设为100个,并设定使验证集准确率最高的模型为最终模型。网络中CBAM-CNN设置如表1所示,BiGRU设置为2层,神经节点数为256,后与CTC拼接。

算法性能由3个指标来衡量,分别为:字(符)准确率、样本准确率和译码耗时。字准确率为所有译码正确字符(词间隔表现为空格字符)占总字符的百分比,样本准确率是指完全正确样本占总样本数的百分比,译码耗时指系统识别单个样本所需时间。

2.3 算法译码性能对比

本文与文献[8]CRNN算法进行对比,网络及输入图片分别为:① CRNN,灰度时频图(gray映射);② CBAM-CNN-BiGRU网络,伪彩色时频图(viridis映射)。仿真数据字准确率及样本准确率随信噪比的变化曲线如图 5和图 6所示。本文算法准确率始终优于CRNN算法,尤其在信噪比低于-14 dB环境下,信号与周围噪声区分度降低,点、划的矩形轮廓逐渐变形,CRNN网络准确率下降明显,本文算法中伪彩色处理增强了时频图层次,结合CBAM模块,可以准确锁定重要特征区域,使得字准确率保持在80%以上。

图5 仿真数据的字符准确率比较Fig.5 Comparison of character accuracy of simulation data

图6 仿真数据的样本准确率比较Fig.6 Comparison of sample accuracy of simulation data

两测试集译码总准确率及耗时如表3所示。测试集1中两算法的准确率差距在几个百分点;测试集2中,实录音频信号环境复杂,可能存在频率偏移、码长偏差、邻频干扰和信号能量不均等情况,本文算法准确率优势更加突出,高出CRNN算法10%左右。与CRNN相比,本文的算法结构更复杂,但识别时间基本持平,符合工程应用的实时性要求。上述结果表明,本文算法在低信噪比、真实环境下均有更强的适用性。

2.4 时频图尺寸选择

输入图片尺寸同时影响算法准确率及译码时间,尺寸越大准确率越高,但译码时间也会越长。将仿真数据时频图设置为不同宽度,测试其对算法结果的影响。在-20 dB环境下,即使不断牺牲时间加宽图片,字符准确率始终低于90%,达不到实用要求,故选择以-18 dB及以上信噪比为实验环境来选取合适尺寸。输入各尺寸图片的算法准确率及耗时如表4所示,图片宽度为200 pixel时,译码准确率达到峰值,之后基本维持但耗时增加。结果表明,仿真数据时频图选取200 pixel宽度为衡量准确率与算法耗时后的最优尺寸。

表4 输入各尺寸图片的算法准确率及耗时

3 结束语

根据现有的Morse信号译码算法,本文提出以伪彩色时频图为输入的CBAM-CNN-BiGRU网络结构,参考手键及电子键发报情况,信号设置了多个码速、信噪比、幅值、频率,用小样本和五字符以内的仿真数据进行训练,获得的模型可实现任意长度信号的精准实时译码。以准确率及时间为指标,与已有算法相比较,本文算法在仿真和实测数据中均表现出优异的性能,验证了其鲁棒性及实用性。

本文算法实现了Morse信号句级别的识别,但若不知报文起止位置,译码电台信号只能按时间截取音频,其首尾会存在断码,损失报文信息。未来将研究连续同频Morse时频图的拼接与再分割问题,实现电台Morse信号的实时无损译码。

猜你喜欢

译码时频字符
极化码自适应信道译码算法
高阶时频变换理论与应用
基于扩大候选码元范围的非二元LDPC加权迭代硬可靠度译码算法
分数阶傅里叶变换改进算法在时频分析中的应用
分段CRC 辅助极化码SCL 比特翻转译码算法
基于校正搜索宽度的极化码译码算法研究
论高级用字阶段汉字系统选择字符的几个原则
高聚焦时频分析算法研究
字符代表几
一种USB接口字符液晶控制器设计