语音标注自动音段对齐工具SPPAS使用笔记

15 篇文章 2 订阅

[更新日期:2019年08月08日  。咨询邮件feipengshao@163.com,请务必附件样例以及有问题脚本,出错提示等,否则不予回复]

      SPPAS工具是由Brigitte BigiLaboratoire Parole et Langage - Aix-en-Provence - France)开发的。在网上提供免费下载及使用。这是一款目前比较流行的自动标注,音段对齐的工具,目前应用于法语、英语、汉语等都有不错的效果。虽然音段自动对齐的准确率并不完善,但是对于一般的语音研究者来说,能够自动产生出带有音段信息,并且边界相对整齐的Praat标注文件TextGrid已经是大大提升了工作效率。所以推荐给进行语音研究,而且数据量规模很大的朋友。

      有关于这个工具的详细说明,介绍,文档,由此相关的论文等信息请参阅官方网站:http://www.sppas.org/。在这里只是把使用的时候注意的一些地方写出来,以方便一些可能对插件包安装使用并不熟悉的同学。

       首先是一些使用时的注意事项,请想使用软件的同学务必仔细看一下是否符合。

  • 标注文件,及声音对应的文本文件,都必须是UTF8格式
  • 声音文件必须是单通道文件,16位精度,格式为WAVE或者AU;
  • 所有的文件名称中没有特殊字符,比如中文,空格都不允许,推荐只出现字母,下划线,数字或者横线
  • 声音文件和对应的文本文件名称必须完全一致
  • 具体使用步骤应该是
    • 安装工具,在自己的电脑上配置这个工具使用的环境(需要安装三个其它工具)
    • 语音最好是录音条件比较好的数据,即录音环境很安静。发音人语音清晰,这样会明显提升自动标注效果。如果是在嘈杂环境的录音,野外录音,这样的自动标注效果很差。
    • 录音文件每一单位之间,最好有比较清楚的停顿,比如你是录音很多字、词,那么发音人在读字,词之间时,最好有一些停顿;如果是录音很多句子,那么句子之间也要有明显的停顿,这样也可以提高自动标注精度;
    • 然后将这样的文件都添加到SPPAS操作窗口里,选择相应的语言,选择音段对齐选项,点击“执行”就可以产生出来音段对齐的TextGrid了
  • 这其中对于如何把工具环境安装好,对于只有文科基础的同学不太容易操作,但是一旦安装好了,以后就可以直接使用了。

      本文力求对每个环节都写的简单一些,让更多想使用这个工具的人能够很快的将工具配置好,节省自己的工作效率。

1. 安装

     这部分主要就是大概翻译了一下官方网站上的Installation这一部分。

  1. windows环境下的安装:官方网站现在没有区分如何安装32位以及64位,这是因为现在的系统比如win7,win10是64位的很多,而32位的软件在64位的电脑上运行是没有问题的。所以官方网站只提供了一种,就是32位的安装,如果你的电脑系统是64位,同样也可以使用,我自己已经做过测试。没有问题。

  2. Python installation

    1. Python的官方网站是:https://www.python.org/,下载页在:https://www.python.org/downloads/release/python-2713/,请选择32位下载,Windows x86 MSI installer。上面已经说明过,不需要专门针对64位的机器下载64位,尤其对于初学者,32位可以将Python的bin目录增加到系统环境变量里,而64位有时候需要手工增加,如果你熟悉这个操作,可以选择64位Python安装,这里以32位为准。
    2. 安装过程即和常规安装软件的过程类似,第一步使用默认方式就可以,即安装给该系统所有用户使用。   

    3. 第二步,安装的路径,不建议目录太深,最好在常用盘,比如C盘或者D盘的根目录下,如图所示,在C盘根目录下的Python27就可以,27表示是2.7版本,有其它开发需求的朋友可能也会安装Python3.4以上版本,所以这里也要注意区分。

    4. 在这一步,给出了64位和32位安装的区别,左边是64位,右边是32位,右边有一个选项,可以将Python.exe设置到系统的环境变量里。

    5. 最后安装成功。

  3. WxPython installation

    1. WxPython是辅助Python实现可视化界面的。可以根据前面安装Python选择32位或者64位:
    2. 32位:https://sourceforge.net/projects/wxpython/files/wxPython/3.0.2.0/wxPython3.0-win32-3.0.2.0-py27.exe/download
    3. 64位:https://sourceforge.net/projects/wxpython/files/wxPython/3.0.2.0/wxPython3.0-win64-3.0.2.0-py27.exe/download
    1. 安装过程如下,第一步直接点下一步就可以。

    2. 这一步也是选择接受协议Accept the agreement直接点下一步。

    3. 第三步很关键,这个路径一定要和前面Python27目录保持一致,在本例中Python安装在C盘,则象下面这样,这样的路径才是正确的。site-packages表示WxPython作为一个 模块包,在Python里。

    4. 最后,这三个选项默认都选中,点击finish.
  4. Julius installation

    1. Click here to downloadJulius (release >= 4.1)     
    2. 这个组件不需要安装,直接解压到一个目录里
    3. 打开这个目录,打开bin目录,找到Julius.exe,注意因为本文下载的是Julius 4.3.1版本,所以其实这个文件名称是Julius-4.3.1.exe,即要把这个文件拷贝到C:\windows\目录下,并且改名为:julius.exe  
    4. 注意:64位机器不需要找专门的这个版本,就使用和第(3)同样的方式操作就可以了,已经测试过,是成功了。
  5. SPPAS工具的下载安装

    1. 下载新版本的SPPAS。
    2. 下载后直接解压到磁盘根目录下,比如D盘下。D:\sppas\,目录级别不要太深。
    3. 打开后,直接打开里面的sppas.bat,就可以运行了。
    4. 打开之后是这样的界面,注意Setting里面需要设置结果文件为TextGrid,现在软件默认的是xra文件。

 2. 制作声音文件和文本

  • 手工制作声音文件和文本文件:
    • 手工录音,然后分别针对每一个录音单位制作文本文件
    • 注意声音文件和文本文件是对应出现的。文件名称必须一样。而文本文件,比如Sound_1.txt里面就是这个声音的内容,没有其它多余信息。如红色箭头所指。在保存这个文本文件的时候,需要注意编码格式为UTF-8格式,如下面的红色方框所示。
  • 批量制作声音文件和文本文件
    • 使用前面的文章《Praat 将连续录制的声音文件切成小单位文件》介绍的方法,可以对连续录制的很长的声音文件切分成小的单位文件。在这里要继续使用这个脚本产生的文件名列表,fileList.txt,这个文件里是这样的
    • order	filename	sentence
      1	Sound_1.wav
      2	Sound_2.wav
      3	Sound_3.wav
      4	Sound_4.wav
      5	Sound_5.wav
      6	Sound_6.wav
      7	Sound_7.wav
      8	Sound_8.wav
    • 我们利用产生的文件名,把录音对应的内容,和文件名对应起来。如下面所示

    • Sound_1.wav	关心
      Sound_2.wav	刚刚
      Sound_3.wav	单一
      Sound_4.wav	糟糕
      Sound_5.wav	新鲜
      Sound_6.wav	餐厅
      Sound_7.wav	西瓜
      Sound_8.wav	车厢

    • 然后再使用,本人编写的另外一个工具,可以直接产生有这些内容的文本文件,工具下载地址如下:

    • 产生的文件内容如下,之所以使用这样的工具产生文本,主要是为了产生UTF-8格式的文本文件。

3. 导入SPPAS进行切分

  1. 经过上面的步骤,我们已经制作了批量的声音文件和文本文件,把这些文件放在同一个目录内:
  2. 然后打开SPPAS这个工具,点击Add files将声音文件添加到窗口里,同时,有同样文件名的txt也会被添加到窗口里,把这些文件通过使用ctrl或者shift键,全部选择,然后把右侧的几个对齐的选项选择,并且在语言里选择相应的语言,比如这里选择的是中文,cmn
  3. 点击右下角的这个长的按钮,就是执行按钮,然后系统就会自动产生出来对齐音段的TextGrid文件。
  4. 一般情况下,会同时产生几个TextGrid
  5. 我们只需要最终的结果Sound_-palign.TextGrid文件。
  6. 这就是最终的结果:可以看到,准确度并不高,但是省去了很多人工的添加边界,输入字符的过程。

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

![在这里插入图片描述](https://img-blog.csdnimg.cn/35877f190a774dc6a7d17cb720382d9c.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NoYW9wZW5nZmVp,size_16,color_FFFFFF,t_70#pic_center)
# 版权说明
1、版权归本公众号“极地语音工作室”,原名“语音处理小站”所有;

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

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

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

  • 17
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 48
    评论
评论 48
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极地语音工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值