Home / LinuxUser / 2010 / 12 / PC per Sprache steuern mit Simon

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Eingedost
(161 Punkte bei 4 Stimmen)
Aufteiler
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.

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

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

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.

Tip a friend    Druckansicht Bookmark and Share
Kommentare

3068 Hits
Wertung: 161 Punkte (4 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 05/2014

Aktuelle Ausgabe kaufen:

Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,95 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 60,60) können Sie im Medialinx-Shop bestellen.

Tipp der Woche

Bilder vergleichen mit diffimg
Bilder vergleichen mit diffimg
Tim Schürmann, 01.04.2014 12:40, 1 Kommentare

Das kleine Werkzeug diffimg kann zwei (scheinbar) identische Bilder miteinander vergleichen und die Unterschiede optisch hervorheben. Damit lassen sich nicht nur Rätsel a la „Orignial und Fäls...

Aktuelle Fragen

programm suche
Hans-Joachim Köpke, 13.04.2014 10:43, 8 Antworten
suche noch programme die zu windows gibt, die auch unter linux laufen bzw sich ähneln sozusagen a...
Funknetz (Web-Stick)
Hans-Joachim Köpke, 04.04.2014 07:31, 2 Antworten
Bei Windows7 brauche ich den Stick nur ins USB-Fach schieben dann erkennt Windows7 Automatisch, a...
Ubuntu 13.10 überschreibt immer Windows 8 Bootmanager
Thomas Weiss, 15.03.2014 19:20, 8 Antworten
Hallo Leute, ich hoffe das ich richtig bin. Ich habe einen Dell Insipron 660 Ich möchte gerne Ub...
USB-PTP-Class Kamera wird nicht erkannt (Windows-only)
Wimpy *, 14.03.2014 13:04, 15 Antworten
ich habe meiner Frau eine Digitalkamera, AGFA Optima 103, gekauft und wir sind sehr zufrieden dam...
Treiber
Michael Kristahn, 12.03.2014 08:28, 5 Antworten
Habe mir ein Scanner gebraucht gekauft von Canon CanoScan LiDE 70 kein Treiber wie bekomme ich de...