Menu

'pocketsphinx-0.7-win32' & 'Germa...

Help
Bothkill
2012-04-25
2012-09-22
  • Bothkill

    Bothkill - 2012-04-25

    I did not succeed in testing the
    - 'pocketsphinx-0.7-win32' with
    - 'voxforge-de-0.1' (German Acoustic and Language Model).

    I've downloaded both packages from this SourceForge project.

    I wanted to test the 'test.wav' file provided in the 'voxforge-de-0.1'
    package.

    I couldn't find info on the parameters which are sent to the
    'pocketsphinx_continuous.exe'.

    I've looked into the 'voxforge-de-0.1' package and tried to use the command
    provided in the 'sphinx3-test' file.
    After getting some errors saying that certain files cannot be accessed, I
    modified the parameters and almost got it working.

    This is the command I used and the error I got in the context of the following
    folder structure:

    Folder structure:

    C:
    |--voice
       |--pocketsphinx-0.7-win32
       |--voxforge-de-0.1
    

    Command:

    pocketsphinx_continuous.exe ^
     -samprate 8000 ^
     -adcin yes ^
     -cepext ".wav" ^
     -agc none ^
     -adchdr 44 ^
     -ctl "../voxforge-de-0.1/test/test.ctl" ^
     -fsg "../voxforge-de-0.1/test/test.fsg" ^
     -cepdir ./ ^
     -dict "../voxforge-de-0.1/etc/voxforge_de_sphinx.dic" ^
     -fdict "../voxforge-de-0.1/etc/voxforge_de_sphinx.filler" ^
     -bestpath TRUE ^
     -op_mode 2 ^
     -hmm "../voxforge-de-0.1/model_parameters/voxforge_de_sphinx.cd_cont_3000" ^
     -fsgusefiller yes ^
     -infile test.wav
    

    Error (after getting a lot of logging):

    ERROR: "fsg_search.c", line 332: The word 'zwei' is missing in the dictionary
    

    But the word 'zwei' is in the .dic file.

    If someone has successfully used the German model, please, could you tell me
    how to test the 'pocketsphinx-0.7-win32' on the very 'test.wav' file which is
    within the 'voxforge-de-0.1' package?
    If it's possible, could you give me the exact command to process that file,
    assuming I have the above-mentioned folder structure?

    Also could someone tell me where to find info on command parameters in order
    to use the already built 'pocketsphinx-0.7-win32' package?

    And also what is needed to test 'pocketsphinx-0.7-win32' on other German
    language audio files (assuming the audio is in the 8000hz 16bit mono format)?
    Is the 'voxforge-de-0.1' package enough?

    On testing other German language audio files, the program crashes, but this
    might be due to me not using the right parameters.

    Thank you in advance!

     
  • Bothkill

    Bothkill - 2012-04-25

    One question less to answer, becuase I found some info on the command
    parameters at:

    http://cmusphinx.sourceforge.net/api/pocketsphinx/

     
  • Nickolay V. Shmyrev

    -samprate 8000

    Voxforge German model is 16khz model. You can not use it to recognize 8khz
    audio. You need to build 8khz model yourself

    If someone has successfully used the German model, please, could you tell me
    how to test the 'pocketsphinx-0.7-win32' on the very 'test.wav' file which is
    within the 'voxforge-de-0.1' package?

    The right command is

    pocketsphinx_continuous -hmm ../model_parameters/voxforge_de_sphinx.cd_cont_3000 -dict ../etc/voxforge_de_sphinx.dic -jsgf test.gram  -infile test.wav
    

    But the word 'zwei' is in the .dic file.

    Words are case sensitive. zwei in lowercase is not in the dictionary. Grammar
    should contain uppercase words.

    And also what is needed to test 'pocketsphinx-0.7-win32' on other German
    language audio files (assuming the audio is in the 8000hz 16bit mono format)?
    Is the 'voxforge-de-0.1' package enough?

    No, you need to retrain your own model

     
  • Bothkill

    Bothkill - 2012-04-26

    Thank you vrey, very much nshmyrev!

    Thanks to your guidance I succeeded in testing the German language model with
    the 'test.wav' file.

    Using the '-jsgf test.gram' argument had some results, but not quite accurate.
    I used instead '-lm voxforge_de_sphinx.lm' and the accuracy was nearly 100%.

    Then I tested a totally different German audio file (16hz mono) and the
    program returned three words that had no connection with what was really said
    in that audio.
    Is it possible to make the program return the 'phones' it detects, without
    trying to match any words?

    Anyway, I would still need the info on ALL the arguments to pass to
    'pocketsphinx-0.7-win32'.
    So, running 'pocketsphinx-0.7-win32' with no arguments, gives you all the
    arguments (and their current status) the program can receive. But where to
    read more about them?
    The link I found (my second post) is for the version 0.6 and, for example, it
    doesn't say anything on the '-samprate' argument.
    I mean, all you guys who now know so much about these things, where did you
    get started?

    Thank you :)

     
  • Nickolay V. Shmyrev

    Is it possible to make the program return the 'phones' it detects, without
    trying to match any words?

    Algorithm doesn't detect phones, it looks only for words.

    So, running 'pocketsphinx-0.7-win32' with no arguments, gives you all the
    arguments (and their current status) the program can receive. But where to
    read more about them?

    In the speech recognition textbook like

    Spoken Language Processing: A Guide to Theory, Algorithm and System
    Development
    http://www.amazon.com/Spoken-Language-Processing-Algorithm-
    Development/dp/0130226165

     

Log in to post a comment.