05.11.2013 Aufrufe

Entwicklung einer Automatenbedienung mit einer leistungsfähigen ...

Entwicklung einer Automatenbedienung mit einer leistungsfähigen ...

Entwicklung einer Automatenbedienung mit einer leistungsfähigen ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

analysierten Daten erkannt hat, nimmt er einen von insgesamt sechs möglichen<br />

Zuständen an, die in s<strong>einer</strong> Basisklasse „VAD“ (Voice Activity Detector) unter<br />

„include/ASR/VAD.h“ deklariert und in folgender Tabelle aufgelistet sind:<br />

Nr Zustand Bedeutung Folgezustand<br />

1 VAD_NO_SPEECH Keine Sprache erkannt, pause 1, 2, 6<br />

2 VAD_SPEECH_BEGIN Anfang der Sprache erkannt, zeitversetzt 3, 5<br />

3 VAD_SPEECH Sprache erkannt 3, 4, 6<br />

4 VAD_SPEECH_END Ende der Sprache erkannt, pause 1<br />

5 VAD_SPEECH_SHORT Ende der Sprache zu früh erkannt, pause 1<br />

6 VAD_OTHER Andere Ergebnisse der Sprachdetektion 1<br />

Falls der Sprachdetektor sich im Zustand „VAD_OTHER“ befindet, weil z.B. entweder<br />

nur die Pause oder nur die Sprache seit zu langer Zeit erkannt wird, wird das gesamte<br />

Spracherkennungsprozess gestoppt, um nicht in der Schleife hängen zu bleiben. Welche<br />

Zeiten als „zu lang“ gelten sollen, ist im Konstruktor des Sprachdetektors unter<br />

„plugins/AsrHGH/NoiseEstimator.cpp“ festgelegt, z.B. 5 Sekunden für die Vorpause<br />

und 10 Sekunden für die Dauer der Sprache. Bei allen anderen Zuständen vom<br />

„NoiseEstimator“ wird Erkenner nach eventueller Adaption der Muster angesprochen.<br />

Da die Erkennung in Funktionen der HirschLib- Bibliothek durchgeführt wird, wie<br />

übrigens alle Prozesse von Spracherkennungssystemkomponenten, und in diesen<br />

Komponenten selbst nur die Vorbereitungen, Zwischenschritte und Auswertungen<br />

gemacht werden, wird es hier nicht auf die Details eingegangen. Die Beschreibung von<br />

diesen Funktionen wird bei dieser Arbeit ausgelassen. Um alle nötigen Zwischenschritte<br />

hier zu beschreiben oder um den Quelltext darzustellen, müssen mehrere Seiten in<br />

Anspruch genommen werden. Deshalb werden nur die Namen von verwendeten<br />

HirschLib- Funktionen <strong>mit</strong> kurzen Kommentaren im Weiteren angegeben. Wofür genau<br />

diese Funktionen gebraucht werden und was in diesen passiert, kann man unter<br />

„lib/HirschLib/sources/recog“ nachsehen. Im Quellcode vom Plugin „AsrHGH“ kann<br />

man sehen, welche Übergabeparameter dabei eingegeben werden, wie diese vorbereitet<br />

werden und wie die Rückgabeparameter ausgewertet werden.<br />

Genau wie Analyzer muss man auch andere Komponenten vor der Verwendung<br />

initialisieren. Bevor der Erkennungsprozess weiter beschrieben wird, wird eine kleine<br />

Übersicht dieser Maßnahmen gezeigt.<br />

Seite 41

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!