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

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

„Klickbunt auf dem Server? Warum nicht, wenn's hilft!"
(220 Punkte bei 8 Stimmen)
KDE 4.10.2, Gnome 3.6 und mehr
(121 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: 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.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

2531 Hits
Wertung: 139 Punkte (3 Stimmen)

Schlecht Gut

Infos zum Autor

Falko Benthin

Falko Benthin studiert Gesundheitsinformatik und engagiert sich in verschiedenen gemeinnützigen Vereinen. In seiner Freizeit verschlingt er leidenschaftlich gern Bücher und bloggt auf www.e-leseratte.de zu E-Book-Readern und verwandten Themen.

Zum Blog von Falko Benthin →


Infos zur Publikation

Infos zur Publikation

title_2013_06

Aktuelle Ausgabe kaufen:

Heft bestellen 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

Emacs als Psychologe
Emacs als Psychologe
Tim Schürmann, 21.05.2013 11:49, 0 Kommentare

Wer beim Schreiben in Emacs nicht mehr weiter weiß oder schier an einer Programmieraufgabe verzweifelt, der kann den eingebauten Psychologen um Rat fragen.

1966 entwickelte der Infor...

Aktuelle Fragen

Kontakt via QR code hinzufügen
Herman Sproesser, 17.05.2013 17:46, 3 Antworten
Hi hab in der aktuellen ausgabe 06.2013 den artikel über QR Codes gelesen. Ich hab nartürlich...
Dateimanager Dolphin, wo legt er die Datei Kommentare ab?
Uwe Heine, 16.05.2013 15:19, 1 Antworten
Suse Linux 12.1 - KDE 4.7.2 / Dolphin 1.7. Ich habe bei vielen Dateien über Dolphin Kommentare...
wie baut man Kernel Module so, dass sie mit jedem Kernel laden?
GoaSkin , 22.04.2013 10:22, 1 Antworten
Hallo, baut man anhand eines Kernel-Sources Module, nutzt Linux im Normalfall eine strikte V...
Problem beim Installieren von SuSe 12.3
Georg Prokert, 14.04.2013 00:04, 16 Antworten
Hallo, auf meinem neuem Laptop (Acer Aspire V3-771, Intel Core i5-3230 M, Intel HD Graphics 4...
lvm wieder loswerden
Peter Dibbern, 11.04.2013 16:28, 4 Antworten
Ich habe sämtliche alten Kisten ausgeschlachtet und aus der Teilen einen Rechner zusammengeschrau...