主要内容

vadnet

神经网络的语音活动检测(VAD)

自从R2023a

    描述

    例子

    = vadnet ()返回一个pretrained VAD模型。

    这个函数需要音频工具箱™和深度学习工具箱™。

    例子

    全部折叠

    读入一个音频信号,其中包含语音和音乐和听声音。

    [audioIn, fs] = audioread (“MusicAndSpeech-16-mono-14secs.ogg”);声音(audioIn fs)

    使用vadnetPreprocess音频通过计算梅尔谱图进行预处理。

    特点= vadnetPreprocess (audioIn, fs);

    调用vadnet获得pretrained VAD神经网络。

    网= vadnet;

    通过预处理音频通过网络获得演讲在每一帧的概率。

    聚合氯化铝=预测(净、特点);

    使用vadnetPosprocess后处理网络输出和确定演讲的边界地区的信号。

    投资回报率= vadnetPostprocess (audioIn、fs、聚合氯化铝)
    投资回报率=2×21 63120 83600 150000

    情节的音频检测到演讲的地区。

    vadnetPostprocess (audioIn fs,聚合氯化铝)

    图包含一个坐标轴对象。坐标轴对象与标题发现演讲,包含时间(s), ylabel振幅包含8线类型的对象,constantline补丁。

    创建一个dsp.AudioFileReader对象播放一个音频文件进行处理。设置SamplesPerFrame属性读100 ms不重叠的块的信号。

    误判率= dsp.AudioFileReader (“MaleVolumeUp-16-mono-6secs.ogg”);analysisDuration = 0.1;%秒误判率。SamplesPerFrame =地板(analysisDuration * afr.SampleRate);

    vadnet架构不调用之间保留状态和最好执行在分析更大量的音频信号。当你使用vadnet在流的情况下,特定的应用程序需求的准确性,计算效率和延迟决定,分析时间和是否重叠分析块。

    创建一个timescope反对阴谋言论音频信号和相应的概率。创建一个audioDeviceWriter播放音频流。

    范围= timescope (NumInputPorts = 2,SampleRate = afr.SampleRate,TimeSpanSource =“财产”时间间隔= 5,YLimits = [-1.2, 1.2],ShowLegend = true, ChannelNames = (“音频”,“语音概率”]);adw = audioDeviceWriter (afr.SampleRate);

    调用vadnet获得pretrained VAD神经网络。

    网= vadnet ();

    流循环:

    1. 从音频文件读取女士在100年的一块。

    2. 使用音频预处理到梅尔声谱图vadnetPreprocess

    3. 使用VAD网络言论的概率预测每一帧的光谱图。复制的概率中每个样本对应的音频信号。

    4. 画出音频信号和言论的概率。

    5. 播放的音频设备的作家。

    跳= 0.01 * afr.SampleRate;~结束(误判率)audioIn =误判率();特点= vadnetPreprocess (audioIn afr.SampleRate);聚合氯化铝=预测(净、特点);%复制聚合氯化铝在audioIn对应样本聚合氯化铝= repelem(聚合氯化铝,跳)';聚合氯化铝,聚合氯化铝((hop / 2) + 1: end-hop / 2);范围(audioIn,聚合氯化铝)adw (audioIn);结束

    输出参数

    全部折叠

    Pretrained VAD神经网络,作为一个返回DAGNetwork(深度学习工具箱)对象。

    算法

    神经网络是一个移植版本的vad-crdnn-libripartypretrained SpeechBrain提供的模型[1]结合卷积,复发,充分连接层。

    引用

    [1]Ravanelli Mirco,等。SpeechBrain:通用语言工具包。2021年6月arXiv 8。arXiv.org,http://arxiv.org/abs/2106.04624

    版本历史

    介绍了R2023a