面试真题:语音特征提取方式——为何要这样提取?

语音特征

语音特征提取涉及从语音信号中提取出一系列与声学和语言学相关的特征, 包括但不限于光谱特征、韵律特征和语音特征。

这些特征向量可以捕捉到语音信号的频率内容、音高、节奏以及共振峰等信息,为后续的语音处理和分析任务提 供基础。

1、短时傅里叶变换

对于一段平稳的信号,可以使用傅里叶变换将其转换为频谱,进而可以清晰地得到完整的原始信号中包含的所有频率分量。但由于缺失时间信息,无法用其描述局部区域上的频率特征。
对于随时间不断变化的信号,短时傅里叶变换(Short-Time Fourier Transform,STFT)是一种常用的特征提取方法,用于将时域信号转换为频域表征,并捕获信号在时间和频率上的局部信息。 STFT 的提取流程分为以下几步:

  1. 分帧:将原始音频信号分成多个重叠的时间窗口,窗口之间会有一定的重叠(通常为14 的窗口长度),以确保相邻窗口之间的信息不会丢失。
  2. 加窗:对每个时间窗口应用窗函数(如汉明窗、矩形窗等),以减少窗口两端的信号衰减带来的频谱泄漏效应。
  3. 傅里叶变换:对每个加窗后的时间窗口应用傅里叶变换,将信号从时域转换到频域。
  4. 幅度谱计算:计算每个时间窗口的频谱幅度,通常是傅里叶变换结果的模值。
  5. 频谱拼接:将每个时间窗口的频谱幅度串联起来,形成完整的频谱表示。 形式上来说,给定一个连续的信号 𝑥(𝑡),它的 STFT 计算公式可表示为:
    X ( t , w ) = ∫ − ∞ ∞ x ( τ ) ⋅ w ( t − τ ) ⋅ e − j w τ d τ X(t,w)=\int_{-\infty }^{\infty } x(\tau )\cdot w(t-\tau )\cdot e^{-jw\tau }d_\tau X(t,w)=x(τ)w(tτ)ejwτdτ

其中, X ( t , w ) X(t,w) X(t,w)是信号在时间 𝑡 和频率 𝜔 上的复数表示, x ( τ ) x(\tau ) x(τ) 是原始信号。 w ( t − τ ) w(t-\tau ) w(tτ)是窗口函数,通常在 𝑡 时刻取值为 1,在 t − τ t-\tau tτ处取值为窗口函数的值。𝜔 是角频率, e − j w τ e^{-jw\tau } ejwτ是复指数项,用于表示信号的频率成分。

STFT 实际上是将信号 𝑥(𝑡) 分成多个时间窗口,并在每个时间窗口上应用傅里叶变换,以获得信号在每个时间窗口上的频率表示。这样可以在一定程度上保留 信号的时域和频域信息,捕获到信号随时间的频率变化情况,从而实现时频分析。

STFT 特征广泛应用于音频处理领域,适用于许多音频处理任务,如音乐信号分析、语音识别、音频合成等。但 STFT 特征的频率分辨率和时间分辨率受到窗口大小和重叠比例等参数的影响,且参数量仍然较大,模型的计算成本较大。

2、梅尔频谱图

常见的频谱图(如 STFT)通常是在线性频率刻度下表示的,然而人耳对声音频率的感知是对数性质的,即对低频段的变化更为敏感,而对高频段的变化则相对迟钝。这种感知特性导致了线性分布的频谱图在特征提取上可能存在一些问题, 因为它未能准确地反映人类听觉系统的工作方式。因此,为了更好地模拟人耳的感知特性,并提高语音特征的表征能力,梅尔频谱图(Mel-spectrogram,Mel)应运而生。相比于 STFT,Mel 特征的提取流程需要在后续添加以下两个环节:

  1. Mel 滤波器组计算:将频谱转换到 Mel 频率域,通过一组 Mel 滤波器对频
    谱进行滤波。
  2. 取对数:对滤波器组输出的能量取对数,增强低能量部分的区分度。
    Mel 刻度和线性频率的转换公式可以使用下面的公式表示:
    m e l = 2595 l o g 10 ( 1 + h z 700 ) h z = 700 ( 1 0 m e l 2595 − 1 ) mel=2595log_{10}(1+\frac{hz}{700} )\\ hz=700(10^{\frac{mel}{2595}-1 }) mel=2595log10(1+700hz)hz=700(102595mel1)

其中,h𝑧 代表原本的线性频率,𝑚𝑒𝑙 代表转换后的梅尔频率。当 h𝑧 很大时, 𝑚𝑒𝑙 的变化趋于平缓。梅尔频谱图采用梅尔频率刻度来表示频率,这种刻度更符合人类听觉系统的感知方式。
梅尔频率的特点是在低频段有较高的分辨率,在高频段有较低的分辨率,这与人类听觉的特性相吻合。因此,通过使用梅尔频谱图,可以更准确地捕获语音信号中重要的频率信息,提高语音特征的表征能力,从而在语音处理任务中取得更好的效果。

  • 19
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值