1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Praat脚本-010 | 提取时长和共振峰

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

时间:2019-10-07 10:34:32

相关推荐

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

目录

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

引题

与提取基频的工作类似,提取共振峰也是很常用的一个数据提取操作,共振峰在物理学上称为共振谐波,最典型的例子是我们扔石子到水里,看到的一条一条有规律的水波慢慢展开来,在语谱图上,周期性的浊音,也会产生谐波共振,通过语图上的采样点的描述,我们不但可以清楚的看到这些共振的图形,而且可以通过比较准确的数值来描述出来。共振峰也可以称为Formant。通过第一,第二,第三共振峰可以得到不同元音的分类。通常称为声学元音图。以下来自维基百科。

我们如果有足够多的语料,调查足够多的样本,通过提取第一,第二共振峰,也可以画出上图的元音分布图。下图就是少量数据,提取了3个元音的共振峰图。虽然这样的样本数不足以说明什么论题,但是从图形上大概我们可以看到这几个发音在振峰数据上明显的区别。而与上图比较标准的分布相比,每个类别的发音所在的坐标范围是接近的,即使这两个语言不是同一个语言。

有关于共振峰,包括以前提取的基频,如果应用这些数据,每个人都有不同的理解,小编这里只是提供提取数据的方法,具体的理论应用,还是要靠每个人去自己钻研。

操作解释

我们举一个例子说明Praat对基频的一些操作,如图所示。这是一句中文的标注。请关注中间的频谱部分有一些红色的粗点线,这些线就是共振峰线,当鼠标点在频谱某一个位置时,在窗口的左侧红色的数值,这个数值就是这一点的共振峰值,是353.7Hz,单位是赫兹

Praat也有一个list功能,能够将小部分的共振峰值都列出来,方便即时查看。但是想要对自己标注文件的批量提取还是需要使用脚本。上面我们将鼠标点到“梯”这个字的元音部分,即i,点击菜单上的Formant listing,得到这段时间的第一,第二,第三,第四共振峰的值。

这里我们得到以下的数值,第一列是时间点,它是每隔0.005秒提取一个数值的,而第二列就是第一共振峰,依次是第二,第三,第四,我们现在将它们拷贝到Excel中平均一下。因为第三,第四共振峰很少用来说明。这里第一共振峰平均值为321.6913, 第二共振峰为2243.81。这两个值正好接近本篇第二个图上的i这个音。

Time_s F1_Hz F2_Hz F3_Hz F4_Hz2.195625 324.680287 2516.608172 2867.457184 3748.0715172.75 318.370181 1846.767900 2956.677747 3717.5678122.208125 312.909895 2454.839291 2863.385874 3671.1658602.214375 311.282404 2620.850905 3052.262963 3700.5348322.220625 312.105136 2280.820341 3063.632756 3770.2231172.226875 313.127821 2183.631983 3054.060361 3731.1832302.233125 314.134914 2067.019282 3054.077533 3715.9212552.239375 314.819897 2079.885728 3058.397779 3722.8915282.245625 315.776328 2058.038776 3056.932410 3728.5227072.251875 316.637051 1984.392501 3076.668262 3725.3409992.258125 317.384154 2069.099336 3082.892570 3677.2385632.264375 318.213992 2178.881881 3094.750513 3626.4272882.270625 318.971406 2338.264194 3104.575634 3485.6783962.276875 320.342066 2557.419705 2983.436283 3459.0932492.283125 321.749633 2715.135537 2825.082558 3475.6663792.289375 323.288646 2831.642875 3491.701191 4903.7180052.295625 324.960858 2843.677465 3509.813462 4906.4166792.301875 326.387696 2855.631702 3522.580913 4662.0588892.308125 325.648632 2865.908675 3543.678457 4677.9271312.314375 325.103740 2270.808279 2882.622037 3578.7253672.320625 326.069132 1918.207171 2889.757892 3580.9261962.326875 327.290867 2889.121832 3567.725628 4793.7128992.333125 326.769495 2158.376278 2892.118695 3594.2251852.339375 326.569785 2412.796774 2901.050428 3569.3723592.345625 327.755638 2135.125232 2916.072284 3541.0788902.351875 328.897130 1744.689390 2901.662884 3568.7727942.358125 330.293718 1468.371026 2908.720581 3532.7225262.364375 330.299520 1581.873697 2867.386716 3525.6434272.370625 327.317988 1840.534434 2820.613588 3491.8289922.376875 324.872058 1915.517746 2858.801924 3528.3077052.383125 323.754300 1921.790700 2865.881750 3529.3720732.389375 320.602452 2208.851538 2792.204036 3469.7331142.395625 319.427033 2231.197565 2773.626040 3518.689921

运行脚本

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

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

设置你的wav所在的目录,这里因为是在Windows系统,所以路径斜线是\,如果你是在Mac使用,将这个斜线方向反一下就好;同样的方法设置下面的TextGrid目录;接着设置你要提取的一般是音素层,它是第几层,这里在第1层;设置提取出来的结果文件的路径。

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

结果是这样的,首先是文件名,其次是这个音素的名称,再后面是音素的时长,以及后面的这个音素时间段内的平均共振峰,这里提取了第一,第二,第三,通俗的也直接用F1, F2, F3代替。

为了作图方便,在Excel里把F1,F2顺序反过来,保证能做出那个倒立的梯形,使用Excel里的散点图。

在制作这个声学元音图的时候,需要在Excel里把坐标轴的坐标逆序,如果不知道如何操作,请度一下。

获取脚本

/feelins/Praat_Scripts

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

不想费如此脑筋,可以通过点击如下图Code位置所示,下载整站的代码,可直接使用。

关注

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

版权说明

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

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

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

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。