AA_megafon_123rf-13649022_OlgaYastremska.jpg

© Olga Yastremska, 123RF

Linux via Spracheingabe bedienen

Klare Ansage

Zwar können Sie Simon keine Briefe oder ärztlichen Befunde diktieren, doch mithilfe der leistungsfähigen Sprachsteuerung folgt Ihnen der Rechner ab sofort aufs Wort.

Unter Windows und Mac OS X ist es seit langem gang und gäbe, den PC nicht nur über Tastatur und Maus zu bedienen, sondern auch per Sprache. Linux holt hier seit einigen Jahren auf, auch dank des gemeinnützigen Vereins "Simon listens"  [1]. Der wurde von Franz Stieger gegründet und agiert als treibende Kraft hinter der Spracherkennungssoftware Simon.

Ursprünglich war die bereits seit mehreren Jahren entwickelte Anwendung dafür gedacht, körperbehinderten Menschen die Benutzung eines PCs zu erleichtern. Dieses Ziel verfolgt der Verein nach wie vor, aber die Entwickler haben auch einige zusätzliche Anwendungsgebiete für ihre Software entdeckt. Dazu zählen verbale Steuerungssysteme, die älteren Menschen die einfache Nutzung moderner Kommunikationstechnologien ermöglichen oder mit denen sich Roboter, Rollstühle oder Lifte via Spracheingabe bedienen lassen. Wer dagegen vorhat, dem PC seine Texte zu diktieren, wird mit Simon nicht glücklich werden und muss sich nach anderen Lösungen umsehen.

Seit April 2012 ist Simon ein offizielles KDE-Projekt [2] und nutzt somit auch die KDE-Infrastruktur. Die Spracherkennungssoftware folgt dem Client/Server-Prinzip. Sie besteht aus mehreren Komponenten und greift auf verschiedene andere Programme zurück, wie etwa das Spracherkennungstoolkit CMU Sphinx [3], die Spracherkennungsengine Julius [4] mit dem Hidden Markov Model Toolkit (HTK, [5]) und das Aussprachewörterbuch Hadi-Bomp [6]. Zu den Bestandteilen der Anwendung gehören neben dem Frontend Simon und dem Daemon Simond auch der Simon Acoustic Modeller Sam und der Simon Sample Collector SSC.

Simon installieren

Am einfachsten klappt die Installation für Nutzer der OpenSuse-Entwicklerversion: Für diese gibt es im OpenSuse Build Service Binärpakete [10], die sich mit den distributionseigenen Paketwerkzeugen installieren lassen.

Verwenden Sie eine andere Distribution, klonen Sie die Quelltexte aus dem KDE-Git (Listing 1) beziehungsweise holen sich das Tar-Archiv [11] und packen es aus. Dann wechseln in das neu entstandene Verzeichnis und starten das darin liegende Script build.sh beziehungsweise build_ubuntu.sh. Eventuell gilt es vorab noch einige Abhängigkeiten [12] aufzulösen, damit die Installation fehlerfrei durchläuft.

Um alle Funktionen des Spracherkennungsfrontends voll auszureizen, benötigen Sie zusätzlich entweder CMU Sphinx (sphinxbase, pocketsphinx und sphinxtrain jeweils in einer Version größer 0.8) oder Julius mit dem HTK sowie Entwicklerpakete von OpenCV, Libsamplerate, QAccessibilityClient und Libkdepimlibs4. Seit der Version 0.4 verwendet Simon in der Vorgabe die CMU-Sphinx-Engine als Backend zur Spracherkennung, unterstützt aber auch weithin Julius und das proprietäre HTK vollständig.

Listing 1

$ git clone git://anongit.kde.org/simon simonsource

Simon starten

Nach der Installation erscheint Simon im Startmenu der Desktop-Umgebung unter Eingabehilfen. Alternativ starten Sie die Anwendung mit dem Befehl simon auf der Kommandozeile. Beim ersten Start erscheint ein Assistent, der sie bei der Einrichtung unterstützt (Abbildung 1). Hier legen Sie fest, welche Szenarien und Sprachmodelle Simon später standardmäßig lädt, wo sich der Spracherkennungsserver Simond befindet und ob er automatisch starten soll.

Abbildung 1: Ein Konfigurationsassistent erleichtert das Einrichten von Simon.

Simond kümmert sich darum, dass die Spracheingaben der Clients ausgewertet werden. Standardmäßig läuft er auf dem selben Rechner wie Simon und lauscht am Port 4444. Wie es sich für einen Server gehört, darf er aber auch auf einem separaten Rechner laufen und mehrere Clients bedienen, weshalb es später eventuell noch passwortgeschützte Nutzer anzulegen gilt.

In einem weiteren Schritt konfigurieren Sie die Soundkarte (Abbildung 2) und finden Sich dann im Hauptfenster der Anwendung wieder (Abbildung 3).

Abbildung 2: Mehrere Soundkarten und Mikrofone in USB-Webcams stellen für Simon kein Problem dar.
Abbildung 3: Verfügbare Szenarien, erkannte Worte, Verbindungsstatus: Im Hauptfenster präsentiert Simon übersichtlich alle Informationen. Viele Funktionen erreichen Sie von hier aus per Mausklick.

Modellpflege

Um gesprochene Worte zu erkennen, greift Simon auf akustische Modelle ("Basismodelle") zurück. Diese gibt es in den drei Kategorien statisch, angepasst oder komplett nutzergeneriert. Die vorgefertigten statischen Modelle lassen sich nicht auf einzelne Nutzer zuschneiden: Damit sie korrekt funktionieren, muss der Anwender so sprechen, wie es die Urheber des Modells vorgesehen haben.

Auch angepasste Modelle liegen bereits vorgefertigt vor, lassen sich aber vom Nutzer noch für seine Stimme und Sprechweise trainieren – das erhöht die Treffergenauigkeit. Komplett nutzergenerierte Modelle müssen Sie zwar selbst erstellen, doch dafür bieten sie die höchste Trefferquote und eignen sich bestens auch für Individuen mit Sprachproblemen oder starken Dialekten.

Der Einsatz angepasster und nutzergenerierter Modelle setzt das Verwenden einer Spracherkennungsengine wie CMU Sphinx oder Julius voraus. Vorsicht: Die beiden verwenden nicht kompatible Modelle, weswegen sich ein Engine-Wechsel bei einem gut trainierten Modell nicht empfiehlt. Simon erkennt in der aktuellen Version das verwendete Modell und wählt automatisch das richtige Backend aus. Gute Anlaufstellen für für adaptierbare Modelle bieten die Download-Funktion von Simon unter Settings | Configure Simon | Sprachmodelle | Open model | Download oder das Voxforge-Projekt [7].

Von Voxforge heruntergeladene Modelle müssen Sie zunächst importieren. Um etwa das deutsche CMU-Sphinx-Modell zu nutzen, laden sie es von Voxforge herunter und entpacken es. Anschließend wählen Sie in der Konfiguration bei den Sprachmodellen anstelle des Downloads den Punkt Create from model files und geben die Pfade zu den nötigen Dateien an. Für andere verfügbare Sprachen oder Julius-Modelle klappt das Verfahren analog.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare
Spracherkennung - Diktieren
Carsten (unangemeldet), Mittwoch, 28. Juni 2017 15:55:01
Ein/Ausklappen

Sprachsteuerung schön und gut, aber ich habe nach etwas gesucht, um unter Linux diktieren zu können. Das gibt es nicht und wird es wohl in absehbarer Zeit auch nicht geben.
Jedoch für mich reicht diese Lösung (vielleicht für einige andere auch):
Im Webbrowser Chromium https://speechnotes.co/de/ aufrufen und los geht es mit dem Diktieren.
Viel Vergnügen.


Bewertung: Noch keine Bewertung abgegeben!
Den Beitrag bewerten: Gut / Schlecht

Infos zur Publikation

LU 08/2017: VIRTUALISIERUNG

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

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

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

Aktuelle Fragen

Bash awk Verständnis-Frage
Josef Federl, 22.07.2017 17:46, 2 Antworten
#!/bin/bash # Skriptdateiname = test.sh spaltennummer=10 wert=zehner awk '{ $'$spaltennummer'...
Bash - verschachtelte Variablenersetzung, das geht doch eleganter als meine Lösung?
Josef Federl, 18.07.2017 20:24, 2 Antworten
#!/bin/bash #Ziel des Skriptes wird sein die ID zu extrahieren hier nur als Consolentest: root@...
Speicherplatzfreigabe mit "sudo apt-get clean" scheitert
Siegfried Böttcher, 16.07.2017 21:16, 3 Antworten
Speicherplatzfreigabe mit "sudo apt-get clean" scheitert, weil aus mir unerfindlichen Gründen im...
Möchte Zattoo vom PC am Fernsehgerät sehen können
Ilona Nikoui, 15.07.2017 18:25, 3 Antworten
Hallo, ich habe mein Fernsehgerät, ein LG 26LE3300 mit dem PC verbunden per HDMI Kabel, wie empfo...
TUXEDO und Hardwareauswahl , fragwürdig / Kritik
Josef Federl, 11.07.2017 12:44, 7 Antworten
Auf tuxedocomputers.com steht: "....Aber wir können auch Linux und das so, dass "einfach" alles...