Update Animation von Gebärdensprache aus natürlicher Sprache authored by Lara Krautmacher's avatar Lara Krautmacher
......@@ -2,10 +2,10 @@
Der Begriff Computer-Supported Collaborative Work (CSCW) „is a generic term that combines the understanding of the way people work in groups with the enabling technologies of computer networking and associated hardware, software, services and techniques.“ (Wilson, 1991, S.1). Hierfür wurden über die Jahre verschiedene Werkzeuge entwickelt, um das kollaborative Arbeiten zu unterstützen. Ein Beispiel hierfür ist das Konferenzsystem Accelerator der Hochschule Reutlingen. Das vorliegende Projekt beschäftigt sich mit diesem System und stellt eine Implementierung im Bereich „Barrierefreiheit/3D” vor.
<h3>Motivation</h3>
Besonders in der Zeit der COVID-19 Pandemie wird CSCW ein immer wichtiger werdender Bestandteil der Lehre und des Arbeitslebens. Unter Einsatz verschiedener Technologien wird trotz der Kontaktbeschränkungen eine Zusammenarbeit ermöglicht. Ein wichtiger Aspekt ist hierbei die Barrierefreiheit solcher Technologien. Diese sollten so gestaltet sein, dass jeder Mensch sie verwenden kann. Aus diesem Grund befasst sich das Projekt mit der barrierefreien Gestaltung des Accelerators.
Besonders in der Zeit der COVID-19 Pandemie wird CSCW ein immer wichtiger werdender Bestandteil der Lehre und des Arbeitslebens. Unter Einsatz verschiedener Technologien wird Zusammenarbeit trotz Kontaktbeschränkungen möglich. Ein wichtiger Aspekt ist hierbei die Barrierefreiheit solcher Technologien. Diese sollten so gestaltet sein, dass jeder Mensch sie verwenden kann. Aus diesem Grund befasst sich das Projekt mit der barrierefreien Gestaltung des Accelerators.
<h3>Idee</h3>
Das grundlegende Ziel dieses Projektes ist es, den Accelerator für Menschen mit Hörbeeinträchtigungen zugänglich zu machen. Diese Menschen leiden an diversen Graden an Hörbeeinträchtigung bis zu komplettem Hörverlust und haben daher große Schwierigkeiten andere Teilnehmer im Accelerator zu verstehen. Eine Alternative zu Audio soll durch den Einsatz von Untertiteln und Gebärden durch einen animierten Avatar angeboten werden. Hierbei wird das Gesprochene (in Echtzeit) transkribiert und zusätzlich die passenden Gebärden dargestellt. Die Gebärden sind wichtig für diese Zielgruppe, da die Gebärdensprache oftmals die Muttersprache ist und die deutsche Schriftsprache und Grammatik nur eine Zweitsprache darstellt.
Das grundlegende Ziel dieses Projektes ist es, den Accelerator für Menschen mit Hörbeeinträchtigungen zugänglich zu machen. Diese Menschen können an diversen Graden an Hörbeeinträchtigung bis zu komplettem Hörverlust leiden und daher große Schwierigkeiten haben andere Teilnehmer im Accelerator zu verstehen. Eine Alternative zu Audio soll durch den Einsatz von Untertiteln und Gebärden durch einen animierten Avatar angeboten werden. Hierbei wird das Gesprochene (in Echtzeit) transkribiert und zusätzlich die passenden Gebärden dargestellt. Gebärden sind dabei wichtig für diese Zielgruppe, da die Gebärdensprache oftmals die Muttersprache ist und die deutsche Schriftsprache und Grammatik nur eine Zweitsprache darstellt.
<h2>Konzeption</h2>
<h3>Spracherkennung</h3>
......@@ -20,9 +20,13 @@ Das Tool <a href="https://cloud.ibm.com/catalog/services/speech-to-text">_Watson
Mit Hinblick auf eine dauerhafte und freie Nutzung eines Spracherkennungs-Tools im Accelerator werden die Tools Watson Speech to text und Dialogflow im Rahmen dieses Projektes nicht verwendet. Aufgrund der leichten Implementierung der Web Speech API durch JavaScript-Code in Webprojekte und die uneingeschränkte Nutzungsdauer der Spracherkennung fiel die Entscheidung auf dieses Tool.
<h3>Gebärdensprache</h3>
Die erkannte Sprache in Gebärdensprache umzuwandeln, und dann von einem Gebärden-Avatar darstellen zu lassen, stellt ein Herausforderung dar. Im ersten Schritt ergaben sich bereits einige Schwierigkeiten. Sprache live und automatisiert in Schriftform darzustellen stellt für den aktuellen Stand der Technik keine große Herausforderung mehr dar. Jedoch ist es aufwändig diese Schrift von einem Gebärden-Avatar darstellen zu lassen. Das hat folgende Gründe. Zum einen ist die Gebärdensprache keine 1zu1 Übersetzung von Lautsprache. Das bedeutet, dass die gebärdeten Wörter einer anderen Grammatik folgen und in einer anderen Reihenfolge gebärdet werden, als sie in der Lautsprache gesprochen werden. Der Satz <i>Wie alt bist du?</i> würde in der Gebärdensprache <i>du, wie alt?</i> gebärdet werden. Des Weiteren hat die Gebärdensprache keine offizielle Schriftform. Es ist also schwierig einen Zwischenschritt in der Übersetzung hin zur Darstellung durch einen Gebärden-Avatar einzulegen. Das heißt die Schriftsprache des Deutschen kann nicht in die Schriftsprache der Gebärdensprache übersetzt werden, weil diese offiziell nicht existiert. Es gibt zwar Ansätze und Versuche, Gebärdensprache schriftlich darzustellen, jedoch finden diese in der Praxis keine Anwendung. Außerdem sind diese Schriften sehr kompliziert. Der Grund hierfür ist, dass für die schriftliche Darstellung der Lautsprache nur eine Repräsentation, also ein oder mehrere Buchstaben, des Lautes benötigt wird. Eine Schrift der Gebärdensprache muss mehr Informationen darstellen, z.B. Ausführungsstelle, Mundbild, Mimik oder Handflächen-Orientierung.<br><br>
Die erkannte Sprache sollte anschließend in Gebärdenanimationen umgewandelt werden. Hierzu wurde zunächst eine erste Grobrecherche durchgeführt. Dabei ergab sich zu Beginn des Projektes der Plan die erkannten Texte zunächst zu analysieren und anschließend in Gebärdengrammatik umzustellen. Für die Analyse wurde dabei zunächst ermittelt, dass von der Universität Leipzig das Angebot der Leipzig Corpora Collection <a href="http://api.corpora.uni-leipzig.de/ws/swagger-ui.html#/word-service/getWordRelationsUsingGET">_Leipzig Corpora Collection_</a> besteht, welches eine API für den deutschen Wortschatz zur Verfügung stellt . Über diese können deutsche Texte auf die vorhandenen Wörter und deren Eigenschaften untersucht werden. So wurde der Plan entwickelt die erkannten Texte mithilfe dieser API zunächst auf die enthaltenen Worte und Wortarten zu analysieren. Anschließend sollten diese Informationen genutzt werden, um die bestehende Grammatik mithilfe von Context-Free Grammar in Gebärdengrammatik umzuwandeln. Hierzu wurde eine Recherche zum grammatikalischen Aufbau von Sätzen der deutschen Gebärdensprache (DGS) durchgeführt. Dabei hat sich herausgestellt, dass die DGS über eine vollständige eigene Grammatik verfügt. Der Satz Wie alt bist du? würde in der Gebärdensprache du, wie alt? gebärdet werden. Des Weiteren hat die Gebärdensprache keine offizielle Schriftform. Es ist also schwierig einen Zwischenschritt in der Übersetzung hin zur Darstellung durch einen Gebärden-Avatar einzulegen. Das heißt die Schriftsprache des Deutschen kann nicht in die Schriftsprache der Gebärdensprache übersetzt werden, weil diese offiziell nicht existiert. Es gibt zwar Ansätze und Versuche, Gebärdensprache schriftlich darzustellen, jedoch finden diese in der Praxis keine Anwendung. Außerdem sind diese Schriften sehr kompliziert. Der Grund hierfür ist, dass für die schriftliche Darstellung der Lautsprache nur eine Repräsentation, also ein oder mehrere Buchstaben, des Lautes benötigt wird. Eine Schrift der Gebärdensprache muss mehr Informationen darstellen, z.B. Ausführungsstelle, Mundbild, Mimik oder Handflächen-Orientierung. Um diese fehlende Schriftsprache zu umgehen sollten die Worte in ihrer Grundform direkt in Gebärden umgesetzt und damit ein “Wörterbuch” erstellt werden. So könnte das Gesprochene zunächst analysiert, in die Grundform umgewandelt, in die neue Satzstruktur umgestellt und mithilfe des Wörterbuchs in Animationen dargestellt werden.<br><br>
Aktuelle Ansätze aus dem Jahr 2020 nutzen Deep-Learning um diese Probleme zu bewältigen (Saunders, Camgoz, & Bowden, 2020). Als Daten haben hierbei Gebärdensprach-Übersetzungen aus dem Fernsehen gedient. Das ist vorteilhaft, weil sowohl Zugriff auf das gesprochene als auch Zugriff auf die gebärdete Übersetzung besteht. Dieser Ansatz erzielt vielversprechende Ergebnisse. Leider steht uns die Technik dieser Ansätze nicht zur Verfügung. Für dieses Projekt wurde eine andere Lösung gefunden. Die Darstellung der Gebärdensprache beschränkt sich auf einige sehr relevante Sätze und Wörter, die in Online Konferenzen oft genutzt werden beziehungsweise besonders nützlich sind. Diese werden dann von einem Gebärden-Avatar dargestellt. Damit dies möglich ist wird für jeden Satz/ Wort eine Animation eines Avatars erstellt. Das zu entwickelnde Tool soll erkennen, wann etwas gesprochen wird, für das eine Animation gespeichert ist. Diese Animation soll anschließend abgespielt werden. Wenn also das Wort Hallo gesprochen wird soll die zugehörige Animation darstellt werden. Damit die Animationen sichtbar sind, sollen diese in den Accelerator eingebunden werden. Über einen Button soll die Animation ein- und ausgeblendet werden können, sodass jeder Nutzer entscheiden kann, ob er das Tool benötigt oder nicht.
Bei den ersten Versuchen der Umsetzung dieses Plans haben sich jedoch mehrere Schwierigkeiten herauskristallisiert. Die größte Schwierigkeit stellte dabei die Analyse der gesprochenen Sprache dar. Da Deutsch über eine Vielzahl verschiedener Satzstrukturen verfügt ist es schwierig zu ermittelt, bei welchem Wort es sich um Subjekt, Verb, Objekt, Nebenverb oder Ähnliches handelt. Ohne diese Information kann jedoch das Konzept der Context-Free Grammar nicht angewendet werden, um die bestehenden Satzstrukturen in Neue umzuwandeln. Zudem nutzt der Accelerator Node.js als Programmiersprache, welche wiederum nur wenige Möglichkeiten zum Natural Language Processing bietet. Eine weitere Herausforderung stellte sich außerdem bei der DGS-Grammatik, da diese auch über flexible Elemente, wie das Zeigen auf eine bestimmte Person im Raum, verfügt, welche so in der deutschen gesprochenen Sprache nicht existieren und schwer übersetzt werden können. Außerdem stellte sich bei der Recherche zu bereits bestehenden Projekten heraus, dass aktuelle Ansätze Deep-Learning einsetzen. Dies ist beispielsweise im Projekt von Saunders et al. (2020) der Fall, in welchem Gebärdensprach-Übersetzungen aus dem Fernsehen eingesetzt werden, um Übersetzungen zwischen DGS und gesprochenem Deutsch zu erstellen. Der Zugriff auf das Gesprochene als auch auf die gebärdete Übersetzung stellt sich hierbei als großer Vorteil heraus und das Projekt konnte vielversprechende Ergebnisse erzielen. Leider stehen die Technik und die Ressourcen dieser Ansätze in diesem Projekt nicht nicht zur Verfügung.<br>
Aufgrund dieser Schwierigkeiten und der begrenzten Kapazitäten wurde der ursprüngliche Plan abgewandelt. Es werden nun Beispielsätze umgesetzt, welche mit festen Animationen versehen und durch einen 3D-Avatar dargestellt werden. Dabei werden relevante Sätze und Wörter ausgewählt, die in Online Konferenzen oft genutzt werden beziehungsweise besonders nützlich sind. Das zu entwickelnde Tool soll dafür erkennen, wann etwas gesprochen wird, für das eine Animation gespeichert ist. Anschließend soll die dazu passende Animation abgespielt werden. Wenn also das Wort Hallo gesprochen wird die zugehörige Animation Hallo dargestellt. Diese Animationen werden in den Accelerator mit eingebunden werden und solle nach Bedarf über einen Button ein- und ausgeblendet werden können. So kann jeder Nutzer entscheiden kann, ob er das Tool nutzen möchte oder nicht.
<h2>Umsetzung Spracherkennung</h2>
Wie bereits erwähnt, wird für dieses Projekt die Web Speech API verwendet. Grundlage für die Implementierung der Spracherkennung diente ein <a href="https://codingshiksha.com/javascript/javascript-speech-to-text-notes-app-using-web-speech-api-full-project/">Codebeispiel</a> aus dem Internet. Dieser beinhaltet zum einen den Code für die Einbindung der Web Speech API und verschiedener Kontrollelemente, welche in der Datei js/libs/speech-to-text.js implementiert wurden. Zum anderen werden in der index.html des Accelerators weitere Elemente eingefügt, die für die Ausgabe der Transkription verwendet werden. Im Folgenden wird die Entwicklung der Spracherkennung im Accelerator präsentiert.
......
......