2011-03-03 14 views
6

Czy ktoś zna system Spotting słów kluczowych, który jest swobodnie dostępny i prawdopodobnie zapewnia API?Słowo kluczowe Spotting in Speech

CMU Sphinx 4 i MS Speech API są silnikami rozpoznawania mowy i nie można ich używać w KWS.

SRI ma system wykrywania słów kluczowych, ale bez linków do pobierania, nawet do oceny. (Nigdzie nie mogłem znaleźć linku do ich oprogramowania)

Znalazłem jeden here, ale jest to wersja demonstracyjna i ograniczona.

Odpowiedz

3

CMUSphinx realizuje plamienie kluczowego w PocketSphinx silnika, patrz uzyskać szczegółowe FAQ entry.

Aby rozpoznać jeden keyphrase można uruchomić dekoder w trybie „keyphrase wyszukiwania”.

z linii poleceń try:

pocketsphinx_continuous -infile file.wav -keyphrase “oh mighty computer” -kws_threshold 1e-20 

Z kodu:

ps_set_keyphrase(ps, "keyphrase_search", "oh mighty computer"); 
ps_set_search(ps, "keyphrase_search); 
ps_start_utt(); 
/* process data */ 

Można również znaleźć przykłady Python i Android/Java w naszych źródeł. Python kod wygląda tak, pełna przykładów here:

# Process audio chunk by chunk. On keyphrase detected perform action and restart search 
decoder = Decoder(config) 
decoder.start_utt() 
while True: 
    buf = stream.read(1024) 
    if buf: 
     decoder.process_raw(buf, False, False) 
    else: 
     break 
    if decoder.hyp() != None: 
     print ([(seg.word, seg.prob, seg.start_frame, seg.end_frame) for seg in decoder.seg()]) 
     print ("Detected keyphrase, restarting search") 
     decoder.end_utt() 
     decoder.start_utt() 

Próg musi być dostosowana do każdego keyphrase na danych testowych, aby uzyskać właściwą równowagę brakowało detekcji i fałszywych alarmów. Możesz spróbować wartości takich jak 1e-5 do 1e-50.

Aby uzyskać najlepszą dokładność, lepiej mieć frazę z 3-4 sylabami. Zbyt krótkie zwroty są łatwo mylone.

Można również wyszukać wiele keyphrase utwórz keyphrase.list plik tak:

oh mighty computer /1e-40/ 
    hello world /1e-30/ 
    other_phrase /other_phrase_threshold/ 

i używać go w dekoderze z -kws opcji konfiguracji.

pocketsphinx_continuous -inmic yes -kws keyphrase_list 

Ta funkcja nie została jeszcze zaimplementowana w dekoderze sphinx4.

+0

Czy istnieje wyjaśnienie algorytmów lub biblioteka do wykrywania słów kluczowych w strumieniu audio bez użycia CMUSphinx? –

+0

Oczywiście, możesz google "szukanie słów kluczowych" –

+0

Tak wiele dokumentów badawczych, ale nie martwe proste wdrożenie –