Aby korzystać z HTK w miarę prosty sposób, warto zastosować ATK - czyli API dla HTK.
Jest to niejako opakowaniem do poszczególnych podstawowych źródeł HTK: gramatyki(AHTK), n-gramów(AGram), słowników(ADict) i modeli akustycznych(AHmms). Moduły ARMan i AResource zapewniają zarządzanie.
Natomiast moduły APacket, ABuffer, ATree i AComponent zapewniają podstawowe typy do tworzenia komponentów i łączeniu ich w całość.
Więcej...
Pakiety to część informacji. Są używane do przenoszenia różnych informacji pomiędzy asynchronicznymi komponentami W szczególności pakiety są używane do przenoszenia sygnałów I/O od użytkownika (mowa, kliknięcia myszką, itp). W tych przypadkach każdy pakiet uzyskuje specjalną czasową pieczęć, która określa czas w którym "działa". Typ danych jaki możemy przesyłać za pomocą pakietów obejmuje: łańcuchy tekstowe, próbki dźwiękowe, zakodowane cechy wektorów, etykiety i tagi znaczeń.
Bufor - jest pakietem kolejek fifo. Dostarcza kanał na przesyłanie pakietów między komponentami. Bufor może mieć ustalony lub nielimitowany rozmiar. Komponenty chcące uzyskać dostęp do bufora mogą testować czy operacja na buforze zostanie zblokowana zanim zatwierdzi operację.
Komponent jest elementem procesu. Każdy komponent jest wykonywany z jego własnym indywidualnym wątkiem. Komponenty mają interfejs komend który może być użyty do update'u parametrów kontrolnych podczas operacji i skutkiem tego zmodyfikować czas trwania zachowania komponentu.
ASource, ACode i ARec dostarczają trzy rdzenie komponentów potrzebnych do zbudowania "rozpoznawacza mowy". ATK dostarcza prosty interfejs do syntezatora FLite przez ASyn i prosty ALog do rejestracji danych.
Budowanie aplikacji ATK zazwyczaj wiąże się z tworzeniem potrzebnych źródeł i komponentów łączących je razem i zapewniający aplikacji kodowy poziom do kontroli komponentów i procesów I/O pakietów. Tak jak w HTK ATK moduły mogą być konfigurowne przez ustawianie zmiennych w pliku konfiguracyjnym.
Dla aplikacji wymiany mowy jest dostarczony moduł zwany AIO, który wymaga połączenia i zaimplementowania synchronicznego pomiędzy wejściem a wyjściem mowy do zezwolenia do niezapisywania niepotrzebnych odgłosów.
Brak komentarzy:
Prześlij komentarz