I have been using Pocketsphinx for several weeks now without important problems. However, I had to start from the scratch and downloaded and compiled PocketSphinx 0.4.1 again. but when I come to use it with a previously (correctly) trained version of the an4 I get 100% sentence error. When I check an4-1-1.match I found that the decoder is asigning no result for any utterance, and, therefore the alignment raises 100% error.
I know the mistake is in PocketSphinx because I can run another version of pocketsphinx_batch that gives the desired results (but I do not have nor the code neither the VS project to check)
Any idea?
Thanks!!!
Coriscow
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Nickolay, thanks for your fast answer. Yesterday night I realized a silly mistake in the compilation I was using as working one: it was compiled for win32!!! However, the problem is still there.
I have been trying to compile PocketSphinx 0.4.1 for Windows Mobile 5.0 for PPC. After some fixing like creating a dll and adding some directives (FIXED_POINT, POCKETSPHINX_EXPORTS, ...), I try to compile the project but it raises the following error at lm_add_word
Error 23 fatal error C1001: An internal error has occurred in the compiler. k:\workbench\racoon\pocketsphinx\src\libpocketsphinx\lm_3g.c 1186
If I remove the call to the function lm_init_oov (and, therefore, lm_add_word) from kb_main.c it compiles but recognizes nothing; so it raises 100% error. I think it has something to do with the fixed point arithmetic, but I am not sure.
Best regards!!!
Coriscow
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hm, it's wierd. Actually there are build problems as well as well as decoding problems on arm. _unski on irc promised to send a patch soon. So more corrections are welcome.
In general, the principle of distribution should work. First of all try to extract feature file (-mfclogdir) and compare it with files extracted on PC. Try to decode mfc file and compare the scores (-phypseqdump). Either features will be different, then you have to debug feature extraction or decoding will be different, then you have to debug search algorithm. Most probably feature extraction doesn't work properly.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi all!
I have been using Pocketsphinx for several weeks now without important problems. However, I had to start from the scratch and downloaded and compiled PocketSphinx 0.4.1 again. but when I come to use it with a previously (correctly) trained version of the an4 I get 100% sentence error. When I check an4-1-1.match I found that the decoder is asigning no result for any utterance, and, therefore the alignment raises 100% error.
I know the mistake is in PocketSphinx because I can run another version of pocketsphinx_batch that gives the desired results (but I do not have nor the code neither the VS project to check)
Any idea?
Thanks!!!
Coriscow
Without additional data at least a log it's hard to say something useful.
Hi Nickolay, thanks for your fast answer. Yesterday night I realized a silly mistake in the compilation I was using as working one: it was compiled for win32!!! However, the problem is still there.
I have been trying to compile PocketSphinx 0.4.1 for Windows Mobile 5.0 for PPC. After some fixing like creating a dll and adding some directives (FIXED_POINT, POCKETSPHINX_EXPORTS, ...), I try to compile the project but it raises the following error at lm_add_word
Error 23 fatal error C1001: An internal error has occurred in the compiler. k:\workbench\racoon\pocketsphinx\src\libpocketsphinx\lm_3g.c 1186
If I remove the call to the function lm_init_oov (and, therefore, lm_add_word) from kb_main.c it compiles but recognizes nothing; so it raises 100% error. I think it has something to do with the fixed point arithmetic, but I am not sure.
Best regards!!!
Coriscow
I have been tracking the error and it crashes at lm_3g.c line 1177
model->unigrams[model->ucount].bo_wt1.l = LWMUL(LOG10TOLOG(0.0), model->lw);
due to LOG10TOLOG(0.0)
/
* Note that we always deal with quantities < 0.0, there for we round
* using -0.5 instead of +0.5
/
define LOG10TOLOG(x) ((int32)((x * (2.30258509 / LOG_BASE)) - 0.5))
If I change it to LOG10TOLOG(0.01) it compiles successfully but still get no utterance recognized. this is my results file ( [task]-1-1.match )
(ANTONIO_0 -21333898)
(BARCELONA_0 -26249211)
(CARMEN_0 -16445251)
(CHOCOLATE_0 -27507401)
(DOLORES_0 -22255181)
(ENRIQUE_0 -23273869)
(EXTRA_0 -19170256)
(FRANCIA_0 -20365433)
(GENERAL_0 -21129905)
(HISTORIA_0 -22339381)
(ISRAEL_0 -26051107)
(JOSE_0 -15379968)
(KILO_0 -13168726)
Regards!!
Coriscow
Hm, it's wierd. Actually there are build problems as well as well as decoding problems on arm. _unski on irc promised to send a patch soon. So more corrections are welcome.
In general, the principle of distribution should work. First of all try to extract feature file (-mfclogdir) and compare it with files extracted on PC. Try to decode mfc file and compare the scores (-phypseqdump). Either features will be different, then you have to debug feature extraction or decoding will be different, then you have to debug search algorithm. Most probably feature extraction doesn't work properly.