目录

  • 引题
  • 提取基频
  • 操作解释
  • 运行脚本
  • 获取脚本
  • 关注
  • 版权说明

引题

在提取数据的工作中,提取基频这是最重要的一部分,基频也可以称为Pitch, F0。它跟我们感知到的声调,语调是相关的,所以通常用来描述声调语言的声调,以及语调走势等。有关于相关的理论在此不展开,请查阅其它资料。以下图例从论文中摘出。

上图针对的声调语言的声调研究,在通过大量的数据提取平均值之后,画出来4个声调调类的基频走势。上图是原始值,下图是归一化到5度的值。描述方法是一样的。从这样的图,我们能够大概知道研究对象的声调趋势情况。

同样的道理,我们想研究一句话的语调,也是同样作出类似的基频图,如上图,通过这一句话对比美国发音人中国学生的语调区别。

提取基频

虽然本站主要在介绍如何使用Praat脚本,其实提取基频远不止使用Praat脚本这一条路,其它常用的工具或者工具包,有Straight, Reaper, Python,Matlab, R等。有的人经常会困于这样的纠结中,认为Praat脚本必须是比较低级的学习者才用的工具,而我的论文,我的课题要体现出优越感,要体现出高大上,随即转向去用其它办法来提取,我觉得大可不必有这样的胡思乱想,小编比较过使用Praat提取的基频和其它的方法提取的差异,这真的是可以忽略不计的,因为频率的计算自然就是通过对N个采样点使用数学公式,差别只是在于小数点后面几位的大小吧,而真正描述我们的语音现象,使用Praat提取的基频是足够有说服力的。

操作解释

我们举一个例子说明Praat对基频的一些操作,如图所示。这是一句中文的标注。请关注中间的频谱部分有一些蓝色的线,这些线就是基频线,当鼠标点在频谱某一个位置时,在窗口的右侧,这个数值就是这一点的基频值,是312.2Hz,单位是赫兹。这个汉字“梯”明显是声调为1,高平调,很明显这一小段的基频线也是几乎是一条直线,而且它的位置很高,或者说数值都比较大,相对其它声调的基频数值来说。

我们提取基频是不是就意味着点点鼠标,将这些值记录下来呢?确实如此。不过如果使用脚本,我们是可以批量提取的。而且因为展示在计算机上的声波或者频谱都是经过N个采样点显示的,我们该使用多少个点来描述基频呢?这个也要因研究而异。有的地方的语言声调没有时长的变化,每一种声调类型取10个点就可以了,比如上面的“梯”字,取浊音部分时长分10份,每一份取一个值就好了,用这10个点来来出基频曲线,在这里,就代表这个字的声调。Praat有一个操作可以让我们得到一串数字。

首先将鼠标点到需要提取基频的“梯”字的韵母部分,即i1这个位置,然后点击菜单上的Pitch里的Pitch listing这里我们得到以下的数值,第一列是时间点,它是每隔0.005秒提取一个数值的,而第二列就是基频值。最后两个点由于在浊音的尾巴部分,这个地方并没有算出来基频值,这种情况发生在清音段。

Time_s   F0_Hz
2.195000   312.571904
2.205000   307.672618
2.215000   307.210382
2.225000   308.833792
2.235000   310.290384
2.245000   311.272558
2.255000   312.534089
2.265000   314.228055
2.275000   316.011664
2.285000   317.721282
2.295000   319.152261
2.305000   319.941487
2.315000   320.963075
2.325000   322.201205
2.335000   323.185139
2.345000   324.748366
2.355000   326.452091
2.365000   326.797606
2.375000   324.231642
2.385000   --undefined--
2.395000   --undefined--

我们将这些数值放在Excel表格里,即可画出基频曲线图。

运行脚本

本文的代码下载地址见下文(获取脚本部分)是09-get_duration_and_pitch/Get_Duration_and_Pitch.Praat。脚本里有我的邮箱,有任何问题都可以来信咨询。

打开Praat之后,选择PraatOpen Praat Script...,打开这个脚本,然后在脚本窗口选择RunRun,或者直接使用快捷键Ctrl+R,在弹出来的对话框里,设置以下几个地方:

  1. 设置你的wav所在的目录,这里因为是在Windows系统,所以路径斜线是\,如果你是在Mac使用,将这个斜线方向反一下就好。本文示例是放在E盘的Biaobei_Demo目录里。自己没有数据的可以参考本公众号里的一篇文章,开源的中文英文数据库,就是这些示例,是已经标注过的;
  2. 同样的方法设置下面的PitchTier目录和TextGrid目录,请注意,如果没有自己修过的基频目录,PitchTier目录可以置空;
  3. 接着设置你要提取的一般是音素层,它是第几层,这里在第1层;
  4. 设置提取出来的结果文件的路径。

设置完毕,点击OK,运行脚本,结果可以到结果文件里查看。

结果是这样的,首先是文件名,其次是这个音素的名称,再后面是音素的时长,以及后面的10个点的基频值

由于这是中文数据,我们看一下在说话的过程中我们所说的上声,具体表现是什么样的呢?我们从上面的数据里将3声调的数值都提出来在Excel里做一下平均,再画图。我们得到了这样的一个曲线,很明显,这个3声和我们想象的单念的时候差别很大,我们在单念的时候需要一个很夸张的末尾上扬,在实际说话中这个并不明显。有兴趣的同学可自己单念几个上声字检查这个声调图。

获取脚本

https://github.com/feelins/Praat_Scripts

本站所有Praat脚本都可以在上述github的项目目录里找到,如果日常对代码、脚本操作比较熟练的可通过下载、安装、配置github for windows在自己的电脑上通过git clone将代码下载到本机,这样的好处是可以跟主站及时更新代码。
不想费如此脑筋,可以通过点击如下图Code位置所示,下载整站的代码,可直接使用。

关注

关于对本站脚本的使用咨询,以及功能修改,增加等,都可以扫QQ咨询群,私信群主。

版权说明

1、版权归本公众号“极地语音工作室”,原名“语音处理小站”所有;

2、未经本站或者作者允许, 不得任意转载本文内容,否则将视为侵权;

3、转载或者引用本文内容请注明来源及原作者;

4、对于不遵守此声明或者其他违法使用本站内容者,本人依法保留追究权等。

Praat脚本-009 | 提取时长和基频相关推荐

  1. Praat脚本-022 | 提取时长和音强

    目录 引题 操作解释 运行脚本 获取脚本 关注 版权说明 引题 提取基频Praat脚本-009 | 提取时长和基频,提取共振峰Praat脚本-010 | 提取时长和共振峰,提取音强,这大概是最常用的三 ...

  2. Praat脚本-010 | 提取时长和共振峰

    目录 引题 操作解释 运行脚本 获取脚本 关注 版权说明 引题 与提取基频的工作类似,提取共振峰也是很常用的一个数据提取操作,共振峰在物理学上称为共振谐波,最典型的例子是我们扔石子到水里,看到的一条一 ...

  3. Praat脚本提取时长及基频并示例如何绘制声调图

    Praat脚本提取时长及基频并示例如何绘制声调图 2016年03月29日 17:21:04 不太会编程 阅读数:13986 标签: Praat脚本声调图汉字声调五度值 更多 个人分类: Praat 版 ...

  4. Praat脚本-008 | 提取某一层时长

    目录 引题 运行脚本 获取脚本 关注 版权说明 引题 提取时长是提取数据的工作中最基本的,这个脚本的目的其实主要是为了一些脚本爱好者能有一个学习的机会.因为实现起来比较简单. 我们以下面的标注文件为例 ...

  5. python提取时长2s以内的单词音频的韵母基频,以及单词词长信息

    python提取时长2s以内的单词音频的韵母基频,以及单词词长信息 提取信息自动存入当前工作空间中的excel文件,包括文件名.前字时长.后字时长.两字总时长.前字韵母基频.后字韵母基频.(10个点, ...

  6. Praat脚本-033 | Praat脚本批量提取MFCC参数

    MFCC(Mel-frequency cepstral coefficients):梅尔频率倒谱系数.梅尔频率是基于人耳听觉特性提出来的, 它与Hz频率成非线性对应关系.梅尔频率倒谱系数(MFCC)则 ...

  7. Praat脚本-000 | 实用的Praat脚本总索引

    该项目包括一些Praat常用脚本,并结合简单实例说明如何使用这些脚本,每一个独立的目录里面有示例文件以及结果文件,适用于已经对Praat基本操作有些了解,对时长,基频,共振峰等基本声学参数有所了解的初 ...

  8. linux praat 脚本,Praat脚本编程中文教程:实例讲解提取十点基频脚本

    如果本系列教程你是从头开始看的话,那么到这里相信很多人已经有了相应的基础了,但可能还有很多人看着前面的教程都是分开单个功能点进行讲解的,理解每一行代码应该没问题,但是要是真的给你一个需求,让你根据需求 ...

  9. Praat脚本-007 | 计算目录里音频或者TextGrid总时长

    目录 引出 简便操作 脚本 脚本说明 运行脚本 如何获取脚本 关注 版权说明 引出 统计录音时长,是大家经常用到的一个功能,统计的方法有很多,这里小编只介绍两种,一种是在win10系统中的资源管理器中 ...

最新文章

  1. C语言实现十大经典排序算法
  2. java通过代理访问网络
  3. 神经网络模拟sin 发现的规律和大神傅里叶说的一致
  4. h5网页在移动端(安卓)head里的title为空,默认显示url地址。js代码将head的title设置为空
  5. 华为 原生android 6.0,安卓6.0原生桌面轻体验,我的手机从未如此流畅过
  6. C#委托的异步调用[转]
  7. 数据结构(终极线段树篇)
  8. VS Code 批量操作
  9. Adobe illustrator 拼图模板制作 - 连载21
  10. 8025枚BTC在未知钱包间转移 价值约3.09亿美元
  11. 减小服务器负担,Apache启用mod_expires模块
  12. Qt制作音乐播放器按钮
  13. 论文阅读笔记:ShuffleNet
  14. 计量模型 | 固定效应与交互固定效应
  15. pcr技术发展史——人类核酸研究的前世今生
  16. IDM(PC端下载) -Chrome浏览器插件
  17. Kiwi for Gmail Mac(mac gmail邮箱客户端)
  18. sensitivity和specificity
  19. C语言求1到100的和
  20. Java基于JSP+mysql的学科竞赛管理系统

热门文章

  1. 有一个勤奋好学积极向上的男朋友是一种什么样的体验…
  2. 从CSDN举办的SD2.0看“做啥网”的业务形态
  3. 关于利用浮动实现复杂图文练习
  4. 《信息可视化的艺术:信息可视化在英国》
  5. [Revit教程]斑马:如何自学Revit#S002
  6. javascript短路运算
  7. python爬取短视频,Python爬虫一键下载yy全站短视频详细步骤(附源码)
  8. java装了1.8,更换成11后,-version还是显示java8的解决方法
  9. gog无效的验证码_GOG提供了Linux游戏,Steam Controller推测等等
  10. 编写测试代码事物回滚案例