2013-02-02 9 views
8

Muszę trenować CMU Sphinx offline w mojej aplikacji na Androida. Pobrałem projekt this, który używa tego parametru, ale kiedy go uruchomię, mam ten błąd: Fatal signal 11 (SIGSEGV) at 0x0000001c (code=1). Ten błąd mam również, gdy Sphinx nie może znaleźć modelu akustycznego. Znalazłem odpowiedź na moje pytanie here, ale to nie działa dla mnie. Co robię źle, czy ktoś może mi podać dowolny tutorial lub dobrą odpowiedź?Używanie gramatyki JSGF zamiast modelu języka DMP (użyj -jsgf zamiast -lm) w CMU Sphinx (pocketsphinx)

Więc pytanie jest jak używać .jsgf plików istead .DMP plików jako modelu językowego dla PocketSphinx jak to stosowane w zadaniu Recognizer w projekcie Inimesed?

+0

Zapewnić pliku pocketsphinx.log utworzony na urządzeniu –

+0

Oto Log: NFO: acmod.c (242): analizowany modelu specyficzne parametry funkcji od /mnt/sdcard/Android/data/ee.ioc. phon.android.inimesed/files/hmm/et_ee/16000/feat.params INFO: feat.c (684): Inicjowanie strumienia funkcji do typu: 's2_4x', ceplen = 13, CMN = 'current', VARNORM = ' nie ", AGC =" brak " INFO: cmn.c (142): średnia [0] = 12,00, średnia [1..12] = 0.0 BŁĄD:" acmod.c ", linia 84: definicja modelu akustycznego jest nie podano ani z opcją -mdef ani z -hmm Mogę dostarczyć cały plik, jeśli to konieczne –

+0

Ten błąd oznacza, że ​​nie umieściłeś plików danych we właściwej lokalizacji. Sprawdź, który folder powinien zawierać model w źródłach (opcja -hmm) –

Odpowiedz

3

Jeśli CMU Sphinx działa podobnie na Androida i na Windows, następujące mogą pomóc:

http://www.aiaioo.com/cms/index.php?id=28 http://homepages.abdn.ac.uk/k.vdeemter/pages/teaching/NLP/practicals/JSGFGrammar.html http://www.w3.org/TR/jsgf/

Przykład JSGF plik:

#JSGF V1.0; 
grammar hello; 
public <command> = (open | close) (computer | window | music | note); 

Zapisz powyższy gramatyki w plik tekstowy o nazwie "hello.gram", a następnie uruchom sfinks za pomocą:

pocketsphinx_continuous.exe -hmm hub4wsj_sc_8k -jsgf hello.gram -dict hub4.5000.dic