主要内容

pitchnn

深度学习神经网络估算音高

    描述

    例子

    F0.= pitchnn (audioInFS.的)随着时间的推移返回基本频率的估计audioIn采样率FS..输入的列被视为单独的通道。

    F0.= pitchnn (audioInFS.名称,值的)使用一个或多个指定选项名称,值论点。例如,F0 =球场(AudioIn,FS,'ConcidenceThreshold',0.5)为每个值设置置信阈值F0.0.5

    [F0.疯狂的) = pitchnn (___的)返回时间值,疯狂的,与每个基频估计相关联。

    [F0.疯狂的激活) = pitchnn (___的)返回a的激活净化网络。

    pitchnn (___的)没有输出参数随时间绘制估计的基频。

    例子

    全部折叠

    下载并解压缩绉纱的音频工具箱™型号。

    类型在命令窗口。如果未安装repe的音频工具箱模型,则该函数提供了链接到网络权重的位置。要下载模型,请单击链接并将文件解压缩到MATLAB路径上的位置。

    或者,执行这些命令以将Crepe模型下载并解压缩到临时目录。

    downloadfolder = fullfile(tempdir,“crepeDownload”);loc = websave (downloadFolder,'https://ssd.mathwands.com/金宝appsupportfiles/audio/crepe.zip');crepeLocation = tempdir;crepeLocation解压(loc)目录(fullfile (crepeLocation,'绉'))

    输入以下命令,检查安装是否成功在命令窗口。如果安装了网络,则该函数返回aDagnetwork.(深度学习工具箱)对象。

    ANS =具有属性的Dagnetwork:图层:[34×1 nnet.cnn.layer.layer]连接:[33×2表] InputNames:{'输入'} OutputNames:{'音高'}

    Crepe网络要求您预处理音频信号以生成可以用作网络输入的缓冲,重叠和归一化的音频帧。这个例子演示了pitchnn功能为您执行所有这些步骤。

    在音频信号中读取音高估计。可视化并收听音频。音频剪辑中有九个声音。

    [audioIn, fs] = audioread (“SingingAMajor-16-mono-18secs.ogg”);Soundsc(AudioIn,FS)T = 1 / FS;T = 0:T :(长度(AUDION)* T) -  T;绘图(t,audioin);网格包含(“时间(s)”) ylabel (“Ampltiude”)标题(“在一个专业中唱歌”的)

    使用pitchnn函数使用CREPE网络产生基音估计ModelCapacity.设置为Concidencethreshold.禁用。调用pitchnn没有输出参数随时间绘制音高估计。如果你打电话pitchnn在下载模型之前,一个错误被打印到带有下载链接的命令窗口。

    pitchnn (audioIn fs,'modelcapacity''微小的''ConcidenceThreshold', 0)

    禁用自信地禁用,pitchnn为每个帧提供音高估计。增加Concidencethreshold.0.8

    pitchnn (audioIn fs,'modelcapacity''微小的''ConcidenceThreshold', 0.8)

    称呼pitchnnModelCapacity.设置为满的.有九个主要间距估计分组,每个组与九个声音话语之一对应。

    pitchnn (audioIn fs,'modelcapacity'“全部”'ConcidenceThreshold', 0.8)

    称呼谱图并将信号的频率内容与音高估计进行比较pitchnn.使用帧大小250.样本和重叠的225样品或90%。利用4096.变换的DFT点。

    光谱图(fs audioIn, 250225年,4096年,“桠溪”的)

    输入参数

    全部折叠

    输入信号,指定为列向量或矩阵。如果指定矩阵,pitchnn将矩阵的列视为单独的音频通道。

    数据类型:单身的|

    输入信号的采样率(Hz),指定为正标量。

    数据类型:单身的|

    名称 - 值参数

    指定可选的逗号分离对名称,值论点。名称是参数名称和价值对应的值。名称必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

    例子:pitchnn (fs, audioIn OverlapPercentage, 50)设置连续音频帧之间的重叠百分比为50。

    连续音频帧之间的百分比重叠,指定为范围的标量[0,100)。

    数据类型:单身的|

    的每个值的置信阈值F0.,指定为范围的标量[0,1)。

    若要禁用阈值,请将此参数设置为0.

    笔记

    如果对应的最大值激活向量小于'ConcidenceThreshold'F0.

    数据类型:单身的|

    型号容量,指定为'微小的'“小”'中等的'“大”, 或者“全部”

    小费

    'modelcapacity'控制底层深入学习神经网络的复杂性。模型容量越高,模型中的节点数量越大。

    数据类型:细绳|字符

    输出参数

    全部折叠

    估计的基频,以赫兹为单位,返回为N.——- - - - - -C阵列,其中N.是基频估计数的数量和C频道数是多少audioIn

    数据类型:单身的

    与每个关联的时间值F0.估计,返回为1——- - - - - -N.向量,N.是基频估计值的个数。时间值对应于用于计算估计值的最新样本。

    数据类型:单身的|

    CREPE网络的激活,返回为N.——- - - - - -360.——- - - - - -C矩阵,N.生成的帧数是否来自网络和C频道数是多少audioIn

    数据类型:单身的|

    参考文献

    [1] Kim,Jong Wook,Justin Salamon,Peter Li和Juan Pablo Bello。“绉纱:音高估计的卷积象征。”在2018 IEEE音响,语音和信号处理国际会议(ICASSP), 161 - 65。卡尔加里,AB: IEEE, 2018。https://doi.org/10.1109/ICASSP.2018.8461329。

    扩展能力

    介绍了R2021a