码迷,mamicode.com
首页 > 其他好文 > 详细

5、智骏新数据自适应实验(许小晴语料)

时间:2015-04-03 17:07:13      阅读:502      评论:0      收藏:0      [点我收藏+]

标签:

实验目的:

实验过程:

  1. 处理wav文件
    1. 这次的初始的wav文件是:mono,48000Hz
    2. 所以,只需把48000Hz的转化为16000Hz的即可
    3. ok,两步脚本处理完毕,在Corpus/Zhijun_XuXiaoQing/wav
      1. 先改名字:1_changeName.pl
      2. 再把48000Hz转化为16000Hz即可:2_48HzTo16Hz.pl
  2. 再处理txt文件,产生lab文件
    1. 在自己的PC上处理
    2. 建立路径:2015-02/Z_智俊公司合作相关/WangX_处理ssml文件的perl脚本/XuXiaoQing
      1. 把文件名字由0001.txt 改为SpkContext_0001.ssml
        1. #!/usr/bin/perl
          
          foreach $var(glob ("*.txt"))
          {
              #$base = `basename $var`;
              $var_before = $var;
              $var =~ s/txt/ssml/;
              $finalName = "SpkContext_$var";
              system("mv $var_before $finalName");
              print "Processing $var \n";
          }
          print "Over ... \n";
        2. 首先使用glob函数,依次获取当前路径下的0001.txt、0002.txt、0003.txt、
        3. 然后一开始是想用shell脚本的basename命令去获取0001.txt文件的前缀,但是不太清楚为什么没有成功,后面再去研究这个东西吧
        4. 后来想了另外一种方法来替代,是使用,用正则表达式处理文本,s///去进行替换,将0001.txt中的txt全部替换为ssml
      2. 然后进入/prompts/1_ssml2lab.pl文件中修改$ssmlFileDir=‘../XuXiaoQing/‘;
      3. 然后执行 1_ssml2lab.pl脚本
      4. 报错:

        Modification of non-creatable array value attempted, subscript -1 at ./1_ssml2lab.pl line 118.

      5. 发现了一个问题,就是在许小晴语料中,居然还分段了,这在之前的SpeakerA语料中是没有的,所以我需要把许小晴预料中的分段给去掉,因为在Crystal中如果遇到分段,是这样处理的,一段会加上<p></p>表示一段的内容,而之前的王欣给的脚本就是因为许小晴的语料中有大量的<p></p><p></p><p></p><p></p>,所以执行perl脚本时报错。
        1. 这是我经过测试的,如果在许小晴的ssml文件中只保留1个<p></p>,即可以顺利执行通过哦
        2. 所以,现在要做的事情是,写一个perl脚本,去除掉吴锡欣产生的ssml文件的中的4种情况
        3. 技术分享

        4. 这个脚本宁义双正在写
      6. m
    3. m  

实验结果:

 

5、智骏新数据自适应实验(许小晴语料)

标签:

原文地址:http://www.cnblogs.com/yu-blog/p/4390330.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!