主要内容

使用音频标签器标签音频

请注意

音频贴标签机将在将来的版本中删除。使用信号贴标签机代替。

音频贴标签机应用程序使您能够交互式地定义和可视化音频数据集的真实标签。这个例子展示了如何创建标签定义,然后交互式地标记一组音频文件。该示例还展示了如何导出带标记的基本真相数据,然后可以使用这些数据audioDatastore训练一个机器学习系统。

加载未标记的数据

  1. 打开音频贴标签机,在MATLAB中®命令提示符,输入:

    audioLabeler

  2. 本例使用音频工具箱™中包含的音频文件。要在系统上定位文件路径,在MATLAB命令提示符处输入:

    fullfile (matlabroot“工具箱”“音频”“样本”

    若要从文件中加载音频,请单击负载>音频文件夹并选择包含要标记的音频文件的文件夹。

定义和分配标签

文件级标签

音频样本包括音乐、演讲和氛围。创建一个文件级标签,该标签将音频文件的内容定义为音乐演讲气氛,或未知的,点击。指定标签名称作为内容,数据类型作为分类,以及类别作为音乐演讲气氛,或未知的。设置默认值的标签定义未知的

中的所有音频文件数据浏览器现在与内容标签的名字。中选择的音频文件数据浏览器并确认它是一个音乐文件,单击。属性的值内容标签,点击未知的文件标签面板并选择音乐从下拉菜单中。

所选音频文件现在具有标签名称内容与价值音乐分配给它。您可以继续设置内容属性中的文件,为每个文件添加数据浏览器然后从文件标签面板。

区域层次上的标签

您可以手动或使用提供的自动算法定义区域级标签。音频工具箱包括语音检测和语音到文本转录的自动标记算法。

请注意

若要启用语音到文本的自动转录,必须下载并设置“语音转录功能。下载并设置语音到文本的转录功能后,即可使用从语音到文本自动化算法显示为工具条上的一个选项。

选择Counting-16-44p1-mono-15secs.wav数据浏览器

要创建表示是否检测到语音的区域级标签,首先选择语音检测器自动化部分。控件可以控制语音检测算法窗口长度(秒)而且合并区域(秒)参数。语音检测算法采用默认参数。若要创建ROI标签并标记所选音频文件的区域,请选择运行

关闭语音检测器选项卡。您可以更正或微调自动生成的SpeechDetected通过从感兴趣区域栏中选择感兴趣区域,然后拖动该区域的边缘。ROI栏直接位于ROI标签的右侧。选中区域后,单击只播放所选区域,使您能够验证所选区域是否捕获了所有相关的听觉信息。

如果您设置了语音转文本服务,请选择从语音到文本自动化部分。您可以使用特定于所选服务的名称-值对选项控制语音到文本的转录。本例使用IBM®服务,并且不指定其他选项。

从转录服务返回的ROI标签是带有开始点和结束点的字符串。起始点和结束点与人工校正语音检测区域的起始点和结束点不完全对应。的端点可以进行修正SpeechContent通过选择区域,然后拖动区域的边缘来实现ROI标签。抄写服务误将单词“two”归类为“to”,“four”归类为“for”,“ten”归类为“then”。您可以通过选择区域然后输入新字符串来更正字符串。

单击,创建另一个区域级标签ROI标签面板。集标签名称VUV,设置数据类型分类,类别表达了而且无声的

默认情况下,波形查看器显示整个文件。若要显示用于缩放和平移的工具,请将鼠标悬停在图的右上角。放大音频文件的前五秒。

当您在图中选择一个区域,然后将鼠标悬停在任意两个ROI条上时,该区域的阴影就会出现。将选定的区域分配给类别表达了,点击一个SpeechContent标签栏。悬停在VUV标签栏,然后单击阴影并选择表达了

接下来的两个单词,“two”和“three”,既包括有声,也包括无声。选择图上的每个语音区域,将鼠标悬停在VUV标签栏上,并为该区域选择正确的类别。

导出标签定义

您可以将标签定义导出为MAT文件或MATLAB脚本。维护标签定义可以在用户和会话之间保持一致的标签。选择出口>标签定义>到文件

的数组保存标签signalLabelDefinition对象。在下一个会话中,您可以通过选择导入标签定义进口>标签定义>从文件

导出带标签的音频数据

您可以将标记的信号集导出到文件或工作区。选择出口>标签>到工作空间

音频贴标签机创建一个labeledSignalSet对象命名labeledSet_HHMMSS,在那里HHMMSS以小时、分钟和秒为单位创建对象的时间。

labeledSet_104620
labeledSet_104620 = labeledSignalSet with properties: Source: {29×1 cell} NumMembers: 29 TimeInformation: "inherent" Labels: [29×4 table] Description: ""使用labelDefinitionsHierarchy查看标签和子标签的列表。使用setLabelValue向集合中添加数据。

创建的标签保存为表,并保存到标签财产。

labeledSet_142356。标签
ans = 29×4表内容SpeechDetected SpeechContent VUV  ________ ______________ _____________ ___________ C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ Ambiance-16-44p1-mono-12secs.wav氛围{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ AudioArray-16-16-4channels-20secs.wav氛围{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ ChurchImpulseResponse-16-44p1-mono-5secs.wav未知{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\点击- 16 - 44 - p1 - mono - 0.2 - secs.wav氛围{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ Counting-16-44p1-mono-15secs.wav演讲{10×2表}{10×2表}{5×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ Engine-16-44p1-stereo-20sec.wav氛围{0×2表}{0×2表}}{0×2表C: \程序文件\ MATLAB工具箱\ R2019b \ \音响\ samples \ FemaleSpeech-16-8-mono-3secs.wav演讲{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ FunkyDrums-44p1-stereo-25secs.mp3音乐{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ FunkyDrums-48-stereo-25secs.mp3音乐{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ Heli_16ch_ACN_SN3D.wav氛围{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ JetAirplane-16-11p025-mono-16secs.wav氛围{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ Laughter-16-8-mono-4secs.wav氛围{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ mainstreetone - 24 - 96立体声- 63 secs.wav氛围{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ NoisySpeech-16-22p5-mono-5secs.wav演讲{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\彩虹- 16 - 8 mono - 114 secs.wav演讲{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ rainbownoisy - 16 - 8 mono - 114 secs.wav演讲{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ randomoscthree - 24 - 96立体声- 13秒。Aif音乐{0×2表}{0×2表}{0×2表}C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\RockDrums-44p1-stereo-11secs.mp3 music { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\RockDrums-48-stereo-11secs.mp3 music { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\RockGuitar-16-44p1-stereo-72secs.wav music { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\RockGuitar-16-96-stereo-72secs.flac music { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\SoftGuitar-44p1_mono-10mins.ogg music { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\SpeechDFT-16-8-mono-5secs.wav speech { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\TrainWhistle-16-44p1-mono-9secs.wav ambience { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\Turbine-16-44p1-mono-22secs.wav ambience { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\WashingMachine-16-44p1-stereo-10secs.wav ambience { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\WashingMachine-16-8-mono-1000secs.wav ambience { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\WashingMachine-16-8-mono-200secs.wav ambience { 0×2 table} { 0×2 table} {0×2 table} C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\WaveGuideLoopOne-24-96-stereo-10secs.aif music { 0×2 table} { 0×2 table} {0×2 table}

与标签关联的文件名作为单元格数组保存到财产。

labeledSet_104620。源
ans = 29×1单元阵列{“C: \ Program Files \ MATLAB工具箱\ R2019b \ \音响\ samples \ Ambiance-16-44p1-mono-12secs.wav’}{“C: \ Program Files \ MATLAB工具箱\ R2019b \ \音响\ samples \ AudioArray-16-16-4channels-20secs.wav’}{“C: \ Program Files \ MATLAB工具箱\ R2019b \ \音响\ samples \ ChurchImpulseResponse-16-44p1-mono-5secs.wav’}{“C: \ Program Files \ MATLAB工具箱\ R2019b \ \音响\ samples \点击- 16 - 44 - p1 - mono - 0.2——secs.wav}{“C: \ Program Files \ MATLAB工具箱\ R2019b \ \音响\ samples \ Counting-16-44p1-mono-15secs.wav '}{'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\ engine -16- 44p2 -stereo-20sec.wav'} {'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\ femalespech -16-8-mono-3sec .wav'} {'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\ funkydrums - 44p2 -stereo-25sec .mp3'} {'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\ funkydrums -48-stereo-25sec .mp3'} {'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\Heli_16ch_ACN_SN3D.wav'} {'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\Heli_16ch_ACN_SN3D.wav'} {'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\Heli_16ch_ACN_SN3D.wav'} {'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\Heli_16ch_ACN_SN3D.wav'} {'C:\程序文件\MATLAB\R2019b\工具箱\音频\样本\Heli_16ch_ACN_SN3D.wav'文件\MATLAB\R2019b\toolbox\音频\samples\ jetaircraft -16-11p025-mono-16sec .wav'} {'C:\程序文件\MATLAB\R2019b\toolbox\音频\samples\ mainstreetone -24-96-stereo-63sec .wav'} {'C:\程序文件\MATLAB\R2019b\toolbox\音频\samples\ noisyvoice -16-22p5-mono-5sec .wav'} {'C:\程序文件\MATLAB\R2019b\toolbox\音频\samples\ rainbow -16-8-mono-114sec .wav'} {'C:\程序文件\MATLAB\R2019b\toolbox\audio\samples\ rainbow -16-8-mono-114sec .wav'} {'C:\程序文件\MATLAB\R2019b\toolbox\audio\samples\ rainbow -16-8-mono-114sec .wav'文件\MATLAB\R2019b\toolbox\audio\samples\ rainbownoise -16-8-mono-114sec .wav'} {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\ randomosc3 -24-96-stereo-13secs。如果'}{'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\RockDrums-44p1-stereo-11secs.mp3' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\RockDrums-48-stereo-11secs.mp3' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\RockGuitar-16-44p1-stereo-72secs.wav' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\RockGuitar-16-96-stereo-72secs.flac' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\SoftGuitar-44p1_mono-10mins.ogg' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\SpeechDFT-16-8-mono-5secs.wav' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\TrainWhistle-16-44p1-mono-9secs.wav' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\Turbine-16-44p1-mono-22secs.wav' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\WashingMachine-16-44p1-stereo-10secs.wav' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\WashingMachine-16-8-mono-1000secs.wav' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\WashingMachine-16-8-mono-200secs.wav' } {'C:\Program Files\MATLAB\R2019b\toolbox\audio\samples\WaveGuideLoopOne-24-96-stereo-10secs.aif' }

为深度学习工作流准备音频数据存储

要继续进入深度学习或机器学习工作流,请使用audioDatastore。使用音频数据存储使您能够应用机器学习应用程序常见的功能,例如splitEachLabelsplitEachLabel允许您将数据分割为训练集和测试集。

为标记的信号集创建一个音频数据存储。的第一个参数指定音频文件的位置audioDatastore并设置标签的属性audioDatastore标签标记信号集的属性。

ADS = audioDatastore(labeledSet_104620。源,“标签”labeledSet_104620.Labels)

ADS = audioDatastore属性:Files:{'…\toolbox\audio\samples\ ambient -16-44p1-mono- 12seconds .wav';’……\工具箱\音响\ samples \ AudioArray-16-16-4channels-20secs.wav”;\toolbox\audio\samples\ churchimpulseresponse -16-44p1-mono- 5seconds .wav标签:29 × 4表AlternateFileSystemRoots: {} OutputDataType: 'double'

调用countEachLabel并指定内容表变量来计算标记为的文件数气氛音乐演讲,或未知的

countEachLabel(广告,“TableVariable”“内容”
ans = 4×2 table内容计数________ _____氛围13音乐9演讲6未知1

有关在机器学习或深度学习工作流中使用标记音频数据的示例,请参见:

另请参阅

应用程序

对象