【20211005】Praat 基本用法

本文详细介绍了使用Praat软件进行语音信号处理的各项任务,包括波形、语谱图、音强、基音、共振峰和脉冲的显示与分析。讨论了不同设置参数对结果的影响,如音强的视野范围、共振峰的最大频率、基音的频率范围等。此外,解释了音强、音高和语谱图的计算原理与算法,并探讨了发音与听觉感知的关系。通过比较不同情感语音的基音轮廓,展示了如何通过声学参数分析情绪表达。
摘要由CSDN通过智能技术生成

Praat 使用及语音信号处理算法基础

利用 Praat 完成如下任务,熟悉 Praat 的基本操作,利用 Praat 对语音信号的基频、时长、谱参数等进行分析,对语音信号的基频、时长、谱参数等有进一步理解。

下载地址

参考手册

任务一:声学参数

加载“GuoL/40004.wav”音频,在此基础上进行以下操作并回答如下问题:

  1. 显示和查看波形waveform、语谱图spectrogram、音强intensity、基音轮廓pitch contour、共振峰 formant 和脉冲 pulses。

在这里插入图片描述

图1-1 波形waveform

在这里插入图片描述

图1-2 语谱图spectrogram

在这里插入图片描述

图1-3 音强intensity

在这里插入图片描述

图1-4 基音 pitch contour

在这里插入图片描述

图1-5 共振峰 formant

在这里插入图片描述

图1-6 脉冲 pulses
  1. 更改每个声学参数的计算/提取的设置参数,并观察比较不同设置参数对应的结果差别。

音强 Intensity analysis

  • 视野范围在这里插入图片描述
图1-7 音强设置参数

标准设置为 50 到 100 dB。如果对背景噪声的功率感兴趣,可以将其设置为 0 到 100 dB 的范围,与之前默认参数结果对比如下图所示。

在这里插入图片描述
在这里插入图片描述

图1-8 视野范围设置为0到100dB与默认参数音强对比
  • 平均法
    如果进行时间选择(而不是将光标设置在单一时间),就会出现平均化。强度等值线左侧或右侧的绿色数字(dB)将显示选择中的平均强度。从 "强度 "菜单中选择 "获取强度 "时,会得到同样的数值。可以选择强度的三种平均方法中的一种来获取平均值,或者选择选区中的中值。

例如对于以下选区:
在这里插入图片描述

图1-9 进行时间选择

不同方法进行平均的结果如下所示:
median: 53.29dB( μ \mu μ.5)
mean energy: 58.81dB( μ \mu μE)
mean sones: 57.02dB( μ \mu μS)
mean dB: 56.21dB( μ \mu μ)

共振峰 Formant analysis

  • 可以使用Formant菜单来设置formant的分析参数。对于女声,最大频率一般设置为5500赫兹;对于男声,则设置为5000赫兹。

在这里插入图片描述

图1-10 共振峰设置参数

在这里插入图片描述
在这里插入图片描述

图1-11 最大频率为5000赫兹与默认参数共振峰对比

基音 Pitch analysis
在这里插入图片描述

图1-12 基音设置参数
  • 基因范围是对音高分析最重要的设置。标准范围是75到500赫兹,即音高分析法只能找到75到500赫兹之间的数值。应该将这个范围设置为适合扬声器的数值,但一个问题是,扬声器的音高范围有很大的不同。对于许多低音调(如一般的男声)的声音,一般把下限设置为75Hz,上限设置为300Hz;对于许多高音调(如一般的女声)的声音,一般设置为100-500Hz的范围。在高音的方面,一些儿童在大喊大叫时可以达到近2000赫兹;在低的方面,咯吱咯吱的声音可以低至40赫兹;因此,对于正在研究的声音来源,可以尝试不同的设置设置。

  • 以下是你必须提供这些设置的原因。如果音高底线是75Hz,音高分析方法需要一个40毫秒的分析窗口,也就是说,为了测量例如0.850秒时间的F0,Praat需要考虑从0.830到0.870秒的一部分声音。这40毫秒对应着3个最大的音高周期(3/75=0.040)。如果你把音高底限设置为25赫兹,分析窗口将增长到120毫秒(也是3个最大音高周期),也就是说,0.790到0.910秒之间的所有时间都将被考虑。这样就不太容易看到快速的F0变化。

  • 设置音高范围的下限是对音高分析的一个技术要求。如果你把它设置得太低,你会错过非常快的 F 0 F_0 F0变化,如果把它设置得太高,你会错过非常低的 F 0 F_0 F0值。对于儿童的声音,通常可以使用200赫兹,尽管75赫兹仍然可以让你获得与低音调声音相同的时间分辨率。

在这里插入图片描述
在这里插入图片描述

图1-13 标准范围为400-500赫兹与默认参数音高对比
  • 此外,Unit参数的设置决定了垂直音阶的单位,如下图所示,一般采用以赫兹为单位的音高范围。

在这里插入图片描述

图1-14 垂直音阶单位设置

语谱 Spectral analysis

在这里插入图片描述

图1-15 语谱图设置参数
  1. 解释上述设置参数的含义。

音强 Intensity

  • 最小间距(赫兹):信号中的最小周期性频率。如果设置的太高,最终会得到一个音高同步的强度调制。如果设置得太低,强度轮廓可能会显得模糊不清,所以如果想要一个尖锐的轮廓,应该把它设置得与信号所允许的一样高。
  • 时间步长(s):产生的强度轮廓的时间步长。如果把它设置为零,时间步长将被计算为有效窗口长度的四分之一,即0.8/(最小间距)。

pitch
进行音高分析,对语音进行优化。

  • 时间步长(s)(标准值:0.0):测量间隔(帧持续时间),以秒为单位。如果提供0,Praat将使用0.75/(音高底线)的时间步长,例如,如果音高底线是75Hz,则为0.01秒,即Praat每秒钟计算100个音高值。
  • 音高下限(Hz)(标准值:75Hz):低于这个频率的声音将不被接受。这个参数决定了分析窗口的长度:它将是3个最长的周期,也就是说,如果音高下限是75Hz,窗口将是3/75=0.04秒。注意,如果把时间步长设置为零,连续测量的分析窗口将明显重叠。Praat总是在一个窗口长度内计算4个音高值,也就是说,超采样程度是4。
  • 音高上限(Hz)(标准值:600Hz):超过这个频率的声音将被忽略。
  • 静音阈值(标准值:0.03):不包含振幅超过这个阈值(相对于全局最大振幅)的帧,可能是无声的。
  • 发声阈值(标准值:0.45):相对于最大可能的自相关而言,未发声的声音强度。要增加未发声的绝对数量,就要增加这个值。
  • 倍频成本(标准值:0.01/倍频):相对于最大可能的自相关而言,对高频候选人的青睐程度。这是必要的,因为即使(或:特别是)在一个完全周期性的信号的情况下,F0的所有暗调都是与F0本身同样强大的候选者。为了更有力地支持对高频候选人的招募,增加这个值。
  • 倍频程跳跃成本(标准值:0.35
    相对于最大可能的自相关而言,不利于音高变化的程度。为了减少大频率跳跃的数量,增加这个值。与文章中描述的不同,这个值将对时间步长进行修正:乘以0.01秒/时间步长,就可以得到文章中公式中使用的值。
  • 有声/无声的成本(标准值:0.14
    相对于最大可能的自相关而言,不利于有声/无声转换的程度。要减少有声/无声转换的数量,就要增加这个值。与文章中描述的不同,这个值将被修正为时间步长:乘以0.01秒/时间步长,就可以得到文章中公式中使用的值。

语谱 Spectral analysis

  • 查看范围(Hz)
    需要显示的频率范围。标准是下限为0 Hz,上限为5000 Hz。如果这个最大频率高于声音的奈奎斯特频率(即采样频率的一半),频谱图中的一些值将是零,而较高的频率将被画成白色。如果以44100Hz的频率录制声音,并将视图范围设置为0Hz至25000Hz,就可以看到这种情况。
  • 窗口长度
    分析窗口的持续时间。标准状态为0.005秒,Praat在每一帧中使用位于该帧中心前0.0025秒和后0.0025秒之间的声音部分(对于高斯窗口,Praat实际上使用比这多一点)。窗口的长度决定了频谱分析的带宽,也就是纯正弦波的频谱图中水平线的宽度(见下文)。对于高斯窗,-3dB带宽是2sqrt(6ln(2))/(π*窗长),或1.2982804/窗长。要得到一个 "宽带 "频谱图(带宽260赫兹),保持标准窗长为5毫秒;要得到一个 "窄带 "频谱图(带宽43赫兹),将其设置为30毫秒(0.03秒)。其他窗口形状给出的数值略有不同。
  • 动态范围(dB)
    所有低于最大动态范围以上的值(也许是在动态压缩之后,见高级频谱设置…)都将以白色绘制。介于两者之间的数值有适当的灰色阴影。因此,如果频谱图中的最高峰高度为30dB/Hz,而动态范围为50dB(这是标准值),那么低于-20dB/Hz的值将以白色绘制,而介于-20dB/Hz和30dB/Hz之间的值将以各种灰色绘制。
  1. 解释 Praat 提取音强 intensity、音高 pitch 和语谱图 spectrogram 的原理与算法。

音强 intensity
返回值
空气中的强度,以相对于听觉阈值的dB表示。
算法
声音中的值首先被平方,然后与高斯分析窗口(Kaiser-20;侧音低于-190 dB)进行卷积。这个分析窗口的有效时间是3.2 / (minimum_pitch),这将保证一个周期性信号被分析为具有不大于0.00001dB的音高同步强度波纹。空气中声音的强度定义为
10 log ⁡ 10 { 1 / ( T P 0 2 ) ∫ d t x 2 ( t ) } 10 \log _{10}\left\{1 /\left(T P_{0}^{2}\right) \int d t x^{2}(t)\right\} 10log10{1/(TP02)dtx2(t)}
其中 x ( t ) x(t) x(t)是以 P a \text Pa Pa(帕斯卡)为单位的声压, T T T是声音的持续时间, P 0 = 2 ⋅ 1 0 − 5 P a P_0=2\cdot 10^{-5} \text Pa P0=2105Pa是听觉阈值压力。

pitch
该算法在准确的自相关方法的基础上进行声学周期性检测,如Boersma(1993)所述。这种方法比基于倒频谱的方法或原始的自相关方法更准确、更抗噪、更稳健。其他方法存在的原因,是没有认识到这样一个事实:如果想在窗口信号的基础上估计一个信号的短期自相关函数,应该把窗口信号的自相关函数除以窗口的自相关函数。
r x ( τ ) ≈ r x w ( τ ) / r w ( τ ) r_{x}(\tau) \approx r_{x w}(\tau) / r_{w}(\tau) rx(τ)rxw(τ)/rw(τ)
语谱图 spectrogram
声音傅里叶变换在Praat中的时间域被忽略了。相反,它的时域被认为是从t=0到t=T,其中t=0被认为是与第一个采样点对齐,T是采样的总时间,即 N Δ t NΔt NΔt,其中 N N N是采样点的数量和 Δ e t Δet Δet是采样周期。因此,最后一个采样点位于 t = T − Δ t t=T-Δt t=TΔt

对于一个声音 x ( t ) x(t) x(t),定义在域 ( 0 , T ) (0,T) 0T中的所有时间 t t t,对于任何频率f的复数频谱 X ( f ) X(f) X(f) x ( t ) x(t) x(t)的正向傅里叶变换,有一个负的指数。
X ( f ) = ∫ 0 T X ( t ) e − 2 π i f t d t X(f)=\int_{0}^{T} X(t) e^{-2 \pi i f t} d t X(f)=0TX(t)e2πiftdt

如果声音的单位是帕斯卡 Pa \text{Pa} Pa,那么频谱的单位是 Pa-s \text{Pa-s} Pa-s,或 Pa/Hz \text{Pa/Hz} Pa/Hz。由于频谱对象只能包含有限数量的频率样本,它只对 Δ f = 1 / T Δf=1/T Δf=1/T的倍数的频率进行计算。这些频率的数量是由声音的样本数 N N N决定的。

如果 N N N是奇数,将有 N N N个频率样本。例如,如果声音有 20457 20457 20457个样本,频谱将在频率 − 10228 Δ f -10228Δf 10228Δf, − 10227 Δ f -10227Δf 10227Δf, …, − Δ f -Δf Δf, 0 0 0, + Δ f +Δf +Δf, …, + 10227 Δ f +10227Δf +10227Δf, + 10228 Δ f +10228Δf +10228Δf计算出来。如果我们假设一个频率样本代表一个宽度为 Δ f Δf Δf的频率,我们可以看到频率样本跨越了相邻的频率范围,例如第一个样本从 − 10228.5 Δ f -10228.5Δf 10228.5Δf − 10227.5 Δ f -10227.5Δf 10227.5Δf,第二个从 − 10227.5 Δ f -10227.5Δf 10227.5Δf − 10226.5 Δ f -10226.5Δf 10226.5Δf。这些频率样本一起跨越了频谱的频域,即从 − F -F F + F +F +F,其中 F = 10228.5 Δ f F=10228.5Δf F=10228.5Δf。可以看到,这个频率等于原始声音的采样频率的一半。 F = 10228.5 Δ f = 10228.5 / T = 10228.5 / ( 20457 Δ t ) = 0.5 / Δ t F = 10228.5Δf = 10228.5/T = 10228.5/(20457Δt) = 0.5/Δt F=10228.5Δf=10228.5/T=10228.5/(20457Δt)=0.5/Δt。这就是所谓的奈奎斯特频率。

如果 N N N是偶数,将有 N + 1 N+1 N+1个频率样本。例如,如果声音有 32768 32768 32768个样本,频谱将在频率 − 16384 Δ f -16384Δf 16384Δf, − 16383 Δ f -16383Δf 16383Δf, …, − Δ f -Δf Δf, 0 0 0, + Δ f +Δf +Δf, …, + 16383 Δ f +16383Δf +16383Δf, + 16384 Δ f +16384Δf +16384Δf计算出来。同样,频率样本跨越了相邻的频率范围,但第一个和最后一个样本只有其他样本的一半宽,即第一个样本从 − 16384 Δ f -16384Δf 16384Δf − 16383.5 Δ f -16383.5Δf 16383.5Δf,第二个从 − 16383.5 Δ f -16383.5Δf 16383.5Δf − 16382.5 Δ f -16382.5Δf 16382.5Δf,最后一个从 + 16383.5 Δ f +16383.5Δf +16383.5Δf + 16384 Δ f +16384Δf +16384Δf。这些频率样本再次跨越了频谱的频域,即从 − F -F F + F +F +F,其中 F = 16384 Δ f = 0.5 / Δ t F=16384Δf=0.5/Δt F=16384Δf=0.5/Δt,是奈奎斯特频率。

在频谱对象中,Praat分别存储复数频谱的实部和虚部。实部等于余弦变换。
re X ( f ) = ∫ 0 T x ( t ) cos ⁡ ( 2 π f t ) d t \text {re} X(f)=\int_{0}^{T} x(t) \cos (2 \pi f t) d t reX(f)=0Tx(t)cos(2πft)dt

虚数部分等于正弦变换的反向。
im ⁡ X ( f ) = − ∫ 0 T x ( t ) sin ⁡ ( 2 π f t ) d t \operatorname{im} X(f)=-\int_{0}^{T} x(t) \sin (2 \pi f t) d t imX(f)=0Tx(t)sin(2πft)dt

复数频谱可以从实部和虚部重建,如下所示。
X ( f ) = re ⁡ X ( f ) + i im ⁡ X ( f ) X(f)=\operatorname{re} X(f)+i \operatorname{im} X(f) X(f)=reX(f)+iimX(f)

由于余弦是t的对称函数,正弦是t的反对称函数,所以负的频率的复数光谱是相应的正的频率的复数光谱的复共轭。
X ( − f ) =  re  X ( − f ) + i i m X ( − f ) =  re  X ( f ) − i im ⁡ X ( f ) = X ∗ ( f ) X(-f)=\text { re } X(-f)+i \mathrm{im} X(-f)=\text { re } X(f)-i \operatorname{im} X(f)=X^{*}(f) X(f)= re X(f)+iimX(f)= re X(f)iimX(f)=X(f)
这些值被计算为Spectrum的实部和虚部的平方之和。

  1. 共振峰 formant 和频谱图 spectrogram 之间的关系是什么?如何用 Praat 获得频谱切片spectral slice?

在这里插入图片描述

语谱图spectrogram

在这里插入图片描述

共振峰 formant

共振峰是被声道特别放大的频带,是频谱中能量相对集中的一些区域,谐波经过声道调制后的会形成具有共振峰的语谱图

Praat的精确操作,同样取决于频谱图设置中的窗口形状。假设选择的是50ms长。Praat会提取整个选区,然后把这个50ms长的信号乘以窗口形状,然后计算出一个频谱,把它放到对象窗口中,然后打开一个编辑窗口。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2xSVq0KR-1633871339959)( #pic_center =500x)]

  1. 什么是脉冲 pulses?哪些声学参数与脉冲有关?

在点过程中的每一个点都会产生一个脉冲。这个脉冲在产生的声音的奈奎斯特频率上被过滤,将其转换为一个采样的sinc函数。

  • 采样频率(Hz):产生的声音对象的采样频率,例如44100赫兹。
  • 适应系数:如果脉冲时间不在前一个脉冲的适应时间内,脉冲高度将被乘以该系数;如果脉冲时间不在前一个脉冲的适应时间内,脉冲高度将再次被乘以该系数。这个系数是为了防止脉冲序列在静默后突然启动,如果想在静默后突然启动,那么这个系数就是1.0。
  • 适应时间 (s):被认为是静默的最小时间,例如0.05秒。
  • 内插深度:sinc函数在峰值左边和右边的范围,例如2000个样本。
    例如:如果适应因子是0.6,适应时间是0.02秒,那么在至少20毫秒的静默后,前两个脉冲的高度将分别乘以0.36和0.6。

任务二:发音与听觉感知

  1. 从文件夹“GuoL”中加载所提供的语音波形,观察并解释语音的谐波 harmonics。

目的
进行一个短期的HNR分析。

算法
ac该算法在精确自相关方法的基础上进行声学周期性检测,如Boersma(1993)所述。
cc该算法在前向交叉相关分析的基础上进行声学周期性检测。

设置
时间步长取标准值0.01秒,测量间隔(帧长)以秒为单位。最小间距决定了分析窗口的长度,取标准值75赫兹,沉默阈值指不包含振幅超过此阈值(相对于全局最大振幅)的帧,被视为无声,取标准值0.1。每个窗口的周期数取标准值4.5。
4.5对语音来说是最好的。保证可靠地检测到高达37dB的HNR值;每个窗口的6个周期将这一数字提高到60dB以上,但算法对信号的动态变化更加敏感。
使用方法
在这里插入图片描述

  1. 从文件夹“GuoL”中加载所提供的语音波形,比较 EGG 信号和语音信号的波形 waveforms 差别。

左图为Sound 40004 EGG 信号,右图为Sound 40004语音信号
在这里插入图片描述
左图为Sound 40003 EGG 信号,右图为Sound 40003语音信号

在这里插入图片描述

EGG的waveforms较复杂,幅度基本一致,音节之间无明显区别;EGG语谱图没有明显的共振峰。这是因为语音的口唇辐射的影响比较小, 容易作理论估计, 而声门波的频谱的关系比较复杂, 影响也较大。

  1. 绘制文件夹“Emotion”中“exp-0.wav”(中性)、“exp-1.wav”(愤怒)、“exp-4.wav”(悲伤)的基音轮廓 pitch contour(参考第二周讲义),比较三者之间的差异。思考:除了 pitch contour 外,三个语音还有什么其他声学特征的差别。
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
中性的基音轮廓较稳定,且居中;愤怒的基音轮廓音调很高,分布很离散;悲伤的基音轮廓音调很低。所以由声带振动的频率不同,导致的基音轮廓不同,通知音高能够蕴含情绪的内容。

除了 pitch contour 外,三个语音其他明显声学特征的差别:
在这里插入图片描述
由图可知,愤怒的音强最高,悲伤的音强最低,这与我们主观感受也是一致的。

  1. 绘制文件夹“Book”中“book_declaration.wav”、“book_question.wav”的基音轮廓 pitch contour(参考第二周讲义),比较二者之间的差异。

在这里插入图片描述
“book_declaration.wav”整体基音是一个下沉的趋势,而“book_question.wav”是一个反问的语气,基音呈现一个上升的趋势。

  1. 绘制文件夹“Emotion”中“exp-0.wav”的宽带语谱图和窄带语谱图(参考第二周讲义),比较二者之间的差异。

window length=0.002s

在这里插入图片描述
window length=0.01s
在这里插入图片描述

  1. 加载文件夹“Mask”中“abc.wav”,显示该音频的波形 waveform 和频谱图 spectrogram,听不同的部分,体会掩蔽效应 mask 的效果,说明该段音频不同时间段分别包括哪些频率的声音,并说明在不同时间段你听到的声音情况,解释掩蔽效应。

Formant
在这里插入图片描述

总结

基本入门Praat的使用方法,具体的原理还需要再看,实验课上学了如何改变音高和时间来调整音频

  • 22
    点赞
  • 96
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值