乐器音色迁移下的人声音色相似性度量方法与流程

文档序号:15198155发布日期:2018-08-19 01:54阅读:500来源:国知局

本发明属于歌唱领域的音频信号处理领域,特别是涉及一种乐器音色迁移下的人声音色相似性度量方法。



背景技术:

美国国家标准化研究所对音色做了如下定义,“音色是指声音在听觉上产生的某种属性,听音者能够据此判断两个以同样方式呈现、具有相同音高和响度的声音的不同”。由此,演唱时的人声音色是指当不同的演唱者演唱同一首歌曲时,人们用来判别出具体是哪个演唱者的声音特征。

声学实验中常用声谱图进行声音的分析。声谱图可以显示幅度随频率和时间变化的特性,纵坐标代表频率,横坐标代表时间,幅度的大小用灰颜色的深浅表示或用光谱的不同颜色表示。从声谱图的角度来看,决定音色的因素是泛音的存在与否以及它们的相对强弱。

一直以来有大量的学者对声音信号处理进行研究,希望能够对人声音色的相似性进行度量,但时至今日,学术界对音色这一主观乐音属性的表征和相似度评价仍不存在一个统一的标准。因此,音色的特征表征、度量指标和相似度度量等方面有待继续研究。

目前对于音色的研究主要包括乐器的分类与识别及歌手识别等,主要通过各类音色物理特征及分类模型实现。常见的音色分类的物理特征可以分为时域特征,频域特征及倒频域特征三大类。

时域特征:时域特征反应声音的动态变化。不同音频信号的时域包络都各不相同。为了全面分析乐音,可分为起振、稳态和衰减三个阶段。起振指乐音从无到有的开始部分,稳态是乐音的主要部分,衰减指乐音从有到无的结束部分。乐音的起振和衰减部分持续时间大概是几十毫秒,但是起振阶段对音色的区分有着非常重要的作用。

频域特征:频域分析的尺度不同将会得到不同的频谱。常见的频谱有stft谱及cqt谱。

1)stft谱的滤波器组中心频率成线性上升,每个滤波器的带宽不变,计算公式如下:

其中,x(n)是某一帧的语音信号,w(n)为加窗函数。

2)cqt产生的频谱在频率轴为对数标度,而不是线性标度,且窗口长度随频率的改变而改变,这使得cqt比stft有着更好的性能。cqt的定义形式公式如下:

其中,是窗函数,[g]表示大于等于x的最小整数,fs为采样频率,fk是音阶频率,fk=f0*2k/b

倒频域特征:mel频率倒谱系数(melfrequencycepstrumcoefficient,mfcc)是基于人的听觉感知模型提出的,在乐音、语音分类识别等领域中被证明是最重要的特征之一,人对频域的主观感知划定是非线性的,即fmel=1125log(1+f/700),fmel是以美尔为单位的感知频率,f是以赫兹为单位的实际频率。将信号频谱转换到感知域可以很好的模拟听觉处理的过程。计算mfcc时,先对信号进行分帧、加窗、预加重的预处理,然后把每帧信号进行fft变换变成频域数据后,计算谱线能量,把每帧信号的谱线能量通过mel滤波器,计算在该滤波器中的能量。把通过mel滤波器的谱线能量取对数后计算dct,即得到mfcc。

尽管现有的人声音色相关研究可以比较有效地解决一些歌手识别问题,但是没有对人声音色的相似度进行描述。因此,本专利基于上述分析,训练深度卷积神经网络并进一步对其进行微调,在获取人声音色表征的基础上进一步得到人声音色的相似度。



技术实现要素:

有鉴于此,本发明的目的是提供一种乐器音色迁移下的人声音色相似性度量方法,在对人声音色进行合理表征的基础上,实现人声音色的相似性度量。

本发明采用以下技术方案:一种乐器音色迁移下的人声音色相似性度量方法,其包括如下步骤:步骤s1:获取乐器音频文件,构建并训练深度卷积神经网络模型,得到训练好的idcnn模型;步骤s2:获取人声清唱音频文件,用人声音频数据微调训练好的idcnn模型,得到人声音色的表征模型hdcnn,hdcnn模型输出人声的音色向量;步骤s3:计算不同音色向量之间的余弦度,得到不同人声音色之间的相似性。

在本发明一实施例中,所述步骤s1具体包括以下步骤:步骤s11:把乐器音频文件截取成固定长度的片段;步骤s12:计算每个片段的对数梅尔频谱特征,对数梅尔频谱特征为128维,最终得到43*128大小的特征矩阵,作为训练深度神经网络时的输入矩阵;步骤s13:构建深度卷积神经网络模型,把步骤s12中得到的特征矩阵输入深度卷积神经网络模型进行训练。

在本发明一实施例中,步骤s11中音频文件格式为wav,采样率为22050hz,每个音频长度不等,把音频文件截取成固定长度为1s的片段。

在本发明一实施例中,步骤s13包括以下步骤:步骤s131:按照如下结构构建深度卷积神经网络模型:第一层、第二层使用32个卷积核,尺寸为(3,3),max-pooling为(3,3),输入为43*128大小的矩阵,激活函数为relu;第三层为dropout层,比例为0.25;第四层、第五层使用64个卷积核,尺寸为(3,3),max-pooling为(3,3),激活函数为relu;第六层为dropout层,比例为0.25;第七层、第八层使用128个卷积核,尺寸为(3,3),max-pooling为(3,3),激活函数为relu;第九层为dropout层,比例为0.25;第十层、第十一层使用256个卷积核,尺寸为(3,3),激活函数为relu;第十二层为全局池化层;第十三层为1024个结点的全连接层,激活函数为relu;第十四层为dropout层,比例为0.5;第十五层为分类层,激活函数为softmax;步骤s132:将步骤s12中得到的对数频谱特征矩阵输入深度卷积神经网络模型,采用adam算法对网络进行迭代训练,得到训练好的深度卷积神经网络模型,即idcnn模型。

在本发明一实施例中,所述步骤s2具体包括以下步骤:步骤s21:把人声音频截取成固定长度的片段;步骤s22:计算每个片段的对数梅尔频谱特征,对数梅尔频谱特征为128维,最终得到43*128大小的特征矩阵,作为微调idcnn模型的输入矩阵;步骤s23:对于训练好的idcnn模型,固定其部分参数保持不变,并用步骤s22中得到的特征矩阵微调idcnn模型的其他参数,微调得到的网络模型即为人声音色的表征模型,称为hdcnn模型,模型的第十三层全连接层的输出为人声的音色向量。

在本发明一实施例中,步骤s23包括以下步骤:步骤s231:保持idcnn模型的结构不变,并冻结idcnn模型第一层、第二层的参数不予训练;步骤s232:把步骤s22中得到的特征矩阵作为训练数据,训练idcnn模型中第三层至第十二层的参数,此过程称为微调,微调得到的模型即为人声音色表征模型,称为hdcnn模型;

在本发明一实施例中,步骤s21采用人声分离的方法分离出伴奏声,提取出歌手的清唱声音,去除不包含人声的部分,形成只包含人声的清唱音频,音频格式为wav,采样率为16000hz,每个音频长度不等,把音频文件截取成固定长度为1s的片段。

在本发明一实施例中,步骤s3中设两个不同人声音色向量分别为x=(x1,x2,...,x1024)和y=(y1,y2,...,y1024),均为1024维,按照如下公式计算两者之间的相似度:

计算得到的sim即为不同人声音色之间的相似性,i=1,2…1024。

与现有技术相比,本发明具有如下优点:该方法首先获取数据量充分且均衡的乐器数据集,对数据集中的乐器音频进行预处理,具体包括截取固定长度(1s)、去除静音帧,再计算每个音频128维的对数梅尔频谱特征,得到每个1s音频片段的对数梅尔频谱矩阵,矩阵大小为43*128;把乐器音频片段的对数梅尔频谱特征矩阵作为深度卷积神经网络的输入矩阵,用adam算法训练深度卷积神经网络,得到训练好的idcnn模型;然后再获取人声清唱数据集,采用同样的预处理方式截取人声清唱音频并计算其128维的对数梅尔频谱特征,得到大小为43*128的对数梅尔频谱矩阵,固定idcnn模型的部分参数,用人声清唱数据对idcnn模型的其它参数进行微调,最终得到人声音色的表征模型hdcnn,模型输出为人声音色向量,计算向量之间的余弦相似度,可实现人声音色的相似性度量。深度学习网络模型需要用大量的数据进行训练,而人声清唱数据存在着不均衡和数据量不充分的问题,先采用数据量充分且均衡的乐器数据集训练模型,再采用人声音频数据用基于迁移学习的方法微调模型,有效的在人声清唱数据不足的情况下构建出了合理的人声音色表征模型,得到人声音色的表征向量。最后通过计算向量之间的余弦相似度,有效实现了人声音色的相似性度量。

附图说明

图1是本发明的方法流程示意框图。

图2是本发明的实施例中应用的深度卷积神经网络的结构图。

具体实施方式

下面结合附图和具体实施例对本发明做进一步解释说明。

本发明提供一种乐器音色迁移下的人声音色相似性度量方法,其包括如下步骤:步骤s1:获取乐器音频文件,构建并训练深度卷积神经网络模型,得到训练好的idcnn模型;步骤s2:获取人声清唱音频文件,用人声音频数据微调训练好的idcnn模型,得到人声音色的表征模型hdcnn,hdcnn模型输出人声的音色向量;步骤s3:计算不同音色向量之间的余弦度,得到不同人声音色之间的相似性。主要流程示意图参见图1。

在本发明一实施例中,所述步骤s1具体包括以下步骤:步骤s11:把乐器音频文件截取成固定长度的片段;步骤s12:计算每个片段的对数梅尔频谱特征,对数梅尔频谱特征为128维,最终得到43*128大小的特征矩阵,作为训练深度神经网络时的输入矩阵;步骤s13:构建深度卷积神经网络模型,把步骤s12中得到的特征矩阵输入深度卷积神经网络模型进行训练。

在本发明一实施例中,步骤s11中音频文件格式为wav,采样率为22050hz,每个音频长度不等,把音频文件截取成固定长度为1s的片段。

在本发明一实施例中,步骤s13包括以下步骤:步骤s131:按照如下结构构建深度卷积神经网络模型:第一层、第二层使用32个卷积核,尺寸为(3,3),max-pooling为(3,3),输入为43*128大小的矩阵,激活函数为relu;第三层为dropout层,比例为0.25;第四层、第五层使用64个卷积核,尺寸为(3,3),max-pooling为(3,3),激活函数为relu;第六层为dropout层,比例为0.25;第七层、第八层使用128个卷积核,尺寸为(3,3),max-pooling为(3,3),激活函数为relu;第九层为dropout层,比例为0.25;第十层、第十一层使用256个卷积核,尺寸为(3,3),激活函数为relu;第十二层为全局池化层;第十三层为1024个结点的全连接层,激活函数为relu;第十四层为dropout层,比例为0.5;第十五层为分类层,激活函数为softmax;步骤s132:将步骤s12中得到的对数频谱特征矩阵输入深度卷积神经网络模型,采用adam算法对网络进行迭代训练,得到训练好的深度卷积神经网络模型,即idcnn模型。

在本发明一实施例中,所述步骤s2具体包括以下步骤:步骤s21:把人声音频截取成固定长度的片段;步骤s22:计算每个片段的对数梅尔频谱特征,对数梅尔频谱特征为128维,最终得到43*128大小的特征矩阵,作为微调idcnn模型的输入矩阵;步骤s23:对于训练好的idcnn模型,固定其部分参数保持不变,并用步骤s22中得到的特征矩阵微调idcnn模型的其他参数,微调得到的网络模型即为人声音色的表征模型,称为hdcnn模型,模型的第十三层全连接层的输出为人声的音色向量。

在本发明一实施例中,步骤s23包括以下步骤:步骤s231:保持idcnn模型的结构不变,并冻结idcnn模型第一层、第二层的参数不予训练;步骤s232:把步骤s22中得到的特征矩阵作为训练数据,训练idcnn模型中第三层至第十二层的参数,此过程称为微调,微调得到的模型即为人声音色表征模型,称为hdcnn模型;

在本发明一实施例中,步骤s21采用人声分离的方法分离出伴奏声,提取出歌手的清唱声音,去除不包含人声的部分,形成只包含人声的清唱音频,音频格式为wav,采样率为16000hz,每个音频长度不等,把音频文件截取成固定长度为1s的片段。

在本发明一实施例中,步骤s3中设两个不同人声音色向量分别为x=(x1,x2,...,x1024)和y=(y1,y2,...,y1024),均为1024维,按照如下公式计算两者之间的相似度:

计算得到的sim即为不同人声音色之间的相似性,i=1,2…1024。

在本一具体实施例中,以包含10种乐器的乐器音频数据集、包含10个歌手的清唱音频数据集,根据以上方法给出实例,具体包括以下步骤:

步骤1:获取乐器音频文件,构建并训练深度卷积神经网络模型,得到训练好的idcnn模型,具体步骤如下:

步骤11:乐器数据集中包含10乐器的音频文件,音频格式为wav,采样率为22050hz,每个音频长度不等,把乐器音频文件截取成固定长度为1s的片段;

步骤12:计算每个片段的对数梅尔频谱特征(128维),公式如下:其中γ[n]表示窗函数。

logmel=log[mel[stft]]

得到43*128大小的特征矩阵,作为训练深度神经网络时的输入矩阵;

步骤13:构建深度卷积神经网络模型,把步骤12中得到的特征矩阵输入深度卷积神经网络模型进行训练,具体步骤如下:

步骤131:按照如下结构构建如图2所示的深度卷积神经网络模型:

第一层、第二层(卷积层)使用32个卷积核,尺寸为(3,3),max-pooling为(3,3),输入为43*128大小的矩阵,激活函数为relu;

第三层为dropout层,比例为0.25;

第四层、第五层(卷积层)使用64个卷积核,尺寸为(3,3),max-pooling为(3,3),激活函数为relu;

第六层为dropout层,比例为0.25;

第七层、第八层(卷积层)使用128个卷积核,尺寸为(3,3),max-pooling为(3,3),激活函数为relu;

第九层为dropout层,比例为0.25;

第十层、第十一层(卷积层)使用256个卷积核,尺寸为(3,3),激活函数为relu;

第十二层为全局池化层;

第十三层为1024个结点的全连接层,激活函数为relu;

第十四层为dropout层,比例为0.5;

第十五层为分类层,激活函数为softmax。

步骤132:将步骤12中得到的对数频谱特征矩阵输入深度卷积神经网络模型,采用adam算法对网络进行迭代训练,学习率设置为0.001,batch_size设置为32,共迭代100个epoch,得到训练好的深度卷积神经网络模型,即idcnn模型;

步骤2:获取人声清唱音频文件,用人声音频数据微调训练好的idcnn模型,得到人声音色的表征模型hdcnn,hdcnn模型输出人声的音色向量,具体步骤如下:

步骤21:采用人声分离的方法分离出伴奏声,提取出歌手的清唱声音,去除不包含人声的部分,形成只包含人声的清唱音频,人声音频中包含10个歌手的清唱,音频格式为wav,采样率为16000hz,每个音频长度不等,把音频文件截取成固定长度为1s的片段;

步骤22:计算每个片段的对数梅尔频谱特征(128维),公式如下:其中γ[n]表示窗函数。

logmel=log[mel[stft]]

得到43*128大小的特征矩阵,作为微调idcnn模型的输入矩阵;

步骤23:对于步骤s132中训练好的idcnn模型,固定其部分参数保持不变,并用步骤s22中得到的特征矩阵微调idcnn模型的其他参数,微调得到的网络模型即为人声音色的表征模型,称为hdcnn模型,模型的第十三层全连接层的输出为人声的音色向量。

步骤231:保持idcnn模型的结构不变,并冻结idcnn模型第一层、第二层的参数不予训练;

步骤232:把步骤s22中得到的特征矩阵作为训练数据,训练idcnn模型中第三层至第十二层的参数,此过程称为微调,采用adam优化算法,学习率设置为0.0001,batch_size设置为64,共迭代100个epoch。微调得到的网络模型即为人声音色的表征模型,称为hdcnn模型,模型的第十三层全连接层的输出即为人声的音色向量,向量大小为1024维。

步骤3:设两个不同人声音色向量分别为x=(x1,x2,...,x1024)和y=(y1,y2,...,y1024),均为1024维,按照如下公式计算两者之间的相似度:

计算得到的sim即为不同人声音色之间的相似性。

以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1