Menu

sphinx3 acoutic model to pocketsphinx

Help
lynucs
2009-11-27
2012-09-22
  • lynucs

    lynucs - 2009-11-27

    Hello,

    As i want to use pocketsphinx in french i 've dowloaded LIUM's french acoustic
    model. This am is designed for sphinx3. I try to adapt it for a pocketsphinx
    usage without success.

    I have compared sphinx3 or pocketsphinx acoutic model to see differences. Both
    seem almost equivalent in term a file.

    In the sphinx3 package:
    architecture/F0.5500.mdef
    parameters/means
    parameters/means
    parameters/mixtureweights
    parameters/transitionmatrices
    parameters/variances

    What i did: create a new acoutics model directory for pocketsphinx I've copied
    all liums files to this directory. i renamed F0.5500.mdef to mdef i created
    the sendump file from the mixtureweights file with the command mks2_sendump

    when i start pocketsphinx with the hmm argument pointed to this directory, i
    have errors: FATALERROR: "fesigproc.c", line 397: WTF, 4500.000000 <
    -31.250000 > 5062.500000

    One file seemed missing: feat.params I copy this file from another acoustic
    model (as i don't know what is its role), and the result seems better but
    finally there is a segmentation fault.

    If someone can help me, his is really welcome... Thank you in advance.

    Regards
    Laurent

     
  • Nickolay V. Shmyrev

    created the sendump file from the mixtureweights file with the command
    mks2_sendump

    This was wrong decision

    feat.params I copy this file from another acoustic model (as i don't know
    what is its role)

    This was wrong one as well. It's recommended to understand what you are doing.

    This command should work:

    pocketsphinx_continuous -mdef french_f0.5725.mdef -hmm french_f0 -dict
    frenchWords62K.dic -lm french3g62K.DMP -fdict frenchFillers.dic -feat
    1s_c_d_dd -agc emax -samprate 16000

     
  • lynucs

    lynucs - 2009-11-27

    thanks,
    i did:
    pocketsphinx_continuous \

    -mdef french_f0/model_architecture/french_f0.5725.mdef \
    -hmm french_f0/model_parameters/french_f0.cd_cont_5725_22 \
    -dict french_f0/etc/frenchWords62K.dic \
    -lm french_f0/etc/french3g62K.DMP \
    -fdict french_f0/etc/frenchFillers.dic \
    -feat 1s_c_d_dd \
    -agc emax -samprate 16000

    I have a segmentation fault !

    INFO: feat.c(848): Initializing feature stream to type: '1s_c_d_dd',
    ceplen=13, CMN='current', VARNORM='no', AGC='emax'
    INFO: cmn.c(142): mean= 12.00, mean= 0.0
    INFO: agc.c(132): AGCEMax: max= 5.00

    INFO: mdef.c(520): Reading model definition:
    french_f0/model_architecture/french_f0.5725.mdef

    INFO: bin_mdef.c(173): cd_tree: nodes 85844 wpos start 0 ci start 4 lc start
    184 rc start 3755

    INFO: tmat.c(205): Reading HMM transition probability matrices:
    french_f0/model_parameters/french_f0.cd_cont_5725_22/transition_matrices

    INFO: acmod.c(109): Attempting to use SCHMM computation module

    INFO: s2_semi_mgau.c(1361): Reading S3 mixture gaussian file
    'french_f0/model_parameters/french_f0.cd_cont_5725_22/means'

    ERROR: "s2_semi_mgau.c", line 1391:
    french_f0/model_parameters/french_f0.cd_cont_5725_22/means: #codebooks (5725)
    != 1

    Segmentation fault

    Regards,
    Laurent

     
  • Nickolay V. Shmyrev

    When you report about problems, especially about segmentation faults, learn to
    provide information about versions of the software you are using. This problem
    for example was fixed in sphinxbase trunk recently, but it's impossible to
    give you definite answer because you didn't care to provide such basic
    information.

     
  • lynucs

    lynucs - 2009-11-27

    Was the nightly release.
    just download shinxbase & pocketsphinx from subversion.
    and it works. Will test more tomorrow.

    Thank you very much. i will be more specific the next time for any new
    requests in the future.

    Regards,
    Laurent

     
  • Nickolay V. Shmyrev

    You are welcome

     
  • lynucs

    lynucs - 2009-11-30

    hi,

    The rest of the story :)
    I would like to use my french acoustic model in a python+gstreamer program.
    the pocketsphinx plugin for gstreamer does not handle all pocketsphinx
    parameters (such as mdef, fdict, ...) i cannot use it directly.

    I tried to modify the source of the plugin (gstpocketsphinx.c), i removed all
    default hardcoded parameters to my own parameters. after several modifications
    and compilation, i was able to start my program with french am. but the
    recogniton is ineficient. will try to check all parameters.

    Any ideas are welcome?
    Maybe the new version of pocketsphinx will offer more possibilties for the gst
    plugin?

    pocketsphinx is clearly faster within a gstplugin than launched by
    pocketsphinx_continious?

    Regards,
    Laurent

     
  • Nickolay V. Shmyrev

    I tried to modify the source of the plugin (gstpocketsphinx.c), i removed
    all default hardcoded parameters to my own parameters. after several
    modifications and compilation, i was able to start my program with french am.
    but the recogniton is ineficient. will try to check all parameters.

    Yes, it's work in progress. Patches are welcome

    pocketsphinx is clearly faster within a gstplugin than launched by
    pocketsphinx_continious?

    Sorry, I don't get your question here. Everything depends on parameters of the
    recognizer, if parameters are the same speed and accuracy will be equal as
    well.

     

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.