主要内容

openl3Embeddings

提取OpenL3特性嵌入

    描述

    例子

    嵌入的= openl3Embeddings (audioInfs随着时间的推移返回OpenL3特性嵌入用于音频输入audioIn与采样率fs.输入的列被视为单独的通道。

    例子

    嵌入的= openl3Embeddings (audioInfs名称=值使用一个或多个名称-值参数指定选项。例如,嵌入= openl3Embeddings (fs, audioIn OverlapPercentage = 75)在用于创建音频嵌入的连续帧之间应用75%的重叠。

    此功能需要音频工具箱™和深度学习工具箱™。

    例子

    全部折叠

    下载并解压OpenL3的Audio Toolbox™模型。

    类型openl3Embeddings在命令行。如果没有安装OpenL3的Audio Toolbox模型,该函数将提供指向网络权重位置的链接。要下载模型,请单击链接。将文件解压缩到MATLAB路径上的某个位置。

    或者,执行以下命令下载OpenL3模型并将其解压缩到您的临时目录。

    downloadFolder = fullfile (tempdir,“OpenL3Download”);loc = websave (downloadFolder,“https://ssd.mathworks.com/supportfiles/audio/openl3.zip”);OpenL3Location = tempdir;OpenL3Location解压(loc)目录(fullfile (OpenL3Location,“openl3”))

    读一个音频文件。

    [audioIn, fs] = audioread (“MainStreetOne-16-16-mono-12secs.wav”);

    调用openl3Embeddings函数与音频和采样率,从音频中提取OpenL3特征嵌入。使用openl3Embeddings函数需要安装预先训练的OpenL3网络。如果没有安装网络,则该函数提供下载预训练模型的链接。

    嵌入= openl3Embeddings (audioIn, fs);

    openl3Embeddings函数返回随时间变化的512元素特征向量矩阵。

    [numHops, numElementsPerHop numChannels] =大小(嵌入)
    numHops = 111
    numElementsPerHop = 512
    numChannels = 1

    创建一个10秒的粉色噪声信号,然后提取OpenL3嵌入。的openl3Embeddings函数从重叠90%的MEL谱图中提取特征嵌入。使用openl3Embeddings功能需要安装预先训练的OpenL3网络。如果没有安装网络,则该函数提供下载预训练模型的链接。

    fs = 16 e3;大调的= 10;audioIn = pinknoise(大调的* fs, 1“单身”);嵌入= openl3Embeddings (audioIn, fs);

    绘制随时间变化的OpenL3特性嵌入图。

    冲浪(嵌入EdgeColor =“没有”视图([30 65])轴包含(“功能指数”) ylabel (“帧”)包含(“特征值”)标题(“OpenL3功能嵌入”

    要随着时间的推移降低OpenL3特征嵌入的分辨率,请指定mel光谱图之间的重叠百分比。策划的结果。

    overlapPercentage =10;嵌入= openl3Embeddings (fs, audioIn OverlapPercentage = OverlapPercentage);冲浪(嵌入EdgeColor =“没有”视图([30 65])轴包含(“功能指数”) ylabel (“帧”) zlabel (“特征值”)标题(“OpenL3功能嵌入”

    输入参数

    全部折叠

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

    数据类型:|

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

    数据类型:|

    名称-值参数

    指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。

    在R2021a之前,名称和值之间用逗号隔开,并括起来的名字在报价。

    例子:openl3Embeddings (audioIn fs, SpectrumType =“mel256”)

    连续谱图之间的重叠百分比,指定为范围[0,100)中的标量。

    数据类型:|

    由音频生成并用作神经网络输入的频谱类型,指定为“mel128”“mel256”,或“线性”

    请注意

    SpectrumType你所选择的控制网络中使用的光谱图。看到openl3openl3Preprocess为更多的细节。

    数据类型:字符|字符串

    输出音频嵌入的长度,指定为5126144

    数据类型:|

    神经网络训练的音频内容类型,指定为“env”“音乐”

    ContentType:

    • “env”当您想使用环境数据训练的模型时。

    • “音乐”当您想使用音乐数据训练的模型时。

    数据类型:字符|字符串

    输出参数

    全部折叠

    音频数据的紧凑表示形式,返回为N——- - - - - -l——- - - - - -C数组,地点:

    • N——表示音频信号被划分到的缓冲帧数,取决于的长度audioInOverlapPercentage

    • l——表示音频嵌入长度。

    • C——表示输入通道的数量。

    数据类型:

    参考文献

    [1]克莱默、杰森等。“看,听,并了解更多:深度音频嵌入的设计选择。”在2019 IEEE声学、语音和信号处理国际会议(ICASSP), 2019, pp. 3852-56。DOI.org (Crossref), doi: 10.1109 / / ICASSP.2019.8682475。

    扩展功能

    版本历史

    介绍了R2022a

    Baidu
    map