增强的音频数据
使用特定于音频的增强技术来扩大音频数据集,如音高变化、时标修改、时移、噪声添加和音量控制。您可以创建级联或并行增强管道,以确定性或概率性地应用多种算法。
创建具有默认属性值的音频数据增强因子的对象。8月
= audioDataAugmenter ()
指定的非默认属性8月
= audioDataAugmenter(名称,值
)8月
使用一个或多个名称-值对参数。
AugmentationMode
- - - - - -增强模式“顺序”
(默认)|“独立”
增加模式,指定为“顺序”
要么“独立”
。
“顺序”
- 增强算法被顺序地施加(串联)。
“独立”
- 增强算法独立地施加(并行)。
数据类型:烧焦
|字符串
AugmentationParameterSource
- - - - - -的增强参数来源“随机”
(默认)|“指定”
增加参数的源,指定为“随机”
要么“指定”
。
“随机”
- 增强算法使用概率参数和范围参数概率施加。
例如,为了创建一个audioDataAugmenter
这就需要使用加速因子来进行时间拉伸0.5
和1.5
在命令窗口中输入以下内容的概率为60%:
8月= audioDataAugmenter (“AugmentationParameterSource”,“随机”,...“TimeStretchProbability”,0.6,...“SpeedupFactorRange”[0.5,1.5]);
0.5
和一个最大值1.5
。“指定”
- 增强算法确定性地使用逻辑参数和指定的参数值施加。例如,为了创建一个audioDataAugmenter
适用使用时间伸缩1.5
加速因子与100%的概率,输入以下在命令窗口:
8月= audioDataAugmenter (“AugmentationParameterSource”,“指定”,...'ApplyTimeStretch',真正,...'SpeedupFactor',1.5);
数据类型:烧焦
|字符串
NumAugmentations
- - - - - -增强信号,以输出数1
(默认)|正整数输出的增强信号的个数,指定为正整数。
要启用这个特性,集AugmentationParameterSource至“随机”
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
TimeStretchProbability
- - - - - -应用时间拉伸的概率0.5
(默认)|在[0,1]范围内的标量应用时间扩展的概率,指定为[0,1]范围内的标量。设置概率为1
每次打电话都要花时间伸展身体增加
。设置概率为0
跳过每次打电话都要拉伸的时间增加
。
要启用这个特性,集AugmentationParameterSource至“随机”
和AugmentationMode至“顺序”
。
数据类型:单
|双
SpeedupFactorRange
- - - - - -时间范围拉伸加速因子(0.8 - 1.2)
(默认)|正非递减值的二元行向量时间扩展加速因子的范围,指定为具有正的非递减值的双元素行向量。
要启用这个特性,集AugmentationParameterSource至“随机”
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
ApplyTimeStretch
- - - - - -申请时间伸缩真正
(默认)|假
SpeedupFactor
- - - - - -时间拉伸加速因子0.8
(默认)|真正的正标量|真正积极的向量时间伸缩加速比,指定为正实值的标量或矢量。
要启用这个特性,集AugmentationParameterSource至“指定”
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
PitchShiftProbability
- - - - - -俯仰偏移的概率0.5
(默认)|在[0,1]范围内的标量应用音高偏移的概率,指定为[0,1]范围内的标量。设置概率为1
采用间距每次调用时移增加
。设置概率为0
避免每次通话时的音高转换增加
。
要启用这个特性,集AugmentationParameterSource至“随机”
和AugmentationMode至“顺序”
。
数据类型:单
|双
SemitoneShiftRange
- - - - - -节距变化范围(半音)(2,2)
(默认)|非递减值的两个元素的行向量半音中基音偏移的范围,指定为非递减值的二元行向量。
要启用这个特性,集AugmentationParameterSource至“随机”
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
ApplyPitchShift
- - - - - -应用移调真正
(默认)|假
SemitoneShift
- - - - - -音高变化(半音来)-3
(默认)|真正的标量|真正的向量半音的基音偏移,指定为实标量或矢量。
要启用这个特性,集AugmentationParameterSource至“指定”
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
VolumeControlProbability
- - - - - -应用音量控制的概率0.5
(默认)|在[0,1]范围内的标量应用音量控制的概率,指定为[0,1]范围内的标量。设置概率为1
在每次通话时应用音量控制增加
。设置概率为0
在每次呼叫时跳过音量控制增加
。
要启用这个特性,集AugmentationParameterSource至“随机”
和AugmentationMode至“顺序”
。
数据类型:单
|双
VolumeGainRange
- - - - - -音量增益范围(dB)(3、3)
(默认)|非递减值的两个元素的行向量以分贝表示的体积增益范围,指定为非递减值的二元行向量。
要启用这个特性,集AugmentationParameterSource至“随机”
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
ApplyVolumeControl
- - - - - -应用音量增益真正
(默认)|假
VolumeGain
- - - - - -卷获得(dB)-3
(默认)|纯量|向量音量增益以dB为单位,指定为标量或矢量。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
AddNoiseProbability
- - - - - -应用噪声加法的概率0.5
(默认)|在[0,1]范围内的标量应用高斯白噪声加法的概率,指定为[0,1]范围内的标量。设置概率为1
在你每次打电话的时候增加噪音增加
。设置概率为0
跳过每次调用时的噪声增加增加
。
要启用这个特性,集AugmentationParameterSource至“随机”
和AugmentationMode至“顺序”
。
数据类型:单
|双
SNRRange
- - - - - -噪音除了SNR的范围(dB)[0,10]
(默认)|非递减值的两个元素的行向量分贝中噪声附加信噪比的范围,指定为非递减值的二元行向量。
要启用这个特性,集AugmentationParameterSource至'范围'
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
ApplyAddNoise
- - - - - -应用噪声之外真正
(默认)|假
信噪比
- - - - - -噪声除了SNR(分贝)5
(默认)|纯量|向量噪声添加SNR以dB,指定为标量或矢量。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
TimeShiftProbability
- - - - - -应用时移的概率0.5
(默认)|在[0,1]范围内的标量施加时间偏移的概率,指定为在[0,1]的范围内的标量。设置概率为1
在每次通话时应用时移增加
。设置属性0
跳过时间每次调用时移增加
。
时移对时域音频数据进行循环移位。
要启用这个特性,集AugmentationParameterSource至“随机”
和AugmentationMode至“顺序”
。
数据类型:单
|双
TimeShiftRange
- - - - - -时移范围[-5E-3,5e3]
(默认)|非递减值的二元行向量。以秒为单位的时移范围,指定为非递减值的双元素行向量。
要启用这个特性,集AugmentationParameterSource至“随机”
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
ApplyTimeShift
- - - - - -申请时移真正
(默认)|假
TimeShift
- - - - - -时移(s)5 e - 3
(默认)|纯量|向量时移(以秒为单位),指定为标量或向量。
要启用这个特性,集AugmentationParameterSource至“指定”
。
数据类型:单
|双
|INT8
|INT16
|INT32
|int64
|uint8
|UINT16
|uint32
|UINT64
addAugmentationMethod |
添加自定义增强方法 |
removeAugmentationMethod |
移除自定义增强方法 |
增加 |
增强的音频数据 |
听一段音频信号。
[AUDIOIN,FS] = audioread(“Counting-16-44p1-mono-15secs.wav”);声音(AUDIOIN,FS)
创建一个audioDataAugmenter
施加时间拉伸,音量控制,和在级联时移对象。应用各有80%概率的增广。组NumAugmentations
至5
输出五个独立的增强信号。若要跳过每个递增项的基音偏移和噪声相加,请将相应的概率设置为0
。为每个相关的增强算法定义参数范围。
增量= audioDataAugmenter (...“AugmentationMode”,“顺序”,...“NumAugmentations”5,......“TimeStretchProbability”,0.8,...“SpeedupFactorRange”[1.3,1.4],......“PitchShiftProbability”0,......“VolumeControlProbability”,0.8,...“VolumeGainRange”,5,5],......“AddNoiseProbability”0,......“TimeShiftProbability”,0.8,...“TimeShiftRange”,(-500 e - 3500 e - 3])
增量= audioDataAugmenter属性:AugmentationMode:“顺序”AugmentationParameterSource:“随机”NumAugmentations: 5 TimeStretchProbability: 0.8000 SpeedupFactorRange: [1.3000 - 1.4000] PitchShiftProbability: 0 VolumeControlProbability: 0.8000 VolumeGainRange: 5 [5] AddNoiseProbability: 0 TimeShiftProbability: 0.8000 TimeShiftRange: [-0.5000 - 0.5000]
调用增加
在音频上创建5个扩展。扩增的音频在一个带有变量的表中返回音频
和AugmentationInfo
。表中的行数由NumAugmentations
。
数据=扩充(增强因子,AUDIOIN,FS)
data =5×2表音频AugmentationInfo _________________ ________________ {685056x1双} [1x1的结构] {685056x1双} [1x1的结构] {505183x1双} [1x1的结构] {685056x1双} [1x1的结构] {490728x1双} [1x1的结构]
在当前增强管道中,从指定范围内随机分配增强参数。要确定用于增强的确切参数,请检查AugmentationInfo
。
augmentationToInspect =4;data.AugmentationInfo (augmentationToInspect)
ans =结构体字段:加速因子:1体积增益:4.3399时间移:0.4502
聆听您正在检查的扩展。标绘原始信号和增强信号的时间表示。
增加= data.Audio {augmentationToInspect};声音(增强,fs) t = (0:(numel(audioIn)-1))/fs;taug =(0:(元素个数(增加)1))/ fs;情节(t, audioIn taug增大)传说(“原始音频”,“增强音频”)ylabel(“振幅”)xlabel(“时间(s)”)
听一段音频信号。
[AUDIOIN,FS] = audioread(“Counting-16-44p1-mono-15secs.wav”);声音(AUDIOIN,FS)
创建一个audioDataAugmenter
对象,该对象在级联中应用时间拉伸、音调变化和噪声损坏。将时间拉伸加速因子指定为0.9
,1.1
,1.2
。指定音高在半音作为移位2
,1
,1
,2
。指定噪声破坏信噪比为10
dB和15
dB。
增量= audioDataAugmenter (...“AugmentationMode”,“顺序”,...“AugmentationParameterSource”,“指定”,...“SpeedupFactor”(0.9,1.1,1.2),...“ApplyTimeStretch”,真正,...“ApplyPitchShift”,真正,...“SemitoneShift”,(2,1,1,2),...“信噪比”,[10,15],...“ApplyVolumeControl”,假,...“ApplyTimeShift”,假)
增强因子= audioDataAugmenter与属性:AugmentationMode: “连续” AugmentationParameterSource: “指定” ApplyTimeStretch:1个SpeedupFactor:[0.9000 1.1000 1.2000] ApplyPitchShift:1 SemitoneShift:[-2 -1 1 2] ApplyVolumeControl:0 ApplyAddNoise:1个SNR:[10 15] ApplyTimeShift:0
调用增加
在音频上创建24个扩展。递增表示指定递增参数的每组组合(
)。
数据=扩充(增强因子,AUDIOIN,FS)
data =24×2表音频AugmentationInfo _________________ ________________ {761243x1双} [1x1的结构] {622888x1双} [1x1的结构] {571263x1双} [1x1的结构] {761243x1双} [1x1的结构] {622888x1双} [1x1的结构] {571263x1双} [1x1的结构] {761243x1双} [1x1的结构] {622888x1双} [1x1的结构] {571263x1双} [1x1的结构] {761243x1双} [1x1的结构] {622888x1双} [1x1的结构] {571263x1双} [1x1的结构]{761243x1双} [1x1的结构] {622888x1双} [1x1的结构] {571263x1双} [1x1的结构] {761243x1双} [1x1的结构]⋮
可以使用AugmentationInfo
表变量。
augmentationToInspect =1;data.AugmentationInfo (augmentationToInspect)
ans =结构体字段:SpeedupFactor:0.9000 SemitoneShift:-2信噪比:10
聆听您正在检查的扩展。绘制原始信号和增强信号的时域表示。
增加= data.Audio {augmentationToInspect};声音(增强,fs) t = (0:(numel(audioIn)-1))/fs;taug =(0:(元素个数(增加)1))/ fs;情节(t, audioIn taug增大)传说(“原始音频”,“增强音频”)ylabel(“振幅”)xlabel(“时间(s)”)
听一段音频信号。
[AUDIOIN,FS] = audioread(“Counting-16-44p1-mono-15secs.wav”);
创建一个audioDataAugmenter
对象,该对象应用噪声破坏,并在并行分支中进行时间偏移。对于噪声损坏分支,随机应用在该范围内具有信噪比的噪声0
dB来20
dB。对于时移分支,在-范围内随机应用时移300
女士,300
多发性硬化症。适用的增强2倍为每个分支,4个总扩充。
增量= audioDataAugmenter (...“AugmentationMode”,“独立”,...“AugmentationParameterSource”,“随机”,...“NumAugmentations”,2,...“ApplyTimeStretch”,假,...“ApplyPitchShift”,假,...“ApplyVolumeControl”,假,...“SNRRange”(0,20),...“TimeShiftRange”,(-300 e - 3300 e - 3])
来源:“随机”NumAugmentations: 2 ApplyTimeStretch: 0 ApplyPitchShift: 0 ApplyVolumeControl: 0 ApplyAddNoise: 1 SNRRange: [0 20] ApplyTimeShift: 1 TimeShiftRange: [-0.3000 0.3000]
调用增加
在音频上创建3个扩展。
数据=扩充(增强因子,AUDIOIN,FS);
可以使用AugmentatioInfo
表变量。
augmentationToInspect =4;data.AugmentationInfo {augmentationToInspect}
ans =结构体字段:TimeShift: 0.0016
听你正在检查的音频。绘制原始信号和增强信号的时域表示。
增加= data.Audio {augmentationToInspect};声音(增强,fs) t = (0:(numel(audioIn)-1))/fs;taug =(0:(元素个数(增加)1))/ fs;情节(t, audioIn taug增大)传说(“原始音频”,“增强音频”)ylabel(“振幅”)xlabel(“时间(s)”)
听一段音频信号。
[AUDIOIN,FS] = audioread(“Counting-16-44p1-mono-15secs.wav”);
创建一个audioDataAugmenter
对象,该对象在并行分支中应用音量控制、噪声破坏和时间偏移。
增量= audioDataAugmenter (...“AugmentationMode”,“独立”,...“AugmentationParameterSource”,“指定”,...“ApplyTimeStretch”,假,...“ApplyPitchShift”,假,...“VolumeGain”,2,...“信噪比”0,...“TimeShift”,2)
增强因子= audioDataAugmenter与属性:AugmentationMode: “独立” AugmentationParameterSource: “指定” ApplyTimeStretch:0 ApplyPitchShift:0 ApplyVolumeControl:1 VolumeGain:2 ApplyAddNoise:1 SNR:0 ApplyTimeShift:1时光平移:2
调用增加
在音频上创建3个扩展。
数据=扩充(增强因子,AUDIOIN,FS)
data =3×2表音频AugmentationInfo _________________ ________________ {685056x1双} {1x1的结构} {685056x1双} {1x1的结构} {685056x1双} {1x1的结构}
可以使用AugmentatioInfo
表变量。
augmentationToInspect =3.;data.AugmentationInfo {augmentationToInspect}
ans =结构体字段:TimeShift: 2
听你正在检查的音频。绘制原和增强信号的时域表示。
增加= data.Audio {augmentationToInspect};声音(增强,fs) t = (0:(numel(audioIn)-1))/fs;taug =(0:(元素个数(增加)1))/ fs;情节(t, audioIn taug增大)传说(“原始音频”,“增强音频”)ylabel(“振幅”)xlabel(“时间(s)”)
的audioDataAugmenter
万博1manbetx支持增强数据存储区,包括多个工作流:
离线增强
使用高数组的增强
使用变换数据存储增强
在每个工作流程,首先创建一个音频数据存储到指向您的音频数据。在这个例子中,将创建一个音频数据存储,它指向音频样本包含音频工具箱™。计数数据集中的文件数。
文件夹= fullfile (matlabroot,“工具箱”,“音频”,“样本”);广告= audioDatastore(文件夹)
ADS = audioDatastore具有属性:文件:{ '... \ MATLAB \工具箱\音频\样本\气氛-16-44p1单 - 12secs.wav';'... \ MATLAB \工具箱\音频\样本\ AudioArray-16-16-4channels-20secs.wav';'... \工具箱\音频\样本\ ChurchImpulseResponse-16-44p1单 - 5secs.wav' ......和26多} AlternateFileSystemRoots:{} OutputDataType: '双师型' 标签:{}
numFilesInDataset =元素个数(ADS.Files)
numFilesInDataset = 29
创建一个audioDataAugmenter
适用随机顺序扩充。组NumAugmentations
至2
。
8月= audioDataAugmenter ('NumAugmentations',2)
八月= audioDataAugmenter与属性:AugmentationMode: '顺序' AugmentationParameterSource: '随机' NumAugmentations:2 TimeStretchProbability:0.5000 SpeedupFactorRange:[0.8000 1.2000] PitchShiftProbability:0.5000 SemitoneShiftRange:[-2 2] VolumeControlProbability:0.5000 VolumeGainRange:[-3 3] AddNoiseProbability:0.5000 SNRRange:[0 10] TimeShiftProbability:0.5000 TimeShiftRange:[-0.0050 0.0050]
离线增大
为了增强音频数据集,创建每个文件的两个增扩,然后写入扩充为WAV文件。
而hasdata(ADS) [audioIn,info] = read(ADS);data =增加(8月audioIn info.SampleRate);[~,fn] = fileparts (info.FileName);为I = 1:大小(数据,1)= augmentedAudio data.Audio {I};%如果增大使音频信号的值大于-1和1,%在写入时将音频信号正常化,以避免剪切。如果马克斯(abs (augmentedAudio), [],“所有”) 1 augmentedAudio = augmentedAudio/max(abs(augmentedAudio),[],“所有”);结束audiowrite (sprintf ('%s_aug%d.wav',fn)、augmentedAudio info.SampleRate)结束结束
创建一个audioDatastore
它指向扩充的数据集,并确认数据集中的文件数量是原始文件数量的两倍。
augmentedADS = audioDatastore(PWD)
augmentedADS = audioDatastore具有属性:文件:{ '... \实例\音频ex28074079 \气氛-16-44p1单 - 12secs_aug1.wav';'... \实例\音频ex28074079 \气氛-16-44p1单 - 12secs_aug2.wav';'... \例子\音频ex28074079 \ AudioArray-16-16-4channels-20secs_aug1.wav' ......和55多} AlternateFileSystemRoots:{} OutputDataType: '双师型' 标签:{}
numFilesInAugmentedDataset =元素个数(augmentedADS.Files)
numFilesInAugmentedDataset = 58
增加使用高大阵列
当使用高数组扩充数据集时,应该以一致的速率采样到扩充器的输入数据。将原始音频数据集子集设置为只包含采样率为44.1 kHz的文件。大多数数据集已经被清理,以具有一致的采样率。
keepFile = cellfun(@(X)含有(X,'44p1'),ADS.Files);ads44p1 =子集(ADS,keepFile);FS = 44.1e3;
转换的音频数据存储到一个高大的阵列。高
当你明确要求使用这些阵列只计算收集
。MATLAB®自动优化排队计算,减少通过数据的次数。如果您拥有并行计算工具箱™,则可以将计算分散到多台计算机上。音频数据表示为米-乘1高单元数组,其中米是音频数据存储中的文件数。
adsTall =高(ads44p1)
使用“本地”配置文件启动并行池(parpool)…adsTall = M×1高cell array{539648×1 double}{227497×1 double}{8000×1 double}{685056×1 double}{882688×2 double}{1115760×2 double}{505200×2 double}{3195904×2 double}:::
定义cellfun
函数,以便将增量应用于tall数组的每个单元格。调用收集
来计算高数组。
augTall = cellfun (@ (x)增加(8月x, fs), adsTall,“UniformOutput”、假);augmentedDataset =收集(augTall)
评估使用并行池“本地”高表达: - 1通过1:已完成在1分34秒评价1分34秒完成
augmentedDataset =12×1单元阵列{2×2表} {2×2表} {2×2表} {2×2表} {2×2表} {2×2表} {2×2表} {2×2表} {2×2表} {2×2表} {2×2表} {2×2表}
将扩增后的数据集返回为numFiles-by-1单元数组,其中numFiles是数据存储中的文件数量。单元格数组的每个元素都是numAugmentationsPerFile-by-2表,其中numAugmentationsPerFile为每个文件返回的扩展数。
numFiles =元素个数(augmentedDataset)
numFiles = 12
numAugmentationsPerFile =尺寸(augmentedDataset {1},1)
numAugmentationsPerFile = 2
使用转换数据存储扩充
当您使用转换数据存储训练你的机器学习的应用程序就可以执行在线数据增强。调用转变
创建在阅读应用数据增强新的数据存储。
transformADS =变换(ADS,@(X,信息)扩充(AUG,X,信息),“IncludeInfo”,真正)
transformADS = TransformedDatastore与属性:UnderlyingDatastore:[1×1 audioDatastore]变换:{@(X,信息)扩充(AUG,X,信息)} IncludeInfo:1
调用读
从转换数据存储中返回扩展后的第一个文件。
augmentedRead =读(transformADS)
augmentedRead =2×2表音频AugmentationInfo _________________ ___________{539648×1双}[1×1 struct]{586683×1双}(1×1结构)
您还可以扩大能力audioDataAugmenter
通过添加自定义增强方法。
听一段音频信号。
[AUDIOIN,FS] = audioread(“Counting-16-44p1-mono-15secs.wav”);声音(AUDIOIN,FS)
创建一个audioDataAugmenter
对象。设置应用白噪声的概率为0
。
增量= audioDataAugmenter ('AddNoiseProbability',0)
增量= audioDataAugmenter属性:AugmentationMode:“顺序”AugmentationParameterSource:“随机”NumAugmentations: 1 TimeStretchProbability: 0.5000 SpeedupFactorRange: [0.8000 - 1.2000] PitchShiftProbability: 0.5000 SemitoneShiftRange: [2 2] VolumeControlProbability: 0.5000 VolumeGainRange: 3 [3] AddNoiseProbability: 0 TimeShiftProbability: 0.5000 TimeShiftRange: [-0.0050 - 0.0050]
指定应用粉色噪声的自定义增强算法。的AddPinkNoise
算法被添加到增压器
属性。
algorithmName ='AddPinkNoise';algorithmHandle = @ (x) x + pinknoise(大小(x),“喜欢”,x);addAugmentationMethod(增压器、algorithmName algorithmHandle)增压器
增量= audioDataAugmenter属性:AugmentationMode:“顺序”AugmentationParameterSource:“随机”NumAugmentations: 1 TimeStretchProbability: 0.5000 SpeedupFactorRange: [0.8000 - 1.2000] PitchShiftProbability: 0.5000 SemitoneShiftRange: [2 2] VolumeControlProbability: 0.5000 VolumeGainRange: 3 [3] AddNoiseProbability: 0 TimeShiftProbability: 0.5000 TimeShiftRange: [-0.0050 - 0.0050]AddPinkNoiseProbability: 0.5000
设置添加粉红色噪声的概率1
。
增压器。AddPinkNoiseProbability = 1
增量= audioDataAugmenter属性:AugmentationMode:“顺序”AugmentationParameterSource:“随机”NumAugmentations: 1 TimeStretchProbability: 0.5000 SpeedupFactorRange: [0.8000 - 1.2000] PitchShiftProbability: 0.5000 SemitoneShiftRange: [2 2] VolumeControlProbability: 0.5000 VolumeGainRange: 3 [3] AddNoiseProbability: 0 TimeShiftProbability: 0.5000 TimeShiftRange: [-0.0050 - 0.0050]AddPinkNoiseProbability: 1
增强原始信号,并听取了结果。检查的应用的增强算法参数。
数据=扩充(增强因子,AUDIOIN,FS);声音(data.Audio {1},FS)data.AugmentationInfo(1)
ans =结构体字段:加速因子:1半码:0体积增益:2.4803时间移:-0.0022添加pinknoise:“应用”
绘制原始信号和增强信号的mel谱图。
melSpectrogram (audioIn fs)标题(“原始信号”)
melSpectrogram(data.Audio {1},FS)标题(增强信号的)
的audioDataAugmenter
对象使您能够将扩展管道配置为确定性或概率性AugmentationParameterSource财产。您也可以选择使用串联或并联应用扩充AugmentationMode财产。下面几节描述可以创建的管道和适用于每个体系结构的属性。
若要将增强定义为概率应用增强的序列,请设置AugmentationParameterSource至“随机”
和AugmentationMode至“顺序”
。
应用扩展的顺序总是相同的。如果指定自定义算法,它们将按指定的顺序应用于序列的末尾。
这条管线的配置,这些参数适用:
增强方法 | 参数 |
---|---|
段时间 | |
改变音高 | |
控制音量 | |
添加噪声 | |
改变时间 |
如果您指定NumAugmentations如大于1,则该对象适用NumAugmentations
并行随机顺序递增。应用增强的概率和任何概率确定的参数的值是相互独立的。
要定义你的隆胸作为确定性应用于扩充的顺序,设置AugmentationParameterSource至“指定”
和AugmentationMode至“顺序”
。
应用扩展的顺序总是相同的。如果指定自定义算法,它们将按指定的顺序应用于序列的末尾。
这条管线的配置,这些参数适用:
增强方法 | 参数 |
---|---|
段时间 | |
改变音高 | |
控制音量 | |
添加噪声 | |
改变时间 |
如果将增强方法指定为向量,则向量的每个元素在增强管道中创建一个单独的分支。例如,下面的对象创建了一个增强管道,它会导致四个不同的增强:
8月= audioDataAugmenter (“AugmentationMode”,“顺序”,...“AugmentationParameterSource”,“指定”,...“SpeedupFactor”[0.8,1.2],...“VolumeGain”(3,1))
8 = audioDataAugmenter with properties: AugmentationMode: "sequential" AugmentationParameterSource: "specify" ApplyTimeStretch: 1 SpeedupFactor: [0.8000 1.2000] ApplyPitchShift: 1 SemitoneShift: -3 ApplyVolumeControl: 1 VolumeGain: [-3 -1] ApplyAddNoise: 1 SNR: 5 ApplyTimeShift: 1 TimeShift: 0.0050
到定义为增强独立地施加随机确定参数增扩,集AugmentationParameterSource至“随机”
和AugmentationMode至“独立”
。
这条管线的配置,这些参数适用:
增强方法 | 参数 |
---|---|
段时间 | |
改变音高 | |
控制音量 | |
添加噪声 | |
改变时间 |
如果您指定NumAugmentations如大于1,则该对象适用NumAugmentations
平行随机独立增量。概率确定的任何参数的值都是独立的。
要定义为应用确定性与确定性参数独立扩充你的增强,集AugmentationParameterSource至“指定”
和AugmentationMode至“独立”
。
这条管线的配置,这些参数适用:
增强方法 | 参数 |
---|---|
段时间 | |
改变音高 | |
控制音量 | |
添加噪声 | |
改变时间 |
如果将增强方法指定为向量,则向量的每个元素在增强管道中创建一个单独的分支。例如,下面的对象创建一个增强管道的结果在七个独立的扩充:
8月= audioDataAugmenter (“AugmentationMode”,“独立”,...“AugmentationParameterSource”,“指定”,...“SpeedupFactor”[0.8,1.2],...“VolumeGain”(3,1))
8 = audioDataAugmenter with properties: AugmentationMode: "independent" AugmentationParameterSource: "指定" ApplyTimeStretch: 1 SpeedupFactor: [0.8000 1.2000] ApplyPitchShift: 1半移:-3 ApplyVolumeControl: 1 volume megain: [-3 -1] ApplyAddNoise: 1 SNR: 5 ApplyTimeShift: 1 TimeShift: 0.0050
[1]萨拉蒙,贾斯汀和胡安巴勃罗贝洛。深度卷积神经网络和环境声音分类的数据扩充。IEEE信号处理快报。2017年第3期,第24卷。
你点击了一个链接,对应于这个MATLAB命令:
在MATLAB命令窗口中输入命令,运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站表现。其他MathWorks国家站点不适合来自您所在位置的访问。