AA_screen_123rf-6629321_VladimirVoronin.jpg

© Vladimir Voronin, 123rf.com

Auf ein Wort

PC per Sprache steuern mit Simon

17.11.2010
Mit Simon gehorcht Ihnen der PC aufs Wort: Per Spracherkennung öffnen Sie Programme, rufen URLs auf, simulieren Eingaben per Tastatur oder Maus und vieles mehr.

Vor knapp drei Jahren erschien eine erste Version der freien Spracherkennungssuite Simon [1]. Ursprünglich dazu gedacht, Menschen mit Einschränkungen die Arbeit am Computer zu erleichtern, hat sich das Anwendungsspektrum inzwischen stark erweitert: Simon eignet sich nicht nur als Tastatur- und Mausersatz für Menschen mit Behinderungen, und schon bald könnte die Sprachsteuerungssoftware auch in der Robotik Anwendung finden.

Die Software basiert auf der quelloffenen LVCSR-Engine Julius [2] und nutzt darüber hinaus das Hidden Markov Model Toolkit (HTK) [3] sowie mehrere Wörterbücher. Die aktuelle Simon-Version enthält zwar bereits fertige Sprachmodelle, erlaubt aber anders als viele proprietäre Anwendungen dem Nutzer, von Grund auf eigene Sprach- und Akustik-Modelle zu erstellen. Da sich das System so für jeden Dialekt und jede Sprechweise optimieren lässt, eignet sich Simon auch für Menschen mit Sprachproblemen.

Simon ist nicht dafür gedacht, dem Rechner literarische Werke zu diktieren, sondern vielmehr, um Programme zu öffnen, URLs aufzurufen, Tastenkürzel zu simulieren sowie Maus und Tastatur zu kontrollieren. Die Software beruht auf einer Client-Server-Architektur, so dass theoretisch mehrere Personen einen Server nutzen können. Das macht die Software auch beispielsweise für Behindertenwerkstätten oder Seniorenheime interessant.

Installation

Für OpenSuse sowie Ubuntu und dessen Ableger haben die Simon-Entwickler Binärpakete bereitgestellt. OpenSuse-Anwender finden diese im OpenSuse Build Service [4] und nutzen die One-Klick-Installation. Unter Ubuntu und Co. gilt es zunächst mit sudo add-apt-repository ppa:grasch-simon-listens/simon das Simon-PPA [5] einzubinden. Ein anschließendes apt-get update und apt-get install simon holen die Spracherkennungssoftware auf den Rechner. Die Nutzer anderer Distributionen finden auf Sourceforge [6] DEB- und RPM-Pakete sowie eine Installer-Datei (./simon-Version.sh).

Bevor Sie dem Computer nun verbale Befehle erteilen, steht noch das Einrichten von HTK an, mit dessen Hilfe sich die Erkennungsrate später signifikant steigern lässt. Der Download setzt eine kostenlose Registrierung voraus. Die Wartezeit auf das per E-Mail übermittelte Zugangspasswort verkürzen Sie sich am besten mit der Installation einer Build-Umgebung sowie der Alsa- und X11-Entwicklerbibliotheken. Unter Ubuntu ziehen Sie dazu die Pakete build-essential, libx11-dev und libasound2-dev nach.

Befindet sich das HTK-Archiv dann endlich auf dem Rechner, müssen Sie es nur noch entpacken und mit dem Dreischritt ./configure, make all und sudo make install übersetzen und einrichten.

Inbetriebnahme

Nach der Installation findet sich im Startmenü die Kategorie Universal Access. Hier starten Sie ksimond (das Frontend für den Simon-Server) und Simon selbst. Ksimond nistet sich in der Taskbar ein und offeriert ein via Rechtsklick erreichbares Menü, um den Server Simond zu starten und den Server zu konfigurieren. Standardmäßig akzeptiert Simond nur Verbindungen vom lokalen Rechner und lauscht auf Port 4444. Da Simond grundsätzlich mehrere Clients bedienen kann, müssen Sie auch einen Nutzer anlegen beziehungsweise das Passwort des Default-Nutzers ändern. Die Nutzerdaten verwaltet Simond in einer SQLite-Datenbank.

Beim ersten Start führt Sie ein Assistent durch die Konfiguration, in der Sie eigene Szenarien und ein persönliches Sprachmodell anlegen oder auf abgespeicherte Vorgaben zurückgreifen. Weiterhin machen Sie hier Angaben zum Standort des Servers sowie zu den mit Simon zu verwendenden Audiogeräten und prüfen den Pegel des Mikrofons (Abbildung 1).

Abbildung 1: Während der Konfiguration prüft Simon unter anderem, ob das Mikrofon richtig eingestellt ist.

Als Szenarien bezeichnet man Konfigurationen, für die bereits eine Reihe von Kommandos, Grammatiken und Vokabeln hinterlegt wurden. Simon verfügt über eine gut gefüllte Online-Datenbank, die Szenarien in verschiedenen Sprachen umfasst. Auch für Akustikmodelle existieren bereits einige vorgefertigte Lösungen [7] für Anwender, die Deutsch, Englisch oder Portugiesisch sprechen. Diese gibt es als statische oder adaptierte Basismodelle.

Das statische Modell erfordert eine möglichst ideale Aussprache und ist nicht lernfähig, kommt aber auch ohne das Hidden-Markov-Toolkit aus. Anders das adaptierte Modell: Hier erhalten Sie ein zwar vorbereitetes, aber noch lernfähiges Modell, das sie an ihre eigene Stimme und Aussprache anpassen. Es bietet den besten Kompromiss zwischen kurzer Trainingszeit und hoher Erkennungsquote. Daneben besteht auch noch die Möglichkeit, ein Modell komplett selbst zu erstellen – eine extrem hohe Treffergenauigkeit belohnt später diese Mühe.

Nachdem Sie den ersten Dialog durchlaufen haben, präsentiert sich Simon mit einer übersichtlichen Oberfläche (Abbildung 2). Eventuell beschwert es sich, aufgrund einer fehlerhaften Nutzer/Passwort-Kombination keine Verbindung zum Server herstellen zu können – Abhilfe schafft das Eingeben der vorher festgelegten Werte unter Settings | Configure simon... | Recognition. Die hier bereits vorhandene Option, Simond an Simon gekoppelt automatisch zu starten und zu beenden, legt die Vermutung nahe, dass Ksimond zukünftig nicht mehr gebraucht wird – wenigstens nicht, sofern sich Server und Client auf dem selben Rechner befinden.

Abbildung 2: Über das Simon-Hauptfenster erreichen Sie schnell alle Funktionen.

Die Simon-Toolbar zeigt neben einer Reihe von Menüs neun Schaltflächen für die am häufigsten benötigten Aktionen. Neben dem Verbinden handelt es sich dabei um das Aktivieren der Sprachsteuerung, das Verwalten von Szenarien, das Hinzufügen eines Worts zum Vokabular, den Zugriff auf das Vokabular, die Grammatik, Kommandos, die Trainingsfunktion zum Erlernen neuer Wörter sowie eine Synchronisierung, die letztendlich neu erlernte Wörter dem jeweiligen Sprachmodell hinzufügt.

Das Vokabular muss alle Wörter enthalten, die Simon später erkennen soll. Grammatiken geben zulässige Wortkombinationen an, wie beispielsweise Nomen/Nomen, Nomen/Verb oder Trigger/Kommando – dazu später mehr.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 01/2015: E-Books im Griff

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 3 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.