• (四)看看成果


    下图是一开始告诉大家的,语音识别的流程。

    现在,我们已经完成了HMM模块了。

    所以我们只要录音就可以被识别了!!!

    以下是完整的识别流程图:

    (1)wav文件:录音文件。

    (2)mfc文件:wav文件格式转换后可得。

    (3)HMM:之前的工作就是为了得到这个。

    话不多说,开始吧!

    1、录音:

    我录了7个测试音频文件,都放在/home/ansersion/htk_color/data/test/speech/目录下,分别为

    (1)red.wav:“red“(我的声音)

    (2)blue.wav:”blue"(我的声音)

    (3)red_other.wav:“red"(同学的声音)

    (4)blue_other.wav:“blue"(同学的声音)

    (5)yellow_other.wav:"yellow"(同学的声音)

    (6)null.wav:空录了一段

    (7)pikapika.wav:“pikapika"(”皮卡丘“的声音(勿喷))

    2、wav文件转mfc文件(类似的步骤之前做过,还有没有印象呢?):

    (1)手动编辑“转换清单”codetest.scp,并置于config目录下,内容如下(注:博客显示可能有问题,真实的排版为下图,如果两者一样请忽略

    /home/ansersion/htk_color/data/test/speech/red.wav              /home/ansersion/htk_color/data/test/mfc/red.mfc
    /home/ansersion/htk_color/data/test/speech/blue.wav             /home/ansersion/htk_color/data/test/mfc/blue.mfc
    /home/ansersion/htk_color/data/test/speech/red_other.wav        /home/ansersion/htk_color/data/test/mfc/red_other.mfc
    /home/ansersion/htk_color/data/test/speech/blue_other.wav       /home/ansersion/htk_color/data/test/mfc/blue_other.mfc
    /home/ansersion/htk_color/data/test/speech/yellow_other.wav     /home/ansersion/htk_color/data/test/mfc/yellow_other.mfc
    /home/ansersion/htk_color/data/test/speech/null.wav             /home/ansersion/htk_color/data/test/mfc/null.mfc
    /home/ansersion/htk_color/data/test/speech/pikapika.wav         /home/ansersion/htk_color/data/test/mfc/pikapika.mfc

    (2)wav文件转换成mlf文件:

    HCopy -T 1 -C ./config/config_HCopy -S ./config/codetest.scp

    此后,data/test/mfc目录会生成red.mfc; blue.mfc; red_other.mfc; blue_other.mfc; yellow_other.mfc; null.mfc; pikapika.mfc;

    3、识别咯,识别咯!

    (1)手动编辑test.scp,指定了要识别的文件,并置于config目录下,内容如下(其实就是codetest.scp的“右半边内容”):

    /home/ansersion/htk_color/data/test/mfc/red.mfc
    /home/ansersion/htk_color/data/test/mfc/blue.mfc
    /home/ansersion/htk_color/data/test/mfc/red_other.mfc
    /home/ansersion/htk_color/data/test/mfc/blue_other.mfc
    /home/ansersion/htk_color/data/test/mfc/yellow_other.mfc
    /home/ansersion/htk_color/data/test/mfc/null.mfc
    /home/ansersion/htk_color/data/test/mfc/pikapika.mfc

    (2)识别,并将识别结果存入recout_step7.txt文件:

    HVite -H ./hmm7/macros -H ./hmm7/hmmdefs -C ./config/config_color -S ./config/test.scp -l '*' -i ./results/recout_step7.txt -w ./config/wordnet -p 0.0 -s 5.0 ./dict/dict_color ./lists/monophones

    以下是我的recout_step7.txt文件:

    从以上结果可以看到,red.rec,blue.rec,red_other.rec,blue_other.rec只是的识别结果都是对的。

    yellow_other.rec被识别成了RED---->所以说各人的语音习惯有别嘛。

    null.rec被识别成了BLUE---->这个肯定不对,不过我也只规定了三种识别结果嘛。

    pikapika.rec被识别成了YELLOW----->要是真被识别成“皮卡丘”,那我也是醉了……不过,在你稍微理解了整个流程之间的逻辑关系后,这个还真的可以有!

    HTK Book涉及内容:

    Chapter 3: 3.4.1 Step 11 - Recognising the Test Data

  • 相关阅读:
    在IIS上搭建WebSocket服务器(三)
    在IIS上搭建WebSocket服务器(二)
    在IIS上搭建WebSocket服务器(一)
    RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->Web版本模块管理界面新增模块排序功能
    C#在WinForm中使用WebKit传递js对象实现与网页交互的方法
    c#用webkit内核支持html5
    .NET下WebBrowser的一个BUG以及其替代品——geckofx
    HTML5浏览器嵌入窗口程序解决方案
    saprk里面的action
    解释为什么word2vec也被称作deep learning
  • 原文地址:https://www.cnblogs.com/ansersion/p/4182704.html
Copyright © 2020-2023  润新知