本文主要是介绍Praat脚本-012 | 绘制平行句语调图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
- 引题
- 运行脚本
- 获取脚本
- 关注
- 版权说明
引题
学习了如何提取基频Praat脚本-009 | 提取时长和基频之后,本篇介绍如何通过基频数据绘制很多研究对象对于同一句话的平行句的语调图。
这个脚本是Praat脚本-009 | 提取时长和基频的一个变化,09
中提取的基频是一个音节一行,而这里需要对多个同样内容的句子,提取的基频序列,画出对比的语调图,所以每一句提取的所有基频需要在同一行,适用的情况如下,给定例子目录里有5句话,是5个人
的语音,是同样的内容She is much too busy!
,语料来源于http://www.phon.ox.ac.uk/files/apps/IViE/,该网站有一个很多人读的Cinderella的语料
,由很多不同英国方言的人语音组成。通过自动标注软件,这些句子都被标注了音素边界,如下图是两句话的示例。
运行脚本
本文的代码下载地址见下文(获取脚本部分)是12-intonation_pattern/Get_Duration_and_Pitch_Sentence.Praat
。脚本里有我的邮箱,有任何问题都可以来信咨询。
打开Praat
之后,选择Praat
,Open Praat Script...
,打开这个脚本,然后在脚本窗口选择Run
,Run
,或者直接使用快捷键Ctrl+R
,在弹出来的对话框里,设置以下几项:
- 先设置输入
wavs
的目录input_data\
; - 设置输入的TextGrid所在的目录
input_data\
; - 提取层
reference_tier
是音素层所在的层数是2
; - 结果文件所在的路径
result_duration_pitch.txt
- 设置完成后,点击
Run
,运行脚本可以得到结果文件,这里的一句话所有结果是在一行内的
fileName name duration Pitch1 Pitch2 Pitch3 Pitch4 Pitch5 Pitch6 Pitch7 Pitch8 Pitch9 Pitch10
j-rea5-f3_016.TextGrid ax 0.107 166 166 166 165 165 165 166 167 169 172 sh 0.262 172 180 189 197 205 214 222 230 238 246 ih 0.095 246 247 248 248 246 244 241 236 231 225 z 0.051 225 222 219 216 213 211 209 207 207 206 m 0.135 206 205 204 202 201 200 202 205 209 211 ah 0.087 211 212 213 213 213 214 214 215 215 215 *ch(sh) 0.106 215 216 216 216 216 216 216 216 215 215 t 0.094 215 215 215 215 214 214 212 209 205 201 uw 0.069 201 197 194 191 188 186 184 182 181 180 (b-) 0.036 180 179 179 178 178 178 178 178 178 178 ih 0.065 178 178 178 178 177 176 176 175 174 174 z 0.076 174 174 175 176 177 177 177 177 176 175 ih 0.141 175 171 167 164 163 162 163 165 166 167 sp 0.050 167 167 167 167 167 167 167 167 167 167
... ... ...
- 下面的工作应该是整理这些数据,要做到每句话都显示同样的音节数,由于我们提取的时候是每个元音音节位置提取
10
个点,所以每10
个点一组,相邻用一个空的列隔开,如下所示。 经过整理,得到如Excel的结果
j-rea5-f3_016.TextGrid 246 247 248 248 246 244 241 236 231 225 225 222 219 216 213 211 209 207 207 206 211 212 213 213 213 214 214 215 215 215 201 197 194 191 188 186 184 182 181 180 178 178 178 178 177 176 176 175 174 174 175 171 167 164 163 162 163 165 166 167
j-rea5-f5_016.TextGrid 299 301 304 308 313 319 324 328 330 331 330 326 320 312 302 293 284 277 273 272 285 285 285 285 285 285 286 286 287 288 285 283 280 276 271 266 261 257 256 259 295 297 298 298 298 297 295 293 291 290 267 255 244 235 228 222 217 213 210 209
j-rea5-f6_016.TextGrid 323 319 316 313 311 309 306 303 299 293 293 287 279 271 263 253 244 235 227 221 232 235 237 239 240 241 242 242 241 241 217 209 201 192 185 179 174 171 169 170 140 133 127 121 117 113 111 111 113 115 143 120 103 94 90 87 85 83 82 82
j-rea5-m1_016.TextGrid 169 173 176 177 177 176 175 172 168 164 164 162 158 155 152 148 145 142 139 137 161 162 163 166 170 176 186 198 213 230 166 158 151 145 141 137 135 133 131 130 143 143 142 140 139 137 137 136 135 135 141 140 138 137 135 134 134 134 134 135
j-rea5-m2_016.TextGrid 127 128 130 130 130 130 129 127 123 121 121 121 121 120 120 120 120 119 119 119 107 107 106 104 103 101 99 97 95 94 99 98 96 95 93 92 91 90 91 93 119 119 119 118 117 115 114 112 111 109 110 110 110 110 110 110 110 110 110 110
- 在
Excel
里画折线图,得到如下的结果,我们便得到了对于同一句话,5
个人读的语调情况,从而进行相应的分析。
获取脚本
https://github.com/feelins/Praat_Scripts
本站所有Praat脚本
都可以在上述github的项目目录
里找到,如果日常对代码、脚本操作比较熟练的可通过下载、安装、配置github for windows
在自己的电脑上通过git clone
将代码下载到本机,这样的好处是可以跟主站及时更新代码。
不想费如此脑筋,可以通过点击如下图Code位置所示,下载整站的代码,可直接使用。
关注
关于对本站脚本的使用咨询,以及功能修改,增加等,都可以扫QQ咨询群,私信群主。
版权说明
1、版权归本公众号“极地语音工作室”,原名“语音处理小站”所有;
2、未经本站或者作者允许, 不得任意转载本文内容,否则将视为侵权;
3、转载或者引用本文内容请注明来源及原作者;
4、对于不遵守此声明或者其他违法使用本站内容者,本人依法保留追究权等。
这篇关于Praat脚本-012 | 绘制平行句语调图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!