繁体   English   中英

如何使用 python lib librosa.pyin 获得完整的基本 (f0) 频率提取?

[英]How to get complete fundamental (f0) frequency extraction with python lib librosa.pyin?

我在语音音频剪辑上运行 librosa.pyin,它似乎并没有从录音的第一部分中提取所有基础知识 (f0)。

librosa 文档: https ://librosa.org/doc/main/generated/librosa.pyin.html

高级:22050

fmin=librosa.note_to_hz('C0')
fmax=librosa.note_to_hz('C7')

f0, voiced_flag, voiced_probs = librosa.pyin(y,
                                             fmin=fmin,
                                             fmax=fmax,
                                             pad_mode='constant',
                                             n_thresholds = 10,
                                             max_transition_rate = 100,
                                             sr=sr)

原始音频:

原始音频

具有基音、起始音和起始强度的频谱图,但第一部分没有提取任何基音。

音频文件链接:https ://jasonmhead.com/wp-content/uploads/2022/12/quick_fox.wav

times = librosa.times_like(o_env, sr=sr)
onset_frames = librosa.onset.onset_detect(onset_envelope=o_env, sr=sr)

在此处输入图像描述

功率谱图的另一个视图:

在此处输入图像描述

我尝试压缩音频,但这似乎不起作用。

关于我可以调整哪些参数或可以进行音频预处理以从所有单词中提取基音的任何建议?

什么类型的事情会影响基音提取的成功?

TL;DR似乎都是关于参数调整的。

以下是我在示例中得到的一些结果,最好在单独的选项卡中打开它: 一些图表 底部的图显示了示例文件的音标(好吧,有点)。 我自己得出的一些结论:

  1. 有一些单词/单词的一部分很难听到:它们的能量很低,单独听它们听起来不像一个单词,但只有当与附近的片段结合在一起时(“the”很短,听起来更像是“z”)。
  2. 有些词被分成几个部分(例如“fo”-“x”)。
  3. 我真的不知道当有人发音为“x”时 F0 频率应该是多少。 我什至不确定人与人之间的发音是否存在差异(否则猫怎么知道我们在世界各地称呼它们)。
  4. 两秒的时间是相当短的时间。

一些实验:

  • 如果我们想看到平滑的 F0 图,使用n_threshold=1就可以了。 这是个坏主意。 在图表的“voiced_flag”部分,我们看到当n_threshold=1时,它决定每一帧都是有声的,将每个频率变化计为活动。
  • 更改采样率会影响恢复 F0 的能力(在最右边的图中,采样率减半),正如之前提到的n_threshold=1不算在内,但我们也看到n_threshold=100 (这是默认值pyin的值)根本不会产生任何 F0。
  • 最左上角 ( max_transition_rate=200 ) 和中间 ( max_transition_rate=100 ) 图显示了n_threshold=2n_threshold=100的提取 F0。 实际上它的降级非常快,并且n_threshold=3看起来几乎与n_threshold=100相同。 我发现下面的部分,即voiced_flag决策图,在与语音记录结合时具有很高的重要性。 在中间图中,默认参数识别“qui”、“jum”、“over”、“la”。 如果我们想要其他音素的 F0, n_threshold=2应该可以完成工作。
  • 设置n_threshold=3+给出相同范围内的 F0。 增加max_transition_rate会增加噪音和不愿宣布语音段结束。

这就是我的想法。 希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM