Menu

keyword spotting with pocketsphinx.

Help
creative64
2012-01-24
2013-06-17
  • creative64

    creative64 - 2012-01-24

    Hi,

    Inorder to get a simplistic keyword-spotting solution with pocketsphinx, I
    tried with a simple grammar file. It seems
    to give OK results for applications where robustness needn't be very-very
    high. Would like to get some feedback on
    performance of this approach.

    I've tried it with model hub4wsj_sc_8k with pocketsphinx ver 0.6.1. Please
    note that bestpath and nbest option need to be
    turned off otherwise it takes a very long time to decode.

    My keyword is "HELLO SIMSIIM" and grammar file is as follows:

    #JSGF V1.0;  
    
    grammar kewword_test;  
    
    public <command> = <option_1> | <option2> | <option3> | <option4> | <option5> ;  
    
    <option_1> = <keyword>;  
    
    <option_2> = <garbage_loop> <keyword>;  
    
    <option_3> = <keyword> <garbage_loop>;  
    
    <option_4> = <garbage_loop> <keyword> <garbage_loop>;  
    
    <option_5> = <garbage_loop>;  
    
    <keyword> = (HELLO SIMSIM);  
    
    <garbage_loop> = (G1 | G2 | G3 | G4 | G5 | G6 | G7 | G8 | G9 | G10 | G11 | G12
    | G13 | G14 | G15 | G16 | G17 | G18 | G19 | G20 | G21 | G22 | G23 | G24 | G25
    | G26 | G27 | G28 | G29 | G30 | G31 | G32 | G33 | G34 | G35 | G36 | G37 | G38
    | G39)+ ;
    
     

    Last edit: Nickolay V. Shmyrev 2013-09-16
  • creative64

    creative64 - 2012-01-24

    and.....G1 to G39 are mapped to 39 base phonemes of the model in dictionary.

     
  • Nickolay V. Shmyrev

    Would like to get some feedback on performance of this approach.

    It's ok, more or less what you need. You need to care about garbage path
    pruning here, though it's easier to be done in kws-specific code. We have our
    own KWS implementation in Nexiwave based on pocketsphinx, but it's different
    ps_search class, not fsg search.

     
  • Biswajit Das

    Biswajit Das - 2013-06-17

    I had tested with garbage model like, added all phoneme into dictionary and also in the JSGF grammar. Only phoneme being recognized besides words. fsg_search taking lot of time and hanging the system. Should I, reduce number of phone in garbage?

     
    • Anonymous

      Anonymous - 2013-06-17

      You probably should reduce the length of the processed
      audio, accounting for shorter silences and process shorter amount of speech.

       

      Last edit: Nickolay V. Shmyrev 2013-06-17

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.