logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Rozpoznawanie mowy, jak się za to zabrać? wektory cech?

madzienka 11 Sty 2009 12:35 3265 5
REKLAMA
  • #1 5981831
    madzienka
    Poziom 10  
    Witam,
    Chciałabym napisać program do rozpoznawania mowy, dajmy na to na poczatek cyfr i liczb oparty na sieciach neuronowych. Czytalam, ze efektywniejsze są modele markowa, ale podobno jak na poczatek trudniejsze. Mam dużo próbek dźwięku, jednak słabo się znam na przetwarzaniu sygnałów i zastanawiam się od czego zacząć. Co zrobić, aby wyodrębnić z nich wektory cech? Może znacei jakieś ksiązki godne polecenia dla początkujących? Albo sami coś doradzicie? :) Z góry bardzo dziękuję.
  • REKLAMA
  • Pomocny post
    #2 5983270
    koodłaty
    Poziom 14  
    Pierwsze co mi przychodzi do głowy to rozbicie próbek na wektor współczynników filtra (metodą LPC-10) i analizowanie tych współczynników. Teoria niestety - jeśli nie miałaś wcześniej z przetwarzaniem sygnałów do czynienia - może być trudna do zrozumienia. Na szybko znalazłem jakiś materiał poświęcony tej tematyce:
    http://www.ita.wat.edu.pl/~lgrad/sieci%20neuronowe/ekstrakcja_cech_mowy.pdf
    Sporo informacji można też znaleźć tutaj:
    - T. P. Zieliński Od teorii do cyfrowego przetwarzania sygnałów AGH (’02)
    - A. Gersho, R.M. Gray: Vector quantization and signal compression KAP (’92)
    - K. Sayood Kompresja danych - wprowadzenie, Wydawnictwo RM (’02)
    - S. Furui Digital speech processing, synthesis and recognition Wyd. 2 (’01)
    - R. Tadeusiewicz Sygnał mowy Wydaw. Komunikacji i Łączności (’88)
    Panaos E. Papamichalis Practical approaches to speech coding Prentince-Hall Inc (’87)

    O ile pamiętam czwarta pozycja traktowała właśnie o rozpoznawaniu mowy pod kątem przetwarzania sygnałów.
    Jeśli chodzi o kod źródłowy to pisanie od podstaw jest bez sensu. Sourceforge zawiera sporo przykładowych aplikacji - w tym do rozpoznawania dźwięku. Można wykorzystać istniejące rozwiązania jak materiał wejściowy dla sieci neuronowych:
    http://sourceforge.net/softwaremap/trove_list.php?form_cat=124
  • REKLAMA
  • #3 5983666
    madzienka
    Poziom 10  
    A może mógłby ktoś opisać (albo nawet same hasła rzucić) jak po kolei przebiegaja etapy przetwarzania próbek?
  • REKLAMA
  • Pomocny post
    #4 5983763
    koodłaty
    Poziom 14  
    By wyodrębnić współczynniki LPC należy:
    - zebrać 160 próbek
    - przeflitrować próbki filtrem preemfazy (filtracja)
    - wymnożyć próbki z oknem Hamminga
    - wyznaczyć współczynniki filtra i wzmocnienie (mnożenie macierzy oraz autokorelacja)
    W nawiasach podałem operacje jakie są wykonywane w danym punkcie. Po szczegóły odsyłam do pozycji nr. 1 z mojego poprzedniego posta.
  • REKLAMA
  • #5 5985697
    madzienka
    Poziom 10  
    Dlaczego akurat 160 próbek?
  • #6 5989220
    koodłaty
    Poziom 14  
    Zakłada się częstotliwość próbkowania 8000Hz oraz analizę każdych 20ms dźwięku. Przy takich parametrach wychodzi, że 20ms odpowiada dokładnie 160 próbkom.
REKLAMA