DE102012010627A1 - Kontinuierlich arbeitende Gestenerkennungsvorrichtung und zugehörige Gestensprache zur Übermittlung von Kommandos und Informationen an eine Mensch-Maschineschnittstelle - Google Patents
Kontinuierlich arbeitende Gestenerkennungsvorrichtung und zugehörige Gestensprache zur Übermittlung von Kommandos und Informationen an eine Mensch-Maschineschnittstelle Download PDFInfo
- Publication number
- DE102012010627A1 DE102012010627A1 DE201210010627 DE102012010627A DE102012010627A1 DE 102012010627 A1 DE102012010627 A1 DE 102012010627A1 DE 201210010627 DE201210010627 DE 201210010627 DE 102012010627 A DE102012010627 A DE 102012010627A DE 102012010627 A1 DE102012010627 A1 DE 102012010627A1
- Authority
- DE
- Germany
- Prior art keywords
- gesture
- transmitter
- signal
- elementary
- hand
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/29—Graphical models, e.g. Bayesian networks
- G06F18/295—Markov models or related models, e.g. semi-Markov models; Markov random fields; Networks embedding Markov models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Social Psychology (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Psychiatry (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
- Einleitung
- Die kontinuierliche Erfassung von Gesten und deren Parametrisierung und Zuordnungsparametern ist eine wichtige Grundfunktion in vielen, insbesondere mobilen Applikationen wie beispielsweise bei der Steuerung von Computer, Robotern, Mobiltelefonen und Smart-Phones.
- Ein wesentliches Problem vieler Gestenerkennungssysteme ist, dass sie auf der Verarbeitung von Bildsignalen beruhen. Hierfür sind Kameras und aufwendige Bildverarbeitungseinrichtungen erforderlich. Diese benötigen größere Mengen an Ressourcen wie beispielsweise Rechenleistung, Speicherbedarf und elektrische Energie. In einem Mobiltelefon sind aber genau diese sehr begrenzt. Dies betrifft insbesondere den Stromverbrauch, den Speicherplatz und die Lebensdauer der Verarbeitungseinheiten.
- Alternative Systeme verfügen über eine geringere Empfindlichkeit, was die Erkennungsleistung verschlechtert. Des Weiteren sind diese Systeme nicht applikationsunabhängig, weshalb die erneute, aufwendige und damit sehr teure Aufnahme von Gestendatenbanken erforderlich ist. Außerdem sind die meisten Systeme empfindlich gegenüber Umgebungslicht und anderen Störeinflüssen.
- Schließlich verfügen, die meisten Anwendungssysteme über weitere Sensoren bzw. sensorielle Fähigkeiten, die mit dem Betrieb eines Gestenerkennungssystems kombiniert werden sollten.
- Aufgabe der Erfindung
- Die Erfindung stellt sich die Aufgabe, eine permanent verfügbare, energieeffiziente sprecher- und weitestgehend geräteunabhängige Gestenschnittstelle für Mensch-Maschineschnittstellen bei gleichzeitig geringem Ressourcenverbrauch und hoher Robustheit beispielsweise gegenüber Umgebungslicht bereitzustellen.
- Darüber hinaus löst sie die Aufgabe, die Übertragbarkeit von Gestendatenbanken durch eine Kalibriermethode zu verbessern.
- Beschreibung des Grundgedankens der Erfindung
- Die Erfindung gliedert sich in folgende Teile:
- – Dem eigentlichen Erfassungssystem, insbesondere ein multidimensional rückgekoppeltes optisches Messsystem
- – Einem zur Verwendung in dem erfindungsgemäßen Erfassungssystem geeigneten Smart-Phone bzw. Roboter
- – Einem Verarbeitungsverfahren und System zur Ermittlung eines Gestenerkennungsergebnisses, das durch das Erkennungssystem vollautomatisch ausgeführt werden kann.
- – Einem Verfahren zur Adaption des erfindungsgemäßen Systems und Verfahrens und der zugehörigen Datenbanken an eine konkrete Hardware-Plattform
- – Ein Verfahren zur Aufnahme der geräte- und sprecherunabhängigen Gestendatenbanken
- – Der Grundstruktur einer zugehörigen Gestensprache zur Steuerung eines Smart-Phones und ähnlicher Anwendungen, bei denen ein System durch Gesten beeinflusst werden soll.
- Diese werden in den folgenden Abschnitten beschrieben.
- Beispielhaftes Erkennungssystem
- Ein erstes beispielhaftes erfindungsgemäße Messsystem besteht in erster Linie aus einem typischerweise triangulationsfähigen optischen Messsystem mit typischerweise einem Sendersystem und einem Empfängersystem oder einem kombinierten Sender/Empfängersystem, das sehr schnell zwischen Sende-Phase und Empfangsphasen wechseln kann. Jedes Sendesystem kann dabei aus mehreren Sendern bestehen. Ebenso kann jedes Empfängersystem aus mehreren Empfängen bestehen. Gleiches gilt für die kombinierten Empfänger-/Sendersysteme.
- Um die Arbeitsweise zu verdeutlichen, wird die Vorrichtung zunächst anhand eines Systems mit nur einem Sender und einem Empfänger mit Hilfe der schematischen
1 erläutert. An dieser Stelle sei darauf hingewiesen, dass sämtliche Figuren in diesem Dokument nur solche Details enthalten, die eine fachkundige Person zum Verständnis und zum Nachvollziehen des erfinderischen Gedankes benötigt. - Die beispielhafte Vorrichtung besteht aus mindestens einem ersten Transmitter (
3 ) der in eine erste Übertragungstrecke bestehend aus den Übertragungsteilstrecken (4 ) und (6 ) hineinsendet. Diese Übertragungsstrecke (4 ,6 ) kann beispielsweise durch ein Objekt in die besagte erste Übertragungsteilstrecke (4 ) und die zweite Übertragungsteilstrecke (6 ) geteilt werden. Weitere serielle und parallele Teilungen in weitere serielle und parallele Übertragungsteilstrecken sind denkbar. (Dies kommt der Möglichkeit eines unidirektionalen Übertragungsnetzwerkes mit einem Eingängen und einem Ausgängen gleich.) - Am Ende der ersten Übertragungsteilstrecke (
4 ) befindet sich ein Wechselwirkungsbereich (2 ) in dem der Strom der physikalischen Größen (1 ) beispielsweise Ort, Ausrichtung und Oberflächenbeschaffenheit eines Objektes, insbesondere beispielsweise einer Hand, mit dem Signalstrom des Transmitters (3 ), der aus der ersten Übertragungsteilstrecke (4 ) austritt, wechselwirkt (5 ). Diese Wechselwirkung (5 ) verändert die Eigenschaften des Übertragungssignals des Transmitters (3 ). Diese Eigenschaften können beispielsweise Amplitude, Phase, Spektrum etc. sein. Somit prägt das Objekt dem Signal des Transmitters Spuren seiner Eigenschaften auf, die später genutzt werden sollen, um Rückschlüsse auf das Objekt zu ermöglichen. - Das Signal des Transmitters (
3 ) durchläuft nach dieser Modifikation (5 ) typischerweise die zweite Übertragungsteilstrecke (6 ) und wird von einem Empfänger oder Sensor (7 ) aufgefangen. - Es verbleibt das Problem der Unabhängigkeit von Umgebungseinflüssen. Hierzu wird das Empfangssignal am Empfänger (
7 ) typischerweise noch im physikalischen Medium durch ein Kompensationssignal so aufgefüllt, dass sich nahezu ein konstantes Gesamtsignal ergibt. Hierzu sendet ein Kompensationssender (9 ) über eine zweite Übertragungsstrecke ein entsprechendes Kompensationssignal, das sich im Empfänger (7 ) mit dem Signal des Transmitters (3 ) nach dessen Durchgang durch die Übertragungsstrecken (4 ,6 ) überlagert. Hier sei der Vollständigkeit erwähnt, dass das Kompensationssignal sowohl im Medium, hier beispielsweise als Licht, erzeugt werden kann, als auch als Signal, hier beispielsweise als elektrisches Stromsignal, das den Photostrom einer LED emuliert, direkt in die Leitung des Verstärkers eingespeist werden kann. - Hierzu steuert ein Regler (
8 ) (mit Controller beschriftet) einen Kompensationssender (9 ), der über eine vordefinierte und im Wesentlichen nicht durch den Strom physikalischer Einflüsse (1 ) beeinflusste, typischer Weise separate Übertragungsstrecke (10 ) ebenfalls ein Signal in den Empfänger (7 ) einspeist, wo die beiden Signale sich, wie gesagt, linear oder nicht linear überlagern. Der Empfänger (7 ) ist im Idealfall jedoch ein linearer Empfänger, in dem sich die Signale des Transmitters (3 ) (nach Modifikation (5 )) und das Signal des Kompensators (9 ) linear überlagern. Ist der Empfänger (7 ) nicht linear, so addiert sich eine Komponente die proportional zu dem Produkt der beiden überlagernden Signale ist. Auch wenn dieser Fall regelungstechnisch berücksichtigt werden kann, so wird er hier nicht näher erläutert. Für den Fachmann ist es jedoch leicht möglich, den hier beschriebenen Regler so zu modifizieren, dass eine Berücksichtigung solcher Nichtlinearitäten jederzeit möglich ist. - Der Controller (
8 ) erzeugt auch das Sendesignal S5 des Transmitters (3 ). Wichtig bei der Erzeugung des Sendesignals S5 ist, dass dieses Sendesignal S5 bezüglich des in diesem Controller (8 ) durchgeführten Skalarprodukts orthogonal zu den Sendesignalen anderer Controller ist. Dies gilt für den Fall, dass sich weitere Controller im System befinden. - Der Controller (
8 ) liefert ein vektorielles Ausgangssignal (24 ) das im Folgenden analysiert wird. Hierbei werden Dimension und Inhalt so gewählt, dass die Gestenerkennung optimiert wird. - Für die Analyse des durch den Controller (
8 ) ausgegebenen vektoriellen Signals (24 ) wie auch für die Synthese des Prüfsignals können verschiedene Methoden und die zu diesen Methoden passenden Geräte bzw. Systemkomponenten eingesetzt werden. - Ergebnis dieser Analyse bei Ansteuerung durch den Controller (
8 ) ist ein Satz von Parameter, der durch weitere Parameter, die beispielsweise durch optionale weitere Sensoren (37 ), Touchpads, Schalter, Taster und andere Messsysteme (37 ) gewonnen werden können, ergänzt werden kann. Das Ergebnis ist ein so genannter Quantisierungsvektor, dessen Komponenten, die gemessenen Parameter, im Allgemeinen aber nicht vollkommen unabhängig voneinander sein werden. Jeder Parameter für sich weist in der Regel eine zu geringe Selektivität für die genaue Gestenunterscheidung in komplexen Zusammenhängen auf. Durch die Erstellung eines oder mehrerer solcher Quantisierungsvektoren aus dem kontinuierlichen Strom analoger physikalischer Parameterwerte (24 ) in typischerweise regelmäßigen oder regulären Zeitabständen durch das physikalische Interface (23 ) (siehe1 ) mittels geeigneter entsteht ein zeitlich und wertemäßig quantisierter mehrdimensionaler Parameterdatenstrom (24 ). - Dieses so gewonnene mehrdimensionale Signal (
24 ) in Form eines oder mehrerer Ströme von Quantisierungsvektoren wird in einem ersten beispielhaften Bearbeitungsschritt zunächst in einzelne Frames definierter Länge unterteilt, gefiltert, normiert, dann orthogonalisiert und ggf. durch eine nichtlineare Abbildung – z. B. Logarithmierung und Cepstrumanalyse – geeignet verzerrt. Des Weiteren werden hier auch Ableitungen der so generierten Werte gebildet. Dieses Verfahren ist aus der Mustererkennung und hier der Spracherkennung und der Materialerkennung im speziellen seit langem als Feature-Extraktion (11 ) bekannt. Die Möglichkeiten sind mannigfaltig und können der Literatur entnommen werden. Schließlich findet eine Multiplikation des mehrdimensionalen Quantifizierungssektors mit einer so genannten LDA-Matrix statt. - Der nun folgende Schritt der Erkennung, kann beispielsweise auf zwei unterschiedliche Methoden durchgeführt werden:
- a) durch ein Neuronales Netz oder
- b) durch einen HMM-Erkenner
- c) durch ein Petri-Netz
- Zunächst wird der HMM-Erkenner (
1 ) beschrieben:
Mit Hilfe der besagten vordefinierten LDA-Matrix (14 ) wird der so modifizierte Datenstrom (38 ) so vom mehrdimensionalen Eingangsparameterraum auf einen neuen Parameterraum abgebildet, wodurch seine Selektivität maximal wird. Die Komponenten der dabei gewonnenen neuen transformierten Merkmalsvektoren werden hierbei nicht nach realen physikalischen oder sonstigen Parameter, sondern nach maximaler Signifikanz ausgewählt, was besagte maximale Selektivität zur Folge hat. - Die LDA-Matrix wurde in der Regel zuvor aufgrund von Beispieldatenströmen aus der Datenbasis (
18 ) mit bekannten Gestendatensätzen zuvor durch das Training (17 ) offline berechnet. Das Verfahren weicht im Falle einer geräteunabhängigen Gestenerkennung nun in einem entscheidenden Schritt vom Standard-Verfahren ab: (2 ) Wenn Sorge getragen wird, dass alle Elemente der Feature-Extraktion (11 ) aus zumindest lokal umkehrbaren Funktionen bestehen, so können Abweichungen der Geometrie etc. in Form einer annähernd linearen Transformationsfunktion berücksichtigt werden. - Ist daher für eine geometrische Anordnung von Sender und Empfängern in einer wohl definierten Applikation die LDA-Matrix (
14 ) ermittelt worden, so kann diese durch einfache Matrix-Multiplikation mit einer Geräte/Applikationsmatrix (26 ) an die jeweilige Geometrie des konkreten Gerätes angepasst werden. (2 ) Auf diese Weise erhält man einen geräteunabhängigen und sprecherunabhängigen Gestenerkenner, der leicht von Gerät zu Gerät – also beispielsweise von einem Spielkonsolentyp zu einem Smart-Phone – transportiert werden kann. - Diese Matrix (
26 ) kann beispielsweise so ermittelt werden, dass eine Anzahl von Test-Nutzern vorgegebene und normierte Test-Gesten für die konkrete zu erkennende Gestenerkennungsapplikation ausführt. Da die Gesten bekannt sind, kann nun eine einfache lineare Transformation zwischen den neuen Vektoren und den zuvor auf einem anderen Gerät aufgenommenen Vektoren der Database (18 ) durch ein entsprechendes Trainingstool (25 ) berechnet werden. - Um die Test-Gesten weltweit reproduzierbar zu gestalten, ist es sinnvoll, diese durch geeignete Vorrichtungen (z. B. motorisierte Puppen oder Roboter) standardisiert ausführen zu lassen. (
9 ) Hierdurch können diese künstlichen Gesten genau mit den abgespeicherten Prototypen für diese Roboter basierenden Referenzgesten verglichen werden. Dies wird anhand von11 erläutert. Sie zeigt ein beispielhaftes Mobiltelefon (33 ) über dem sich eine Modellhand (32 ) befindet. Diese Modellhand kann beispielsweise die Hand einer Schaufensterpuppe sein. Die Hand wird durch einen Roboterarm (35 ), der segmentiert ist, bewegt. Zwischen den Segmenten (36 ) befinden sich Gelenke (35 ) In9 ist nicht exakt gezeigt, wie die Hand bewegt wird, das heißt durch welchen Motor, sondern nur wie die Aufnahme der Standardgesten/Normierungsgesten das Prinzip verläuft. Ist die Größe der Hand (32 ) und deren Form, Farbe etc. genormt, sowie deren Ausrichtung und Abstand zum Mobiltelefon (33 ), die Beleuchtung, die Reflexionseigenschaften des Behältnisses und der Hand selbst, in dem sich die gesamte Vorrichtung und das Mobiltelefon (33 ) befindet, und die Bewegung, hier angedeutet durch eine Wischbewegung (34 ), definiert, so lässt sich das Gestenerkennungsergebnis einer solchen definierten Bewegung (34 ) vorhersagen und damit mit dem erhaltenen Ergebnis vergleichen - Das Ergebnis dieser Berechnung ist eine applikationsspezifische LDA-Matrix (
26 ). (siehe auch2 ) Der Vorteil ist nun, dass der Datenstrom (38 ), der die Feature-Extraktion verlässt, sprecherunabhängig und weitestgehend geräteunabhängig ist. - Der wesentliche wirtschaftlich Vorteil dieses Verfahrens zum Transfer einer Gestendatenbank von einem Gerätetyp zum anderen ist, dass die teure Aufnahme der Gestendatenbanken nur noch einmal mit realen Gestensprechern ausgeführt werden muss. Diese Kosten können bei bis zu 1 Mio Euro je Applikation liegen.
- Die anderen entsprechenden Verfahren sind aus der Sprach- und Materialerkennung bekannt. Gleichzeitig werden die Prototypen aus diesen Beispieldatenströmen in der Datenbasis (
18 ) in den Koordinaten des neuen Parameterraumes berechnet und in einer Prototypendatenbank (15 ) hinterlegt. Diese kann neben diesen statistischen Daten auch Anweisungen für ein Rechnersystem enthalten, was bei einer erfolgreichen bzw. fehlgeschlagenen Erkennung des jeweiligen Prototyps geschehen soll. In der Regel wird es sich bei dem Rechnersystem um das Rechnersystem (z. B. ein Mobiltelefon) handeln, dessen Mensch-Maschine-Schnittstelle (im Folgenden mit HMI bezeichnet) die erfindungsgemäße Gestenerkennung darstellen soll. - Die so gewonnenen Muster-Vektoren (
38 ), die von der Feature-Extraction (11 ) ausgegeben werden, werden nun mit diesen vorab eingespeicherten, d. h. erlernten Gestenprototypen (15 ) beispielsweise durch Berechnung des euklidischen Abstands zwischen einem Quantisierungsvektor in den Koordinaten des neuen Parameterraumes und allen diesen zuvor abgespeicherten Prototypen (15 ) in der Emissionsberechnung (12 ) verglichen. Hierbei werden mindestens zwei Erkennungen geleistet: - 1. Entspricht der erkannte Quantisierungsvektor (
38 ) einem der vorgespeicherten Quantisierungsvektor-Prototypen (= vorbekannte Gesten) oder nicht und mit welcher Wahrscheinlichkeit und Zuverlässigkeit? - 2. Wenn es eine der bereits gespeicherten Gesten ist, welche ist es und mit welcher Wahrscheinlichkeit und Zuverlässigkeit?
- Um die erste Erkennung zu leisten, werden in der Regel auch Dummy-Prototypen in der Prototypendatenbank (
15 ) abgespeichert, die alle im Betrieb vorkommenden parasitären Parameterkombinationen weitestgehend abdecken sollten. Die Abspeicherung besagter Prototypen geschieht in einer Datenbank (15 ), die im Folgenden auch mit Code-Book (15 ) bezeichnet wird. - Wird der in der Datenbank/dem Code-Book (
15 ) ebenfalls abgelegte minimale halbe bekannte euklidische Abstand zwischen zwei Quantisierungsvektoren zweier verschiedener Prototypen von Elementargesten in neuen Koordinaten zu einem Prototyp aus dem Code-Book unterschritten, so wird dieser als erkannt gewertet. Es kann ab diesem Zeitpunkt ausgeschlossen werden, dass weitere im Verlauf einer weiter fortgeseteten Suche berechnete Abstände zu anderen Prototypen des Code-Books (15 ) noch kleinere Abstände liefern können. -
- Dabei steht dim_cnt für den Dimension-Index der bis zur maximalen Dimension des Feature-Vektors (
38 ) dim durchläuft. - FVdim_cnt steht für die Komponente des feature-Vektors (
38 ) entsprechend des Index dim_cnt. - Cb_cnt steht für die Nummer des Eintrags im Code-Book (
15 ), also für die Cb_cnt entsprechende Elementargeste. - CbCB_cnt,dim_cnt steht dementsprechend für die dim_cnt entsprechende Komponente des prototypischen Code-Book-Feature-Vektor-Eintrags, der der Cb_cnt entsprechenden Elementargeste zugeordnet ist.
- DistFV_CbE steht daher für die erhaltene minimale euklidische Distanz. Bei der Suche nach der kleinsten euklidischen Distanz wird die Nummer Cb_cnt gemerkt, die den kleinsten Abstand produziert.
- Zur Verdeutlichung wird ein beispielhafter Assembler-Code angeführt:
- Das Vertrauensmaß für eine richtige Erkennung leitet sich aus der Streuung der zugrunde gelegten Basisdatenströme für einen Prototyp und dem Abstand des Quantisierungsvektors von deren Schwerpunkt her.
-
10 demonstriert verschiedene Erkennungsfälle. Zur Vereinfachung ist die Darstellung für einen zweidimensionalen Feature-Vektor gewählt, damit die Methodik auf einem zweidimensionalen Blatt Papier dargestellt werden kann. In der Realität sind die Feature-Vektoren (38 ) typischerweise immer multidimensional. - Es sind Schwerpunkte verschiedener Prototypen (
41 ,42 ,43 ,44 ) eingezeichnet. Im Code-Book (15 ) kann nun wie oben beschrieben, der halbe minimale Abstand dieser Prototypen eingespeichert sein. Dies wäre dann ein globaler Parameter, der für alle Prototypen gleichermaßen gültig wäre. Diese Entscheidung mit Hilfe des minimalen Abstands setzt aber voraus, dass die Streuungen der Elementargesten-Prototypen (41 ,42 ,43 ,44 ) mehr oder weniger identisch sind. Ist die Feature-Extraktion optimal, so ist dies auch der Fall. Dies entspräche einem Kreis um jeden der Prototypen mit Gestendatenbank spezifischen Radius. - Das lässt sich in der Realität aber nur selten erzielen. Eine Verbesserung der Erkennungsleistung lässt sich daher erzielen, wenn die Streubreite für den Prototypen jeder Elementargeste jeweils mitabgespeichert würde. Dies entspräche einem Kreis um jeden der Prototypen mit Prototyp spezifischen Radius. Der Nachteil ist ein Anstieg der Rechenleistung.
- Eine weiter Verbesserung der Erkennungsleistung lässt sich erzielen, wenn die Streubreite für den Prototypen jeder Elementargeste durch eine Ellipse modelliert wird. Hierzu müssen statt des Radius wie zuvor nun die Hauptachsendurchmesser der Streu-Ellipse und deren Verkippung gegen das Koordinatensystem abgespeichert werden. Der Nachteil ist ein weiterer, massiver Anstieg der Rechenleistung und des Speicherbedarfes.
- Natürlich lässt sich die Berechnung noch weiter verkomplizieren, was aber in der Regel den Aufwand nur massiv steigert und die Erkennerleistung nicht mehr wesentlich anhebt.
- Kompakterkenner für mobile Geräte werden daher typischerweise auf die einfachste der beschriebenen Möglichkeiten zurückgreifen.
- Die Lage der durch die Emissionsberechnung ermittelten Gestenvektoren kann nun höchst unterschiedlich sein. So ist es denkbar, dass ein solcher Gestenvektor (
46 ) zu weit von irgendeiner Geste entfernt liegt. Dieser Abstandsschwellwert kann beispielsweise der minimale halbe Prototypenabstand sein. Auch kann es sein, dass sich die Streubereiche der Prototypen (43 ,42 ) überlappen und ein ermittelter Gestenvektor (45 ) in dem Überlappungsbereich liegt. In diesem Fall würde eine Hypothesenliste beide Prototypen mit unterschiedlichen Wahrscheinlichkeiten, da unterschiedlichen Abständen enthalten. - Im besten Fall liegt der ermittelte Gestenvektor (
48 ) im Streubereich (Schwellwertellipsoid) (47 ) eines einzigen Prototypen (41 ) der damit sicher erkannt wird. - Es ist denkbar, zur verbesserten Modellierung der Streubereiche einer einzelnen Geste, diese durch mehrere Prototypen mit zugehörigen Streubereichen zu modellieren. Es können also mehrere Prototypen dieselbe Geste darstellen. Die Gefahr dabei ist, dass sich Aufgrund der Aufteilung der Wahrscheinlichkeit einer Geste auf mehrere solcher Subprototypen die Wahrscheinlichkeit der einzelnen Subprototypengeste kleiner werden kann als die einer anderen Geste, deren Wahrscheinlichkeit kleiner war als die der Ursprungsgeste. Somit kann sich diese andere Geste möglicherweise fälschlich durchsetzen.
- Ein wesentliches Problem stellt somit die Rechenleistung dar, die zur Verfügung gestellt werden muss, um die Elementargesten sicher zu erkennen. Dies soll noch ein wenig diskutiert werden:
Ein entscheidender Punkt ist, dass der Rechenaufwand mit Cb_anz·dim steigt. - Bei einem nicht optimierten HMM-Erkenner beträgt die Anzahl der Assemblerbefehle, die ausgeführt werden müssen, um eine Vektorkomponente zu berechnen, ca. 8 Schritte.
- Die Anzahl A_Abst der notwendigen Assembler-Schritte zur Berechnung des Abstands eines einzelnen Code-Book-Eintrags (CbE) zu einem einzelnen Feature-Vektor (FV) wird in etwa wie folgt berechnet:
A_Abst = FV_Dimension·8 + 8 - Dies führt zur Anzahl A_CB der Assembler-Schritte für die Ermittlung des Code-Book-Eintrags mit dem geringsten Abstand:
A_CB = Cb_anz·(A_Abst) + 4 = Cb_anz·(FV_Dimension·8 + 8) + 4 - Am Beispiel eines mittlerer HMM-Erkenners mit 50000 CbE (Code-Book-Einträgen = CB_anz) und 24 FV_Dimensionen (Feature-Vektor-Dimensionen = FV_Dimension) beträgt die Anzahl der Schritte:
50000·(24·8 + 8) + 4~10 Millionen Operationen pro Feature-Vektor (24) - Bei einer relativ niedrigen Abtastrate von 8 kHz = 8000 FV pro Sekunde (Feature-Vektoren (
24 ) pro Sekunde) benötigt man schon eine Rechenleistung von 8 GIpS (8 Milliarden Instruktionen pro Sekunde). - Insbesondere für energieautarke und/oder mobile Systeme führt dieses einfache Beispiel schon zu einem Ressourcenverbrauch, der nicht tragbar ist.
- Im Falle eines optimierten HMM-Erkenners wird daher, wie bereits erwähnt, der kleinste Code-Book-Abstand zwischen zwei Prototypen vorberechnet und im Code-Book (
15 ) abgelegt. Dies hat den Vorteil, dass die Suche dann abgebrochen werden kann, wenn ein Abstand gefunden wurde, der kleiner als die Hälfte dieses minimalen Code-Book-Abstands ist. Damit halbiert sich die mittlere Suchzeit. Weitere Optimierungen können vorgenommen werden, wenn das Code-Book nach dem statistischen Vorkommen der Elemantargesten sortiert wird. Hierdurch kann sichergestellt werden, dass die häufigsten Elementargesten sofort gefunden werden, was die Rechenzeit weiter verkürzt. - Für einen dermaßen optimierten HMM-Erkenner stellt sich der Rechenleistungsbedarf nun wie folgt dar:
Wieder sind es 8 Schritte zur Berechnung einer Vektor-Komponente. Die Schritte zur Berechnung des Abstands A_Abst eines Code-Book-Eintrags (CbE) zum Feature-Vektor (FV) sind wieder:A_Abst = FV_Dimension·8 + 8 - Die Anzahl der Schritte für die Ermittlung des Code-Book-Eintrags mit dem geringsten Abstand A_CB mit Optimierung ist ein wenig höher:
A_CB = Cb_anz·(A_Abst) + 4 = Cb_anz·(FV_Dimension·8 + 10) + 4 - Die zwei zusätzlichen Assembler-Befehle sind notwendig, um zu prüfen, ob sich der Abstand unterhalb des halben kleinsten Code-Book-Eintrag-Abstands befindet.
- Des Weiteren wird die Anzahl CB_Anz der Code-Book-Einträge für mobile und energieautarke Applikationen auf 4000 Code-Book Einträge oder noch geringer beschränkt.
- Außerdem wird die Anzahl der Feature-Vektoren pro Sekunde durch Absenkung der Abtastrate abgesenkt.
- Dies wird an einem einfachen Beispiel erläutert:
Der besagte mittlere HMM-Erkenner wird nun mit einem Code-Book mit nur noch einem knappen Zehntel der Einträge z. B. mit 4000 CbE und weiterhin mit 24 FV-Dimensionen betrieben. - Die Anzahl der Schritte beträgt nun
4000·(24·8 + 10) + 4~808004 Operationen pro Feature-Vektor - Bei einer Absenkung der Feature-Vektor-Rate auf 100 FV pro Sek (Feature-Vektoren pro Sekunde) extrahiert aus 10 ms Parameter-Fenstern über beispielsweise je 80 Samples und Abbruch der Suche wenn Abstand unterhalb des halben kleinsten Code-Book-Eintrag-Abstands liegt, ergibt sich mindestens eine Halbierung des Aufwands bei geeigneter Code-Book-Sortierung.
- Die erforderliche Rechenleistung sinkt dann auf < 33 DSP-Mips (33 Millionen Operationen pro Sekunde). In der Realität führt die Code-Book-Sortierung zu noch geringeren Rechenleistungsbedarfen von beispielsweise 30 Mips. Damit wird das System real-time fähig und in ein einzelnes IC integrierbar.
- Durch Vorselektion kann der Suchraum eingeschränkt werden. Eine Voraussetzung ist dabei eine Gleichverteilung der Daten = Schwerpunkte der Quadranten im geometrischen Quadrantenzentrum.
- Die notwendige Verringerung des Code-Books (
15 ) hat Vor- und Nachteile:
Eine Verringerung des Code-Books (15 ) erhöht sowohl die False-Acceptance-Rate (FAR), also die falschen Gesten, die als Gesten akzeptiert werden, als auch die False-Rejection-Rate (FRR), also die richtig ausgeführten Gesten, die nicht erkannt werden. - Auf der anderen Seite verringert sich hierdurch der Ressourcenbedarf (Rechenleistung, Chip-Flächen, Speicher, Stromverbrauch etc.).
- Darüber hinaus kann die Vorgeschichte, d. h. die zuvor erkannten Gesten, bei der Hypothesenbildung herangezogen werden. Ein geeignetes Modell hierfür ist das so genannte Hidden-Markov-Model (HMM).
- Für jeden Gestenprototypen lässt sich somit ein Vertrauensmaß und ein Abstand zum gemessenen Quantisierungsvektor herleiten, die vom System zum einen direkt verwandt werden können (
21 ), zum anderen aber auch weiterverarbeitet werden können. Auch ist es sinnvoll, jeweils eine Hypothesenliste für die erkannten Prototypen jedes Frames auszugeben, die beispielsweise die zehn wahrscheinlichsten Gestenprototypen dieses Frames mit der jeweiligen Wahrscheinlichkeit und Zuverlässigkeit der Erkennung enthält. - Mit diesen Daten (
21 ) können auch mit dem jeweiligen Prototypen korrelierte Anweisungen oder ausführbarer Code an das besagte Nutzrechnersystem (z. B. ein Mobiltelefon) ausgegeben werden, die beispielsweise mit in der Prototypendatenbasis (21 ) oder sonst wie zuvor abgelegt wurden. - Da nicht jede zeitliche wie räumliche Gestensequenz sinnvoll ist, ist es möglich, die zeitliche Aufeinanderfolge der Hypothesenlisten der aufeinanderfolgenden Frames auszuwerten.
- Hierbei ist der Elementargesten-Sequenzpfad durch die aufeinanderfolgenden Hypothesenlisten zu finden, der die höchste Wahrscheinlichkeit hat.
- Auch hierbei werden wiederum mindestens zwei Erkennungen geleistet:
- 1. Ist die wahrscheinlichste Elementargestensequenz eine der bereits eingespeicherten Sequenzprototypen oder nicht und mit welcher Wahrscheinlichkeit und Zuverlässigkeit?
- 2. Wenn sie eine der bereits gespeicherten Sequenzen ist, welche ist es und mit welcher Wahrscheinlichkeit und Zuverlässigkeit?
- Hierzu kann zum einen durch ein Anlernprogramm (
20 ) ein Sequenzprototyp vollautomatisch in ein Sequenzlexikon (16 ) eingegeben werden, zum anderen manuell über ein Type-In-Tool (19 ), das die Eingabe dieser Sequenzprototypen über die Tastatur ermöglicht. Auch ist es denkbar, bei geeigneter Standardisierung Einzelgestensequenzen beispielsweise über das Internet herunter zu laden. - Mittels eines Viterbi-Dekoders (
13 ), kann aus der Abfolge der Hypothesenlisten die wahrscheinlichste der vordefinierten Sequenzen für eine Folge von Elementargesten, genauer der erkannten Gestenprototypen, ermittelt werden. Die gilt insbesondere auch dann, wenn einzelne Elementargesten aufgrund von Messfehlern falsch erkannt wurden. Insofern ist eine Übernahme von Abfolgen von Gestenhypothesenlisten (39 ) aus der Emissionsberechnung (12 ), wie oben beschrieben, durch die Viterbi-Sequenzerkennung (13 ) sehr sinnvoll. Das Ergebnis ist die als wahrscheinlichste erkannte Elementargestensequenz (22 ) oder analog zur Emissionsberechnung einen Sequenzhypothesenliste. Auch hier können an die als wahrscheinlichste erkannte Gestensequenz in der Sequenzdatenbank (16 ) oder sonst wie Anweisungen an die besagte Rechnereinheit, beispielsweise ein Mobiltelefon gekoppelt sein, was zu geschehen hat. Gegebenenfalls erfolgt beispielsweise eine Warnmeldung an Nutzer. - Als letztes betrachten wir die funktionalen Softwarekomponenten der Gestensequenz-Erkennungs-Maschine. Diese ist im in
1 als Viterbi-Suche (13 ) eingetragen. Diese Suche (13 ) greift auf das Sequenzlexikon (16 ) zu. Das Sequenzlexikon (16 ) wird zum einen durch ein an Anlerntool (20 ) und zum anderen durch ein Werkzeug (19 ) gespeist, bei denen diese Elementargestensequenzen durch textuelle der Eingabe festgelegt werden können Die Möglichkeit eines Downloads wurde ja bereits erwähnt. - Basis der Sequenzerkennung (
19 ) ist das Hidden-Markov-Modell. Das Modell baut sich aus verschiedenen Zuständen auf. In dem in23 angegebenen Beispiel werden diese Zustände durch nummerierte Kreise symbolisiert. In dem besagten Beispiel in23 sind die Kreise von 1 bis 6 nummeriert. Zwischen den Zuständen bestehen Übergänge. Diese Übergänge werden in der23 mit dem Buchstaben a und zwei Indizes i, j bezeichnet. Der erste Index i bezeichnet die Nummer des Ausgangsknotens der zweite Index j die Nummer des Zielknotens. Neben den Übergängen zwischen zwei verschiedenen Knoten bestehen auch Übergänge aii oder ajj die wieder auf den Startknoten zurückführen. Darüber hinaus gibt es Übergänge, die es ermöglichen, Knoten zu überspringen aus der Sequenz ergibt sich somit jeweils eine Wahrscheinlichkeit, eine k-te Observable bk tatsächlich zu beobachten. Somit ergeben sich Folgen von Observablen, die mit vorberechenbaren Wahrscheinlichkeiten bk zu beobachten sind. - Wichtig ist dabei, dass ein jedes Hidden-Markov-Modell aus nicht beobachtbaren Zuständen qi besteht. Zwischen zwei Zuständen qi und qi besteht die Übergangswahrscheinlichkeit aij.
- Somit lässt sich die Wahrscheinlichkeit p für den Übergang von qi auf qi schreiben als:
p(q j / n|q i / n-1) ≡ aij - Dabei steht n für einen diskreten Zeitpunkt. Der Übergang findet also zwischen dem Schritt n mit Zustand qi und dem Schritt n + 1 mit dem Zustand qi statt.
- Die Emissionsverteilung bi(Ge) hängt vom Zustand qi ab. Wie bereits erläutert ist dies die Wahrscheinlichkeit, die Elementargeste Ge (die Observable) zu beobachten, wenn sich das System (Hidden-Markov-Modell) im Zustand qi befindet:
p(Ge|qi) ≡ bi(Ge) - Um das System starten zu können, müssen die Anfangszustände festgelegt sein. Dies geschieht durch einen Wahrscheinlichkeitsvektor πi. Danach lässt sich angeben, dass ein Zustand qi mit der Wahrscheinlichkeit πi ein Anfangszustand ist:
p(qi 1) ≡ πi - Wichtig ist, dass für jede Gestensequenz ein neues Modell erstellt werden muss. In einem Modell M soll die Beobachtungswahrscheinlichkeit für eine Beobachtungssequenz von Elementargesten
Ge → = (Ge1, Ge2, ...GeN) - Dies entspricht einer nicht unmittelbar beobachtbaren Zustandssequenz, die der folgenden Sequenz entspricht:
Q → = (q1, q2, ... qN) -
-
-
- Dabei erfolgt die Bestimmung des wahrscheinlichsten Wortmodells (Gestensequenz) für die beobachtete Emission Ge durch diese Summation der Einzelwahrscheinlichkeiten über alle möglichen Pfade Qk, die zu dieser beobachteten Gestensequenz Ge führen.
- Die Summierung über alle möglichen Pfade Q ist aufgrund des möglichen Rechenaufwands nicht unproblematisch. In der Regel wird daher sehr frühzeitig abgebrochen. Manche Erkenner nutzen nur den wahrscheinlichsten Pfad Qk. Dies wird im folgenden diskutiert.
-
- Hierbei wird über alle S möglichen Pfade summiert, die in den Zustand qi+1 hineinführen
- Es wird dabei angenommen, dass die Gesamtwahrscheinlichkeit in den Zustand qi n+1 zu gelangen vom besten Pfad dominiert wird. Dann kann die Summe mit geringem Fehler vereinfacht werden.
- Durch Rückverfolgung vom letzten Zustand aus erhält man nun den besten Pfad.
- Die Wahrscheinlichkeit dieses Pfades ist ein Produkt. Daher reduziert eine logarithmische Berechnung das Problem auf ein reines Summationsproblem. Dabei entspricht die Wahrscheinlichkeit für die Erkennung eines Wortes, was der Erkennung eines Modells Mj entspricht, der Bestimmung des wahrscheinlichsten Wortmodells für die beobachtete Emission X. Diese erfolgt nun ausschließlich über den besten möglichen Pfad Qbest
- Diese wird damit zu
- Es ist nun von besonderer Bedeutung dass das Prototype Book (
15 ) nur Elementargesten enthält. - Die
12 bis22 zeigen einige der möglichen beispielhaften Elementargesten über einem skizierten Smart-Phone als beispielhaftes Gerät. - Die Figuren zeigen Gesten, die mit einer Hand ausgeführt werden. Diese können selbstverständlich auch zu Zweihand-Gesten kombiniert werden. Es ist sicherlich auch denkbar, diese Gesten mit anderen Körperteilen auszuführen. Beispielsweise könnte die kreisende Bewegung der Hand über dem Smart-Phone einer kreisenden Bewegung des Fußes vor einem Kofferraum entsprechen. Das Erkennungssystem wäre dann nach unten gerichtet, und würde bei Erkennen dieser Fuß-Geste in Kombination mit anderen Faktoren, beispielsweise der Nähe des richtigen Autoschlüssels, die Heckklappe öffnen.
- Zur Vereinfachung können die Gesten in verschiedene Hierarchien zerlegt werden. Zunächst sind da die Orientierungen der Hand bzw. des Objekts. Sodann gibt es die Übergänge zwischen diesen Orientierungen. Dies sind typischerweise Drehungen, es folgen die Positionierungen im Raum und deren Übergange, die Hand- oder Objektbahnen im Raum über dem Gerät entsprechen.
- Wenden wir uns zunächst den elementaren Objektorientierungen zu. Diese werden wie die Bewegungen im Prototype-Book (
15 ) abgelegt. In erster Näherung können wir beispielsweise folgende Orientierungen einer Hand angeben. Für ein Objekt ist eine analoge Grundorientierung zuerst festzulegen, um eine analoge Orientierung jeweils zu definieren. - a. Eine Handfläche oder Objektunterseite zum Erkenner
- b. Eine Hand von der Seite mit kleinem Finger zum Erkenner (Objekt von der rechten Seite)
- c. Ein Handrücken oder Objektoberseite zum Erkenner
- d. Eine Hand von der Seite mit Daumen zum Erkenner (Objekt von der linken Seite)
- e. Eine Hand oder Objekt in einer der folgenden Richtungen orientiert:
- i. Nord,
- ii. Nord Ost
- iii. Ost
- iv. Süd Ost
- v. Süd
- vi. Süd West
- vii. West
- viii. Nord West
- f. Eine Hand gekippt mit der Spitze nach unten (Ein Objekt vorne nach unten gekippt)
- g. Eine Hand gekippt mit der Spitze nach oben (Ein Objekt vorne nach oben gekippt)
- h. Eine Hand vertikal mit Spitze nach oben (Objekt senkrecht nach oben)
- i. Eine Hand vertikal mit Spitze nach unten (Objekt senkrecht nach unten)
- j. Eine Hand abgeknickt (Objekt gedreht)
- k. Nach rechts
- l. Nach links
- m. Die Finger einer Hand gespreizt
- n. Die Anzahl der abgespreizten Finger einer Hand ist 1, 2, 3, 4, 5
- o. Ein Finger (insbesondere Zeigefinger) einer Hand nach vorne
- Die Unterscheidbarkeit der Orientierungen hängt letztlich nur von der Anzahl der Sender T_Anz und Empfänger S_Anz ab. Die Anzahl der ohne Ableitung extrahierbaren Parameter P_Anz ist dann proportional zu
P_Anz = T_Anz·S_Anz - Dies setzt allerdings eine entsprechend umfangreiche Reglung voraus.
- Die durch eine Hand oder ein Objekt ausgeführten Elementargesten lassen sich einteilen in
- • solche ohne Objekt (Hand),
- • solche mit Objekt (Hand) aber ohne Bewegung (z. B. keine Geste, verharren,),
- • Änderung der Anzahl der Objekte (der Hände) vor dem Erkenner (keine, eine, zwei) typischerweise mit einer Raumorientierung (Eintritt von links, rechts, oben, unten und entsprechende Zwischenwerte wie diagonal oben etc.),
- • solche, bei denen das Objekt (die Hand) selbst um eine von drei Raumachsen links oder rechtsherum gedreht wird (
12 ,13 ,14 ), insbesondere Neuorientierungen des Objektes/der Hand (z. B. Handkante, Handinnenseite, Handoberseite zum Detektor), - • solche, bei denen das Objekt (die Hand) eine Kreis- oder Ellipsen- oder Hyperbelbewegungen links- oder rechtsherum auf einer Koordinatenrichtung eines Polarkoordinatensystems oder eines sphärischen Koordinatensystems oder eines anderen orthogonalen Koordinatensystems ausführt (
21 und22 zeigen kreisende Bewegungen. Die dritte Achsenorientierung entsprechend21 ist nicht gezeigt, da lediglich das Smartphone gedreht wäre. Selbstverständlich ist die Beschränkung auf Kurvensegmente denkbar.), - • solche, bei denen das Objekt (die Hand) translatorisch vor oder zurück in eine der drei Raumrichtungen (x, y, z, und diagonale Zwischenwerte) bewegt wird (
18 ,19 ,20 ) - • solche bei denen die Struktur der Hand (des Objekts) geändert wird (ein, zwei und mehr Finger vorstrecken, z. B. zählen,
15 , wobei15 zur Vereinfachung die Zahlen 4 und 5 nicht zeigt; oder Fingerspreizen oder – schließen,17 ; oder z. B. Hand öffnen oder schließen16 ) - • Kombinationen dieser Gesten oder Bewegungen (z. B. kreisende Bewegung mit Öffnen und Schließen einer Hand wobei die Hand immer an einem Pol des Kreises geschlossen und am anderen geöffnet ist.)
- Dabei gibt es zu jeder Geste immer eine inverse Geste. Diese hebt das Resultat einer zuvor durchgeführten Bewegung wieder im geometrischen Sinne auf. Eine beispielsweise zu einer Kreisbewegung im Uhrzeigersinn inverse Geste ist die Kreisbewegung gegen den Uhrzeigersinn, die inverse zum Fingerschließen, das Fingeröffnen (
17 ) usw. - Wichtig ist, dass Kombinationen dieser Gesten denkbar sind. So kann beispielweise das Fingeröffnen und -schließen bezogen auf die Bewegungslinie der Finger in sechs Raumrichtungen (x, y, z, -x, -y, -z) erfolgen. Dabei kann die Hand in sechs Richtungen (x, y, z, -x, -y, -z) orientiert sein. (Diagonale Zwischenorientierungen sind selbstverständlich auch noch möglich.) Insgesamt kann die grundsätzliche Elementargeste also in 36 Konfigurationen ausgeführt werden. Diese können durch Drehungen ineinander überführt werden. Allerdings sind nicht alle Gesten gleich gut erkennbar. Im Falle eines Fingeröffnens in Z-Richtung, schattet der untere Finger den oberen ab. Solche Gesten wird ein Fachkundiger daher typischerweise nicht verwenden.
- Eine Elementargestensequenz „Wischen in X-Richtung” (
19 ) kann sich somit beispielsweise aus folgenden Aktionen zusammensetzen: - a) Elementargeste „Idle” = kein Objekt
- b) Beginn Eintritt (= Handobjekt erscheint am Rand des Messbereiches)
- c) Eintrittsprozess (= Objekt ändert Größe und Abstand im Wesentlichen nicht, führt jedoch eine Translationsbewegung in X-Richtung aus, erscheint also zu unterschiedlichen Zeitpunkten an unterschiedlichen Orten)
- d) Verharren (= Objekt ändert Größe und Abstand im Wesentlichen nicht, führt keine Translationsbewegung in X- und Y-Richtung aus, erscheint also zu unterschiedlichen Zeitpunkten an gleichen Orten) (= Ende Eintrittsprozess)
- e) Wischen (= Objekt ändert Größe und Abstand im Wesentlichen nicht, führt jedoch eine Translationsbewegung in X-Richtung aus, erscheint also zu unterschiedlichen Zeitpunkten an unterschiedlichen Orten)
- f) Verharren (= Objekt ändert Größe und Abstand im Wesentlichen nicht, führt keine Translationsbewegung in X- und Y-Richtung aus, erscheint also zu unterschiedlichen Zeitpunkten an gleichen Orten) (= Ende Wischen)
- g) Austrittprozess (= Objekt ändert Größe und Abstand im Wesentlichen nicht, führt jedoch eine Translationsbewegung in X-Richtung aus, erscheint also zu unterschiedlichen Zeitpunkten an unterschiedlichen Orten)
- h) Ende Eintritt (= Handobjekt verschwindet am gegenüberliegenden Rand des Messbereiches)
- i) Elementargeste „Idle” = kein Objekt
- Ein solchermaßen definiertes „Gestenwort”, das aus den oben beschriebenen Elementargesten zusammengesetzt ist, kann durch neben dem beschriebenen kombinierten HMM-Viterbi-Erkenner (
13 ) mit hoher Genauigkeit erkannt werden. - Es sind nun grundsätzlich zwei Erkennungsszenarien möglich: Die Einzelgestenworterkennung (
24 ) und die kontinuierliche Gestenworterkennung (25 ). - Bei der Einzelgestenworterkennung wird durch ein anderes Ereignis das Steuersystem dazu veranlasst, die Gestenerkennung zu starten. Das kann beispielsweise ein Knopfdruck sein. Der Vorteil dieser Konstruktion ist, dass Rechenleistung und damit Energie gespart wird. Dies kann bei mobilen Geräten von Vorteil sein.
- Bei der kontinuierlichen Gestenworterkennung (
25 ) ist der Gestenerkenner permanent aktiv. Er befindet sich in mindestens einem Ruhezustand, der der permanenten Erkennung der Geste „keine Geste” entspricht. Erfahrungsgemäß wird diese durch eine größere Menge von verschiedenen Prototypen repräsentiert. Darüber hinaus ist es noch möglich, den Gestenerkenner in einen speziellen Stromsparmodus zu versetzen. Beispielsweise ist es denkbar, dass ein energieautakes Gerät mit einer Solarzelle betrieben wird und der eigentliche Gestenerkenner abgeschaltet ist. Die Energieausbeute der Solarzelle kann als Sensorsignal (37 ,1 ) genutzt werden. Der Erkenner springt dann aus dem Zustand „sleep” und den Zustand „wake up” Das bedeutet, dass die Transmitter und das übrige System gestartet werden, wodurch der Stromverbrauch massiv ansteigt. Wird keine erlaubte Elementargeste gefunden, so geht das System wieder in den Modus „sleep” über. Wird jedoch eine erlaubte Elementargeste gefunden (In25 sind dies die Gesten „no gesture” und „bcd”, so geht das System in die jeweiligen Zustände über. Verbleibt das System zu lange im Status „no gesture” so geht es wieder in den Zustand „sleep” über, um Energie zu sparen. Solange Gesten, die innerhalb eines vorgegebenen Zeitraums aufeinanderfolgen, ausgeführt werden, kehrt das System immer wieder zum Zustand „no gesture” zurück. In vielen Fällen ist es sinnvoll, die Gestenworte immer mit einem speziellen Zustand „end gesture” abzuschließen, der die Gestenworte systemspezifisch abschließt. - Die Gestenworte, deren Erkennung oben beschrieben wurde, können nun zu komplexeren „Gestensätzen” zusammengesetzt werden.
- Hierbei ist es zweckmäßig Gestenworte in Gestenwortklassen zusammenzufassen. Beispielhafte Klassen können beispielsweise Klassen sein, die Gestenworte zusammenfassen, die beispielsweise
- • Subjekte
- • Objekte (z. B. Gegenstände und Personen) oder
- • Eigenschaften dieser Objekte oder
- • Veränderungen der Eigenschaften oder
- • Eigenschaften der Veränderungen selbst
- • Verursacher dieser Veränderungen oder
- • Verhältnisse dieser Objekte untereinander
- Die Abfolge der Gestenworte kann in Abhängigkeit von der Gestenwortklasse definiert werden. Dies ermöglicht weiteren nachgeschalteten HMM-Viterbi-Erkennern trotz möglicherweise falscher Gestenworterkennung aus dem zuvor beschriebenen kombinierten HMM-Viterbi-Erkenner, den korrekten Inhalt einer derartig definierten Gestenbotschaft, einen Gestensatz, richtig zu erkennen. Da der Prozess analog wie bei der Erkennung der Elementargestensequenzen (Gestenworte) auf Basis einer Hypothesenliste (
29 ) abläuft, wird er nicht weiter erläutert und ist auch in den Figuren zur Vereinfachung nicht mehr eingezeichnet. - Eine derartig definierte Gestengrammatik erlaubt eine wesentlich verbesserte Übermittlung von kompakten Kommandosequenzen ähnlich einer Gestensprache.
- Um eine derartige Gestensprache effizient zu gestalten, ist es sinnvoll die Übergänge zwischen den Gestenworten so zu gestalten, dass das Ende der vorausgehenden und der Beginn der nachfolgenden Geste aufeinander abgestimmt werden können.
- Gestenworte können Elementargesten und Elementargestensequenzen enthalten, die Abhängigkeiten zu anderen Gestenworten ausdrücken oder andere Information wir beispielsweise Zeitbezüge (wie Vergangenheit und Zukunft etc.) ausdrücken. Die Elementargestensequenzen können dabei auch nur aus einer Elementargeste bestehen.
- An dieser Stelle sei auf die vielfältigen Möglichkeiten der Linguistik verwiesen.
- Es ist nun von besonderer Wichtigkeit, dass die ausgeführten Gesten auch Konsequenzen haben und etwas bewirken. In der Regel wird über solche Gesten die Steuerung eines Rechners erfolgen. Hierbei kann es sich auch um den Rechner eines Roboters handeln. Da die Anwendungen in der Regel nicht vom Hersteller des Gerätes erstellt werden, ist es sinnvoll dass die Gesten oder Gesten-Sequenzen Text-Strings oder anderen Symbolketten zugeordnet sind oder zugeordnet werden können. Somit entsteht eine Verknüpfung zwischen den Gesten oder Gesten-Sequenzen auf der einen Seite und Aktionen der Aktoren des Rechner- und/oder Robotersystems auf der anderen Seite. Eine solche Übertragung einer Verknüpfung geschieht zweckmäßigerweise durch ein Datentransferprotokoll, beispielsweise ein http- oder XML-Protokoll.
- Bei Verwendung eines Neuronalen-Netz-Erkenners (
3 ) wird ein neuronales Netz (27 ) mit den ermittelten Quantisierungsvektoren (38 ) der Feature-Extraktion (11 ) gespeist. Ein neuronales Netz (27 ) muss aber zuvor mit Hilfe von Beispieldaten (18 ) und eines Trainingsverfahrens (28 ) konditioniert worden sein. Auch hier ist eine Rückkopplung des Erkennungsergebnisses (29 ) oder (38 ) in den Controller (8 ) denkbar. (8 ) - Neuronale-Netz-Erkenner sind wesentlich kompakter und daher eher zu integrieren als HMM-Erkenner. Sie sind jedoch hinsichtlich ihrer Fähigkeit zur Unterscheidung von Gesten aufgrund des intern auftretenden Quantisierungsrauschens begrenzt. Auch ist die Empfindlichkeit gegenüber Störsignalen größer. Daher ist nicht zu empfehlen mehr als 20 Gesten einschließlich der parasitären Fälle mit einem Neuronalen-Netz unterscheiden zu wollen. Außerdem ergeben Neuronale-Netz-Erkenner in der Regel sprecher- und geräteabhängige Ergebnisse. Sie müssen vom jeweiligen Nutzer also angelernt werden, was die Einsatzfähigkeit sehr begrenzt.
- Diese Art von Erkenner-Systemen ist Stand der Technik und für die Mustererkennung seit langem bekannt.
- Um das System jedoch mit einem besonders effizienten Satz von Merkmalsvektoren versorgen zu können, ist es sinnvoll, den Transmitter (
3 ) und den Kompensationstransmitter (9 ) mit einem optimalen Satz von Signalen anzusteuern. Dieser Gedanke der Rückkopplung eines Erkennerergebnisses in das physikalische Interface (23 ) ist neu. - Hierzu kann der Viterbi-Erkenner (
13 ) aufgrund des Sequence-Lexicons (16 ) eine Liste der wahrscheinlichen Gesten (Gn) herausgeben, die als nächstes folgen werden. Diese Information kann nun benutzt werden, um die Transmitter (3 ) so zu steuern, dass die erhaltenen Vektoren (24 ) eine optimale Gestenunterscheidung ermöglichen. (7 ) - Dieses Verfahren soll an einem besonderen Beispiel erläutert werden:
4 zeigt beispielhaft schematisch ein mobiles Gerät (Mobiltelefon) mit acht Kombinationen von Transmitterdiode (H1–H8), Empfängerdiode (D1–D8) und Kompensationsdiode (K1–K8). - Der Transmitter sendet nach Erstellung der Prognose der wahrscheinlichsten nachfolgenden Gesten ein zeitliches und ggf. auch räumliches Muster, das zur Unterscheidung der wahrscheinlich zu erwartenden Alternativen am optimalsten geeignet ist.
- Dieses Muster kann mit Hilfe der Database (
18 ) vorbestimmt berechnet werden. - Die
27 bis58 zeigen alle möglichen Aktivitätsmuster der verschiedenen Transmitter des beispielhaften Mobiltelefons aus4 . - Für den Fachmann ist es klar, dass unter der Voraussetzung dass eine lineare Addition der Aktivitätsmuster möglich ist, die Muster einen Hilbert-Raum bilden können. Somit können durch Orthogonalisierung der Muster einfache Basismuster erzeugt werden, aus denen sich alle anderen Muster zusammensetzen.
- Diese Elementar-Aktivitätsmuster können im einfachsten Fall durch die Aktivität einer einzelnen Diode dargestellt werden.
- Durch die Bestrahlung mit einem optimierten Transmissionsmuster wird die Signifikanz der Quantisierungsvektoren maximiert.
- Das letzte Problem ist die Ableitung der optimalen Transmissions-Sequenz.
- Hierfür wird der Database (
18 ) in Abhängigkeit von der durch den Viterbi-Erkenner (13 ) als die wahrscheinlichste nächste Elementargeste (Gn) das optimale Stimulationsmuster für diese Geste zu deren Verifikation durch den Controller (8 ) entnommen. Daher muss bei der Erstellung dieser Datenbasis (18 ) bereits für jedes denkbare Muster eine Erkennungsperformance hinterlegt sein. Dies kann beispielsweise durch eine Matrix (LDA_B) geschehen. - Schließlich soll noch der Regelalgorithmus des Physical-Interfaces (
23 ) anhand von5 verdeutlicht werden, mit dem Transmitter (die Leuchtdiode Hi), Kompensationstransmitter (die Leuchtdiode Ki) und der Sensor (die Fotodiode Di) miteinander verknüpft werden:
Jede der Transmitter H1 bis H8 sendet in Abhängigkeit vom gewünschten Transmissionsmuster ein Signal in jeweils einen Übertragungskanal (I1i) zum zu vermessenden Objekt (O), hier typischerweise eine Hand. Dort wird das Licht reflektiert und über jeweils einen weiteren Übertragungskanal (I3j) zu jeweils einer Empfängerdiode K1 bis K8 übertragen. - Für jede Paarung aus Empfangsdiode Di und Sendediode Hj wird ein Regler Cij vorgesehen. Da dies zu einem großen Hardware-Aufwand führen würde, ist es sinnvoll in unserem Beispiel nur acht solcher Regler Cij vorzusehen und immer nur eine Sendediode Hj zu betreiben. Das bedeutet, dass zwischen den Sendedioden Hi im Zeitmultiplexverfahren umgeschaltet wird. Die entsprechenden Feature-Vektoren werden daher typischerweise zwischengespeichert und zu einem in diesem Beispiel achtfach breiteren Feature-Vektor (
24 ) zusammengesetzt und in diesem Beispiel mit einem Achtel der ursprünglichen Feature-Vektor-Frequenz an die Feature-Extraktion übergeben. - Jeder der Empfangsdioden Di wird jeweils ein Signalgenerator Gi zugeordnet. Dieser erzeugt ein zu den anderen Generatoren orthogonales Signal. Die Orthogonalität wird im Folgenden näher erläutert.
- Das Signal des Generators Gi, der der Empfängerdiode Di zugeordnet ist, wird durch eine Orthogonalisierungseinheit in einen kurzen Anfangspuls S5oi und ein nachlaufendes Signal S5di derart aufgespalten, dass deren Summe wieder das Signal S5i ergeben würde und dass diese Signale bezüglich des später erläuterten Skalar-Produktes orthogonal sind.
- Das Signal der Empfangsdiode Di wird durch einen Vorverstärker verstärkt und mit dem Signal S5di zum Signal S10dij im Multiplizierer M1ij multipliziert. Anschließend wird das Signal im Filter F1ij gefiltert. Die vorausgegangene Multiplikation im Multiplizierer M1ij und diese Filterung im Filter F1ij definieren das Skalar-Produkt des Ausgangssignals des Empfängers D1j mit dem Signal S5di. Wenn von Orthogonalität weiterer Signale in dieser Beschreibung die Rede war, so war damit gemeint, dass diese zwei Signale miteinander auf diese Weise skalar-multipliziert null ergeben.
- Anschließend wird das Filterausgangssignal nochmals durch den Verstärker V1ij zum Signal S4dij verstärkt. Es erfolgt die Rücktransformation durch erneute Multiplikation des Signals S4dij mit dem Signal S5di zum Signal S6dij.
- Die gleiche Operation wird mit dem anderen Signal S5oi durchgeführt. Diese ergibt auf analoge Weise das Signal S6oij.
- Um nun das Kompensationssignal der Kompensationsdiode K1j zu erhalten, werden die Signale S6dij und S6oij für alle Generatorsignale i zusammenaddiert und nach Addition eines geeigneten Offsets B1j der Kompensationsdiode K1j zugeführt.
- Jeder Regler Cij gibt in diesem Beispiel zwei Werte aus: Aij und Deij. Diese bilden in diesem Beispiel mit den sieben weiteren Paaren der anderen sieben aktiven Regler einen 16 dimensionalen analogen Vektor. Da durch den Zeitmultiplex immer nur ein Transmitter Hi aktiv ist, entstehen acht dieser Vektoren innerhalb eines Messzyklus, bei dem alle Transmitter Hi einmal aktiv sind. Diese werden wie beschrieben zwischengespeichert und zu einem 128 dimensionalen Feature-Vektor (
24 ) zusammengesetzt. Dieser 128-dimensionale Feature-Vektor (24 ) bildet das Eingangssignal für die Feature-Extraktion (11 ). Da in der Regel mehrere Transmitter Hi und mehrere Sensoren D1j vorhanden sind, kann die Anzahl der zu einem Kompensationssignal S6j beitragenden Controller Cij größer als eins sein. Dies ist in5 dadurch angedeutet, dass das Signal des Sensors D1j nach unten aus der Figur heraus geführt wird und auf der anderen Seite ein analoges Signal von unten in den Summationspunkt mit dem Signal S6oij geführt wird. Dies ist so zu verstehen, dass dort der nächste Controller Ckj angeschlossen wird, wobei k ≠ i ist. Dieser Controller Ckj wird dann selbstverständlich mit dem Signal S5k analog zum Controller Cij betrieben. Damit die beiden Controller Cij und Ckj sich gegenseitig nicht stören, müssen die Signals S5i und S5k bezüglich des Skalar-Produkts durch Multiplikation im Multiplizierer M1ij (bzw. M1kj) und der anschließenden Filterung im Filter F1ij (bzw. F1kj) orthogonal sein. - Die Kompensation durch die Kompensationssender Kj erfolgt im Medium und ist damit von solchen Problemen wie Sensorverschmutzung und -alterung weitestgehend unabhängig. Allerdings wird stets der Kompensationssender benötigt. Im Falle eines optischen Systems und einer LED als Kompensationssender Kj ist dies jedoch nicht unbedingt notwendig. Es ist auch denkbar, das System wie in
6 gezeigt aufzubauen. Hier ist – was auf5 nicht eingezeichnet wurde, eine Basisbestromung der Fotodiode D1i eingezeichnet. Diese wird durch den Widerstand R gewährleistet. Der Kompensationstransmitter ist die in6 eingezeichnete Stromquelle Kj. Diese emuliert den Kompensationslichtstrom I2j aus5 indem sie einen Strom durch den Widerstand R erzwingt, der dem durch den Lichtstrom I2j in5 im Fotosensor D1j erzeugten elektrischen Strom entspricht. - Da der Eingang der Sensoren Dj stets im gleichen Arbeitspunkt liegen soll, ist es hier erfahrungsgemäß sinnvoll ein Signal S5i für ein i zu definieren, das ein Konstantes Signal ist. In diesem Fall ist der Wert des Kompensationsstromes Kj ein Gleichwert, des sich nur ändert, wenn der Gleichwert des durch Dj empfangenen Signals ändert. Typischerweise erhält man bei optischen Systemen hierdurch eine Gleichlichtkompensation. Daher wird der zugehörige Sender Hi für diesen Gleichwert typischerweise nicht betrieben und kann daher entfallen.
- Hinsichtlich der Kompensation sind somit beide Systeme gleich. Das System in
5 weist jedoch den Vorteil auf, dass Kompensationssignal I2j und Messsignal I1i, I3j den gleichen Einflüssen unterliegen und daher typischer Weise in gleicher Weise beeinflusst werden. Das System aus5 ist daher technisch besser, das aus6 ist das preiswertere, da es einen Sender weniger aufweist. - Bedenkt man das bisher gesagte, so wird klar, dass ein erfindungsgemäßes Messsystem vektoriell aufgebaut werden kann. Dies ist in
9 gezeichnet. - Die Generator-Bank G erzeugt ein vektorielles Signal S5, dessen Komponenten die bereits bekannten S5i-Signale sind. Aus diesen wird durch eine Logik L und einer vektoriellen Verzögerungseinheit Δt das vektorielle Signal S5o gebildet. Dessen Komponenten sind die bereits bekannten S5di und S5oi.
- Das vektorielle Generatorsignal S5 wird sofern notwendig mit einem vektoriellen Offset B1 versehen und der Transmitterbank H zugeführt. Insofern können die acht Transmitter aus
4 als physikalische Repräsentation eines Vektors aufgefasst werden. Die Elemente dieses Transmitter-Vektors H sind die bereits bekannten Transmitter Hi. Jeder der Transmitter Hi des Transmitter-Vektors H sendet ein Signal in einen Übertragungskanal I1i hinein. Diese I1i bilden wiederum einen vektoriellen Übertragungskanal I1. Dieser führt zu mindestens einem Objekt O. (Die Diskussion mehrerer Objekte wird an dieser Stelle nicht geführt, da dies einem Fachmann ohne weiteres möglich ist.) Von diesem Objekt O führt je ein Übertragungskanal I3j zu je einem Sensor D1j. Die I3j bilden den vektoriellen Übertragungskanal I3. Die D1j bilden die vektorielle Sensorbank D1. Deren vektorielles Ausgangssignal wird verstärkt und im Multiplizierer M mit jedem Signal des vektoriellen S5o Signals multipliziert. Es ist leicht erkennbar, dass genau an diesem Punkt das System hinsichtlich des notwendigen Aufwands sehr stark expandiert wird. Eine Reduktion auf eine Untermenge von Multiplikationen und/oder ein Zeitmultiplex scheinen daher hier angebracht. Insofern handelt es sich nicht um eine mathematisch ideale Multiplikation. Es ergibt sich somit das Signal vektorielle Signal S10 dessen Komponenten die bereits bekannten Signale S10oij und S10dij bilden. Diese werden jedes für sich in der vektoriellen Filterbank F gefiltert, wobei dieses Filter aus den bekannten Filtern F1ij und F2ij zusammengesetzt ist. Es folgt für jedes der gefilterten Signale in einem vektoriellen Verstärker V, der sich wieder aus den bekannten Verstärkern V1ij und V2ij aus5 zusammensetzt. Das vektorielle Ausgangssignal S4 der vektoriellen Verstärkerbank V setzt sich aus den Signalen S4oij und S4dij aus5 zusammen. Es erfolgt wieder die Multiplikation jedes Elementes S4oij und S4dij des Signalvektors S4 mit den zugehörigen Signalen S5di und S5oi. Über alle i werden dann die sich ergebenden Signal S6dij und S6oij zur jeweiligen Komponente S6j des vektoriellen Signals S6 summiert. Zu diesem wird ggf. bei Bedarf das vektorielle Bias-Signal B2 zum vektoriellen Kompensationssignal S3 addiert. Dieses treibt die vektorielle Kompensationstransmitterbank K. Diese strahlt über die vektorielle Übertragungsstrecke I2 in die vektorielle Sensorbank D wieder ein. Wie bereits besprochen, wird das System so gewählt, dass die Schwankungen des Signals über die Übertragungsstrecke I3 durch die Kompensation ausgeglichen werden. - Das Erkennungsergebnis (S4) wird als Datenstrom an die Feature-Extraktion FE übergeben. Diese erzeugt einen Feature-Vektor pFV der hinsichtlich der Selektivität noch nicht maximiert ist. Dieser Vektor wird durch Multiplikation mit der LDA Matrix (LDA_F) (
14 ) hinsichtlich der Selektivität maximiert. Das Ergebnis ist der Feature-Vektor FV (38 ). Aus diesem erzeugt die Emissionsberechnung EC (12 ) die Hypothesenliste HL (39 ). Mit Hilfe des Sequence-Lexicons SL (16 ) Erzeugt die Viterbi-Suche VS (13 ) hieraus die Liste der erkannten Gestensequenzen G (22 ). Gleichzeitig wird eine Prognose für die nächste erwartete Geste Gn erstellt. Dieser Vektor wird beispielsweise mit Hilfe der Illumination-Matrix (LDA_B) (40 ) durch Multiplikation modifiziert und zur Modifikation der Generatorsignale S5 verwendet. In9 geschieht dies durch signalweise Multiplikation des Vektors der Generator Signale mit dem so erhaltenen Vektor. - Vorteile der Erfindung
- Die Erfindung ermöglicht die unmittelbare Unterscheidung von Gestensequenzen bei gleichzeitiger verbesserter Immunität gegenüber Umgebungslicht und verbesserter Unterdrückung von Erkennungsfehlern durch Redundanzen.
- Sie ist besonders für mobile Systeme und Internetnutzung geeignet.
- Figuren
-
1 : Beispielhafter funktioneller Ablauf der sprecherunabhängigen Gesten- bzw. Gestensequenzerkennung mit HMM Erkennung -
2 : Beispielhafter funktioneller Ablauf der sprecher- und geräteunabhängigen Gesten- bzw. Gestensequenzerkennung mit HMM Erkennung -
3 : Beispielhafter funktioneller Ablauf der sprecherabhängigen Gesten- bzw. Gestensequenzerkennung mit einem Neuronalen-Netz-Erkenner -
4 : Positionierung der Transmitter (insbesondere Transmitterdioden) Hi, der Empfänger (insbesondere Empfängerdioden) Dj und der Kompensationssender (insbesondere Kompensationsdioden) Dj am Beispiel eines Mobiltelefons mit beispielhaften acht Transmittern, Kompensationssendern und Empfängern. -
5 : Beispielhafter Regelkreis Cij für die Kompensationsregelung des Kompensationssenders Kj -
6 : Beispielhafter Regelkreis Cij für die Kompensationsregelung des Kompensationssenders Kj wobei der Kompensationssender eine Stromquelle ist -
7 : Beispielhafter funktioneller Ablauf der sprecher- und geräteunabhängigen Gesten- bzw. Gestensequenzerkennung mit HMM Erkennung mit Beeinflussung des Sendemusters der Transmitter in Abhängigkeit vom Erkennungsergebnis -
8 : Beispielhafter funktioneller Ablauf der sprecherabhängigen Gesten- bzw. Gestensequenzerkennung mit einem Neuronalen-Netz-Erkenner mit Beeinflussung des Sendemusters der Transmitter in Abhängigkeit vom Erkennungsergebnis -
9 : Beispielhafter vektorieller Gesamtregelkreis für die Kompensationsregelung der Kompensationssender K und der Anpassung des Sendemusters der Transmitter T an das Erkennungsergebnis. -
10 : Diagramm zur Verdeutlichung des Vorgangs der Emissionsberechnung -
11 : Schematische Darstellung zum Prinzip einer mechanisch automatisierten Kalibriervorrichtung zur reproduzierbaren Ausführung standardisierter Gesten -
12 : Drehen der Hand um die Längsachse -
13 : Drehen der Hand um die Achse senkrecht zur Handfläche -
14 : Drehen der Hand um die Achse quer zur Längsachse in der Handfläche -
15 : Abspreizen einer unterschiedlichen Anzahl von Fingern (0, 1, 2, 3) 4 und 5 Finger sind zur besseren Übersicht nicht gezeichnet. -
16 : Ändern der Handform von der Faust zur flachen Hand -
17 : Finger spreizen -
18 : Auf- und Niederbewegen der Hand (Z-Bewegung) -
19 : Translationsbewegung quer zum Gerät (x-Bewegung) -
20 : Translationsbewegung parallel zum Gerät (y-Bewegung) -
21 : Kreisbewegung um die y-Achse über dem Gerät (x-Achse wäre analog) -
22 : Kreisbewegung um die z-Achse über dem Gerät -
23 : HMM Modell -
24 : Einzelwort Erkennung (Einzelmodelle) -
25 : Continuous Gesture Recognition -
26 –57 : beispielhafte mögliche Aktivitätsmuster Liste der BezeichnungenNr. Bezeichnung 1 Physical Value Stream/Strom physikalischer Größen 2 Interaction Region/Gebiet der Wechselwirkung 3 Erster Transmitter/Erster Sender 4 Erster Übertragungsstrecke 5 Wechselwirkung oder Modifikation 6 Zweite Übertragungsstrecke 7 Sensor oder Empfänger 8 Controller/Regler 9 Compensation Transmitter/Kompensationssender 10 Übertragungsstrecke vom Kompensationssender ( 9 ) zum Sensor (7 )11 Feature Extraction 12 Emission Computation/Emissionsberechnung 13 Viterbi Search/Viterbi-Decoder 14 LDA Matrix 15 Prototype Book (Code Book oder CB) 16 Sequence Lexicon/Sequenzlexikon 17 Trainings-Tool zur Erstellung der LDA Matrix ( 14 ) und des Prototype-Books (15 )18 Datenbasis zuvor aufgenommener Gesten-Feature-Vektoren vorbekannter Elementargesten in vorbekannten Elementargestensequenzen einer statistischen Auswahl von Gesten-Sprechern in einer statistischen Auswahl von Gestensituationen vorzugsweise inklusive Normgesten und Norm Gestensequenzen zur Rekalibierung des Gestenerkenners bei Änderung des physikalischen Interfaces ( 23 )19 Type-In-Tool zur manuellen Eingabe von zu erkennenden Elementargestensequenzen (Gesten) 20 Online Training-Tool zur Eingabe von neuen Elementargestensequenzen (Gesten über das physikalische Interface ( 23 ) (Zerlegung in vorbekannte Elementargesten)21 Erkannte Gestenparameter 22 Erkannte Gestensequenzen 23 Physikalische Schnittstelle/Physical Interface 24 Strom von physikalischen Werten aus dem Physical-Interface ( 23 ) Dieser wird in der Feature Extraction (11 ) in einen Strom von Gesten Feature Vektoren verwandelt.25 Applikationsspezifisches Training 26 Applikationsspezifische LDA Matrix (Diese wird immer dann geändert, wenn das Physical-Interface ( 23 ) geändert wird.)27 Neuronales Netz 28 Trainingstool für das neuronale Netz 29 Mit dem neuronalen Netz erkannte Gestenparameter 30 Beispielhaftes Mobiltelefon 31 Bildschirm 32 Beispielhafte Künstliche Roboter Hand zur Definition und Darstellung einer Standardgeste 33 Beispielhaftes Device 34 Beispielhafte Elementargeste 35 Beispielhafte Gelenke mit drei rotatorischen Freiheitsgraden 36 Beispielhafte Arme mit je einem translatorischen Freiheitsgrad (Länge) 37 Signale anderer Sensoren und Messsysteme 38 Modifizierte Feature Vektor Datenstrom 39 Elementargesten-Hypothesenliste 40 Illumination Matrix (LDA_B) 41 Prototyp 1 42 Prototyp 2 43 Prototyp 3 44 Prototyp 4 45 Nicht präzise identifizierte Geste 46 Nicht registrierte Geste 47 Schwellwert Ellipsoid 48 Erkannte Geste Aij Amplitudenpegel der Einstrahlung des Senders Hi in den Empfänger Dj B1 Konstantes vektorielles Signal, dass zum vektoriellen Signal S5 addiert wird. Mit dem Additionsergebnis wird die Transmitterbank H gespeist. B2 Konstantes vektorielles Signal, dass zum vektoriellen Signal S6 addiert wird. Mit dem Additionsergebnis S3 wird die Kompensationstransmitterbank K gespeist. CB Code Book (Prototypendatenbank ( 15 ))CBE Code Book Eintrag (= Eintrag in die Prototypendatenbank ( 15 ))Cij Controller zur Regelung des Signals der Kompensationsdiode Kj in Abhängigkeit vom Sender Hi. Hierbei muss jeder Sender ein eigenes zu allen anderen Signalen S5i orthogonales S5i Signal aussenden. K1 Kompensationstransmitter 1 (Kompensations-LED 1) j = 1 K2 Kompensationstransmitter 2 (Kompensations-LED 2) j = 2 K3 Kompensationstransmitter 3 (Kompensations-LED 3) j = 3 K4 Kompensationstransmitter 4 (Kompensations-LED 4) j = 4 K5 Kompensationstransmitter 5 (Kompensations-LED 5) j = 5 K6 Kompensationstransmitter 6 (Kompensations-LED 6) j = 6 K7 Kompensationstransmitter 7 (Kompensations-LED 7) j = 7 K8 Kompensationstransmitter 8 (Kompensations-LED 8) j = 8 D1 Sensor 1 (Fotodiode 1) j = 1 D2 Sensor 2 (Fotodiode 2) j = 2 D3 Sensor 3 (Fotodiode 3) j = 3 D4 Sensor 4 (Fotodiode 4) j = 4 D5 Sensor 5 (Fotodiode 5) j = 5 D6 Sensor 6 (Fotodiode 6) j = 6 D7 Sensor 7 (Fotodiode 7) j = 7 D8 Sensor 8 (Fotodiode 8) j = 8 Di Sensor j (Fotodiode j) j = j Deij Verzögerungspegel der Einstrahlung des Senders Hi in den Empfänger Dj DSP Digitaler Signalprozessor Δt Vektorielle Verzögerungseinheit. Diese dient der Logik L zur Erzeugung des vektoriellen Signals S5o aus dem vektoriellen Signal S5 F Vektorielle Filterbank bestehend aus allen Filter F1ij und F2ij F1ij Filter 1 des Controllers Cij F2ij Filter 2 des Controllers Cij FV Feature-Vektor ( 38 )G Vektorielle Generator Bank. GS Erkannte Gestensequenz ( 22 )Gn Erwartete nächste Geste (Vektor) H1 Transmitter 1/Sender 1/Sendediode 1 i = 1 H2 Transmitter 2/Sender 2/Sendediode 2 i = 2 H3 Transmitter 3/Sender 3/Sendediode 3 i = 3 H4 Transmitter 4/Sender 4/Sendediode 4 i = 4 H5 Transmitter 5/Sender 5/Sendediode 5 i = 5 H6 Transmitter 6/Sender 6/Sendediode 6 i = 6 H7 Transmitter 7/Sender 7/Sendediode 7 i = 7 H8 Transmitter 8/Sender 8/Sendediode 8 i = 8 Hi Transmitter i/Sender i/Sendediode i i = i HL Elementargesten-Hypothesenliste ( 39 )I1 Vektorielle erste Übertragunsgsteilstrecke von der vektoriellen Transmittebank H zum Objekt O. I2 Vektorielle zweite Übertragunsgsteilstrecke von der vektoriellen Kompensationstransmittebank K zum Objekt O. I3 Vektorielle dritte Übertragunsgsteilstrecke vom Objekt O zur vektoriellen Sensorbank D. I1i Erste Übertragunsgsteilstrecke vom der Transmitte Hi zum Objekt O. I2j Zweite Übertragunsgsteilstrecke vom Kompensationstransmitter Kj zum Objekt O. I3j Dritte Übertragunsgsteilstrecke vom Objekt O zum Sensor Dj. K1 Kompensationstransmitter 1 (Kompensations-LED 1) j = 1 K2 Kompensationstransmitter 2 (Kompensations-LED 2) j = 2 K3 Kompensationstransmitter 3 (Kompensations-LED 3) j = 3 K4 Kompensationstransmitter 4 (Kompensations-LED 4) j = 4 K5 Kompensationstransmitter 5 (Kompensations-LED 5) j = 5 K6 Kompensationstransmitter 6 (Kompensations-LED 6) j = 6 K7 Kompensationstransmitter 7 (Kompensations-LED 7) j = 7 K8 Kompensationstransmitter 8 (Kompensations-LED 8) j = 8 Kj Kompensationstransmitter j (Kompensations-LED j) j = j L Die Logik L erzeugt mit Hilfe der Verzögerungseinheit Δt das vektorielle Signal S5o aus dem vektoriellen Signal S5. LDA_F LDA Matrix ( 14 )LDA_B Illumination Matrix ( 40 )M1ij Multiplexer 1 des Controllers Cij M2ij Multiplexer 2 des Controllers Cij O Objekt pFV Feature-Vektor (beispielsweise nach Logarithmierung, Framing und Filterung etc.) vor Multiplikation mit der LDA Matrix ( 14 )S3 Vektorielles Sendesignal für die vektorielle Kompensationstransmitterbank K. Das Signal entsteht durch vektorielle Addition des Vektors B2 mit S6. S3j Sendesignal für den Kompensationstransmitter Kj. Das Signal entsteht durch Addition des Signals B2j mit S6j. S4dij Amplitudenpegel der Einstrahlung des Senders Hi in den Empfänger Dj S4oij Verzögerungspegel der Einstrahlung des Senders Hi in den Empfänger Dj S5 Vektorielles Sendesignal bestehend aus den Signalen S5i S5o Vektorielles Signal bestehend aus allen Signalen S5oi und S5di S5oi Torsignal zur Empfangs-Verzögerungsmessung des Signals S5i des Senders Hi S5di Torsignal zur Empfangs-Amplitudenmessung des Signals S5i des Senders Hi S5i Sendesignal des Senders Hi. Hierbei dieses Signal S5i zu allen anderen Signalen S5i orthogonales sein. S6 Vektorielles Signal bestehend aus allen Signalen S6oi und S6di S6oi Rücktransformierte der Empfangs-Verzögerungsmessung des Signals S5i des Senders Hi S6di Rücktransformierte der Empfangs-Amplitudenmessung des Signals S5i des Senders Hi S6j Kompensationsvorsignal zur Ansteuerung des Kompensationstransmitters Kj Auf dieses Signal wird ggf. noch eine Konstante B1j aufaddiert. S10 Vektorielles Ausgangssignal des Multiplexers M bestehend aus allen Signalen S10dij und S10oij S10dij Ausgangssignal des Multiplexers M1ij des Controllers Cij S10oij Ausgangssignal des Multiplexers M2ij des Controllers Cij SL Sequence Lexicon ( 16 )V Verstärkerbank bestehend aus allen Verstärkern V1ij und V21ij V1ij Verstärker 1 des Controllers Cij V2ij Verstärker 2 des Controllers Cij
Claims (19)
- Objekterkennungssystem und Messsystem, insbesondere Gestenerkennungssystem, zur Erfassung von Objektparametern, insbesondere von Gestenparametern einer Mensch-Maschine-Schnittstelle, dadurch gekennzeichnet, dass das System über a. mindestens einen Controller (Cij) verfügt, b. mindestens einen Transmitter insbesondere für elektromagnetische Strahlung, für Licht, für magnetische oder elektrostatische Felder, für Schallfelder verfügt und dass dieser insbesondere eine Spule und/oder eine Elektrode und/oder eine LED und/oder eine Antenne ist, c. mindestens einen Empfänger insbesondere für das von mindestens einem Transmitter emittiertes Signal insbesondere für elektromagnetische Strahlung, für Licht, für magnetische oder elektrostatische Felder, für Schallfelder verfügt und dass dieser insbesondere eine Spule und/oder eine Elektrode und/oder eine LED und/oder eine Antenne ist, d. mindestens einen Controller (Cij) verfügt, der das von mindestens einem Transmitter emittierte Signal generiert und mit mindestens einem durch mindestens einem Empfänger empfangene Signal vergleicht und das Vergleichsergebnis ermittelt, e. mindestens eine Einheit aufweist, die die Schritte Feature-Extraktion und Emissionsberechnung durchführt.
- System nach Anspruch 1 dadurch gekennzeichnet, dass es über mindestens einen Kompensationssender (Kj) verfügt, der so in einen Übertragungskanal zwischen diesem Kompensationssender und mindestens einem Empfänger (Dj) ein Signal einspeist, dass dieses sich mit dem Signal mindestens eines Transmitters (Hi) so überlagert, dass such nahezu eine Auslöschung zumindest eines vordefinierten Teils des Signals des Transmitters, insbesondere eines Trägersignals, am Empfänger Dj ergibt und dass das Signal des Kompensationssenders Kj durch den Controller Cij erzeugt und so geregelt wird, dass sich besagte Auslöschung im Wesentlichen ergibt.
- Objekterkennungssystem und Messsystem, insbesondere Gestenerkennungssystem, zur Erfassung von Objektparametern, insbesondere von Gestenparametern einer Mensch-Maschine-Schnittstelle, insbesondere auch nach einem der vorgehenden Ansprüche, dadurch gekennzeichnet, dass das System über a. mindestens einen Controller (Cij) verfügt, b. mindestens einen Transmitter insbesondere für elektromagnetische Strahlung, für Licht, für magnetische oder elektrostatische Felder, für Schallfelder verfügt und dass dieser insbesondere eine Spule und/oder eine Elektrode und/oder eine LED und/oder eine Antenne ist, c. mindestens einen Empfänger insbesondere für das von mindestens einem Transmitter emittiertes Signal insbesondere für elektromagnetische Strahlung, für Licht, für magnetische oder elektrostatische Felder, für Schallfelder verfügt und dass dieser insbesondere eine Spule und/oder eine Elektrode und/oder eine LED und/oder eine Antenne ist, d. mindestens einen Controller (Cij) verfügt, der das von mindestens einem Transmitter emittierte Signal generiert und mit mindestens einem durch mindestens einem Empfänger empfangene Signal vergleicht und das Vergleichsergebnis ermittelt, e. mindestens einen Kompensationssignalquelle (Kj) verfügt, deren Ausgangssignal so mit dem Ausgangssignal eines Empfängers (Dj), insbesondere linear, so überlagert wird, dass dieses sich mit dem Signalanteil mindestens eines Transmitters (Hi) am Ausgangssignal des Empfängers (Di) so überlagert, dass sich nahezu eine Auslöschung zumindest eines vordefinierten Teils des Signals des Transmitters, insbesondere eines Trägersignals, ergibt und dass das Signal des Kompensationssenders Kj durch den Controller Cij erzeugt und so geregelt wird, dass sich besagte Auslöschung im Wesentlichen ergibt.
- Objekterkennungssystem und Messsystem, insbesondere Gestenerkennungssystem, zur Erfassung von Objektparametern, insbesondere von Gestenparametern einer Mensch-Maschine-Schnittstelle, dadurch gekennzeichnet, dass das System über a. mindestens einen Controller (Cij) verfügt, b. mindestens einen Transmitter insbesondere für elektromagnetische Strahlung, für Licht, für magnetische oder elektrostatische Felder, für Schallfelder verfügt und dass dieser insbesondere eine Spule und/oder eine Elektrode und/oder eine LED und/oder eine Antenne ist, c. mindestens einen Empfänger insbesondere für das von mindestens einem Transmitter emittiertes Signal insbesondere für elektromagnetische Strahlung, für Licht, für magnetische oder elektrostatische Felder, für Schallfelder verfügt und dass dieser insbesondere eine Spule und/oder eine Elektrode und/oder eine LED und/oder eine Antenne ist, d. mindestens einen Controller (Cij) verfügt, der das von mindestens einem Transmitter emittierte Signal generiert und mit mindestens einem durch mindestens einem Empfänger empfangene Signal vergleicht und das Vergleichsergebnis ermittelt, e. dass eine Hypothesenliste für erkannte Elementarobjektanordnungen und/oder -bewegungen, insbesondere Elementargesten, oder eine Hypothesenliste für erkannte Elementarbewegungssequenzen, insbesondere Elementargestensequenzen, oder eine Hypothesenliste für erkannte Sequenzen von Elementarobjektbewegungssequenzen, insbesondere von Elementargestensequenzen, mindestens ein von mindestens einem Transmitter oder Kompensationstransmitter gesendetes Signal beeinflusst wobei die Hypothesenlisten auch nur eine Hypothese umfassen können.
- System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der von den Controller Cij gelieferte Datenstrom im weiteren Verlauf der Bearbeitung mit einer applikationsabhängigen Matrix, insbesondere der sprecher- und objektunabhängigen und geräteabhängigen LDA-Matrix, multipliziert wird.
- System nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der von den Controller Cij gelieferte Datenstrom im weiteren Verlauf der Bearbeitung mit einer applikationsunabhängigen Matrix, insbesondere der sprecher-, objekt- und geräteunabhängigen LDA-Matrix, multipliziert wird.
- System nach einem der vorhergehenden Ansprüche dadurch gekennzeichnet, dass die Merkmalsvektoren der gemessenen Gesten durch Abstandsberechnung, insbesondere euklidische Abstandsberechnung, mit den Abständen zu prototypischen Vektoren für Elementargesten, insbesondere auch Nicht-Gesten, verglichen werden.
- System nach einem der vorhergehenden Abschnitte dadurch gekennzeichnet, dass mindestens eine Hypothesenliste von erkannten Elementargesten oder Elementargestensequenzen oder von Sequenzen von Elementargestensequenzen gebildet wird, die insbesondere mit Erkennungswahrscheinlichkeiten versehen sein kann und die Hypothesenliste nur ein Element enthalten kann
- System nach einem der vorausgehenden Ansprüche dadurch gekennzeichnet, dass eine Hypothesenliste mindestens ein von mindestens einem Transmitter gesendetes Signal beeinflusst.
- System nach einem der vorausgehenden Ansprüche dadurch gekennzeichnet, dass eine geräteunabhängige Prototypendatenbank (insbesondere ein Code-Book) benutzt wird.
- System nach einem der vorausgehenden Ansprüche, dadurch gekennzeichnet, dass es zu kontinuierlichen Gestenerkennung fähig ist, insbesondere ein Zustandsnetzwerk mit sequenziellen Zustandsfolgen wiederholend zu durchlaufen.
- System nach einem der vorausgehenden Ansprüche, dadurch gekennzeichnet, dass es einen Zustand abgesenkten Energieverbrauchs besitzt.
- System nach einem der vorausgehenden Ansprüche, dadurch gekennzeichnet, dass es weitere Sensoren, insbesondere zur Energieversorgung genutzte Solarzellen, zur Zustandsänderung nutzt.
- Gestensprache, insbesondere zur Erkennung durch ein System nach einem oder mehreren der vorhergehenden Ansprüche, dadurch charakterisiert, dass sie unter anderem aus elementaren Objektorientierungen zusammengesetzt ist, die in einem Prototype-Book niedergelegt werden können, insbesondere dass es sich um eine oder mehrere der folgenden Prototypen für insbesondere ein oder je eine von zwei Händen handelt: a. Eine Handfläche zum Erkenner b. Eine Hand von der Seite mit kleinem Finger zum Erkenner c. Ein Handrücken zum Erkenner d. Eine Hand von der Seite mit Daumen zum Erkenner e. Eine Hand in einer der folgenden Richtungen orientiert: i. Nord, ii. Nord Ost iii. Ost iv. Süd Ost v. Süd vi. Süd West vii. West viii. Nord West f. Eine Hand gekippt mit der Spitze nach unten g. Eine Hand gekippt mit der Spitze nach oben h. Eine Hand vertikal mit Spitze nach oben i. Eine Hand vertikal mit Spitze nach unten j. Eine Hand abgeknickt i. Nach rechts ii. Nach links k. Die Finger einer Hand gespreizt l. Die Anzahl der abgespreizten Finger einer Hand ist 1, 2, 3, 4, 5 m. Ein Finger (insbesondere Zeigefinger) einer Hand nach vorne n. Kombinationen der obigen Ein-Hand-Elementarorientierungen durch zwei Hände zu Zwei-Hand-Orientierungen
- Gestensprache, insbesondere nach einem oder mehreren der vorhergehenden Ansprüche, dadurch charakterisiert, dass sie unter anderem aus elementaren Objektpositionierungen und -bewegungen zusammengesetzt ist, die in einem Prototype-Book niedergelegt werden können, insbesondere dass es sich um eine oder mehrere der folgenden Prototypen handelt oder dass diese folgenden Prototypen Teil solcher Objektpositionierungen und -bewegungen sind: a. Keine Geste (idle) oder kein Objekt b. Eintritt eines Objekts von links, rechts, oben, unten oder entsprechende Zwischenwerte wie insbesondere diagonal oder eine andere Änderung der Anzahl der erfassten Objekte c. Verharren eines Objekts (keine Bewegung) d. Lineare Translationsbewegungen eines Objekts insbesondere in x, y, und z-Richtung und/oder deren Zwischenrichtungen e. Bewegungen, insbesondere Kreis- oder Elipsen- oder Hyperbelbewegungen eines Objekts, entlang einer Koordinatenrichtung eines gedachten, insbesondere orthogonalen Koordinatensystems oberhalb des Erkenners, insbesondere eines Polarkoordinatensystems oder eines sphärischen Koordinatensystems, oder eines Zylinderkoordinatensystems oder einem anderen orthogonalen Koordinatensystems. f. Drehungen eines Objektes oder Übergänge zwischen Objektorientierungen entsprechend Anspruch 5 g. Veränderungen der Struktur eines Objektes insbesondere Hand öffnen oder schließen oder Finger spreizen oder ein, zwei oder mehr Finger vorstrecken. h. Kombinationen dieser elementaren Objektpositionierungen und -bewegungen oder Elementargesten
- Gestensprache, insbesondere nach einem oder mehreren der vorhergehenden Ansprüche, dadurch charakterisiert, dass sie Sequenzen von elementaren Objektpositionierungen und -bewegungen, insbesondere Elementargesten, definiert, wobei eine Sequenz aus mindestens einer elementaren Objektpositionierung und/oder -bewegung, insbesondere einer Elementargeste, besteht, und diese Sequenzen mit Bedeutungsklassen versieht, insbesondere dass eine der folgenden Bedeutungsklassen verwendet wird: a. Subjekte b. Objekte (insbesondere Gegenstände und Personen) oder c. Eigenschaften dieser Objekte oder Subjekte oder d. Veränderungen der Eigenschaften oder e. Eigenschaften der Veränderungen selbst f. Verursacher dieser Veränderungen oder g. Verhältnisse der Objekte oder Subjekte untereinander h. Eigenschaften der Verhältnisse dieser Objekte untereinander
- Gestensprache, insbesondere nach einem oder mehreren der vorhergehenden Ansprüche, dadurch charakterisiert, dass mindestens einer elementaren Objektpositionierung oder -bewegung oder -positionierungssequenz oder -bewegungssequenz, insbesondere mindestens einer Gesten oder Gesten-Sequenz, mindestens ein Text-String oder mindestens eine andere Symbolkette zugeordnet ist oder zugeordnet werden kann und dass die somit definierten Verknüpfungen zwischen den elementaren Objektpositionierungen oder -bewegungen oder -positionierungssequenzen oder -bewegungssequenzen, insbesondere den Gesten oder Gesten-Sequenzen, auf der einen Seite und Aktionen der Aktoren des Rechner- und/oder Robotersystems auf der anderen Seite dem Rechnersystem durch ein Protokoll, insbesondere ein http- oder XML-Protokoll übermittelt werden.
- Verfahren zum Transfer einer Datenbank von Objektorientierungen und/oder -anordnungen und/oder- bewegungen, insbesondere Gesten, von einem Referenzsystemtyp zur Erkennung derselben (Referenzsystem) auf einen anderen Systemtyp zur Erkennung derselben (Zielsystem) dadurch charakterisiert, dass durch eine mechanische Vorrichtung Objektorientierungen und/oder -anordnungen und/oder -bewegungen, insbesondere Gesten, durchgeführt werden, die mit dem Referenzsystem und dem Zielsystem vermessen werden und deren Referenzsystemwerte in der besagten Datenbank enthalten sind und dass die Messergebnisse des Referenzsystems mit den Messergebnissen des Zielsystems verglichen werden und hieraus eine Funktion, insbesondere eine Matrix (
25 ), zur Korrektur der Messergebnisse des Zielsystems abgeleitet wird. - System, insbesondere ein Roboter oder Computer oder Smart-Phone, dadurch charakterisiert, dass er über ein Gestenerkennungssystem nach einem oder mehreren der vorhergehenden Ansprüche verfügt und dass mindestens ein Aktor mittels mindestens einer Elementargeste gesteuert werden kann.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE201210010627 DE102012010627A1 (de) | 2012-05-23 | 2012-05-23 | Kontinuierlich arbeitende Gestenerkennungsvorrichtung und zugehörige Gestensprache zur Übermittlung von Kommandos und Informationen an eine Mensch-Maschineschnittstelle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE201210010627 DE102012010627A1 (de) | 2012-05-23 | 2012-05-23 | Kontinuierlich arbeitende Gestenerkennungsvorrichtung und zugehörige Gestensprache zur Übermittlung von Kommandos und Informationen an eine Mensch-Maschineschnittstelle |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102012010627A1 true DE102012010627A1 (de) | 2013-11-28 |
Family
ID=49546897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE201210010627 Withdrawn DE102012010627A1 (de) | 2012-05-23 | 2012-05-23 | Kontinuierlich arbeitende Gestenerkennungsvorrichtung und zugehörige Gestensprache zur Übermittlung von Kommandos und Informationen an eine Mensch-Maschineschnittstelle |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102012010627A1 (de) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014012158A1 (de) | 2013-09-12 | 2015-03-12 | Mechaless Systems Gmbh | Gestenerkennungsverfahren und Gestenerkennungsvorrichtung |
EP2860614A1 (de) | 2013-10-10 | 2015-04-15 | ELMOS Semiconductor AG | Verfahren und Vorrichtung zur Handhabung grafisch dargestellter Daten |
EP2876526A1 (de) | 2013-10-10 | 2015-05-27 | ELMOS Semiconductor AG | Verfahren zur Erkennung von Gesten und Vorrichtung zur Gestenerkennung |
DE102015002282A1 (de) | 2014-05-09 | 2015-11-12 | Elmos Semiconductor Aktiengesellschaft | Vorrichtung und Verfahren zum insbesondere dreidimensionalen optischen Scannen und Vermessen von Objekten und zur Objekterkennung mittels Lichtlaufzeitmessung |
DE102014007464A1 (de) | 2014-05-19 | 2015-11-19 | Elmos Semiconductor Aktiengesellschaft | Verfahren zur Bedienung einer mechanischen Vorrichtung |
DE102014019708A1 (de) | 2014-05-19 | 2015-11-19 | Elmos Semiconductor Aktiengesellschaft | Verfahren zur Bedienung einer mechanischen Vorrichtung |
DE102014019709A1 (de) | 2014-05-19 | 2015-11-19 | Elmos Semiconductor Aktiengesellschaft | Verfahren zur Bedienung einer mechanischen Vorrichtung |
DE102015015248A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Aktiengesellschaft | Einfache Gestenerkennungsvorrichtung |
DE102015015390A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Ag | Einfache Gestenerkennungsvorrichtung |
DE102015015389A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Ag | Einfache Gestenerkennungsvorrichtung |
DE102015015244A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Aktiengesellschaft | Einfache Gestenerkennungsvorrichtung |
DE102015015246A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Aktiengesellschaft | Einfache Gestenerkennungsvorrichtung |
DE102015015245A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Aktiengesellschaft | Einfache Gestenerkennungsvorrichtung |
DE102016111078A1 (de) | 2016-06-17 | 2017-12-21 | Elmos Semiconductor Aktiengesellschaft | Verfahren zur Detektion sicherheitsrelevanter Fehler in Datenbusschnittstellen von Airbag-Systemen und zugehörige Vorrichtung |
EP3099547B1 (de) | 2014-01-31 | 2018-07-18 | Huf Hülsbeck & Fürst GmbH & Co. KG | Montagemodul |
DE102020101997A1 (de) | 2020-01-24 | 2021-07-29 | Elmos Semiconductor Se | Gestenerkennungsvorrichtung für die Innenraumbeleuchtung von Fahrzeugen mit gleichzeitig geringem Totraum vor dem Sensorsystem |
DE102020119245B4 (de) | 2019-07-23 | 2024-06-13 | Elmos Semiconductor Se | Halios-Vorrichtung mit metalllagenfreiem Empfänger und Kompensation mittels Phononenstrahlung eines Heizelements oder eines elektroakustischen Wandlers |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6677932B1 (en) * | 2001-01-28 | 2004-01-13 | Finger Works, Inc. | System and method for recognizing touch typing under limited tactile feedback conditions |
US20060026535A1 (en) * | 2004-07-30 | 2006-02-02 | Apple Computer Inc. | Mode-based graphical user interfaces for touch sensitive input devices |
US20080158178A1 (en) * | 2007-01-03 | 2008-07-03 | Apple Inc. | Front-end signal compensation |
-
2012
- 2012-05-23 DE DE201210010627 patent/DE102012010627A1/de not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6677932B1 (en) * | 2001-01-28 | 2004-01-13 | Finger Works, Inc. | System and method for recognizing touch typing under limited tactile feedback conditions |
US20060026535A1 (en) * | 2004-07-30 | 2006-02-02 | Apple Computer Inc. | Mode-based graphical user interfaces for touch sensitive input devices |
US20080158178A1 (en) * | 2007-01-03 | 2008-07-03 | Apple Inc. | Front-end signal compensation |
Non-Patent Citations (1)
Title |
---|
Schuller, B.; Lang, M.; Rigoll G.: MULTIMODAL EMOTION RECOGNITION IN AUDIOVISUAL COMMUNICATION. In: ICME '02, 2002, S. 745 - 748. * |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE202014010352U1 (de) | 2013-09-12 | 2015-06-17 | Mechaless Systems Gmbh | Gestenerkennungsvorrichtung |
DE102014012158A1 (de) | 2013-09-12 | 2015-03-12 | Mechaless Systems Gmbh | Gestenerkennungsverfahren und Gestenerkennungsvorrichtung |
EP2860614A1 (de) | 2013-10-10 | 2015-04-15 | ELMOS Semiconductor AG | Verfahren und Vorrichtung zur Handhabung grafisch dargestellter Daten |
DE102013114794A1 (de) | 2013-10-10 | 2015-04-16 | Elmos Semiconductor Aktiengesellschaft | Gekrümmter Bildschirm |
EP2876526A1 (de) | 2013-10-10 | 2015-05-27 | ELMOS Semiconductor AG | Verfahren zur Erkennung von Gesten und Vorrichtung zur Gestenerkennung |
EP3099547B1 (de) | 2014-01-31 | 2018-07-18 | Huf Hülsbeck & Fürst GmbH & Co. KG | Montagemodul |
DE102015002283A1 (de) | 2014-05-09 | 2015-11-12 | Elmos Semiconductor Aktiengesellschaft | Vorrichtung und Verfahren zum insbesondere dreidimensionalen optischen Scannen und Vermessen von Objekten und zur Objekterkennung mittels Lichtlaufzeitmessung und objektabhängiger Ortsauflösung mehrerer verschiedener Einzelscanner |
DE102015002271A1 (de) | 2014-05-09 | 2015-11-26 | Elmos Semiconductor Aktiengesellschaft | Vorrichtung und Verfahren zum insbesondere dreidimensionalen optischen Scannen und Vermessen von Objekten und zur Objekterkennung mittels Lichtlaufzeitmessung |
DE102015002270A1 (de) | 2014-05-09 | 2015-11-26 | Elmos Semiconductor Aktiengesellschaft | Vorrichtung und Verfahren zum insbesondere dreidimensionalen optischen Scannen, Vermessen und Klassifizieren von Objekten und zur Objekterkennung mittels Lichtlaufzeitmessung |
DE102015002282A1 (de) | 2014-05-09 | 2015-11-12 | Elmos Semiconductor Aktiengesellschaft | Vorrichtung und Verfahren zum insbesondere dreidimensionalen optischen Scannen und Vermessen von Objekten und zur Objekterkennung mittels Lichtlaufzeitmessung |
DE102015002283B4 (de) | 2014-05-09 | 2023-01-19 | Elmos Semiconductor Se | Vorrichtung zum insbesondere dreidimensionalen optischen Scannen und Vermessen von Objekten und zur Objekterkennung mittels Lichtlaufzeitmessung und objektabhängiger Ortsauflösung mehrerer verschiedener Einzelscanner |
DE102014007464A1 (de) | 2014-05-19 | 2015-11-19 | Elmos Semiconductor Aktiengesellschaft | Verfahren zur Bedienung einer mechanischen Vorrichtung |
DE102014019708A1 (de) | 2014-05-19 | 2015-11-19 | Elmos Semiconductor Aktiengesellschaft | Verfahren zur Bedienung einer mechanischen Vorrichtung |
DE102014019709A1 (de) | 2014-05-19 | 2015-11-19 | Elmos Semiconductor Aktiengesellschaft | Verfahren zur Bedienung einer mechanischen Vorrichtung |
DE102015015248A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Aktiengesellschaft | Einfache Gestenerkennungsvorrichtung |
DE102015015244A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Aktiengesellschaft | Einfache Gestenerkennungsvorrichtung |
DE102015015246A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Aktiengesellschaft | Einfache Gestenerkennungsvorrichtung |
DE102015015245A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Aktiengesellschaft | Einfache Gestenerkennungsvorrichtung |
DE102015015389A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Ag | Einfache Gestenerkennungsvorrichtung |
DE102015015390A1 (de) | 2015-11-18 | 2017-05-18 | Elmos Semiconductor Ag | Einfache Gestenerkennungsvorrichtung |
DE102016111078A1 (de) | 2016-06-17 | 2017-12-21 | Elmos Semiconductor Aktiengesellschaft | Verfahren zur Detektion sicherheitsrelevanter Fehler in Datenbusschnittstellen von Airbag-Systemen und zugehörige Vorrichtung |
DE102020119245B4 (de) | 2019-07-23 | 2024-06-13 | Elmos Semiconductor Se | Halios-Vorrichtung mit metalllagenfreiem Empfänger und Kompensation mittels Phononenstrahlung eines Heizelements oder eines elektroakustischen Wandlers |
DE102020101997A1 (de) | 2020-01-24 | 2021-07-29 | Elmos Semiconductor Se | Gestenerkennungsvorrichtung für die Innenraumbeleuchtung von Fahrzeugen mit gleichzeitig geringem Totraum vor dem Sensorsystem |
DE102020101997B4 (de) | 2020-01-24 | 2022-03-03 | Elmos Semiconductor Se | Gestenerkennungsvorrichtung für die Innenraumbeleuchtung von Fahrzeugen mit gleichzeitig geringem Totraum vor dem Sensorsystem |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102012010627A1 (de) | Kontinuierlich arbeitende Gestenerkennungsvorrichtung und zugehörige Gestensprache zur Übermittlung von Kommandos und Informationen an eine Mensch-Maschineschnittstelle | |
DE102012025564A1 (de) | Vorrichtung und Verfahren zur Kalibration einer kalibrierbaren Gestenerkennungsvorrichtung zur Übermittlung von Kommandos und Informationen an eine Mensch-Maschineschnittstelle | |
DE102012024778A1 (de) | Kontinuierlich arbeitende, berührungslose, optische Gestenerkennungsvorrichtung | |
Pandey et al. | Deep learning techniques for speech emotion recognition: A review | |
EP3938807B1 (de) | Verfahren zur detektion von hindernisobjekten durch ein sensor system mittels neuronaler netze | |
EP2277098B1 (de) | System und verfahren zur multidimensionalen gestenauwertung | |
US11676024B2 (en) | Low precision neural networks using subband decomposition | |
DE112019001144T5 (de) | VERFAHREN UND VORRICHTUNGEN ZUR BESTIMMUNG VON GEWICHTUNGEN FÜR DEN EINSATZ MIT CNNs (CONVOLUATIONAL NEURAL NETWORKS) | |
DE212020000731U1 (de) | Kontrastives Vortraining für Sprachaufgaben | |
DE602005000603T2 (de) | Verfahren zur Bestimmung von Wahrscheinlichkeitsparametern für ein veränderliches Zustandsraummodell | |
CN107146237B (zh) | 一种基于在线状态学习与估计的目标跟踪方法 | |
US20190094979A1 (en) | Gesture capture | |
EP2344980A1 (de) | Vorrichtung, verfahren und computerprogramm zur erkennung einer geste in einem bild, sowie vorrichtung, verfahren und computerprogramm zur steuerung eines geräts | |
DE102013017114A1 (de) | Verfahren und vorrichtung zum bestimmen einer gehrichtung für einen fussgängerkoppelnavigationsprozess | |
CN110674875A (zh) | 一种基于深度混合模型的行人运动模式识别方法 | |
US11386326B2 (en) | Training a machine learning model with limited training data | |
US20160221190A1 (en) | Learning manipulation actions from unconstrained videos | |
EP4016477A1 (de) | Verfahren und vorrichtung zur zeichenerkennung, elektronische vorrichtung und speichermedium | |
DE102018127802A1 (de) | Hybrider klassifikator eines gepulsten neuronalen netzwerks und einer support-vektor-maschine | |
JP2022520000A (ja) | データ処理方法、データ処理装置、コンピュータプログラム及び電子装置 | |
CN110598737B (zh) | 一种深度学习模型的在线学习方法、装置、设备及介质 | |
CN114707562A (zh) | 一种肌电信号采样频率控制方法、装置及存储介质 | |
DE112020003343T5 (de) | System und verfahren mit einem robusten tiefen generativen modell | |
DE102019106190A1 (de) | Dekompression von Ultraschallsignalen die mittels Signalobjektklassen komprimiert wurden | |
CN111144567A (zh) | 神经网络模型的训练方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R086 | Non-binding declaration of licensing interest | ||
R130 | Divisional application to |
Ref document number: 102012024778 Country of ref document: DE Ref document number: 102012025564 Country of ref document: DE |
|
R163 | Identified publications notified | ||
R130 | Divisional application to |
Ref document number: 102012024778 Country of ref document: DE Ref document number: 102012025564 Country of ref document: DE |
|
R130 | Divisional application to |
Ref document number: 102012024778 Country of ref document: DE Ref document number: 102012025564 Country of ref document: DE Ref document number: 102012025742 Country of ref document: DE Ref document number: 102012025741 Country of ref document: DE |
|
R081 | Change of applicant/patentee |
Owner name: ELMOS SEMICONDUCTOR AKTIENGESELLSCHAFT, DE Free format text: FORMER OWNER: ELMOS SEMICONDUCTOR AG, 44227 DORTMUND, DE Effective date: 20150108 |
|
R130 | Divisional application to |
Ref document number: 102012025564 Country of ref document: DE Effective date: 20150105 Ref document number: 102012024778 Country of ref document: DE Effective date: 20150105 Ref document number: 102012025741 Country of ref document: DE Effective date: 20150105 Ref document number: 102012025742 Country of ref document: DE Effective date: 20150105 Ref document number: 102012025564 Country of ref document: DE Effective date: 20130109 Ref document number: 102012025741 Country of ref document: DE Effective date: 20121215 Ref document number: 102012025741 Country of ref document: DE Effective date: 20130109 Ref document number: 102012024778 Country of ref document: DE Effective date: 20121215 Ref document number: 102012025799 Country of ref document: DE Effective date: 20141230 Ref document number: 102012024778 Country of ref document: DE Effective date: 20141230 Ref document number: 102012025742 Country of ref document: DE Effective date: 20141230 Ref document number: 102012025799 Country of ref document: DE Effective date: 20121215 Ref document number: 102012025742 Country of ref document: DE Effective date: 20121215 Ref document number: 102012025564 Country of ref document: DE Effective date: 20121215 Ref document number: 102012025799 Country of ref document: DE Effective date: 20130109 Ref document number: 102012024778 Country of ref document: DE Effective date: 20130109 Ref document number: 102012025742 Country of ref document: DE Effective date: 20130109 Ref document number: 102012025741 Country of ref document: DE Effective date: 20141230 Ref document number: 102012025799 Country of ref document: DE Effective date: 20150105 Ref document number: 102012025564 Country of ref document: DE Effective date: 20141230 |
|
R130 | Divisional application to |
Ref document number: 102012025564 Country of ref document: DE Ref document number: 102012025741 Country of ref document: DE Ref document number: 102012024778 Country of ref document: DE Ref document number: 102012025799 Country of ref document: DE Ref document number: 102012025742 Country of ref document: DE |
|
R012 | Request for examination validly filed | ||
R081 | Change of applicant/patentee |
Owner name: ELMOS SEMICONDUCTOR SE, DE Free format text: FORMER OWNER: ELMOS SEMICONDUCTOR AKTIENGESELLSCHAFT, 44227 DORTMUND, DE |
|
R120 | Application withdrawn or ip right abandoned |