Wątek przeniesiony 2019-07-12 09:26 z przez cerrato.

Rozpoznawanie głosu

Odpowiedz Nowy wątek
2019-07-12 09:08
1

Cześć. Jest w sieci narzędzie do rozpoznawania konkretnego głosu ? Pisze apke do sterowania gry za pomocą głosu i musi być koniecznie mojego głosu, po to żeby chociażby muzyka nie narobiła szkody. Najlepiej, żeby narzędzie jakieś API, lub biblioteka było udostępnione w C++, C#, Javie lub Pythonie.

Pozostało 580 znaków

2019-07-12 09:26
3

http://www.cp.jku.at/people/s[...]/CoMIRVA/webpage/CoMIRVA.html
http://www.cp.jku.at/people/s[...]/comirva/audio/util/MFCC.html

Biblioteka zawiera funkcje do generowania MFCC. Wyniki rozpoznanych słów można dopracować dobierając parametry, np. nakładanie ramek. Po drugie: słownik, im większy tym lepiej. Ja dla eksperymentów nagrałem kilkaset próbek i wyszło dobrze.

EDIT: Odpowiedź w komentarzu bałaby przydługa. Algorytm MFCC służy głównie do porównywania pojedynczych słów i dobrze sprawdza się ze słownikiem. Do rozpoznawania mowy ciągłej można użyć np. HMM (Hidden Markov Models). Jest on trochę trudniejszy w zrozumieniu i implementacji, ale czasem ma lepsze wyniki. Jest bardziej odporny na różnicę w wymowie.
W obu przypadkach słownik może zawierać powiązanie: tekst reprezentujący słowo + tablica ze współczynnikami. Po wypowiedzeniu słowa aplikacja powinna obliczyć współczynniki i porównać ze słownikiem. W wyniku otrzymujemy odległość euklidesową między słowami. Im niższa, tym lepiej, najlepiej 0. Im więcej razy powtórzeń tego samego słowa powiążemy z tekstem tym lepiej zadziała algorytm.

EDIT 2:
CMU Sphinx też jest fajnym projektem
https://cmusphinx.github.io/wiki/faq/


Nie sztuka uciec gdy w dupie sztuciec
edytowany 2x, ostatnio: PerlMonk, 2019-07-15 13:24
Pokaż pozostałe 2 komentarze
W skrócie mogę nauczyć (dać pliki z nagraniem) algorytm mojej wymowy i gdy będzie mnie słyszał może sprawdzić i ocenić czy ja to faktycznie ja ? - Munvik 2019-07-12 22:11
Tak. Ja np. w swojej pracy inżynierskiej miałem apkę, do której gadałem słowo, a ona sprawdzała czy zna to słowo i wypluwała ciąg znaków, który przypisałem do wypowiedzianego słowa. - PerlMonk 2019-07-13 07:56
Zrobiłeś to przy pomocy mapy ? Da się coś takiego zrobić identycznego tylko zamiast ciągu znaków wykonuje sie dana przypisana funkcja do tego ? - Munvik 2019-07-13 15:00
I czy algorytm MFCC sprawdzi się przy komendzie np. Sprzedaj zamek x ? Obsłuży 3 wyrazy ? - Munvik 2019-07-13 15:11
@Munvik: Pytania merytoryczne zadawaj w odpowiedziach. Dzięki temu łatwiej się odnieść do konkretnej wypowiedzi. - PerlMonk 2019-07-14 12:45

Pozostało 580 znaków

2019-07-14 15:54
0

@PerlMonk: Czy MFCC sprawdzi się, przy komendach 3-wyrazowch ?
Możesz pomóc mi dołączyć / zlinkować tą libkę ?

Pozostało 580 znaków

2019-07-15 13:26
1
Munvik napisał(a):

@PerlMonk: Czy MFCC sprawdzi się, przy komendach 3-wyrazowch ?
Możesz pomóc mi dołączyć / zlinkować tą libkę ?

MFCC da się zastosować przy komendach złożonych z kilku słów pod warunkiem, że program wyraźnie zaznaczy granice między słowami. Można na etapie tworzenia ramek sprawdzić gdzie jest cisza. Jeśli ktoś kolejne komendy mówi w jednym ciągu (bez przerw), lepiej sprawdzi się HMM.

Odnośnie linkowania paczek w Javie... Pewnie korzystasz z jakiegoś IDE. W takim przypadku każde IDE ma swoje sposoby na dodawanie zależności.


Nie sztuka uciec gdy w dupie sztuciec

Pozostało 580 znaków

2019-07-20 21:22
0
PerlMonk napisał(a):
Munvik napisał(a):

@PerlMonk: Czy MFCC sprawdzi się, przy komendach 3-wyrazowch ?
Możesz pomóc mi dołączyć / zlinkować tą libkę ?

MFCC da się zastosować przy komendach złożonych z kilku słów pod warunkiem, że program wyraźnie zaznaczy granice między słowami. Można na etapie tworzenia ramek sprawdzić gdzie jest cisza. Jeśli ktoś kolejne komendy mówi w jednym ciągu (bez przerw), lepiej sprawdzi się HMM.

Odnośnie linkowania paczek w Javie... Pewnie korzystasz z jakiegoś IDE. W takim przypadku każde IDE ma swoje sposoby na dodawanie zależności.

Dzięki. Możesz udostępnić kawałek kodu jak to napisałeś ?

Pozostało 580 znaków

2019-07-22 11:06
0

@Munvik: Najpierw znajdę ten kod. Od paru lat leży sobie grzecznie w archiwum. W tym tygodniu sprawdzę czy wszystko działa i postaram się coś podrzucić.


Nie sztuka uciec gdy w dupie sztuciec

Pozostało 580 znaków

2019-07-23 01:30
0
PerlMonk napisał(a):

@Munvik: Najpierw znajdę ten kod. Od paru lat leży sobie grzecznie w archiwum. W tym tygodniu sprawdzę czy wszystko działa i postaram się coś podrzucić.

Dzięki, czekam ;)

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0