主要内容gydF4y2Ba

MFCC.gydF4y2Ba

提取MFCC,Log Energy,Delta和Delta-Delta的音频信号gydF4y2Ba

描述gydF4y2Ba

例子gydF4y2Ba

多项式系数gydF4y2Ba= MFCC(gydF4y2Ba奥地策gydF4y2Ba,gydF4y2BafsgydF4y2Ba)gydF4y2Ba返回音频输入的mel频率倒频谱系数(MFCCs),采样频率为gydF4y2BafsgydF4y2Ba赫兹。gydF4y2Ba

多项式系数gydF4y2Ba= MFCC(gydF4y2Ba___gydF4y2Ba,gydF4y2Ba名称,值gydF4y2Ba)gydF4y2Ba使用一个或多个指定选项gydF4y2Ba名称,值gydF4y2Ba对论点。gydF4y2Ba

例子:gydF4y2BaCoeffs = MFCC(AudioIn,FS,'Logenergy','替换')gydF4y2Ba返回用于采样的音频输入信号的MEL频率谱系齐数gydF4y2BafsgydF4y2Ba赫兹。第一个系数gydF4y2Ba多项式系数gydF4y2Ba向量被替换成对数能量值。gydF4y2Ba

[gydF4y2Ba多项式系数gydF4y2Ba,gydF4y2Ba三角洲gydF4y2Ba,gydF4y2BadeltadeltagydF4y2Ba,gydF4y2Ba座垫gydF4y2Ba] = MFCC(gydF4y2Ba___gydF4y2Ba)gydF4y2Ba还返回与每个数据窗口对应的样本的Delta,delta-delta和位置。gydF4y2Ba

例子gydF4y2Ba

全部折叠gydF4y2Ba

使用该语音信号计算语音信号的MEL频率谱系数gydF4y2BaMFCC.gydF4y2Ba函数。函数返回gydF4y2Ba三角洲gydF4y2Ba,系数的变化,和gydF4y2BadeltadeltagydF4y2Ba,Delta值的变化。函数计算的日志能量值可以预先提出系数向量或替换系数向量的第一元素。这是根据您是否设置的gydF4y2Ba'logenergy'gydF4y2Ba争论gydF4y2Ba“添加”gydF4y2Ba要么gydF4y2Ba'代替'gydF4y2Ba.gydF4y2Ba

从中读取音频信号gydF4y2Ba“Counting-16-44p1-mono-15secs.wav”gydF4y2Ba文件使用gydF4y2BaaudioreadgydF4y2Ba函数。的gydF4y2BaMFCC.gydF4y2Ba功能处理整个语音数据在一批。根据输入行数、窗口长度和重叠长度,gydF4y2BaMFCC.gydF4y2Ba将语音分成1551帧,并计算每帧的倒谱特征。的每一行gydF4y2Ba多项式系数gydF4y2Ba矩阵对应于对应于语音文件的相应帧的13麦频谱系数的日志能量值。该功能还计算gydF4y2Ba座垫gydF4y2Ba,每个输入帧中的最后一个样本的位置。gydF4y2Ba

[AudioIn,FS] = audioread(gydF4y2Ba“Counting-16-44p1-mono-15secs.wav”gydF4y2Ba);[coeffs,delta,deltadelta,loc] = MFCC(AudioIn,FS);gydF4y2Ba

在音频文件中读取并将其转换为频率表示。gydF4y2Ba

[AudioIn,FS] = audioread(gydF4y2Ba“Rainbow-16-8-Mono-114secs.wav”gydF4y2Ba);WIN = HANN(1024,gydF4y2Ba“周期”gydF4y2Ba);S = stft (audioIngydF4y2Ba“窗口”gydF4y2Ba,赢,gydF4y2Ba“OverlapLength”gydF4y2Ba512,gydF4y2Ba“以”为中心“gydF4y2Ba,错误的);gydF4y2Ba

提取熔融频率的肌肉系数,呼叫gydF4y2BaMFCC.gydF4y2Ba使用频域音频。忽略日志能量。gydF4y2Ba

Coeffs = MFCC(S,FS,gydF4y2Ba“LogEnergy”gydF4y2Ba,gydF4y2Ba“忽略”gydF4y2Ba);gydF4y2Ba

在许多应用中,MFCC观测数据被转换为摘要统计数据,用于分类任务。绘制一个梅尔频率倒谱系数的概率密度函数,观察其分布。gydF4y2Ba

nbins = 60;CoeffiountoAnalyze =gydF4y2Ba4gydF4y2Ba;直方图(COEFFS(:,系数毒性+ 1),nbins,gydF4y2Ba“归一化”gydF4y2Ba,gydF4y2Ba“pdf”gydF4y2Ba)标题(Sprintf(gydF4y2Ba“系数%d”gydF4y2Ba,系数进行分析))gydF4y2Ba

输入参数gydF4y2Ba

全部折叠gydF4y2Ba

输入信号,指定为矢量、矩阵或三维阵列。gydF4y2Ba

  • 如果gydF4y2Ba奥地策gydF4y2Ba是真实的,它被解释为时域信号,必须是列向量或矩阵。矩阵的列被视为独立的音频通道。gydF4y2Ba

  • 如果gydF4y2Ba奥地策gydF4y2Ba是复杂的,它被解释为频域信号。在这种情况下,gydF4y2Ba奥地策gydF4y2Ba必须是一个gydF4y2BalgydF4y2Ba-经过-gydF4y2Ba米gydF4y2Ba-经过-gydF4y2BaNgydF4y2Ba阵列,其中gydF4y2BalgydF4y2Ba是DFT点数,gydF4y2Ba米gydF4y2Ba是单独的频谱数量,还有gydF4y2BaNgydF4y2Ba是个人渠道的数量。gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba
复数的支持:金宝appgydF4y2Ba是的gydF4y2Ba

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

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

名称-值对的观点gydF4y2Ba

指定可选的逗号分隔的对gydF4y2Ba名称,值gydF4y2Ba论点。gydF4y2Ba名称gydF4y2Ba参数名和gydF4y2Ba价值gydF4y2Ba是相应的价值。gydF4y2Ba名称gydF4y2Ba必须出现在引号内。可以以任意顺序指定多个名称和值对参数gydF4y2Baname1,value1,...,namen,valuengydF4y2Ba.gydF4y2Ba

例子:gydF4y2Ba[Coeffs,Delta,DeltaDelta,Loc] = MFCC(AudioIn,FS,'Logenergy','替换','deltawindowlength',5)gydF4y2Ba返回用于采样的音频输入信号的MEL频率谱系齐数gydF4y2BafsgydF4y2Ba赫兹。第一个系数gydF4y2Ba多项式系数gydF4y2Ba向量被替换成对数能量值。一组5个谱谱系数用于计算Delta和Delta-Delta值。gydF4y2Ba

应用于时域的窗口,指定为逗号分隔对gydF4y2Ba'窗户'gydF4y2Ba一个实向量。向量中的元素个数必须在范围[1,gydF4y2Ba尺寸(gydF4y2Ba奥地策gydF4y2Ba1)gydF4y2Ba]。矢量中的元素数量也必须大于gydF4y2BaovertaplenthgydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

在相邻窗口之间重叠的样本数,指定为包括的逗号分隔对gydF4y2Ba'overlaplencth'gydF4y2Ba并且范围内的整数[0,gydF4y2Ba元素个数(gydF4y2Ba窗户gydF4y2Ba)gydF4y2Ba)。如果未指定,gydF4y2BaovertaplenthgydF4y2Ba默认为gydF4y2Ba圆形(0.02 *gydF4y2BafsgydF4y2Ba)gydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

每个数据窗口返回的系数数,指定为范围[2]的整数gydF4y2BavgydF4y2Ba),gydF4y2BavgydF4y2Ba是有效通带的数量。gydF4y2Ba

有效密码带的数量定义为gydF4y2Ba总和(BandEdges < =地板(fs / 2)) 2gydF4y2Ba.如果它的边缘下降,通带是有效的gydF4y2BaFS / 2gydF4y2Ba, 在哪里gydF4y2BafsgydF4y2Ba是输入音频信号的采样率,指定为第二个参数,gydF4y2BafsgydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

以Hz为单位的滤波器组带边,指定为在[0,gydF4y2BafsgydF4y2Ba/ 2)。频带边数必须在[4,160]范围内。的gydF4y2BaMFCC.gydF4y2Ba功能设计了基于的半重叠三角形滤波器gydF4y2Ba绑架gydF4y2Ba.这意味着除了第一个和最后一个外,所有带边都也是设计的带通滤波器的中心频率。gydF4y2Ba

默认情况下,gydF4y2Ba绑架gydF4y2Ba是一个42元素矢量,导致40带滤波器组,跨越大约133 Hz至6864 Hz。默认频带按照描述间隔开gydF4y2Ba[2]gydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

用于计算窗口输入样本的离散傅立叶变换(DFT)的频体数。FFT长度必须大于或等于所元素的数量gydF4y2Ba窗户gydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

应用于离散余弦变换之前的非线性校正类型,具体为gydF4y2Ba“日志”gydF4y2Ba要么gydF4y2Ba'立方根'gydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2BachargydF4y2Ba|gydF4y2Ba细绳gydF4y2Ba

用于计算delta和delta-delta值的系数数,指定为由逗号分隔的对组成gydF4y2Ba'deltawindowlength'gydF4y2Ba和大于两个的奇数整数。如果未指定,gydF4y2BaDeltaWindowLengthgydF4y2Ba默认为gydF4y2Ba9gydF4y2Ba.gydF4y2Ba

使用Δ使用Δ使用gydF4y2Baaudiodetta.gydF4y2Ba函数。gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

指定如何在系数向量输出中显示日志能量,指定为:gydF4y2Ba

  • “添加”gydF4y2Ba这个函数把能量的对数加到系数向量上。系数向量的长度是1 +gydF4y2Banumcoeffs.gydF4y2Ba.gydF4y2Ba

  • '代替'gydF4y2Ba——函数用信号的对数能量替换第一个系数。系数向量的长度是gydF4y2Banumcoeffs.gydF4y2Ba.gydF4y2Ba

  • “忽略”gydF4y2Ba- 对象不计算或返回日志能量。gydF4y2Ba

数据类型:gydF4y2BachargydF4y2Ba|gydF4y2Ba细绳gydF4y2Ba

输出参数gydF4y2Ba

全部折叠gydF4y2Ba

Mel频率倒频谱系数,返回为gydF4y2BalgydF4y2Ba-经过-gydF4y2Ba米gydF4y2Ba矩阵或矩阵gydF4y2BalgydF4y2Ba-经过-gydF4y2Ba米gydF4y2Ba-经过-gydF4y2BaNgydF4y2Ba数组,其中:gydF4y2Ba

  • lgydF4y2Ba——音频信号被分割成的分析窗口的数量。输入的大小,gydF4y2Ba窗户gydF4y2Ba, 和gydF4y2BaovertaplenthgydF4y2Ba控制这个维度:gydF4y2BalgydF4y2Ba=楼层((大小(gydF4y2Ba奥地策gydF4y2Ba,1) - numel(gydF4y2Ba窗户gydF4y2Ba))) / (gydF4y2Ba元素个数(窗口)gydF4y2Ba-gydF4y2BaovertaplenthgydF4y2Ba)+ 1gydF4y2Ba.gydF4y2Ba

  • 米gydF4y2Ba——每帧返回的系数数。这个值由gydF4y2Banumcoeffs.gydF4y2Ba和gydF4y2BaLogEnergygydF4y2Ba.gydF4y2Ba

    什么时候gydF4y2BaLogEnergygydF4y2Ba设置为:gydF4y2Ba

    • “添加”gydF4y2Ba——该函数将对数能量值附加到系数向量上。系数向量的长度是1 +gydF4y2Banumcoeffs.gydF4y2Ba.gydF4y2Ba

    • '代替'gydF4y2Ba——函数用信号的对数能量替换第一个系数。系数向量的长度是gydF4y2Banumcoeffs.gydF4y2Ba.gydF4y2Ba

    • “忽略”gydF4y2Ba- 该函数不计算或返回日志能量。系数向量的长度是gydF4y2Banumcoeffs.gydF4y2Ba.gydF4y2Ba

  • NgydF4y2Ba——输入通道数(列)。这个值是gydF4y2Ba尺寸(gydF4y2Ba奥地策gydF4y2Ba2)gydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

从一个数据帧到另一帧的系数的变化,作为一个gydF4y2BalgydF4y2Ba-经过-gydF4y2Ba米gydF4y2Ba矩阵或矩阵gydF4y2BalgydF4y2Ba-经过-gydF4y2Ba米gydF4y2Ba-经过-gydF4y2BaNgydF4y2Ba数组中。的gydF4y2Ba三角洲gydF4y2Ba数组与尺寸和数据类型相同gydF4y2Ba多项式系数gydF4y2Ba数组中。gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

的变化gydF4y2Ba三角洲gydF4y2Ba从一个数据帧到另一帧的值,作为一个gydF4y2BalgydF4y2Ba-经过-gydF4y2Ba米gydF4y2Ba矩阵或矩阵gydF4y2BalgydF4y2Ba-经过-gydF4y2Ba米gydF4y2Ba-经过-gydF4y2BaNgydF4y2Ba数组中。的gydF4y2BadeltadeltagydF4y2Ba数组与尺寸和数据类型相同gydF4y2Ba多项式系数gydF4y2Ba和gydF4y2Ba三角洲gydF4y2Ba阵列。gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

在每个分析窗口中最后一个样本的位置,作为具有相同行数的列向量返回gydF4y2Ba多项式系数gydF4y2Ba.gydF4y2Ba

数据类型:gydF4y2Ba单身的gydF4y2Ba|gydF4y2Ba双倍的gydF4y2Ba

算法gydF4y2Ba

MEL频率谱系数是从语音信号中提取的流行功能,以便用于识别任务。在语音源滤波器模型中,临时谱系数应理解为代表过滤器(声道)。声带频率响应相对平滑,而浊音的来源可以被建模为脉冲列车。结果,可以通过语音段的光谱包络估计声道。gydF4y2Ba

MEL频率谱系数的激励思想是基于对耳蜗的理解将关于声道(平滑光谱)的信息压缩成少数系数。虽然没有用于计算系数的硬标准,但图表概述了基本步骤。gydF4y2Ba

默认的mel滤波器组线性空间的前10个三角形滤波器和对数空间的其余滤波器。gydF4y2Ba

在第零梅尔频率倒谱系数中所包含的信息常被对数能量增加或取代。对数能量的计算取决于输入域。gydF4y2Ba

如果输入(gydF4y2Ba奥地策gydF4y2Ba)是一个时域信号,使用以下等式计算日志能量:gydF4y2Ba

日志gydF4y2Ba EgydF4y2Ba =gydF4y2Ba 日志gydF4y2Ba (gydF4y2Ba 和gydF4y2Ba (gydF4y2Ba xgydF4y2Ba 2gydF4y2Ba )gydF4y2Ba )gydF4y2Ba

如果输入(gydF4y2Ba奥地策gydF4y2Ba)是一个频域信号,使用以下等式计算日志能量:gydF4y2Ba

日志gydF4y2Ba EgydF4y2Ba =gydF4y2Ba 日志gydF4y2Ba (gydF4y2Ba 和gydF4y2Ba (gydF4y2Ba |gydF4y2Ba xgydF4y2Ba |gydF4y2Ba 2gydF4y2Ba )gydF4y2Ba /gydF4y2Ba FgydF4y2Ba FgydF4y2Ba TgydF4y2Ba lgydF4y2Ba egydF4y2Ba ngydF4y2Ba ggydF4y2Ba tgydF4y2Ba hgydF4y2Ba )gydF4y2Ba

兼容性考虑因素gydF4y2Ba

展开全部gydF4y2Ba

R2020B的行为更改gydF4y2Ba

未来发布的行为变化gydF4y2Ba

参考gydF4y2Ba

[1] Rabiner,Lawrence R.和Ronald W. Schafer。gydF4y2Ba数字语音处理的理论与应用gydF4y2Ba.上鞍河,NJ:皮尔森,2010。gydF4y2Ba

扩展能力gydF4y2Ba

C / C ++代码生成gydF4y2Ba
使用MATLAB®Coder™生成C和C ++代码。gydF4y2Ba

GPU代码生成gydF4y2Ba
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。gydF4y2Ba

GPU阵列gydF4y2Ba
使用并行计算工具箱™在图形处理单元(GPU)上运行,加速代码。gydF4y2Ba

介绍了R2018agydF4y2Ba