-
TECHNISCHES GEBIET
-
Hierin beschriebene Ausführungsformen betreffen im Allgemeinen Informationsverarbeitungsvorrichtungen und assoziierte Methodik und insbesondere die Erkennung einer Benutzereingabe unter Verwendung von Berührungswahrnehmung.
-
STAND DER TECHNIK
-
In den vergangenen Jahren erlebte die Welt einen explosionsartigen Anstieg in der Popularität mobiler Rechengeräte, wie z.B. Mobiltelefone, Tablets und andere Formfaktor-Geräte, wie z.B. Smartwatches, Smartglasses und dergleichen. Diese Geräte verwenden überwiegend Berührungswahrnehmung als einen ihrer primären Benutzereingabemechanismen. Berührungsempfindliche Sensoren messen im Allgemeinen die Position des Tippens, Wischens und anderer Gesten, die durch den Benutzer erzeugt werden.
-
Das genaue Erkennen von Fingergesten ist von entscheidender Bedeutung für Gerätedesigner, da die Wahrnehmung eines Benutzers hinsichtlich der Qualität eines Gerätes eng mit der persönlichen Anwendungserfahrung des Benutzers verknüpft ist. Die Fingergestenerkennung stellt auch einige kritische Herausforderungen für mobile Geräte dar, da Benutzer überwiegend unterschiedliche physische Eigenschaften und gewohnheitsmäßige Verhaltensweisen aufweisen. Zum Beispiel können Benutzer unterschiedliche Hauttexturen aufweisen, ein tragbares Gerät unterschiedlich befestigen, eine Geste mit unterschiedlicher Kraftaufwendung anwenden oder das Gerät in unterschiedlichen Mustern antippen. Diese Arten von Variationen verkomplizieren das Design mobiler Geräte für eine genaue Gestenerkennung.
-
Gegenwärtig bieten berührungsempfindliche Geräte einen Kalibrierungs- oder Optimierungsalgorithmus zum Abstimmen ihrer Reaktionsfähigkeit auf durch den Benutzer angewandte Berührungsgesten für spezifische Benutzer. Während ein vollständig abgestimmter Berührungsgesten-Erkennungsalgorithmus den Großteil, in etwa 90 %, der Benutzerpopulation recht gut abdecken kann, verbleibt eine kleine, jedoch sehr lautstarke Gruppe von Benutzern, die mit falsch interpretierten Gesten zu kämpfen hat. Eine angemessene Behandlung der Benutzererfahrungsprobleme, insbesondere einer unzufriedenen Gruppe, erhält hohe Priorität beim Management des Markenimages für ein tragbares Gerät.
-
Figurenliste
-
In den Zeichnungen, welche nicht notwendigerweise maßstabsgerecht sind, können gleiche Ziffern ähnliche Komponenten in unterschiedlichen Ansichten beschreiben. Gleiche Ziffern, die unterschiedliche Buchstabensuffixe aufweisen, können unterschiedliche Instanzen ähnlicher Komponenten darstellen. Einige Ausführungsformen sind als Beispiele, und nicht als Einschränkung, in den Figuren der beigefügten Zeichnungen veranschaulicht.
- 1A ist ein Blockdiagramm, das einige der Komponenten eines Beispielrechengerätes gemäß einiger Ausführungsformen veranschaulicht.
- 1B ist ein Diagramm, das ein tragbares Rechengerät gemäß einiger Ausführungsformen veranschaulicht.
- 2 ist ein Blockdiagramm, das eine beispielhafte Systemarchitektur eines Rechengerätes, wie z.B. die Geräte von 1A und 1B, gemäß einer Ausführungsform veranschaulicht.
- 3 ist ein Diagramm, das eine beispielhafte Hardware- und Softwarearchitektur eines Rechengerätes, wie z.B. das in 2 gezeigte, veranschaulicht, in welchem verschiedene Schnittstellen zwischen Hardwarekomponenten und Softwarekomponenten gezeigt sind.
- 4 ist ein Blockdiagramm, das einen Satz von Maschinen, die unter Verwendung der Rechenhardware eines Rechengerätes implementiert werden können, die gemäß der Ausführung oder Installation von Software- oder Firmware-Programmanweisungen konfiguriert oder konfigurierbar sein kann, gemäß einiger Ausführungsformen veranschaulicht.
- 5 ist ein Zeitablaufdiagramm, das Beispielausgaben eines Mehrachsbewegungssensors, der eine Doppeltippgeste beobachtet, gemäß einiger Ausführungsformen veranschaulicht.
- 6 ist ein Flussdiagramm, das einen Beispielprozess der Erkennung einer Doppeltippgeste gemäß einiger Ausführungsformen veranschaulicht.
- 7 ist eine Tabelle, die verschiedene Beispielparameterwerte zur Tippgestenerkennung gemäß einer Ausführungsform aufführt.
- 8 ist ein Zustandsdiagramm, das verschiedene potentielle Sequenzen von Tippgesten gemäß einiger Ausführungsformen veranschaulicht.
- 9 ist eine Tabelle, welche die verschiedenen Zähler, die jedem in 8 gezeigten sequentiellen Tippereignis entsprechen, gemäß einiger Ausführungsformen veranschaulicht.
- 10 ist ein Grafikdiagramm, das sequentielle Beziehungen zwischen Gestenereignissen, einschließlich der zeitlichen Abfolge dieser Ereignisse, gemäß einiger Ausführungsformen veranschaulicht.
- 11 ist eine Tabelle, welche die Kanten des Diagramms von 10 mit den im Diagramm von 8 gezeigten Ereignissequenzen gemäß einer Beispielausführungsform assoziiert.
- 12 ist ein Diagramm, das eine reduzierte Grafik, die Tippereignisse von Interesse für eine Neukalibrierung der Doppeltipp-Gestenerkennung darstellt, gemäß einer Beispielausführungsform veranschaulicht.
- 13 ist ein Flussdiagramm, das einen allgemeinen Prozess, der die Gestenerkennungsbewertung durchführt, gemäß einiger Ausführungsformen veranschaulicht.
-
DETAILLIERTE BESCHREIBUNG
-
Aspekte der hierin beschriebenen Ausführungsformen richten sich an die Berührungseingabegesten-Erkennung in Rechengeräten. Im Folgenden können Berührungseingabegesten durch den Benutzer, wie Eingaben in einen oder mehrere Sensoren eines Rechengerätes, einfach als Gesten bezeichnet sein.
-
Ein Aspekt der Ausführungsformen richtet sich an die Automatisierung des Neukalibrierungsprozesses für die Gestenerkennung in Rechengeräten. In einigen Ausführungsformen wird die Neukalibrierung automatisch, d.h. ohne einen spezifischen Benutzerbefehl in jeder Instanz, nach einem Anfangskalibrierungsprozess, der in einer Anfangseinrichtungssitzung mit dem Benutzer durchgeführt wird, initiiert. In verwandten Ausführungsformen ist die Kalibrierungsoperation für die Gestenerkennung adaptiver Natur. Sie erkennt die/das Gestennutzung und -muster eines Benutzers und schaltet adaptiv in ein anderes Kalibrierungsprofil, wenn das neue Profil geeigneter für den Benutzer ist.
-
Einige Ausführungsformen sehen eine Möglichkeit für einen Gestenerkennungsalgorithmus zum Feinabstimmen oder Modifizieren kalibrierter Konfigurationseinstellungen vor, wenn der Algorithmus eine Veränderung im Gestenmuster des Benutzers erkennt.
-
In verwandten Ausführungsformen basiert die Initiierung der Gestenerkennungs-Neukalibrierung auf einem Erkennen, dass ein Benutzer tendenziell bestimmtes Verhalten zeigt, wenn die vorhandene Gestenerkennungsfunktionalität fehlschlägt, um dem Benutzer die korrekte Reaktion wie erwartet bereitzustellen. Der Benutzer versucht, die Geste zu korrigieren, indem er zum Beispiel die gleiche Geste noch einmal anwendet. Diese Art der verhaltensbasierten Überwachung gemäß einiger Ausführungsformen kann vorteilhafterweise das Auftreten von Gestenerkennungsfehlern oder falscher Gestenerkennung verringern.
-
Ein Rechengerät im vorliegenden Kontext kann jegliches einer Vielzahl von Gerätetypen sein. Zum Beispiel kann es ein multifunktionales Gerät sein, wie z.B. ein Smartphone, ein Tablet, ein Laptop, ein Desktop-PC, eine Smartwatch, ein tragbares Formfaktor-Gerät (z.B. Smartglasses oder ein Gerät, das in einem Kleidungsstück eingebettet ist) usw. Ein Rechengerät kann mehrere integrierte Datenerfassungsgeräte aufweisen.
-
1A ist ein Blockdiagramm, das einige der Komponenten eines Beispielrechengerätes 100 gemäß einer Ausführungsform veranschaulicht. Das Rechengerät 100 ist in diesem Beispiel als ein Smartphone veranschaulicht, jedoch wird verstanden werden, dass das Rechengerät 100 auch repräsentativ für andere Arten von Rechengeräten ist, welche möglicherweise mehr oder weniger Datenerfassungsgeräte oder andere Merkmale als das beispielhafte Rechengerät 100 aufweisen. Das Rechengerät 100 weist ein Gehäuse 102 auf, das die Komponenten im Inneren einschließt. Das Gehäuse 102 kann in gewissem Maße Zugang zum Inneren des Gerätes 100 gestatten. Zum Beispiel kann das Gehäuse 102 bei Geräten mit einer durch den Benutzer austauschbaren Batterie, Flash-Speicherkarte oder SIM (Subscriber Identity Module) -Karte eine durch den Benutzer entfernbare Abdeckung beinhalten. Bei Geräten mit einem Design, das dem Benutzer keinen Zugang zum Inneren gestattet, kann das Gehäuse 102 dennoch derart bereitgestellt sein, dass es Technikern den Zugang gestattet, sodass gewisse Komponenten falls nötig repariert oder ausgetauscht werden können.
-
Das Rechengerät 100 beinhaltet ferner den Touchscreen 104, welcher einen Teil der gesamten Umhüllung des Gerätes 100 in Zusammenwirkung mit dem Gehäuse 102 bildet. Der Touchscreen 104 beinhaltet Hardware, die als ein Ausgabegerät (z.B. ein LED-Bildschirm zur visuellen Anzeige, Leistungs- und Controllerschaltungen usw.) und ein Eingabegerät funktioniert, die im Allgemeinen über die visuelle Anzeige geschichtet ist und aus einer geeigneten berührungs- oder näherungsempfindlichen Technologie (z.B. kapazitiv, resistiv, optisch, Ultraschall usw.) gebildet ist, zusammen mit den entsprechenden Erkennungs- und Leistungsschaltungen. Außerdem beinhaltet das Rechengerät 100 ein Benutzereingabegerät, welches in diesem Beispiel ein oder mehrere durch den Benutzer bedienbare Eingabegeräte, wie z.B. ein/e Taste(n), Tastenfeld, Tastatur, Touchpad, Maus usw., darstellt.
-
Wie ferner in 1 gezeigt, kann das Rechengerät 100 mehrere Datenerfassungsgeräte, wie z.B. Abtastwandler, aufweisen, deren physische Stimulation Signalisierung erzeugt, die abgetastet, digitalisiert und als erfasste Daten gespeichert werden kann. Der Beschleunigungsmesser 110 kann einen Mehrachssensor, der Signalisierung als Reaktion auf Veränderungen in der Bewegung erzeugt, und Elektronik zum Abtasten und Digitalisieren dieser Signalisierung beinhalten. Der Sensor kann ein mikroelektromechanisches System (MEMS - Micro Electro-Mechanical System) -basiertes Gerät sein, das kapazitive, piezoelektrische oder eine andere geeignete Technologie zum Erzeugen elektrischer Signalisierung nutzt, die dann mit geeigneten analogen und digitalen Schaltungen verstärkt und verarbeitet wird. Zu weiteren Sensoren können Verformungs- oder Beanspruchungssensoren, akustische Sensoren und dergleichen zählen.
-
1B ist ein Diagramm, das ein Rechengerät veranschaulicht, das einen tragbaren Formfaktor aufweist. Wie gezeigt, kann die Smartwatch 150 auch einen Touchscreen 104 und einen Beschleunigungsmesser 110 beinhalten.
-
2 ist ein Blockdiagramm, das eine beispielhafte Systemarchitektur 200 des Rechengerätes 100 oder 150 gemäß einiger Ausführungsformen veranschaulicht. In Abhängigkeit vom Formfaktor und der Natur des Rechengerätes 100, 150 liegt möglicherweise nicht jede unten beschriebene Komponente vor. Die Zentralprozessoreinheit (CPU - Central Processor Unit) 202 beinhaltet einen oder mehrere Mikroprozessoren, auf welchem/n die gesamte Funktionalität des Rechengerätes 100, 150 ausgeführt wird. Die CPU 202 ist aus Hardware gebildet, die eine elektrische Schnittstelle mit der Systemverbindung 203 aufweist, welche Daten und Steuersignalisierung zwischen den verschiedenen Komponenten transportiert. Wie veranschaulicht weist die Systemverbindung 203 ähnlich Schnittstellen mit jeder der anderen Komponenten der Systemarchitektur 200 auf. Der Speicher 204 beinhaltet Arbeitsspeicherplatz und ist aus geeigneten Hochgeschwindigkeits-Speichergeräten, wie z.B. synchronem dynamischem Zufallszugriffspeicher (SDRAM - Synchronous Dynamic Random Access Memory), aufgebaut. In der veranschaulichten Ausführungsform kann die CPU 202 unter Verwendung der Hochgeschwindigkeitsschnittstelle 205 auf den Speicher 204 zugreifen. Der nichtflüchtige Speicher (NV MEM - Non-Volatile Memory) 206 ist unter Verwendung von Nur-Lese-Speicher (ROM - Read-Only Memory), elektrisch löschbarem programmierbarem Nur-Lese-Speicher (EEPROM - Electrically-Erasable Programmable Read-Only Memory), Flash-Speicher oder anderer geeigneter nichtflüchtiger Speichertechnologie aufgebaut. Der nichtflüchtige Speicher 206 speichert System- und Anwendungssoftware, die durch die CPU 202 und in einigen Fällen durch Prozessoren, die in einer oder mehreren anderen Komponenten vorliegen, ausgeführt wird.
-
Der externe nichtflüchtige Speicher (EXT. NV MEM - External Non-Volatile Memory) 207 beinhaltet, wo verfügbar, eine Schnittstelle, wie z.B. einen SD (Secure Digital) -Kartenschlitz, welche entfernbare Speichermedien aufnehmen kann, die als zusätzlicher nichtflüchtiger Datenspeicher verwendet werden sollen.
-
Die Anzeige 208 beinhaltet die Anzeige 104 und Schaltungen für die Schnittstellenbildung der Anzeige 104 mit dem System sowie Videoantriebsschaltungen. Die Toneinheit 210 enthält Schaltungen zum Antreiben der Audioausgabe an einen Lautsprecher oder Kopfhörer und die Schaltungen zur Schnittstellenbildung mit dem System. Die Benutzereingabe 212 enthält die Schaltungen für die Schnittstellenbildung mit Eingabegeräten, wie z.B. dem Touchscreen-Eingabegerät 104. Der Kommunikationsblock (COM) 214 stellt Kommunikationsschaltungen und Schaltungen zur Schnittstellenbildung der Kommunikationsschaltungen mit dem System dar. Der Kommunikationsblock 214 kann Funkeinheiten zum Kommunizieren über ein Mobilfunknetzwerk beinhalten, wie z.B. ein Netzwerk, das gemäß der LTE (Long-Term Evolution), LTE-Advanced, 5G oder GSM (Global System for Mobile Communications) -Standardfamilien ausgelegt ist. Außerdem können die Kommunikationsschaltungen 214 Wi-Fi-Kommunikationsfunk gemäß der IEEE 801.11-Standardfamilie oder eine Bluetooth-Funkschaltung gemäß der IEEE 802.15-Standardfamilie beinhalten. Die Echtzeituhr (RTC - Real-Time Clock) 216 beinhaltet Schaltungen, die einen Takt bereitstellen, der das/die aktuelle Datum und Zeit pflegt, und die eine Schnittstelle zwischen der Uhr und dem System bereitstellen.
-
Die Datenerfassungsgeräte 220 sind in das Rechengerät 200 integriert. Gemäß verschiedener Ausführungsformen beinhalten die Datenerfassungsgeräte 220 mehrere unterschiedliche Arten von Abtastwandlern und deren assoziierte Verarbeitungs- und Schnittstellenschaltungen, wie z.B. einen Beschleunigungsmesser 110, sowie eine Kamera, GPS und biometrische Sensoren gemäß verschiedener Ausführungsformen.
-
Die Verarbeitungsschaltungen, die mit jedem entsprechenden Wandler assoziiert sind, können Verstärkungs-, Puffer-, Filter- oder andere Signalkonditionierungsschaltungen zum Empfangen des rohen Analogsignals von dem entsprechenden Wandler und Erzeugen der Analogsignalisierung für die Digitalisierung, Analog/Digital-Umwandlungsschaltungen zum Durchführen von Abtastung, Quantisierung und Digitalcodierung und, in einigen Fällen, weiterer Verarbeitung zum Erzeugen eines Digitalsignals, welches das physische Phänomen, das durch den Wandler gemessen wird, in einer Form darstellt, die durch die CPU 202 lesbar ist, beinhalten.
-
3 ist ein Diagramm, das eine beispielhafte Hardware- und Softwarearchitektur eines Rechengerätes, wie z.B. das in 2 gezeigte, veranschaulicht, in welchem verschiedene Schnittstellen zwischen Hardwarekomponenten und Softwarekomponenten gezeigt sind. Wie durch HW angegeben, sind Hardwarekomponenten unterhalb der Teilungslinie dargestellt, wohingegen sich Softwarekomponenten, bezeichnet durch SW, oberhalb der Teilungslinie befinden. Auf der Hardwareseite sind die Verarbeitungsgeräte 302 (zu welchen ein oder mehrere Mikroprozessoren, Digitalsignalprozessoren usw. zählen können, die jeweils einen oder mehrere Prozessorkerne aufweisen) über Schnittstellen mit dem Speichermanagementgerät (MEM MANAGEMENT - Memory Management) 304 und der Systemverbindung 306 verbunden. Das Speichermanagementgerät 304 stellt Abbildungen zwischen virtuellem Speicher, der durch Prozesse, die ausgeführt werden, verwendet wird, und dem physischen Speicher bereit. Das Speichermanagementgerät 304 kann ein integraler Bestandteil einer zentralen Verarbeitungseinheit sein, welche auch die Verarbeitungsgeräte 302 beinhaltet.
-
Die Verbindung 306 beinhaltet eine Backplane, wie z.B. Speicher-, Daten- und Steuerleitungen, sowie die Schnittstelle mit den Eingabe-/Ausgabegeräten, z.B. einen proprietären Bus, PCI, USB usw. Der Speicher 308 (z.B. der dynamische Zufallszugriffspeicher - DRAM) und der nichtflüchtige Speicher 309, wie z.B. ein Flash-Speicher (d.h. elektrisch löschbarer Nur-Lese-Speicher - EEPROM, NAND-Flash, NOR-Flash usw.), weisen über den Speichercontroller (MEM CONTROLLER - Memory Controller) 310 Schnittstellen mit dem Speichermanagementgerät 304 und der Verbindung 306 auf. Diese Architektur kann in einigen Ausführungsformen direkten Speicherzugriff (DMA - Direct Memory Access) durch Peripheriegeräte unterstützen. E/A-Geräte, einschließlich Video- und Audioadapter, nichtflüchtiger Speicher, Verbindungen zu externen Peripheriegeräten, wie z.B. USB, Bluetooth usw., sowie Netzwerkschnittstellengeräte, wie z.B. diejenigen, die über Schnittstellen der Wi-Fi- oder LTE-Familie kommunizieren, sind gemeinsam als E/A-Geräte und Vernetzung 312 dargestellt, welche über entsprechende E/A-Controller 314 über Schnittstellen mit der Verbindung 306 verbunden sind.
-
Auf der Softwareseite befindet sich eine Vor-Betriebssystem (preOS - pre-Operating System) -Umgebung 316, welche beim ersten Systemstart ausgeführt wird und für die Initiierung des Hochfahrens des Betriebssystems verantwortlich ist. Ein traditionelles Beispiel der Vor-OS-Umgebung 316 ist ein System-BIOS (Basic Input/Output System). In heutigen Systemen kann eine UEFI (Unified Extensible Firmware Interface) -Schnittstelle implementiert sein. Das Betriebssystem (OS) 318 sieht einen Kernel vor, der die Hardwaregeräte steuert, den Speicherzugang für Programme im Speicher verwaltet, Aufgaben koordiniert und Multitasking ermöglicht, zu speichernde Daten organisiert, Speicherplatz und andere Ressourcen zuweist, Programm-Binärcode in den Speicher lädt, die Ausführung des Anwendungsprogramms initiiert, welches dann mit dem Benutzer und mit Hardwaregeräten interagiert, und verschiedene definierte Unterbrechungen erkennt und darauf reagiert. Das Betriebssystem 318 sieht auch Gerätetreiber und eine Vielzahl gemeinsamer Dienste vor, wie z.B. diejenigen, die eine Schnittstellenbildung mit Peripheriegeräten und Vernetzung ermöglichen und die Abstraktion für Anwendungsprogramme bereitstellen, sodass die Anwendungen sich nicht um die Handhabung der Einzelheiten derartiger gemeinsamer Operationen kümmern müssen. Das Betriebssystem 318 stellt außerdem eine graphische Benutzerschnittstelle (GUI - Graphical User Interface) bereit, die eine Interaktion mit den Anzeige-, Ton- und Berührungs- und Bewegungseingabe-Geräten ermöglicht.
-
Das Laufzeitsystem 320 implementiert Abschnitte eines Ausführungsmodells, einschließlich solcher Operationen wie das Platzieren von Parametern auf dem Stapel vor einem Funktionsaufruf, das Verhalten einer langfristigen Speichereingabe/-ausgabe (E/A) und das Verhalten in Bezug auf parallele Ausführung. Das Laufzeitsystem 320 kann auch Unterstützungsdienste durchführen, wie z.B. Typprüfung, Debugging oder Codeerzeugung und - optimierung.
-
Die Bibliotheken 322 beinhalten Sammlungen von Programmfunktionen, die eine weitere Abstraktion für Anwendungsprogramme bereitstellen. Dazu zählen zum Beispiel gemeinsam genutzte Bibliotheken und dynamische verbundene Bibliotheken (DLLs - Dynamic Linked Libraries). Die Bibliotheken 322 können in das Betriebssystem 318 oder das Laufzeitsystem 320 integriert sein oder können hinzugefügte Merkmale sein oder sogar entfernt untergebracht sein. Die Bibliotheken 322 definieren eine Anwendungsprogrammschnittstelle (API - Application Program Interface), durch welche eine Vielzahl von Funktionsaufrufen durch die Anwendungsprogramme 324 vorgenommen werden können, um die Dienste aufzurufen, die durch das Betriebssystem 318 bereitgestellt werden. Die Anwendungsprogramme 324, häufig als Apps bezeichnet, sind diejenigen Programme, die Aufgaben von Nutzen für die Benutzer durchführen, die über die Aufgaben hinausgehen, die durch Systemprogramme einer niedrigeren Ebene durchgeführt werden, welche die grundlegende Funktionsfähigkeit des Rechengerätes selbst koordinieren.
-
Beispiele, wie hierin beschrieben, können Logik oder eine Reihe von Komponenten, Maschinen oder Modulen beinhalten oder darauf arbeiten, welche der Einheitlichkeit halber als Maschinen bezeichnet werden, obwohl verstanden werden wird, dass diese Begriffe austauschbar verwendet werden können. 4 ist ein Blockdiagramm, das einen Satz von Maschinen veranschaulicht, die unter Verwendung der Rechenhardware eines Rechengerätes implementiert werden können, die, gemäß einiger Ausführungsformen, gemäß ausgeführter oder installierter Software- oder Firmware-Programmanweisungen konfiguriert werden oder konfigurierbar sein kann.
-
Maschinen können Hardware, Software oder Firmware sein, die kommunikativ an einen oder mehrere Prozessoren gekoppelt ist, um die hierin beschriebenen Operationen auszuführen. Maschinen können auch Hardwaremaschinen sein, und als solche können Maschinen als greifbare Einheiten angesehen werden, die zur Durchführung spezifizierter Operationen in der Lage sind und in einer bestimmten Art und Weise konfiguriert oder angeordnet sein können. In einem Beispiel können Schaltungen in einer spezifizierten Art und Weise als eine Maschine angeordnet sein (z.B. intern oder in Bezug auf externe Einheiten, wie z.B. andere Schaltungen). In einem Beispiel können ganze oder Teile von einem oder mehreren Computersystemen (z.B. ein eigenständiges, ein Client- oder ein Server-Computersystem) oder ein oder mehrere Hardwareprozessoren durch Firmware oder Software (z.B. Anweisungen, ein Anwendungsabschnitt oder eine Anwendung) als eine Maschine konfiguriert sein, die zum Durchführen spezifizierter Operationen arbeitet. In einem Beispiel kann sich die Software auf einem maschinenlesbaren Medium befinden. In einem Beispiel veranlasst die Software, wenn sie durch die darunterliegende Hardware der Maschine ausgeführt wird, die Hardware zum Durchführen der spezifizierten Operationen. Entsprechend wird der Begriff Hardwaremaschine so verstanden, dass er eine greifbare Einheit umschließt, sei es eine Einheit, die physisch konstruiert ist, spezifisch konfiguriert ist (z.B. festverdrahtet) oder vorübergehend (z.B. transitorisch) konfiguriert ist (z.B. programmiert), um in einer spezifizierten Art und Weise zu arbeiten oder um einen Teil oder die Gesamtheit jeglicher hierin beschriebener Operation durchzuführen. Unter Bezugnahme auf 3 kann eine Maschine zum Beispiel einen oder jegliche Kombination der gezeigten Blöcke beinhalten, solange mindestens ein Block von der HW-Seite enthalten ist.
-
Bei Betrachtung von Beispielen, in welchen Maschinen vorübergehend konfiguriert sind, muss nicht jede der Maschinen zu jedem Zeitpunkt instanziiert sein. Wenn die Maschinen zum Beispiel einen Universal-Hardwareprozessor umfassen, der unter Verwendung von Software konfiguriert ist, kann der Universal-Hardwareprozessor zu unterschiedlichen Zeiten als entsprechende unterschiedliche Maschinen konfiguriert sein. Software kann einen Hardwareprozessor zum Beispiel entsprechend konfigurieren, dass er zu einem Zeitpunkt eine bestimmte Maschine darstellt und zu einem anderen Zeitpunkt eine unterschiedliche Maschine darstellt.
-
In dem Diagramm von 4 ist die Gestenerkennungsmaschine 402 mit Hardware- und Softwarekomponenten konfiguriert und geeignet, einen Beschleunigungsmesser, einen Verformungs-/Beanspruchungssensor, einen Anzeige-Touchscreen oder eine andere geeignete Berührungserkennungseingabe durch den Benutzer zu überwachen und einen Satz definierter Kriterien zur Unterscheidung zwischen Benutzergesteneingaben oder anderen Ereignissen, die durch den/die Sensor(en) erfasst werden, anzuwenden. Insbesondere können in einigen Ausführungsformen ein oder eine Kombination unterschiedlicher Sensoren gleichzeitig (oder nahezu gleichzeitig innerhalb der Grenzen des Rechengerätes) überwacht und integriert werden, um eine unterschiedliche multimodale Eingabe zu erzeugen.
-
Die Profilzuweisungsmaschine 404 ist mit Hardware- und Softwarekomponenten konfiguriert und geeignet, die durch die Gestenerkennungsmaschine 402 erkannte(n) Geste(n) zu analysieren und ein oder mehrere Gesteneigenschaftsprofile gemäß definierter Profilkriterien zuzuweisen.
-
Die sequentielle Ereignisprotokollierungsmaschine 406 ist mit Hardware- und Softwarekomponenten konfiguriert und geeignet, eine oder mehrere Reihen sequentieller Gesten gemäß der Profileigenschaft jeder Geste und gemäß der zeitlichen Position jeder Geste in einer Sequenz von Gesten zu sammeln, zu tabellieren und zu zählen. Das Ergebnis dieser Tabellierung und Zählung kann eine Datenstruktur sein, die mit Zählungen verschiedener Gesten (oder Nicht-Gesten) -Daten gefüllt ist, die hinsichtlich der Sammlung von Eingabegesten indikativ für das Benutzerverhalten sein können.
-
Die Gestensequenz-Analysemaschine 408 ist mit Hardware- und Softwarekomponenten konfiguriert und geeignet, die durch die sequentielle Ereignisprotokollierungsmaschine gesammelten Daten zu analysieren, jegliche falschen Erkennungen von Gesten und jegliche falsche Erkennung von Gesten zu bewerten und Umstände für den Aufruf einer Neukalibrierung der Gestenerkennung zu erkennen. Die Gestenerkennungsmaschine 402 kann dann das Neukalibrierungsergebnis verwenden, um ihre Gestenerkennungsfunktionalität zu verbessern.
-
Verschiedene Beispielausführungsformen sind unten im Kontext der Doppeltipp-Gestenerkennung im Detail beschrieben. Es sei darauf hingewiesen, dass auch andere Ausführungsformen ähnliche Prinzipien für die Erkennung anderer Arten von Gesten anwenden können, einschließlich solcher Gesten wie Wischmuster, Schütteln des Gerätes, Drehung des Gerätes oder einer anderen Berührungs- oder Gerätehandhabungs-Eingabe.
-
5 ist ein Zeitablaufdiagramm, das Beispielausgaben eines Mehrachsbewegungssensors, der eine Doppeltippgeste überwacht, gemäß einiger Ausführungsformen veranschaulicht. Wie in dem Zeitdiagramm gezeigt, stellt jede Zeitreihenspur eine entsprechende Messachse dar. Es werden vier Parameter bei der Erkennung einer Doppeltippgeste verwendet: Mag1 502 stellt eine Größenordnung (Mag - Magnitude) einer ersten Spitze dar; Range1_max 504 stellt die Größenordnung des größten Abschnitts des Restsignals im Anschluss an die erste Spitze dar, hierin auch als der Schwanz bezeichnet; Mag2 506 stellt eine zweite Spitze dar, die das zweite Tippen darstellt (das zeitnah zu dem ersten Tippen erfolgt) und Range2_max 508 stellt die maximale Größenordnung des Schwanzes des zweiten Tippsignals dar.
-
Beim Erkennen des Tippens (z.B. durch die Gestenerkennungsmaschine 402) werden gemäß einiger Ausführungsformen verschiedene Schwellen (Threshold) auf die gemessenen Signalparameter angewandt: Magl_threshold und Mag2_threshold sind die Mindestakzeptanzschwellen für das erste bzw. zweite Tippen. Wenn zum Beispiel Mag1 502 die Magl_threshold übersteigt, wird wahrscheinlich ein erstes Tippen erkannt. Eine weitere Schwelle, P, ist der qualifizierende Grenzprozentsatz der Signalgrößenordnung, z.B. Mag1 502, in Proportion zur maximalen Schwanzgrößenordnung, z.B. Range1_max 504.
-
Die Signalgrößenordnungen Mag1 502 und Mag2 506 sind indikativ für die Kraft jedes entsprechenden Tippens, zum Beispiel wie stark der Benutzer auf das Gerät tippt. Die Werte von Mag1 502, Mag2 506, Mag1_threshold und Mag2_threshold können für jeden Benutzer variiert werden, um die Tipperkennung zu verbessern.
-
Die Schwanzgrößenordnungen Rangel_max 504 und Range2_max 508 und der qualifizierende Grenzprozentsatz P sind indikativ für Benutzereigenschaften, wie z.B. die Flexibilität und andere Eigenschaften der Haut des Benutzers, und stellen außerdem dar, wie das Gerät, in Bezug auf den Benutzer, gehalten, getragen oder befestigt sein kann.
-
6 ist ein Flussdiagramm, das einen Beispielprozess der Erkennung einer Doppeltippgeste gemäß einiger Ausführungsformen veranschaulicht. Bei 602 wird die erste Tipp-Minimalschwelle, Magl_threshold, angewandt, was bedeutet, dass Mag1 502 mit der Mag1_threshold verglichen wird. Die gemessene Spitze des ersten Tippens sollte die Mag1_threshold erfüllen oder übersteigen, um sie als ein Tippen zu qualifizieren. Bei 604 wird die erste Schwanz-Maximalschwelle P angewandt, wobei Range1_max 504 mit der Schwelle P verglichen wird, welche spezifisch für diese Anwendung basierend auf dem Wert von Mag1 502 bestimmt wird. Die Schwelle P kann zum Beispiel als ein Prozentsatz der Mag1_threshold definiert sein. Eine maximale Schwanzgrößenordnung Rangel_max, die unter die Schwelle P fällt, kann das Tippen als gültig qualifizieren. Bei 606 wird die zweite Tipp-Minimalschwelle, Mag2_threshold, auf die zweite potentielle Tippsignalspitze angewandt. Bei 608 wird die Schwanzschwelle P auf den Schwanz der zweiten Spitze angewandt. Hier kann die Schwelle P als ein Prozentsatz der Mag2_threshold definiert sein.
-
7 ist eine Tabelle, die verschiedene Beispielparameterwerte für die Gestenerkennung gemäß einer Ausführungsform aufführt. Jede Zeile stellt Variationen in den Parameterwerten gemäß zugewiesener Profile von stark, mittel und schwach dar. Die Profilzuweisungsmaschine 404 kann die Profilbestimmungen gemäß einer Beispielausführungsform vornehmen.
-
8 ist ein Zustandsdiagramm, das verschiedene potentielle Sequenzen von Tippgesten gemäß einiger Ausführungsformen veranschaulicht. Die Übergänge von Tippereignissen sind als Pfeile veranschaulicht. Die Sequenzen sind als erstes Tippen, zweites Tippen und drittes (oder anschließendes Tippen) für schwache, mittlere und starke Profileigenschaften veranschaulicht. Es gibt auch ein Nicht-Tipp-Ereignis, das in der Mitte gezeigt ist. Nach jedem Tippen kann der Nicht-Tipp-Zustand folgen, wenn kein nachfolgendes Tippen registriert wird.
-
Die Kennzeichnungskonvention in 8 ist wie Folgt:
- {S(trong), M(edium), W(eak)}tap{N}{M} ({Stark, Mittel, Schwach} Tippen{N}{M})
- wobei N und M das sequentielle Voranschreiten vom N-ten zum M-ten sequentiellen Tippen darstellen.
-
Entsprechend ist jeder Verbindungspfeil zwischen zwei Ereignissen mit einem Zähler assoziiert, der die Zahl von Übergängen zwischen den beiden spezifischen Tippereigniszuständen registriert. Die Statistik aller Tippereignisse kann durch die sequentielle Ereignisprotokollierungsmaschine 406 aus diesen Zählern kompiliert werden. 9 ist eine Tabelle, welche die verschiedenen Zähler, die jedem in 8 gezeigten sequentiellen Tippereignis entsprechen, gemäß einiger Ausführungsformen veranschaulicht.
-
Als ein Beispiel des Betriebs eines beispielhaften Systems sind sämtliche Zähler auf Null initialisiert. Wenn ein Tippen durch die Gestenerkennungsmaschine 402 erkannt wird, wird das Tippereignis jedem der Gestenerkennungsalgorithmen zugeführt, z.B. starke, mittlere und schwache Profile für die Profilzuweisungsmaschine 404. Wenn die Eingabe als ein Tippereignis qualifiziert ist, wird es unabhängig für dieses Profil registriert und der relevante Zähler wird durch die sequentielle Ereignisprotokollierungsmaschine 406 um Eins inkrementiert. Wenn sich zum Beispiel ein Tippereignis sowohl gemäß des schwachen als auch des mittleren Profils, jedoch nicht gemäß des starken Profils qualifiziert, werden die folgenden Kantenzähler um Eins inkrementiert: Mtap01++; Wtap01++; wenn drei oder mehr Tippereignisse aufeinanderfolgend erkannt werden, wird der Zähler in der Spalte Tap3->3 wiederkehrend inkrementiert.
-
10 ist ein Grafikdiagramm, das sequentielle Beziehungen zwischen Gestenereignissen, einschließlich der zeitlichen Abfolge dieser Ereignisse, gemäß einiger Ausführungsformen veranschaulicht. Die Zähler für Tippereignisse können durch gerichtete Kanten dargestellt sein, wobei gemäß einer Beispielausführungsform e2,3 = (2,3) die direkte Kante von Knoten 2 und 3 angibt und dem Zähler Stap12 zwischen dem ersten und zweiten Tippen im starken Profil entspricht. 11 ist eine Tabelle, welche gemäß einer Beispielausführungsform die Kanten des Diagramms von 10 mit den Ereignissequenzen, die in dem Diagramm von 8 gezeigt sind, assoziiert.
-
Wenn das Benutzerprofil für die Gestenerkennung inkorrekt ausgewählt ist, werden viele Falsch-Negative (z.B. Gestenerkennungsfehler) oder Falsch-Positive (z.B. unangemessene Gestenerkennungen) erwartet. In einigen Ausführungsformen werden a priori Benutzerfeedbackinformationen zum Erkennen der falsch-negativen und falsch-positiven Fälle verwendet.
-
Tabelle 1 unten veranschaulicht beispielhafte falsch-negative und falschpositive Szenarien.
Tabelle 1
Szenario | Angenommenes Benutzerverhalten | Beispiel |
Falsch-Negativ | Aufeinanderfolgendes Aufrufen von mehrerem Tippen, bis ein Doppeltippen erkannt wird. | Aufrufen von vielem Tippen in einem kurzen Zeitraum, z.B. 1 Sekunde, jedoch Stoppen, nachdem ein Doppeltippen erkannt wird. |
Falsch-Positiv | Durchführen von Behebungsaktionen zum Aufheben der Wirkung des Doppeltippens. | Schnelles Verwerfen oder Wegwischen des Fensters, das durch das Doppeltippen aufgerufen wird, um zum vorhergehenden Bildschirm zurück zu gelangen. |
-
Als ein Beispiel der Verwendung des a priori Benutzerfeedbacks können falsche Erkennungen (falsch-negatives Szenario) von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung von erfolgreichen Gestenversuchen in schneller Abfolge nach Ereignissen, welche die Gestenerkennungskriterien nicht erfüllen, bewertet werden.
-
Beim falsch-positiven Szenario können jegliche falsche Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch die Erkennung von Rückgängig-Aktionen (z.B. Verwendung des „Zurück“-Berührungsbefehls, Wegwischgeste usw.) in schneller Abfolge nach den erkannten Gesten bewertet werden.
-
Gemäß einiger Ausführungsformen wendet die Gestensequenz-Analysemaschine 408 diese Kriterien zum Bestimmen eines Bedarfs an einer Neukalibrierung an. Wenn eine tabellierte Menge von Falsch-Positiven oder Falsch-Negativen innerhalb eines definierten Zeitraums beobachtet werden, kann die Gestensequenz-Analysemaschine 408 einen Aufruf zur Neukalibrierung initiieren. Wenn zum Beispiel vier fälschliche Tipperkennungen am gleichen Nutzungstag auftreten, wird ein Versuch zur Neukalibrierung initiiert. Ein wahrscheinliches Ergebnis der Neukalibrierung ist, dass ein neues Tippprofil ausgewählt wird. Kann kein besseres Tippprofil gefunden werden, erfolgt keine Anpassung.
-
Bei dem Beispielszenario, bei welchem die Zahl Falsch-Negativer die Schwelle übersteigt, kann die Gestensequenz-Analysemaschine 408 das Tippprofil anpassen.
-
In einer Ausführungsform wird das Problem des Auswählens eines Tippprofils als ein SSSP (Single-Source Shortest Path) -Problem gemäß eines Beispielalgorithmus gelöst, der durch die Gestensequenz-Analysemaschine 408 ausgeführt werden kann. Zum Beispiel werden die Kosten für das Überqueren einer Kante als ci,j = eMAX - ei,j + 1 berechnet, wobei ci,j die Kosten für eine relevante Kante zwischen Knoten i und j in einem Pfad sind, eMAX die maximale Zahl für alle Kanten ist, die in den berücksichtigten Pfaden enthalten sind, und eij die Tippanzahl für die Kante ist.
-
Zur Neukalibrierung eines Doppeltipp-Erkennungsalgorithmus können irrelevante Tippereignisse, wie z.B. einzelnes Tippen und das dritte (und nachfolgendes) Tippen ignoriert werden. 12 ist ein Diagramm, das eine reduzierte Grafik, die Tippereignisse von Interesse für die Neukalibrierung der Doppeltipp-Gestenerkennung darstellt, gemäß einer Beispiel Ausführungsform veranschaulicht.
-
Die Kosten im Zusammenhang mit jedem Pfad können wie Folgt ausgedrückt werden:
-
In einer Beispieltechnik ist der Ansatz auf das Finden des SSSP mit der gewichteten Weglänge reduziert. Ein anspruchsvolles Verfahren, wie z.B. der Dijkstra-Algorithmus, kann zum Beispiel zum Lösen des besten Pfades (mit den geringsten Kosten) angewandt werden. Wenn sich der Pfad vom zuvor verwendeten unterscheidet, wird das neue Tippprofil, das dem kürzesten Pfad entspricht, im Doppeltipp-Algorithmus verwendet.
-
In einem anderen Szenario, wenn die Zahl Falsch-Positiver die Schwelle übersteigt, wendet ein Beispielansatz eine andere Pfadformel bei seinem Versuch des Anpassens des Tippprofils an. Die Kosten im Zusammenhang mit jedem Pfad werden wie Folgt:
-
Die Kantenzählerwerte können direkt als die gewichtete Weglänge bei der SSSP-Problemlösung verwendet werden.
-
13 ist ein Flussdiagramm, das einen allgemeinen Prozess zur Durchführung einer Gestenerkennungsbewertung gemäß einiger Ausführungsformen veranschaulicht. Bei 1302 wird eine berührungsbasierte Eingabe durch den Benutzer überwacht, z.B. basierend auf dem Lesen einer Ausgabe von dem Berührungssensor. Bei 1304 werden Gesten aus der berührungsbasierten Eingabe erkannt. Bei 1306 werden den erkannten Gesten Gesteneigenschaftsprofile gemäß Profilerstellungskriterien zugewiesen. Bei 1308 wird eine Reihe von Gesten basierend auf zugewiesenen Eigenschaftsprofilen und auf einer zeitlichen Sequenzierung der Gesten tabelliert und gezählt. Bei 1310 werden Umstände für den Aufruf einer Gestenerkennungs-Neukalibrierung basierend auf der tabellierten Reihe von Gesten bewertet. Bei 1312 wird ein Neukalibrierungsprozess als Reaktion auf die Bewertung initiiert.
-
Zusätzliche Hinweise & Beispiele
-
Beispiel 1 ist ein System zur Gestenerkennung in einem Rechengerät, wobei das System Folgendes umfasst: Rechenhardware, die einen Prozessor, einen Datenspeicher und ein Eingabegerät, einschließlich eines Berührungssensors, beinhaltet, wobei die Rechenhardware Anweisungen enthält, die, wenn sie auf dem Prozessor ausgeführt werden, die Rechenhardware zum Implementieren des Folgenden veranlassen: eine Gestenerkennungsmaschine zum Überwachen einer berührungsbasierten Eingabe durch den Benutzer basierend auf einer Ausgabe von dem Berührungssensor und zum Erkennen von Gesten aus der berührungsbasierten Eingabe; eine Profilzuweisungsmaschine zum Zuweisen von Gesteneigenschaftsprofilen zu den erkannten Gesten gemäß Profilerstellungskriterien; eine sequentielle Ereignisprotokollierungsmaschine zum Tabellieren und Zählen von Reihen von Gesten basierend auf zugewiesenen Eigenschaftsprofilen und auf einer zeitlichen Sequenzierung der Gesten; und eine Analysemaschine zum Bewerten von Umständen für den Aufruf einer Gestenerkennungs-Neukalibrierung basierend auf den tabellierten Reihen von Gesten.
-
Beispiel 2 beinhaltet wahlweise den Gegenstand von Beispiel 1, wobei die Gesten eine Doppeltippgeste beinhalten.
-
Beispiel 3 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-2, wobei die Gesten mindestens eine Geste ausgewählt aus der Gruppe bestehend aus den Folgenden beinhalten: ein Doppeltippen, Gerätedrehung, ein Wischen und ein Geräteschütteln.
-
Beispiel 4 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-3, wobei der Berührungssensor einen Mehrachsbeschleunigungsmesser beinhaltet.
-
Beispiel 5 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-4, wobei der Berührungssensor mindestens einen Sensor ausgewählt aus der Gruppe bestehend aus den Folgenden beinhaltet: ein Geräteausrichtungssensor, ein Akustiksensor, ein Belastungssensor und ein Materialverformungssensor.
-
Beispiel 6 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-5, wobei die Rechenhardware mehrere unterschiedliche Berührungssensoren beinhaltet und wobei die Gestenerkennungsmaschine eine Ausgabe von den mehreren unterschiedlichen Berührungssensoren überwacht und integriert.
-
Beispiel 7 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-6, wobei die Gestenerkennungsmaschine einen Satz von Kriterien zum Unterscheiden zwischen einer Benutzergesteneingabe und anderen Ereignissen, die durch den Berührungssensor wahrgenommen werden, anwendet.
-
Beispiel 8 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-7, wobei die Gesteneigenschaftsprofile Profile beinhalten, die mehrere Berührungskraftmaße darstellen.
-
Beispiel 9 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-8, wobei die sequentielle Ereignisprotokollierungsmaschine eine Datenstruktur erzeugt, die mit Zählungen verschiedener Gesten- und bewegungsbasierter Nicht-Gesten-Ereignisse gefüllt ist.
-
Beispiel 10 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-9, wobei die Analysemaschine jegliche fehlgeschlagenen Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung erfolgreicher Gestenversuche in rascher Abfolge nach Ereignissen, welche die Gestenerkennungskriterien nicht erfüllen, bewertet.
-
Beispiel 11 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-10, wobei die Analysemaschine jegliche falsche Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung von Rückgängig-Aktionen in rascher Abfolge nach erkannten Gesten bewertet.
-
Beispiel 12 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-11, wobei die Analysemaschine jegliche wiederholte Gestenversuche nach einer Nicht-Erkennung einer Geste basierend auf den tabellierten und gezählten Reihen von Gesten bewertet.
-
Beispiel 13 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-12, wobei die Analysemaschine einen Aufruf zur Gestenerkennungs-Neukalibrierung als Reaktion darauf initiiert, dass während eines Überwachungszeitraums eine tabellierte Menge falscher Erkennungs-/fehlgeschlagener Erkennungsereignisse stattgefunden hat.
-
Beispiel 14 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-13, wobei das Rechengerät ein tragbares Gerät ist.
-
Beispiel 15 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 1-14, wobei das Rechengerät ein mobiles Rechengerät ist.
-
Beispiel 16 ist mindestens ein computerlesbares Medium, das Anweisungen umfasst, die, wenn sie auf einem Rechengerät ausgeführt werden, das einen Prozessor, einen Datenspeicher und ein Eingabegerät, einschließlich eines Berührungssensors, beinhaltet, das Rechengerät zum Implementieren des Folgenden veranlassen: eine Gestenerkennungsmaschine zum Überwachen einer berührungsbasierten Eingabe durch den Benutzer basierend auf einer Ausgabe von dem Berührungssensor und zum Erkennen von Gesten aus der berührungsbasierten Eingabe; eine Profilzuweisungsmaschine zum Zuweisen von Gesteneigenschaftsprofilen zu den erkannten Gesten gemäß Profilerstellungskriterien; eine sequentielle Ereignisprotokollierungsmaschine zum Tabellieren und Zählen von Reihen Gesten basierend auf zugewiesenen Eigenschaftsprofilen und auf einer zeitlichen Sequenzierung der Gesten; und eine Analysemaschine zum Bewerten von Umständen für den Aufruf einer Gestenerkennung-Neukalibrierung basierend auf den tabellierten Reihen von Gesten.
-
Beispiel 17 beinhaltet wahlweise den Gegenstand von Beispiel 16, wobei die Gesten eine Doppeltippgeste beinhalten.
-
Beispiel 18 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 16-17, wobei die Gesten mindestens eine Geste ausgewählt aus der Gruppe bestehend aus den Folgenden beinhalten: eine Gerätedrehung, ein Wischen und ein Geräteschütteln.
-
Beispiel 19 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 16-18, wobei die Gestenerkennungsmaschine einen Satz von Kriterien zum Unterscheiden zwischen einer Benutzergesteneingabe und anderen Ereignissen, die durch den Berührungssensor wahrgenommen werden, anwendet.
-
Beispiel 20 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 16-19, wobei die Gesteneigenschaftsprofile Profile beinhalten, die mehrere Berührungskraftmaße darstellen.
-
Beispiel 21 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 16-20, wobei die sequentielle Ereignisprotokollierungsmaschine eine Datenstruktur erzeugt, die mit Zählungen verschiedener Gesten- und bewegungsbasierter Nicht-Gesten-Ereignisse gefüllt ist.
-
Beispiel 22 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 16-21, wobei die Analysemaschine jegliche fehlgeschlagenen Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung erfolgreicher Gestenversuche in rascher Abfolge nach Ereignissen, welche die Gestenerkennungskriterien nicht erfüllen, bewertet.
-
Beispiel 23 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 16-22, wobei die Analysemaschine jegliche falschen Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung von Rückgängig-Aktionen in rascher Abfolge nach erkannten Gesten bewertet.
-
Beispiel 24 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 16-23, wobei die Analysemaschine jegliche wiederholte Gestenversuche nach einer Nicht-Erkennung einer Geste basierend auf den tabellierten und gezählten Reihen von Gesten bewertet.
-
Beispiel 25 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 16-24, wobei die Analysemaschine den Aufruf zur Gestenerkennungs-Neukalibrierung als Reaktion darauf initiiert, dass während eines Überwachungszeitraums eine tabellierte Menge falscher Erkennungs-/fehlgeschlagener Erkennungsereignisse stattgefunden hat.
-
Beispiel 26 ist ein Verfahren zur autonomen Bewertung der Gestenerkennung in einem Rechengerät, das einen Prozessor, einen Datenspeicher und ein Eingabegerät, einschließlich eines Berührungssensors, beinhaltet, wobei das Verfahren Folgendes umfasst: Überwachen, durch das Rechengerät, einer berührungsbasierten Eingabe durch den Benutzer basierend auf einer Ausgabe von dem Berührungssensor; Erkennen, durch das Rechengerät, von Gesten aus der berührungsbasierten Eingabe; Zuweisen, durch das Rechengerät, von Gesteneigenschaftsprofilen zu den erkannten Gesten gemäß Profilerstellungskriterien; Tabellieren und Zählen, durch das Rechengerät, von Reihen von Gesten basierend auf zugewiesenen Eigenschaftsprofilen und auf einer zeitlichen Sequenzierung der Gesten; und Bewerten, durch das Rechengerät, von Umständen für den Aufruf einer Gestenerkennungs-Neukalibrierung basierend auf den tabellierten Reihen von Gesten.
-
Beispiel 27 beinhaltet wahlweise den Gegenstand von Beispiel 26, wobei die Gesten eine Doppeltippgeste beinhalten.
-
Beispiel 28 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 26-27, wobei die Gesten mindestens eine Geste ausgewählt aus der Gruppe bestehend aus den Folgenden beinhalten: eine Gerätedrehung, ein Wischen und ein Geräteschütteln.
-
Beispiel 29 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 26-28, welcher ferner Folgendes umfasst: Anwenden eines Satzes von Kriterien zum Unterscheiden zwischen einer Benutzergesteneingabe und anderen Ereignissen, die durch den Berührungssensor wahrgenommen werden.
-
Beispiel 30 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 26-29, wobei die Gesteneigenschaftsprofile Profile beinhalten, die mehrere Berührungskraftmaße darstellen.
-
Beispiel 31 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 26-30, wobei das Tabellieren und Zählen der Reihen von Gesten das Erzeugen einer Datenstruktur beinhaltet, die mit Zählungen verschiedener Gesten- und bewegungsbasierter Nicht-Gesten-Ereignisse gefüllt ist.
-
Beispiel 32 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 26-31, wobei das Bewerten der Umstände für den Aufruf einer Gestenerkennungs-Neukalibrierung das Bewerten jeglicher fehlgeschlagener Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung erfolgreicher Gestenversuche in rascher Abfolge nach Ereignissen, welche die Gestenerkennungskriterien nicht erfüllen, beinhaltet.
-
Beispiel 33 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 26-32, wobei das Bewerten der Umstände für den Aufruf einer Gestenerkennungs-Neukalibrierung das Bewerten jeglicher falscher Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung von Rückgängig-Aktionen in rascher Abfolge nach erkannten Gesten beinhaltet.
-
Beispiel 34 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 26-33, wobei das Bewerten der Umstände für den Aufruf einer Gestenerkennungs-Neukalibrierung das Bewerten jeglicher wiederholter Gestenversuche nach einer Nicht-Erkennung einer Geste basierend auf den tabellierten und gezählten Reihen von Gesten beinhaltet.
-
Beispiel 35 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 26-34, wobei das Bewerten der Umstände für einen Aufruf der Gestenerkennungs-Neukalibrierung einen Aufruf zur Gestenerkennungs-Neukalibrierung als Reaktion darauf erzeugt, dass während eines Überwachungszeitraums eine tabellierte Menge falscher Erkennungs-/fehlgeschlagener Erkennungsereignisse stattgefunden hat.
-
Beispiel 36 ist ein System zur autonomen Bewertung der Gestenerkennung in einem Rechengerät, das Verarbeitungsmittel und Berührungswahrnehmungsmittel beinhaltet, wobei das System Folgendes umfasst: Mittel zum Überwachen einer berührungsbasierten Eingabe durch den Benutzer basierend auf einer Ausgabe von dem Berührungswahrnehmungsmittel; Mittel zum Erkennen von Gesten aus der berührungsbasierten Eingabe; Mittel zum Zuweisen von Gesteneigenschaftsprofilen zu den erkannten Gesten gemäß Profilerstellungskriterien; Mittel zum Tabellieren und Zählen von Reihen von Gesten basierend auf zugewiesenen Eigenschaftsprofilen und auf einer zeitlichen Sequenzierung der Gesten; und Mittel zum Bewerten von Umständen für den Aufruf einer Gestenerkennungs-Neukalibrierung basierend auf den tabellierten Reihen von Gesten.
-
Beispiel 37 beinhaltet wahlweise den Gegenstand von Beispiel 36, wobei die Gesten eine Doppeltippgeste beinhalten.
-
Beispiel 38 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-37, wobei die Gesten mindestens eine Geste ausgewählt aus der Gruppe bestehend aus den Folgenden beinhalten: eine Gerätedrehung, ein Wischen und ein Geräteschütteln.
-
Beispiel 39 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-38, welcher ferner Folgendes umfasst: Mittel zum Anwenden eines Satzes von Kriterien zum Unterscheiden zwischen einer Benutzergesteneingabe und anderen Ereignissen, die durch das Berührungswahrnehmungsmittel wahrgenommen werden.
-
Beispiel 40 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-39, wobei die Gesteneigenschaftsprofile Profile beinhalten, die mehrere Berührungskraftmaße darstellen.
-
Beispiel 41 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-40, wobei das Mittel zum Tabellieren und Zählen der Reihen von Gesten Mittel zum Erzeugen einer Datenstruktur beinhaltet, die mit Zählungen verschiedener Gesten- und bewegungsbasierter Nicht-Gesten-Ereignisse gefüllt ist.
-
Beispiel 42 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-41, wobei das Mittel zum Bewerten der Umstände für den Aufruf einer Gestenerkennungs-Neukalibrierung Mittel zum Bewerten jeglicher fehlgeschlagener Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung erfolgreicher Gestenversuche in rascher Abfolge nach Ereignissen, welche die Gestenerkennungskriterien nicht erfüllen, beinhaltet.
-
Beispiel 43 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-42, wobei das Mittel zum Bewerten der Umstände für den Aufruf einer Gestenerkennungs-Neukalibrierung Mittel zum Bewerten jeglicher falscher Erkennungen von Gesten basierend auf den tabellierten und gezählten Reihen von Gesten durch Erkennung von Rückgängig-Aktionen in rascher Abfolge nach erkannten Gesten beinhaltet.
-
Beispiel 44 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-43, wobei das Mittel zum Bewerten der Umstände für den Aufruf einer Gestenerkennungs-Neukalibrierung Mittel zum Bewerten jeglicher wiederholter Gestenversuche nach einer Nicht-Erkennung einer Geste basierend auf den tabellierten und gezählten Reihen von Gesten beinhaltet.
-
Beispiel 45 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-44, wobei das Mittel zum Bewerten der Umstände für den Aufruf einer Gestenerkennungs-Neukalibrierung einen Aufruf zur Gestenerkennungs-Neukalibrierung als Reaktion darauf erzeugt, dass während eines Überwachungszeitraums eine tabellierte Menge falscher Erkennungs-/fehlgeschlagener Erkennungsereignisse stattgefunden hat.
-
Beispiel 46 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-45, wobei das Berührungswahrnehmungsmittel einen Mehrachsbeschleunigungsmesser beinhaltet.
-
Beispiel 47 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-46, wobei das Berührungswahrnehmungsmittel mindestens einen Sensor ausgewählt aus der Gruppe bestehend aus den Folgenden beinhaltet: ein Geräteausrichtungssensor, ein Akustiksensor, ein Belastungssensor und ein Materialverformungssensor.
-
Beispiel 48 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-47, wobei die Rechenhardware mehrere unterschiedliche Berührungswahrnehmungsmittel beinhaltet und wobei die Gestenerkennungsmaschine eine Ausgabe von den mehreren unterschiedlichen Berührungswahrnehmungsmitteln überwacht und integriert.
-
Beispiel 49 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-48, wobei das Rechengerät ein tragbares Gerät ist.
-
Beispiel 50 beinhaltet wahlweise den Gegenstand von einem oder mehreren von Beispiel 36-49, wobei das Rechengerät ein mobiles Rechengerät ist.
-
In Beispiel 51 umfasst mindestens ein computerlesbares Medium Anweisungen, die, wenn sie auf einem Rechengerät ausgeführt werden, das einen Prozessor, einen Datenspeicher und ein Eingabegerät, einschließlich eines Berührungssensors, beinhaltet, das Rechengerät zum Implementieren des Gegenstandes von einem oder mehreren von Beispiel 26-35 veranlassen.
-
In Beispiel 52 umfasst ein System zur autonomen Bewertung der Gestenerkennung in einem Rechengerät, das Verarbeitungsmittel und Berührungswahrnehmungsmittel beinhaltet, Mittel zur Implementierung des Gegenstandes von einem oder mehreren von Beispiel 26-35.
-
Die obige detaillierte Beschreibung beinhaltet Verweise auf die beigefügten Zeichnungen, welche einen Teil der detaillierten Beschreibung bilden. Die Zeichnungen zeigen, als eine Veranschaulichung, spezifische Ausführungsformen, die in der Praxis umgesetzt werden können. Diese Ausführungsformen werden hierin auch als „Beispiele“ bezeichnet. Derartige Beispiele können Elemente zusätzlich zu den gezeigten oder beschriebenen aufweisen. Jedoch werden auch Beispiele in Betracht gezogen, welche nur die gezeigten oder beschriebenen Elemente beinhalten. Darüber hinaus werden auch Beispiele unter Verwendung jeglicher Kombination oder Permutation dieser gezeigten oder beschriebenen Elemente (oder eines oder mehrerer Aspekte davon), entweder in Bezug auf ein bestimmtes Beispiel (oder einen oder mehrere Aspekte davon) oder in Bezug auf andere Beispiele (oder einen oder mehrere Aspekte davon), die hierin gezeigt oder beschrieben sind, in Betracht gezogen.
-
Veröffentlichungen, Patente und Patentdokumente, auf die in diesem Dokument Bezug genommen wird, sind durch Verweis in ihrer Gesamtheit hierin eingeschlossen, so als ob sie einzeln durch Verweis eingeschlossen wären. Im Fall uneinheitlicher Verwendungen zwischen diesem Dokument und den derart durch Verweis eingeschlossenen Dokumenten, ist die Verwendung in der/den eingeschlossenen Referenz(en) ergänzend zu der dieses Dokuments; bei unvereinbaren Widersprüchen hat die Verwendung in diesem Dokument Vorrang.
-
In diesem Dokument werden die Begriffe „ein“ oder „eine“, wie in Patentdokumenten üblich, derart verwendet, dass sie ein/e/n oder mehr als ein/e/n beinhalten, unabhängig von jeglichem anderen Auftreten oder Gebrauch von „mindestens ein/e“ oder „ein/e oder mehrere“. In diesem Dokument wird der Begriff „oder“ verwendet, um auf ein nichtexklusives „oder“ zu verweisen, sodass „A oder B“, wenn nicht anders angegeben, „A, jedoch nicht B“, „B, jedoch nicht A“ und „A und B“ beinhaltet. In den beigefügten Ansprüchen werden die Begriffe „beinhalten“ und „in welchem/r“ als die Äquivalente in einfachem Deutsch für die entsprechenden Begriffe „umfassen“ und „wobei“ verwendet. Außerdem sind in den folgenden Ansprüchen die Begriffe „beinhalten“ und „umfassen“ offen, d.h. ein System, ein Gerät, ein Gegenstand oder ein Prozess, das/der Elemente zusätzlich zu den nach einem solchen Begriff in einem Anspruch aufgeführten aufweist, gilt trotzdem als innerhalb des Umfangs dieses Anspruchs fallend. Darüber hinaus werden in den folgenden Ansprüchen die Begriffe „erste/r/s“, „zweite/r/s“ und „dritte/r/s“ usw. lediglich als Kennzeichnungen verwendet und sollen keine numerische Reihenfolge für ihre Gegenstände suggerieren.
-
Die obige Beschreibung soll veranschaulichend und nicht einschränkend sein. Zum Beispiel können die oben beschriebenen Beispiele (oder ein oder mehrere Aspekte davon) in Kombination mit anderen verwendet werden. Andere Ausführungsformen können zum Einsatz kommen, wie z.B. durch einen Durchschnittsfachmann auf dem Gebiet bei Überprüfung der obigen Beschreibung. Die Zusammenfassung soll dem Leser einen schnellen Überblick über die Natur der technischen Offenbarung gestatten. Sie wird mit dem Verständnis eingereicht, dass sie nicht zum Interpretieren oder Einschränken des Umfangs oder der Bedeutung der Ansprüche verwendet wird. Auch können in der obigen detaillierten Beschreibung verschiedene Merkmale zur Straffung der Offenbarung zusammen gruppiert sein. Jedoch legen die Ansprüche möglicherweise nicht jedes hierin offenbarte Merkmale dar, weil Ausführungsformen eine Teilmenge der Merkmale beinhalten können. Ferner können Ausführungsformen weniger Merkmale als die in einem bestimmten Beispiel offenbarten beinhalten. Somit sind die folgenden Ansprüche hiermit in die detaillierte Beschreibung eingeschlossen, wobei ein Anspruch für sich selbst als eine separate Ausführungsform steht. Der Umfang der hierin offenbarten Ausführungsformen sollte unter Bezugnahme auf die beigefügten Ansprüche zusammen mit dem vollen Umfang von Äquivalenten, zu welchen derartige Ansprüche berechtigt sind, bestimmt werden.