which works very well. For my application I'm using gst-pocketsphinx plugin, and when I run a test code using
self.asr.set_property('hmm','en-us-adapt')
I got this output:
INFO: acmod.c(82): Parsed model-specific feature parameters from /home/gonzalo/asr/acustic_models/en-us-adapt/feat.params
INFO: mdef.c(520): Reading model definition: /home/gonzalo/asr/acustic_models/en-us-adapt/mdef
INFO: mdef.c(531): Found byte-order mark BMDF, assuming this is a binary mdef file
INFO: bin_mdef.c(301): Reading binary model definition: /home/gonzalo/asr/acustic_models/en-us-adapt/mdef
INFO: bin_mdef.c(480): 42 CI-phone, 137053 CD-phone, 3 emitstate/phone, 126 CI-sen, 5126 Sen, 29324 Sen-Seq
INFO: tmat.c(204): Reading HMM transition probability matrices: /home/gonzalo/asr/acustic_models/en-us-adapt/transition_matrices
INFO: acmod.c(114): Attempting to use SCGMM computation module
INFO: s2_semi_mgau.c(981): Reading S3 mixture gaussian file '/home/gonzalo/asr/acustic_models/en-us-adapt/means'
ERROR: "s2_semi_mgau.c", line 1011: /home/gonzalo/asr/acustic_models/en-us-adapt/means: #codebooks (42) != 1
INFO: acmod.c(127): Falling back to general multi-stream GMM computation
INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /home/gonzalo/asr/acustic_models/en-us-adapt/means
INFO: ms_gauden.c(292): 42 codebook, 3 feature, size
INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /home/gonzalo/asr/acustic_models/en-us-adapt/variances
INFO: ms_gauden.c(292): 42 codebook, 3 feature, size
INFO: ms_gauden.c(354): 222 variance values floored
INFO: ms_senone.c(157): Reading senone mixture weights: /home/gonzalo/asr/acustic_models/en-us-adapt/mixture_weights
INFO: ms_senone.c(208): Truncating senone logs3(pdf) values by 10 bits
INFO: ms_senone.c(272): Read mixture weights for 5126 senones: 3 features x 128 codewords
FATAL_ERROR: "ms_mgau.c", line 108: Senones need more codebooks (5126) than present (42)
What can be wrong in my test? I don't know very well how the gst-pocketsphinx plugin works.
I tried pocketsphinx_continuous with '-remove_noise yes' which also works very well (using en-us model), but this parameter is not implemented in the gstpocketsphinx plugin I am using.
I used only 10 phrases in the adaptation corpus (only for testing, I will use a lot more for the final application).
Thank you in advance for your responses.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I adapted the cmusphinx-en-us-5.2 model for speech recognition in a very noisy enviroment according to
Looks like you adapted en-us-ptm model, not en-us model. Inaccurate description of your actions makes it harder to answer your question
ERROR: "s2_semi_mgau.c", line 1011: /home/gonzalo/asr/acustic_models/en-us-adapt/means: #codebooks (42) != 1
Looks like you are using very outdated pocketsphinx. It is recommended to use the latest version 5prealpha. It is helpful to provide the version you are using, incomplete information makes it also very hard to answer your question.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank you Nickolay for the quick response and sorry for my uncomplete question.
I actually was using an old version of pocketsphinx.
First of all I would like to know if compiling and making 'sudo make install' is all that I need to install pocketsphinx-5prealpha? Do I have to remove the old binary files first?.
Second, I also downloaded sphinxbase and sphinxtrain in the 5prealpha version. Do I need to install the new version of gst-pocketsphinx to make my application work or its not necesary to do that?. I think if pocketsphinx change also gst-pocketsphinx do.
I updated sphinxbase, sphinxtrain and pockesphinx to the 5prealpha version and I'm still get the same output.
And for the first question: Yes, I am adapting cmusphinx-en-us-ptm-5.2 model. I don't know the diferences betwen all this models.
What can I do now, If you can give me a clue or any guidance I will be very gratefull.
Last edit: Gonzalo Raúl Olave Wolff 2015-07-15
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
First of all I would like to know if compiling and making 'sudo make install' is all that I need to install pocketsphinx-5prealpha?
Yes
Do I have to remove the old binary files first?.
Yes
Do I need to install the new version of gst-pocketsphinx to make my application work or its not necesary to do that?. I think if pocketsphinx change also gst-pocketsphinx do.
Pocketsphinx installs gst plugin if it finds gstreamer development headers during configuration. You do not need an old plugin. Modern pocketsphinx requires gstreamer-1.0 between.
What can I do now, If you can give me a clue or any guidance I will be very gratefull.
If you install all software properly it should work.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello everyone, I adapted the cmusphinx-en-us-5.2 model for speech recognition in a very noisy enviroment according to http://cmusphinx.sourceforge.net/wiki/tutorialadapt. I test the adapted model using
pocketsphinx_continuous -inmic yes -adcdev plughw:1 -fsg grammar/test.fsg -dict grammar/test.dic -jsgf grammar/test.jsgf -hmm en-us-adapts
which works very well. For my application I'm using gst-pocketsphinx plugin, and when I run a test code using
self.asr.set_property('hmm','en-us-adapt')
I got this output:
INFO: acmod.c(82): Parsed model-specific feature parameters from /home/gonzalo/asr/acustic_models/en-us-adapt/feat.params
INFO: mdef.c(520): Reading model definition: /home/gonzalo/asr/acustic_models/en-us-adapt/mdef
INFO: mdef.c(531): Found byte-order mark BMDF, assuming this is a binary mdef file
INFO: bin_mdef.c(301): Reading binary model definition: /home/gonzalo/asr/acustic_models/en-us-adapt/mdef
INFO: bin_mdef.c(480): 42 CI-phone, 137053 CD-phone, 3 emitstate/phone, 126 CI-sen, 5126 Sen, 29324 Sen-Seq
INFO: tmat.c(204): Reading HMM transition probability matrices: /home/gonzalo/asr/acustic_models/en-us-adapt/transition_matrices
INFO: acmod.c(114): Attempting to use SCGMM computation module
INFO: s2_semi_mgau.c(981): Reading S3 mixture gaussian file '/home/gonzalo/asr/acustic_models/en-us-adapt/means'
ERROR: "s2_semi_mgau.c", line 1011: /home/gonzalo/asr/acustic_models/en-us-adapt/means: #codebooks (42) != 1
INFO: acmod.c(127): Falling back to general multi-stream GMM computation
INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /home/gonzalo/asr/acustic_models/en-us-adapt/means
INFO: ms_gauden.c(292): 42 codebook, 3 feature, size
INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /home/gonzalo/asr/acustic_models/en-us-adapt/variances
INFO: ms_gauden.c(292): 42 codebook, 3 feature, size
INFO: ms_gauden.c(354): 222 variance values floored
INFO: ms_senone.c(157): Reading senone mixture weights: /home/gonzalo/asr/acustic_models/en-us-adapt/mixture_weights
INFO: ms_senone.c(208): Truncating senone logs3(pdf) values by 10 bits
INFO: ms_senone.c(272): Read mixture weights for 5126 senones: 3 features x 128 codewords
FATAL_ERROR: "ms_mgau.c", line 108: Senones need more codebooks (5126) than present (42)
What can be wrong in my test? I don't know very well how the gst-pocketsphinx plugin works.
I tried pocketsphinx_continuous with '-remove_noise yes' which also works very well (using en-us model), but this parameter is not implemented in the gstpocketsphinx plugin I am using.
I used only 10 phrases in the adaptation corpus (only for testing, I will use a lot more for the final application).
Thank you in advance for your responses.
Looks like you adapted en-us-ptm model, not en-us model. Inaccurate description of your actions makes it harder to answer your question
Looks like you are using very outdated pocketsphinx. It is recommended to use the latest version 5prealpha. It is helpful to provide the version you are using, incomplete information makes it also very hard to answer your question.
Thank you Nickolay for the quick response and sorry for my uncomplete question.
I actually was using an old version of pocketsphinx.
First of all I would like to know if compiling and making 'sudo make install' is all that I need to install pocketsphinx-5prealpha? Do I have to remove the old binary files first?.
Second, I also downloaded sphinxbase and sphinxtrain in the 5prealpha version. Do I need to install the new version of gst-pocketsphinx to make my application work or its not necesary to do that?. I think if pocketsphinx change also gst-pocketsphinx do.
I updated sphinxbase, sphinxtrain and pockesphinx to the 5prealpha version and I'm still get the same output.
And for the first question: Yes, I am adapting cmusphinx-en-us-ptm-5.2 model. I don't know the diferences betwen all this models.
What can I do now, If you can give me a clue or any guidance I will be very gratefull.
Last edit: Gonzalo Raúl Olave Wolff 2015-07-15
Yes
Yes
Pocketsphinx installs gst plugin if it finds gstreamer development headers during configuration. You do not need an old plugin. Modern pocketsphinx requires gstreamer-1.0 between.
If you install all software properly it should work.