用信号标签器标记雷达信号
这个例子展示了如何标注脉冲雷达信号的主要时间和频率特征。这一步促进了创建完整而准确的数据集来训练人工智能(AI)模型的过程。信号贴标签机从两个方面减轻了这个任务。在手动模式下,同步时间和时间-频率视图可以帮助您识别频率特征,例如波形类型矩形
,LinearFM
,或SteppedFM
.在自动模式下,您可以注册测量脉冲重复频率(PRF)、脉冲宽度、占空比和脉冲带宽的函数,并且只纠正错误,而不是从头标记所有信号。内置仪表板有助于跟踪标签进度和评估标签质量。
导入数据到信号标签
本例中的雷达信号存储在单独的MAT文件中。每个文件包含一个数据变量x
和相应的抽样率变量Fs
.
开放信号贴标签机.在贴标签机选项卡上,单击进口并选择从文件夹
在成员列表。在对话框中,选择雷达信号文件所在目录。若要指定要读取的信号变量,请单击指定并输入x
.添加时间信息:选择工作在
选项并选择时间
从名单上。选择从文件的采样率变量
在列表中输入Fs
.点击进口.导入的文件显示在标记信号集浏览器.通过选择前三个信号名称旁边的复选框来绘制它们。
定义标签
为信号波形类型创建一个标签定义。
点击添加在贴标签机选项卡,选择
添加标签定义
.在对话框中,指定标签名称作为
WaveformType
.集标签类型来属性
而且数据类型来字符串
.点击好吧.
重复这些步骤以创建PRF、占空比和带宽的属性标签定义。修改每个标签名称,并将数据类型设置为数字
.
为脉冲宽度创建一个感兴趣区域(ROI)标签,该标签对应于显示用于计算每个脉冲宽度的初始和最终交叉的区域。指定标签名称作为脉冲宽度
,标签类型为投资回报率,以及数据类型作为数字
.标签定义出现在标签定义浏览器。
创建自定义自动贴标签函数
使用四个自定义标签功能标记PRF,带宽,占空比和脉冲宽度。中给出了这些函数的代码万博1manbetx支持功能部分的示例。上创建每个函数贴标签机选项卡上,单击自动化的价值并选择添加自定义功能.信号贴标签机显示一个对话框,您可以在其中输入函数的名称、描述和标签类型。
对于计算PRF的函数,输入
computePRF
在的名字字段并选择属性
随着标签类型.你可以离开描述字段为空,或者您可以输入自己的描述。计算带宽功能,输入
computeBandWidth
在的名字字段并选择属性
随着标签类型.你可以离开描述字段为空,或者您可以输入自己的描述。对于计算占空比的函数,请输入
computeDutyCycle
在的名字字段并选择属性
随着标签类型.你可以离开描述字段为空,或者您可以输入自己的描述。对于计算脉冲宽度的函数,输入
computePulseWidth
在的名字字段并选择ROI
随着标签类型.你可以离开描述字段为空,或者您可以输入自己的描述。
如果你已经写好了函数,并且函数在当前文件夹或MATLAB®路径中,信号贴标签机将函数添加到图库中。如果你还没有写出函数,信号贴标签机在“编辑器”中打开空白模板,以便键入或粘贴代码。保存文件。保存文件后,函数就会出现在图库中。
标签波形类型、PRF、带宽、占空比、脉冲宽度
设置每个信号的波形类型:
在标记信号集浏览器,选中右侧的复选框
radarData1
.单击显示选项卡,选择光谱图在的观点部分。该应用程序显示了一组轴的信号频谱图和一个光谱图选项卡来控制视图。
单击光谱图TAB,将重叠百分比设置为
99
.频谱图显示信号波形为矩形。在标签查看器属性表中,双击下面的单元格WaveFormType和类型
矩形
.对数据集中的所有信号重复此手动标记步骤。
一个例子LinearFM
波形。
一个例子SteppedFM
波形。
计算并标记输入信号的PRF。
选择
脉冲重复频率
在标签定义浏览器。在自动化的价值画廊,选择
computePRF
.点击Auto-Label并选择
自动标记所有信号
.在弹出的对话框中,单击好吧.
通过选择相应的标签定义和自动标记功能,对带宽、占空比和脉冲宽度重复上述步骤。
信号贴标签机计算并标记所有信号,但仅对选中复选框的信号显示标签。画出来自前五个成员的信号。
验证标记信号
查看标签进度,验证计算的标签值是否正确。选择WaveFormType
在标签定义浏览并单击指示板在贴标签机选项卡。
左边的图显示了标记进度,当所有信号都标记为WaveFormType
标签。右边的图表显示了每个标签值都带有标签的信号的数量。您可以使用标签分布饼图用于评估标签的准确性,并确认结果符合预期。
接下来,验证所有脉冲宽度标签值是否分布在周围5 e-5
.要查看脉冲宽度标签值的时间分布,请单击定义选择在指示板选项卡,选择脉冲宽度.点击时间分布图和指示板选项卡,设置垃圾箱来3.
,X分钟来4 e-5
而且X最大值来6 e-5
.所有信号都有一个分布在周围的脉冲宽度5 e-5
.
关闭仪表盘。
输出标记信号
导出标记信号,用于训练AI模型。在贴标签机选项卡上,单击出口并选择标记信号设置为文件
.在出现的对话框中,给出名称radarDataLss.mat
并添加可选的简短描述。点击出口.
回到MATLAB®命令窗口。加载标记的信号集并从标记的信号集创建信号和标签数据存储。用信号和标签数据存储创建一个组合数据存储。使用读
或readall
以获得可以用来训练AI模型的信号-标签对。
负载radarDataLss.mat[signals,labelDs] = ls.createDatastores(“WaveFormType”);combds = combine(signalDS,labelDs);
万博1manbetx支持功能
computePRF
功能:计算脉冲重复频率
的computePRF
函数计算并标记输入信号的PRF。它使用pulseperiod
函数。
函数[labelVal,labelLoc] = computePRF(x,t,parentLabelVal,parentLabelLoc,varargin)计算雷达脉冲的脉冲重复频率的函数如果~isreal(x) x = abs(x);结束Pri = pulseperiod(x,t);labelVal = 1/pri(1);labelLoc = [];结束
computeBandWidth
功能:计算脉冲带宽
的computeBandWidth
函数计算并标记输入信号的带宽。它使用obw
函数。
函数[labelVal,labelLoc] = computeBandWidth(x,t,parentLabelVal,~,varargin)计算雷达脉冲占用带宽的函数如果~isreal(x) x = abs(x);结束Fs = 1/mean(diff(t));labelVal = obw(x,fs);labelLoc = [];结束
computeDutyCycle
功能:计算脉冲占空比
的computeDutyCycle
函数计算并标记输入信号的占空比。它使用dutycycle
函数。
函数[labelVal,labelLoc] = computeDutyCycle(x,t,parentLabelVal,parentLabelLoc,varargin)计算雷达脉冲占空比的函数如果~isreal(x) x = abs(x);结束labelVal =占空比(x,t);labelLoc = [];结束
computePulseWidth
功能:计算脉冲宽度
的computePulseWidth
函数计算并标记输入信号的脉冲宽度。它使用脉冲宽度
函数。
函数[labelVal,labelLoc] = computePulseWidth(x,t,parentLabelVal,parentLabelLoc,varargin)计算雷达脉冲脉冲宽度的函数如果~isreal(x) x = abs(x);结束[pw,ic,fc] =脉冲宽度(x,t);labelVal = pw(1);labelLoc = [ic(1) fc(1)];结束