-
GEBIET
-
Die vorliegende Offenbarung betrifft das Detektieren einer Benutzerabsicht zur Stylus-Verwendung mit einem Rechensystem.
-
HINTERGRUND
-
Ein Stylus ist ein beliebtes Werkzeug zur Interaktion mit Tablets, Laptops, Phablets und anderen Arten von Rechensystemen geworden. Mit einem Stylus kann ein Benutzer auswählen, anklicken, eintippen, zeichnen und andere interaktive Funktionen durchführen, die schwieriger und/oder weniger präzise mit einem Benutzerfinger durchgeführt werden können. Trotz der Vorteile und mehreren Verwendungen eines Stylus kann das tatsächliche Eintreten in den gewünschten Verwendungsmodus schwierig und/oder umständlich sein. Falls der Stylus zum Beispiel als ein Pinsel in einer Malanwendung verwendet wird, kann es für einen Benutzer umständlich sein, den Verwendungsmodus zu einem Auswahlmodus oder einem anderen Modus zum Durchführen anderer Funktionen mit dem Stylus zu ändern. Somit bestehen Verbesserungsmöglichkeiten bei Computerinteraktionen mit einem Stylus.
-
Figurenliste
-
Merkmale und Vorteile des beanspruchten Gegenstands werden aus der folgenden ausführlichen Beschreibung von damit konsistenten Ausführungsformen ersichtlich, wobei die Beschreibung unter Bezugnahme auf die begleitenden Zeichnungen vorgenommen werden sollte, in denen gilt:
- 1 veranschaulicht ein Funktionsblockdiagramm eines Systems entsprechend Ausführungsformen der vorliegenden Offenbarung;
- 2 ist ein Blockdiagramm eines Systems entsprechend Ausführungsformen der vorliegenden Offenbarung;
- 3A, 3B, 3C und 3D sind Diagramme von Signaturemaps verschiedener Griffeigenschaften an einem Stylus entsprechend Ausführungsformen der vorliegenden Offenbarung;
- 4 ist eine Tabelle von beispielhaften Stylus-Eigenschaften und beispielhaften Rechensystemeigenschaften, die mittels Maschinenlernen mit einem speziellen Stylus-Modus assoziiert werden können, entsprechend Ausführungsformen der vorliegenden Offenbarung;
- 5 ist ein Flussdiagramm eines Prozesses zum Bestimmen eines Stylus-Betriebsmodus aus Stylus-Eigenschaften entsprechend Ausführungsformen der vorliegenden Offenbarung;
- 6 ist ein Flussdiagramm eines Prozesses zum Bestimmen eines Stylus-Betriebsmodus aus Stylus-Eigenschaften entsprechend Ausführungsformen der vorliegenden Offenbarung; und
- 7 ist ein Blockdiagramm, das ein Rechensystem entsprechend Ausführungsformen der vorliegenden Offenbarung veranschaulicht.
-
Obwohl die folgende ausführliche Beschreibung unter Bezugnahme auf veranschaulichende Ausführungsformen fortfahren wird, werden Fachleuten viele Alternativen, Modifikationen und Variationen davon ersichtlich werden.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Hierin sind Verfahren und Systeme zum Bestimmen einer Benutzerabsicht zur Verwendung eines Stylus gemäß verschiedenen Ausführungsformen offenbart. Das Verfahren und das System verwenden Stylus-Griffeigenschaften, eine Stylus-Ausrichtung und/oder eine Rechensystemausrichtung, um zu bestimmen, welcher Stylus-Modus für einen Benutzer zum Interpretieren von Stylus-Interaktionen mit einem Rechensystem automatisch auszuwählen ist. Die Identifikation und Auswahl eines speziellen Stylus-Modus (aus einer Anzahl von Stylus-Modi) verbessert die Reibungslosigkeit einer Benutzererfahrung mit einem Stylus und einem Rechensystem und personalisiert diese.
-
Die offenbarten Verfahren und Systeme beinhalten Empfangen von Stylus-Ausrichtungsdaten mit einem Rechensystem, die eine Ausrichtung eines Stylus repräsentieren. Die Verfahren und Systeme beinhalten Empfangen von Griffeigenschaftsdaten mit einem Rechensystem, die einen Griff am Stylus durch einen Benutzer repräsentieren. Die Verfahren und Systeme beinhalten Identifizieren eines Stylus-Modus mit dem Rechensystem zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Stylus-Ausrichtungsdaten und den Griffeigenschaftsdaten. Die Verfahren und Systeme beinhalten Anwenden des Stylus-Modus am Rechensystem, um Interaktionsdaten zu interpretieren, die Interaktionen des Stylus mit dem Rechensystem repräsentieren.
-
Wie hierin verwendet, bezieht sich der Begriff Stylus auf eine Einrichtung zum Interagieren mit einem Rechensystem und kann ein Schreibgerät oder -werkzeug beinhalten, das zur Kommunikation mit einem Stylus-gestützten Rechensystem oder einer Stylus-gestützten Komponente eines Rechensystems verwendet wird.
-
1 veranschaulicht ein Blockdiagramm eines Systems 100, das dazu ausgelegt ist, einen Stylus-Betriebsmodus zumindest teilweise basierend auf Stylus-Eigenschaften und/oder einer Recheneinrichtungsausrichtung zu bestimmen, entsprechend mehrerer Ausführungsformen der vorliegenden Offenbarung. Das System 100 beinhaltet einen Stylus 102 zur Verwendung bei der Interaktion mit einem Rechensystem 104. Das System 100 ist gemäß einer Ausführungsform dazu ausgelegt, verschiedene Stylus-Eigenschaften zu bestimmen und einen oder mehrere Stylus-Modi vorherzusagen, die eine Benutzerabsicht für den Stylus widerspiegeln. Das System 100 ist gemäß einer Ausführungsform dazu ausgelegt, eine Stylus-Ausrichtung, Griffeigenschaften eines Griffs des Benutzers am Stylus 102 und/oder eine Rechensystemausrichtung zu verwenden, um eine Benutzerabsicht für den Stylus zu bestimmen und einen geeigneten Stylus-Modus für den Benutzer auszuwählen.
-
Der Stylus 102 kann auf eine Vielfalt von Weisen zur Interaktion mit dem Rechensystem 104 verwendet werden. Der Stylus 102 kann zum Beispiel zum Schreiben, Malen, Zeichnen, Auswählen, Ziehen und Ablegen, Doppeltippen, Linksklicken, Rechtsklicken, Mittelklicken, Doppelklicken, Zeigen, Darüberschweben oder anderweitiges Interagieren mit dem Rechensystem 104 verwendet werden. Der Stylus 102 kann gemäß einer Ausführungsform ein Gehäuse 106 (das durch eine Hand 108 des Benutzers gehalten wird), eine Spitze 110, einen Griffsensor 112 und einen Ausrichtungssensor 114 beinhalten.
-
Das Gehäuse 106 kann in einer Vielfalt von Formen implementiert werden. Das Gehäuse 106 kann im Wesentlichen zylindrisch sein, kann wie ein Bleistift geformt sein, kann rechteckig sein, kann dreieckig sein, kann in der Form einer Karikatur (z. B. eines Delphins) geformt sein oder kann eine oder mehrere andere Formen beinhalten, die das Halten oder Führen durch den Benutzer ermöglichen. Das Gehäuse 106 kann aus Metall, Polymer, Glas und/oder einer Kombination verschiedener Materialien gefertigt sein.
-
Die Spitze 110 kann zum Kontaktieren des Rechensystems 104 verwendet werden, um Interaktionen mit dem Rechensystem 104 zu ermöglichen. Die Spitze 110 kann aus Kunststoff, Gummi, einem Kugelschreiber, einem Filzschreiber gefertigt, zwischen mehreren Materialien austauschbar und dergleichen sein.
-
Der Griffsensor 112 kann gemäß einer Ausführungsform zum Erfassen von Griffeigenschaftsdaten, die Griffeigenschaften der Hand 108 des Benutzers und genauer gesagt der Finger 113 des Benutzers repräsentieren, verwendet werden. Der Griffsensor 112 kann gemäß einer Ausführungsform ein Drucksensor, ein kapazitiver Sensor, ein Wärmesensor, ein Bildsensor und/oder eine beliebige Kombination davon sein. Der Griffsensor 112 erfasst oder erzeugt Griffeigenschaftsdaten, die Griffeigenschaften repräsentieren. Die Griffeigenschaften können Nähe-Griffeigenschaften beinhalten, wie etwa Darüberschweben und Nicht-Darüberschweben. Die Griffeigenschaften können quantitative Eigenschaften, qualitative Eigenschaften und Mustereigenschaften beinhalten. Beispiele für verschiedene quantitative Eigenschaften, qualitative Eigenschaften und Mustereigenschaften sind in den 3A-3D veranschaulicht. Quantitative Eigenschaften beinhalten, wie viel des Griffsensors 112 durch die Finger 113 des Benutzers kontaktiert wird. Bei einer Ausführungsform ist der Griffsensor 112 in verschiedene Einheiten (z. B. Quadrate, Pixel usw.) partitioniert/organisiert, und quantitative Eigenschaften beschreiben, wie viele der Einheiten mit einem Griff des Benutzers aktiviert/berührt werden. Qualitative Eigenschaften beinhalten gemäß einer Ausführungsform eine Druck- oder Krafthöhe, die durch die Finger 113 des Benutzers am Griffsensor 112 ausgeübt wird. Beispiele für qualitative Eigenschaften können keine Berührung, Nicht-Darüberschweben, Darüberschweben, leichte Berührung, mittelfeste Berührung, feste Berührung und dergleichen beinhalten. Andere Beispiele für qualitative Eigenschaften können eine oder mehrere einer Vielfalt von Skalen beinhalten (z. B. eine Skala von 1 bis 10), um einen Griffdruck zu einer numerischen Skala abzubilden. Mustereigenschaften beinhalten gemäß einer Ausführungsform Muster, die eine Art des Griffs angeben, die durch die Hand 108 des Benutzers und/oder die Finger 113 des Benutzers am Griffsensor 112 angewendet wird. Jedes Muster (einer Anzahl von Mustern) kann gemäß einer Ausführungsform einem speziellen Griff oder einer speziellen Art von Verwendung entsprechen. Ein Muster und seine nahen Varianten können zum Beispiel dem Ergreifen des Stylus 102, wie eine Person einen Bleistift ergreifen würde, entsprechen. Als ein anderes Beispiel können ein Muster und seine nahen Varianten dem Ergreifen des Stylus 102, wie eine Person einen Pinsel ergreifen würde, entsprechen. Ein Muster und seine nahen Varianten können dem Ergreifen des Stylus 102, wie eine Person eine Zeigeeinrichtung ergreifen würde, entsprechen und ein Muster und seine nahen Varianten können dem Ergreifen des Stylus 102, wie eine Person eine Auswahleinrichtung ergreifen würde, entsprechen. Der Ausrichtungssensor 114 erzeugt gemäß einer Ausführungsform Stylus-Ausrichtungsdaten, die eine Stylus-Ausrichtung 115 repräsentieren. Die Stylus-Ausrichtung 115 kann gemäß einer Ausführungsform durch ein oder mehrere Koordinatensysteme, wie etwa das kartesische Koordinatensystem, repräsentiert werden. Die Stylus-Ausrichtung 115 kann gemäß einer Ausführungsform eine Ausrichtung um eine x-Achse 136, eine y-Achse 138 und eine z-Achse 140 beinhalten. Gemäß einer Ausführungsform kann die x-Achse 136 einem Rollwinkel entsprechen, die y-Achse 138 kann einem Neigungswinkel entsprechen und die z-Achse 140 kann einem Gierwinkel für den Stylus 102 entsprechen. Die Stylus-Ausrichtungsdaten und die Griffdaten können zu dem Rechensystem 104 übertragen werden, um dem Rechensystem 104 zu ermöglichen, die Benutzerabsicht zur Verwendung des Stylus 102 zu bestimmen, und um dem Rechensystem 104 zu ermöglichen, einen Stylus-Betriebsmodus für den Benutzer basierend auf Griff- und Ausrichtungseigenschaften des Stylus 102 auszuwählen.
-
Das Rechensystem 104 empfängt die Stylus-Ausrichtungsdaten und/oder die Griffdaten und stellt gemäß einer Ausführungsform einen Stylus-Betriebsmodus für den Benutzer zumindest teilweise basierend auf den Griffdaten und/oder den Ausrichtungsdaten des Stylus 102 ein. Das Rechensystem 104 kann gemäß verschiedenen Ausführungsformen dazu ausgelegt sein, Interaktionen durch den Stylus 102 unter Verwendung eines Betriebssystems, einer oder mehrerer Anwendungen, eines oder mehrerer Firmware-Treiber und/oder eines oder mehrerer Stylus-Interpretationsprogramme zu bearbeiten oder zu interpretieren. Das Rechensystem 104 wendet einen speziellen Stylus-Modus zur Verwendung zur Interpretation der durch das Rechensystem 104 empfangenen Stylus-Interaktionen an. Infolgedessen können gemäß einer Ausführungsform das Antippen, das Wischen, das Streichen, Schwebebewegungen und andere Stylus-Interaktionen, die sich in der Nähe des Rechensystems 104 befinden oder dieses kontaktieren, interpretiert und bei einem Betriebssystem, einer Anwendung oder einem Programm auf eine Art und Weise angewendet werden, die durch den Benutzer beabsichtigt wird.
-
Das Rechensystem 104 beinhaltet gemäß einer Ausführungsform ein Gehäuse 116, einen Stylus-Sensor 118, eine Anzeige 120, eine Anzahl von Tasten 122 (einschließlich Tasten 122a, 122b, 122c und 122d), einen Ausrichtungssensor 123 und Stylus-Modus-Auswahllogik 124. Das Gehäuse 116 kann ein Gehäuse für einen Laptop-Computer, ein Tablet, ein Phablet, ein Smartphone, einen Personal Digital Assistant („PDA“), einen Desktop-Computer oder ein anderes elektronisches Rechensystem beinhalten. Der Stylus-Sensor 118 erzeugt Interaktionsdaten, die Interaktionen des Stylus 102 mit dem Rechensystem 104 repräsentieren. Die Interaktionsdaten können gemäß einer Ausführungsform unter anderem Daten, die eine Kontaktstelle zwischen dem Stylus 102 und dem Rechensystem 104 repräsentieren, Daten, die einen Kontaktdruck zwischen dem Stylus 102 und dem Rechensystem 104 repräsentieren, Daten, die eine Stelle eines nahen Kontakts (in der Nähe, aber kein tatsächlicher Kontakt) des Stylus 102 und des Rechensystems 104 repräsentieren, und/oder Daten, die Bewegungen eines nahen Kontakts des Stylus 102 und des Rechensystems 104 repräsentieren, beinhalten. Die Anzeige 120 kann ein Monitor, ein Touchscreen, ein Bildschirm oder eine andere Visualisierungskomponente sein. Der Stylus-Sensor 118 kann die Funktionalität der Anzeige 120 verwenden. Der Stylus-Sensor kann in der, um die oder proximal zu der Anzeige 120 im Rechensystem 104 integriert sein.
-
Der Ausrichtungssensor 114 erzeugt gemäß einer Ausführungsform Rechensystem-Ausrichtungsdaten, die eine Rechensystemausrichtung 125 repräsentieren. Die Rechensystemausrichtung 125 kann gemäß einer Ausführungsform durch ein oder mehrere Koordinatensysteme, wie etwa das kartesische Koordinatensystem, repräsentiert werden. Die Rechensystemausrichtung 125 kann gemäß einer Ausführungsform eine Ausrichtung um eine x-Achse 142, eine y-Achse 144 und eine z-Achse 146 beinhalten. Gemäß einer Ausführungsform kann die x-Achse 142 einem Rollwinkel entsprechen, die y-Achse 144 kann einem Neigungswinkel entsprechen und die z-Achse 146 kann einem Gierwinkel für das Rechensystem 104 entsprechen.
-
Das Rechensystem 104 kann gemäß einer Ausführungsform die Stylus-Ausrichtung 115 und die Rechensystemausrichtung 125 verwenden, um einen Stylus-Winkel oder eine Stylus-Ausrichtung bezüglich des Rechensystems 104 zu identifizieren. Das Rechensystem 104 kann einen relativen Stylus-Winkel durch Subtrahieren oder anderweitiges Berechnen der Differenz zwischen den Rollwinkeln, Neigungswinkeln und Gierwinkeln für den Stylus 102 und das Rechensystem 104 identifizieren.
-
Die Stylus-Modus-Auswahllogik 124 repräsentiert Anweisungen, die durch das Rechensystem 104 zum Durchführen eines oder mehrerer Verfahren oder Prozesse zum Identifizieren, Bestimmen, Implementieren und/oder Ausführen eines Stylus-Modus, der durch Stylus-Modusdaten 126 repräsentiert wird, ausgeführt werden. Die Stylus-Modus-Auswahllogik 124 wendet Griffeigenschaftsdaten 128 und/oder Stylus-Ausrichtungsdaten 130 und/oder Rechensystem-Ausrichtungsdaten 132 an einem prädiktiven Modell an, das durch prädiktive Modelldaten 134 repräsentiert wird. Die Ausgabe des prädiktiven Modells ist ein Stylus-Modus, der durch die Stylus-Modusdaten 126 repräsentiert wird und als eine Kategorie bezeichnet werden kann.
-
Die Stylus-Modusdaten 126 repräsentieren gemäß einer Ausführungsform einen Stylus-Modus, der durch das Rechensystem 104 aus einer Gruppe von Stylus-Modi ausgewählt werden kann. Die Gruppe von Stylus-Modi kann gemäß einer Ausführungsform unter anderem einen Schreibmodus (z. B. einen Stift oder Bleistift), einen Malmodus (z. B. Aquarellfarben oder Öl), einen Zeichnungsmodus (z. B. Wachsmalstift, Bleistift, Kreide, Kohle usw.), einen Sprühmalmodus, einen Auswahlmodus oder einen Zeigermodus beinhalten. In jedem der verschiedenen Stylus-Modi kann das Rechensystem 104 dazu ausgelegt sein, einen Kontakt, eine Bewegung, einen proximalen Kontakt und/oder eine Bewegung während eines proximalen Kontakts zu interpretieren, wodurch verschiedene Benutzerabsichten repräsentiert werden. Ein einzelnes Antippen der Anzeige durch den Stylus 102 im Auswahlwerkzeugmodus kann zum Beispiel die Benutzerabsicht repräsentieren, ein einzelnes Klicken einer Maus durchzuführen. Im Gegensatz dazu kann ein einzelnes Antippen der Anzeige durch den Stylus 102 im Zeichnungsmodus oder im Malmodus die Benutzerabsicht repräsentieren, einen kleinen Kreis zu zeichnen. Die Stylus-Modusdaten 126 können gemäß einer Ausführungsform basierend auf den Griffeigenschaftsdaten 128 und den Stylus-Ausrichtungsdaten 130 ausgewählt werden. Die Griffeigenschaftsdaten 128 und die Stylus-Ausrichtungsdaten 130 können gemäß einer Ausführungsform von einem einzelnen Sensor oder von zwei oder mehr Sensoren am Stylus 102 stammen. Bei manchen Implementierungen (z. B. kapazitiver Berührung) wird für die Berührung und den Stylus derselbe Satz von Sensoren verwendet. Durch das vorhersehbare Identifizieren und Ausführen eines speziellen Stylus-Modus (aus einer Gruppe von Stylus-Modi) kann das Rechensystem 104 gemäß einer Ausführungsform eine Benutzererfahrung bei der Durchführung verschiedener Funktionen mit dem Rechensystem 104 verbessern.
-
Die prädiktiven Modelldaten 134 repräsentieren ein prädiktives Modell, das gemäß einer Ausführungsform einen Stylus-Modus basierend auf den Griffeigenschaftsdaten 128 und/oder den Stylus-Ausrichtungsdaten 130 und/oder den Rechensystem-Ausrichtungsdaten 132 identifiziert oder bestimmt. Das prädiktive Modell wird durch die prädiktiven Modelldaten 134 repräsentiert und die prädiktiven Modelldaten 134 können unter Verwendung einer oder mehrerer einer Vielfalt von Maschinenlerntechniken erzeugt werden. Die prädiktiven Modelldaten 134 können gemäß einer Ausführungsform zum Beispiel durch das Anwenden von zuvor erfassten Griffeigenschaftsdaten, durch das Anwenden von zuvor erfassten Stylus-Ausrichtungsdaten und/oder durch das Anwenden von zuvor erfassten Rechensystem-Ausrichtungsdaten an einem oder mehreren Maschinenlernalgorithmen erzeugt werden, um das durch die prädiktiven Modelldaten 134 repräsentierte prädiktive Modell zu trainieren. Gemäß verschiedenen Ausführungsformen beinhalten Beispiele für Maschinenlernalgorithmen unter anderem Entscheidungsbaum-Lernen, künstliche neuronale Netze, Clustering, Bayessche Netze, Klassifiziereralgorithmen und dergleichen. Die zuvor erfassten oder bestehenden Datensätze werden an dem einen oder den mehreren Maschinenlernalgorithmen angewendet und der eine oder die mehreren Maschinenlernalgorithmen erzeugen die prädiktiven Modelldaten 134, die ein prädiktives Modell repräsentieren. Wenn neue Daten (z. B. die Griffeigenschaftsdaten 128, die Stylus-Ausrichtungsdaten 130 und/oder die Rechensystem-Ausrichtungsdaten 132) an den prädiktiven Modelldaten 134 angewendet werden, erzeugen die prädiktiven Modelldaten 134 gemäß einer Ausführungsform eine Kategorie, die aus einer Gruppe vordefinierter Kategorien ausgewählt wird. Die Kategorie repräsentiert einen Stylus-Modus und die Gruppe vordefinierter Kategorien repräsentiert eine Gruppe vordefinierter Stylus-Modi. Die Ausgabe der prädiktiven Modelldaten 134 kann gemäß einer Ausführungsform eine Zahl sein, die auf einer Skala von zum Beispiel 0 bis 10 liegt, die eine Wahrscheinlichkeit repräsentiert, dass die Eingabedaten mit einem speziellen Stylus-Modus korrelieren. Die Ausgabe der prädiktiven Modelldaten 134 kann gemäß einer Ausführungsform mehrere Zahlen beinhalten, wobei jede der mehreren Zahlen eine Skala von zum Beispiel 0 bis 10 repräsentiert, die eine Wahrscheinlichkeit repräsentiert, dass die Eingabedaten mit speziellen Stylus-Modi korrelieren.
-
2 veranschaulicht ein Diagramm eines Systems 200, das dazu ausgelegt ist, einen Stylus-Betriebsmodus zumindest teilweise basierend auf Stylus-Eigenschaften zu bestimmen, entsprechend mehreren Ausführungsformen der vorliegenden Offenbarung. Das System 200 ist eine Implementierung des Systems 100 entsprechend mehreren Ausführungsformen der vorliegenden Offenbarung. Das System 200 beinhaltet den Stylus 102, der dazu ausgelegt ist, mit dem Rechensystem 104 zu interagieren. Der Stylus 102 ist gemäß einer Ausführungsform dazu ausgelegt, Informationen über einen Kommunikationskanal 202 zu dem Rechensystem 104 zu kommunizieren. Der Kommunikationskanal 202 kann unter anderem einen Bluetooth-Drahtloskommunikationskanal, einen WiFi-Kommunikationskanal, einen USI(Universal Stylus Initiative)-Kommunikationskanal und dergleichen beinhalten.
-
Der Stylus 102 beinhaltet gemäß einer Ausführungsform den Griffsensor 112, den Ausrichtungssensor 114, einen Spitzensensor 204, einen Prozessorschaltkreis 206, einen Speicherschaltkreis 208, Stylus-Logik 210, einen Kommunikationsschaltkreis 212 und eine Batterie (oder eine andere Leistungsversorgung) 214. Der Ausrichtungssensor 114 kann gemäß einer Ausführungsform einen Beschleunigungsmesser 216 und/oder ein Gyroskop 218 zum Identifizieren und Erfassen der Stylus-Ausrichtungsdaten 130 beinhalten. Der Spitzensensor 204 kann gemäß einer Ausführungsform einen oder mehrere Drucksensoren und/oder kapazitive Sensoren beinhalten, die dazu ausgelegt sind, eine Druckhöhe zu detektieren, die an der Spitze des Stylus 102 ausgeübt wird. Der Prozessorschaltkreis 206 ist gemäß einer Ausführungsform dazu ausgelegt, Anweisungen, die durch den Speicherschaltkreis 208 gespeichert werden und unter anderem die Stylus-Logik 210 beinhalten können, auszuführen. Die Stylus-Logik 210 beinhaltet gemäß einer Ausführungsform eine oder mehrere Anweisungen, die dem Prozessorschaltkreis 206 ermöglichen, die Griffeigenschaftsdaten 128 vom Griffsensor 112 zu erfassen. Die Stylus-Logik 210 beinhaltet gemäß einer Ausführungsform eine oder mehrere Anweisungen, die dem Prozessorschaltkreis 206 ermöglichen, die Stylus-Ausrichtungsdaten 130 vom Ausrichtungssensor 114 zu erfassen. Die Stylus-Logik 210 beinhaltet gemäß einer Ausführungsform eine oder mehrere Anweisungen, die dem Prozessorschaltkreis 206 ermöglichen, Spitzensensordaten 220 vom Spitzensensor 204 zu erfassen.
-
Der Kommunikationsschaltkreis 212 und die Batterie 214 ermöglichen dem Stylus 102 gemäß einer Ausführungsform, ungefesselt vom Rechensystem 104 zu arbeiten. Der Kommunikationsschaltkreis 212 ermöglicht dem Stylus 102 gemäß einer Ausführungsform, Informationen über den Kommunikationskanal 202 zum Rechensystem 104 zu kommunizieren. Der Kommunikationsschaltkreis 212 ermöglicht dem Prozessorschaltkreis 206 gemäß einer Ausführungsform, die Griffeigenschaftsdaten 128 und/oder die Stylus-Ausrichtungsdaten 130 und/oder die Spitzensensordaten 220 zum Rechensystem 104 zu übertragen, um dem Rechensystem 104 zu ermöglichen, einen Stylus-Modus aus einer Gruppe von Stylus-Modi auszuwählen.
-
Das Rechensystem 104 beinhaltet gemäß einer Ausführungsform den Stylus-Sensor 118, die Anzeige 120, den Ausrichtungssensor 123 und die Stylus-Modus-Auswahllogik 124. Das Rechensystem 104 erzeugt gemäß einer Ausführungsform Interaktionsdaten 222 vom Stylus-Sensor 118 als Reaktion auf Interaktionen des Stylus 102 mit dem Rechensystem 104. Der Ausrichtungssensor 123 kann gemäß einer Ausführungsform einen Beschleunigungsmesser 224 und/oder ein Gyroskop 226 beinhalten, die durch das Rechensystem 104 zum Erzeugen von Rechensystem-Ausrichtungsdaten 132 verwendet werden können. Wie oben besprochen, wendet die Stylus-Modus-Auswahllogik 124 gemäß einer Ausführungsform die Griffeigenschaftsdaten 128 und/oder die Stylus-Ausrichtungsdaten 130 und/oder die Rechensystem-Ausrichtungsdaten 132 an den prädiktiven Modelldaten 134 an, um Stylus-Modusdaten 126 (die einen Stylus-Modus repräsentieren) zu erzeugen.
-
Das Rechensystem 104 beinhaltet gemäß einer Ausführungsform einen Kommunikationsschaltkreis 228, einen Prozessorschaltkreis 230 und einen Speicherschaltkreis 232. Das Rechensystem 104 verwendet den Kommunikationsschaltkreis 228 gemäß einer Ausführungsform zum Empfangen der Griffeigenschaftsdaten 128 und/oder der Stylus-Ausrichtungsdaten 130 und/oder der Spitzensensordaten 220 vom Stylus 102. Der Prozessorschaltkreis 230 ist gemäß einer Ausführungsform dazu ausgelegt, durch den Speicherschaltkreis 232 gespeicherte Anweisungen auszuführen, um die Stylus-Modus-Auswahllogik 124 und/oder die Prädiktives-Modell-Aktualisierungslogik 234 auszuführen.
-
Der Prozessorschaltkreis 230 oder das Rechensystem 104 führt gemäß einer Ausführungsform die Prädiktives-Modell-Aktualisierungslogik 234 aus, um aktualisierte prädiktive Modelldaten 236 zu erzeugen, die ein aktualisiertes prädiktives Modell repräsentieren. Die aktualisierten prädiktiven Modelldaten 236 können gemäß einer Ausführungsform zum Ersetzen, Aktualisieren oder Upgraden der prädiktiven Modelldaten 134 zumindest teilweise basierend auf einer Benutzerrückmeldung verwendet werden. Die Prädiktives-Modell-Aktualisierungslogik 234 empfängt gemäß einer Ausführungsform Stylus-Modus-Benutzerrückmeldedaten 238 und wendet dann die Stylus-Modus-Benutzerrückmeldedaten 238 an prädiktiven Modellalgorithmusdaten 240 an (die einen prädiktiven Modellalgorithmus repräsentieren), um die aktualisierten prädiktiven Modelldaten 236 zu erzeugen.
-
Die Stylus-Modus-Benutzerrückmeldedaten 238 repräsentieren eine Stylus-Modus-Benutzerrückmeldung. Die Stylus-Modus-Benutzerrückmeldung kann gemäß einer Ausführungsform durch einen Benutzer bereitgestellt werden, wenn die Stylus-Modusdaten 126 nicht die Benutzerabsicht für den Stylus 102 repräsentieren. Als ein Beispiel kann die Stylus-Modus-Benutzerrückmeldung durch einen Benutzer, der einen Pinsel-Stylus-Modus auswählt, nachdem das Rechensystem 104 vorhersagte, dass der Benutzer beabsichtigt, einen Zeichnen-Stylus-Modus zu verwenden, repräsentiert werden. Die Prädiktives-Modell-Aktualisierungslogik 234 kann ein aktualisiertes prädiktives Modell erzeugen, das die Auswahl von Stylus-Modi aus Stylus-Eigenschaften und/oder Rechensystem-Ausrichtungsdaten (über eine Entwicklung des prädiktiven Modells) personalisiert.
-
Die 3A, 3B, 3C und 3D sind beispielhafte Diagramme von Signaturemaps, die quantitative, qualitative und Mustereigenschaften des Griffs eines Benutzers an einem Stylus entsprechend Ausführungsformen der vorliegenden Offenbarung repräsentieren.
-
3A ist ein beispielhaftes veranschaulichendes Diagramm einer Signaturemap 300, die quantitative, qualitative und Mustereigenschaften eines Benutzers repräsentiert, der einen Stylus wie einen Bleistift ergreift, entsprechend Ausführungsformen der vorliegenden Offenbarung. Die Signaturemap 300 beinhaltet gemäß einer Ausführungsform eine Anzahl von Zeilen 302 und eine Anzahl von Spalten 304 individueller Einheiten 306. Als ein Beispiel beinhaltet die Signaturemap 300 10 Zeilen und 10 Spalten, die Signaturemap 300 kann jedoch eine größere oder geringere Anzahl von Zeilen und/oder Spalten beinhalten. Jeder der Einheiten 306 (100 Einheiten im veranschaulichten Beispiel) kann ein Wert zugewiesen werden, der einen an einem entsprechenden Teil eines Griffsensors an einem Stylus ausgeübten Druck quantifiziert. Wie durch die Legende dargestellt, kann als ein Beispiel jede der Einheiten 306 einen Wert von 0, 1, 2 oder 3 aufweisen, der gemäß einer Ausführungsform keinem Druck, einem leichten Druck, einem mittelfesten Druck oder einem festen Druck entspricht. Bei einer Implementierung kann kein Druck repräsentieren, dass ein Finger des Benutzers über einem Griffsensor schwebt, oder die Werte können Darüberschweben- und Nicht-Darüberschweben-Kategorien zusätzlich zu oder anstelle von einer oder mehreren anderen Druck- oder Berührungskategorien enthalten. Die Signaturemap 300 ist für Veranschaulichungszwecke farbcodiert und verwendet gemäß einer Ausführungsform Weiß, um keinen Druck (z. B. Darüberschweben) zu repräsentieren, Hellgrau, um einen leichten Druck zu repräsentieren, Dunkelgrau, um einen mittelfesten Druck zu repräsentieren, und Schwarz, um einen festen Druck zu repräsentieren. Obwohl 4 Werte in der Signaturemap 300 verwendet werden, können in der Praxis 2 Werte, 10 Werte, 100 Werte oder ein beliebiger Bereich von Werten verwendet werden, um jede der Einheiten 306 der Signaturemap 300 zu repräsentieren. Jede der Einheiten 306 kann ein Pixel oder einen Ort eines Bildsensors, eines Drucksensors, eines Wärmesensors, eines kapazitiven Sensors oder einer anderen Art von Griffsensor am Stylus repräsentieren.
-
Das Muster der Signaturemap 300 (und ihrer ähnlichen Varianten) kann basierend auf der Menge jeder Art von Wert für die Einheiten 306, basierend auf den Werten der Einheiten 306 und/oder basierend auf dem durch die Werte der Einheiten 306 erzeugten Muster zu einem Bleistift-Stylus-Modus abgebildet oder mit diesem korreliert werden.
-
3B ist ein beispielhaftes veranschaulichendes Diagramm einer Signaturemap 310, die quantitative, qualitative und Mustereigenschaften eines Benutzers repräsentiert, der einen Stylus wie einen Pinsel ergreift, entsprechend Ausführungsformen der vorliegenden Offenbarung. Die Signaturemap 310 beinhaltet gemäß einer Ausführungsform eine Anzahl von Zeilen 312 und eine Anzahl von Spalten 314 individueller Einheiten 316. Als ein Beispiel beinhaltet die Signaturemap 310 10 Zeilen und 10 Spalten, die Signaturemap 310 kann jedoch eine größere oder geringere Anzahl von Zeilen und/oder Spalten beinhalten. Jeder der Einheiten 316 (100 Einheiten in dem veranschaulichten Beispiel) kann ein Wert zugewiesen werden, der einen an einem entsprechenden Teil eines Griffsensors an einem Stylus ausgeübten Druck quantifiziert. Wie durch die Legende dargestellt, kann als ein Beispiel jede der Einheiten 306 gemäß einer Ausführungsform einen Wert von 0, 1, 2 oder 3 aufweisen, der keinem Druck, einem leichten Druck, einem mittelfesten Druck oder einem festen Druck entspricht. Die Signaturemap 310 ist gemäß einer Ausführungsform für Veranschaulichungszwecke farbcodiert und verwendet Weiß, um keinen Druck zu repräsentieren, Hellgrau, um einen leichten Druck zu repräsentieren, Dunkelgrau, um einen mittelfesten Druck zu repräsentieren, und Schwarz, um einen festen Druck zu repräsentieren. Obwohl 4 Werte in der Signaturemap 310 verwendet werden, können in der Praxis 2 Werte, 10 Werte, 100 Werte oder ein beliebiger Bereich von Werten verwendet werden, um jede der Einheiten 316 der Signaturemap 310 zu repräsentieren. Jede der Einheiten 316 kann ein Pixel oder einen Ort eines Bildsensors, eines Drucksensors, eines Wärmesensors, eines kapazitiven Sensors oder einer anderen Art von Griffsensor am Stylus repräsentieren.
-
Das Muster der Signaturemap 310 (und ihrer ähnlichen Varianten) kann basierend auf der Menge von jeder Art von Wert für die Einheiten 316, basierend auf den Werten der Einheiten 316 und/oder basierend auf dem durch die Werte der Einheiten 316 erzeugten Muster (z. B. unter Verwendung von Maschinenlernen) zu einem Pinsel-Stylus-Modus abgebildet oder mit diesem korreliert werden.
-
3C ist ein beispielhaftes veranschaulichendes Diagramm einer Signaturemap 320, die quantitative, qualitative und Mustereigenschaften eines Benutzers repräsentiert, der einen Stylus wie ein Auswahlwerkzeug ergreift, entsprechend Ausführungsformen der vorliegenden Offenbarung. Die Signaturemap 320 beinhaltet gemäß einer Ausführungsform eine Anzahl von Zeilen 322 und eine Anzahl von Spalten 324 individueller Einheiten 326. Als ein Beispiel beinhaltet die Signaturemap 320 10 Zeilen und 10 Spalten, die Signaturemap 320 kann jedoch eine größere oder geringere Anzahl von Zeilen und/oder Spalten beinhalten. Jeder der Einheiten 326 (100 Einheiten in dem veranschaulichten Beispiel) kann ein Wert zugewiesen werden, der einen an einem entsprechenden Teil eines Griffsensors an einem Stylus ausgeübten Druck quantifiziert. Wie durch die Legende dargestellt, kann als ein Beispiel jede der Einheiten 306 gemäß einer Ausführungsform einen Wert von 0, 1, 2 oder 3 aufweisen, der keinem Druck, einem leichten Druck, einem mittelfesten Druck oder einem festen Druck entspricht. Die Signaturemap 320 ist für Veranschaulichungszwecke farbcodiert und verwendet gemäß einer Ausführungsform Weiß, um keinen Druck zu repräsentieren, Hellgrau, um einen leichten Druck zu repräsentieren, Dunkelgrau, um einen mittelfesten Druck zu repräsentieren, und Schwarz, um einen festen Druck zu repräsentieren. Obwohl 4 Werte in der Signaturemap 320 verwendet werden, können in der Praxis 2 Werte, 10 Werte, 100 Werte oder ein beliebiger Bereich von Werten verwendet werden, um jede der Einheiten 326 der Signaturemap 320 zu repräsentieren. Jede der Einheiten 326 kann ein Pixel oder einen Ort eines Bildsensors, eines Drucksensors, eines Wärmesensors, eines kapazitiven Sensors oder einer anderen Art von Griffsensor am Stylus repräsentieren.
-
Das Muster der Signaturemap 320 (und ihrer ähnlichen Varianten) kann basierend auf der Menge jeder Art von Wert für die Einheiten 326, basierend auf den Werten der Einheiten 326 und/oder basierend auf dem durch die Werte der Einheiten 326 erzeugten Muster (z. B. unter Verwendung von Maschinenlernen) zu einem Auswahlwerkzeug-Stylus-Modus abgebildet oder mit diesem korreliert werden.
-
3D ist ein beispielhaftes veranschaulichendes Diagramm einer Signaturemap 330, die quantitative, qualitative und Mustereigenschaften eines Benutzers repräsentiert, der einen Stylus wie ein Zeigerwerkzeug ergreift, entsprechend Ausführungsformen der vorliegenden Offenbarung. Die Signaturemap 330 beinhaltet gemäß einer Ausführungsform eine Anzahl von Zeilen 332 und eine Anzahl von Spalten 334 individueller Einheiten 336. Als ein Beispiel beinhaltet die Signaturemap 330 10 Zeilen und 10 Spalten, die Signaturemap 330 kann jedoch eine größere oder geringere Anzahl von Zeilen und/oder Spalten beinhalten. Jeder der Einheiten 336 (100 Einheiten in dem veranschaulichten Beispiel) kann ein Wert zugewiesen werden, der einen an einem entsprechenden Teil eines Griffsensors an einem Stylus ausgeübten Druck quantifiziert. Wie durch die Legende dargestellt, kann als ein Beispiel jede der Einheiten 306 gemäß einer Ausführungsform einen Wert von 0, 1, 2 oder 3 aufweisen, der keinem Druck, einem leichten Druck, einem mittelfesten Druck oder einem festen Druck entspricht. Die Signaturemap 330 ist für Veranschaulichungszwecke farbcodiert und verwendet gemäß einer Ausführungsform Weiß, um keinen Druck zu repräsentieren, Hellgrau, um einen leichten Druck zu repräsentieren, Dunkelgrau, um einen mittelfesten Druck zu repräsentieren, und Schwarz, um einen festen Druck zu repräsentieren. Obwohl 4 Werte in der Signaturemap 330 verwendet werden, können in der Praxis 2 Werte, 10 Werte, 100 Werte oder ein beliebiger Bereich von Werten verwendet werden, um jede der Einheiten 336 der Signaturemap 330 zu repräsentieren. Jede der Einheiten 336 kann ein Pixel oder einen Ort eines Bildsensors, eines Drucksensors, eines Wärmesensors, eines kapazitiven Sensors oder einer anderen Art von Griffsensor am Stylus repräsentieren.
-
Das Muster der Signaturemap 330 (und ihrer ähnlichen Varianten) kann basierend auf der Menge jeder Art von Wert für die Einheiten 336, basierend auf den Werten der Einheiten 336 und/oder basierend auf dem durch die Werte der Einheiten 336 erzeugten Muster (z. B. unter Verwendung von Maschinenlernen) zu einem Zeigerwerkzeug-Stylus-Modus abgebildet oder mit diesem korreliert werden.
-
4 veranschaulicht ein Beispiel für eine Tabelle 400, die Stylus-Eigenschaften und Rechensystemeigenschaften beinhaltet, die mittels Maschinenlernen mit einem speziellen Stylus-Modus (z. B. einer Klassifikationskategorie) assoziiert werden können, entsprechend Ausführungsformen der vorliegenden Offenbarung. Die Tabelle 400 beinhaltet eine Anzahl von Spalten, die verschiedene Eigenschaften einer Benutzerinteraktion mit einem Stylus und/oder mit einem Rechensystem repräsentieren. Die Tabelle 400 beinhaltet eine Klassifikationsspalte 402, die eine Gruppe von Stylus-Modi repräsentiert, aus denen ein Rechensystem basierend auf Eigenschaften des Stylus und/oder des Rechensystems wählen kann. Die Klassifikationen können unter anderem Stift, Pinsel, Zeiger und Auswahlwerkzeug beinhalten.
-
Die Tabelle 400 beinhaltet eine Anzahl von Spalten, die mit einer Ausrichtung der Recheneinrichtung und des Stylus assoziiert sind. Die Tabelle 400 beinhaltet eine Schräglagen-x-Spalte 404 und eine Schräglagen-y-Spalte 406, die Beschleunigungsmesserdaten (z. B. Rechensystem-Ausrichtungsdaten) von einem Rechensystem repräsentieren. Die Tabelle 400 kann auch Schräglagen-x- und Schräglagen-y-Daten von einem Beschleunigungsmesser in einem Stylus beinhalten. Die Tabelle 400 beinhaltet eine Gieren-Spalte 408, eine Neigung-Spalte 410 und eine Rollen-Spalte 412 für eine Recheneinrichtung, deren Werte Gyroskopdaten (z. B. Rechensystem-Ausrichtungsdaten) für ein Rechensystem repräsentieren. Die Tabelle 400 beinhaltet eine Gieren-Spalte 414, eine Neigung-Spalte 416 und eine Rollen-Spalte 418 für einen Stylus, deren Werte Gyroskopdaten (z. B. Stylus-Ausrichtungsdaten) für einen Stylus repräsentieren.
-
Die Tabelle 400 beinhaltet gemäß einer Ausführungsform eine Druck-Spalte 420, die einen mittleren Druck repräsentiert, der durch einen Griffsensor an einem Stylus detektiert wird.
-
Die Tabelle 400 beinhaltet gemäß einer Ausführungsform eine Anzahl von Spalten, die Orte und Druckwerte von einer Signaturemap (z. B. den Signaturemaps 300, 310, 320, 330 usw. der 3A-3D) repräsentieren, die Orte repräsentiert, an denen ein Druck an einem Griffsensor an einem Stylus ausgeübt wird. Die Druck-Spalten 422 können Werte von 0 beinhalten, um kein Darüberschweben oder keine Berührung zu repräsentieren, können Werte von 1-3 beinhalten, um ein Darüberschweben zu repräsentieren, können Werte von 4-7 beinhalten, um einen leichten Druck zu repräsentieren, können Werte von 8-11 beinhalten, um einen mittelfesten Druck zu repräsentieren, und können Werte von 12-15 beinhalten, um einen festen Druck zu repräsentieren, der an dem Griffsensor ausgeübt wird. Berührungssensorwerte von 0-15 können verwendet werden, um einen 4-Bit-Wert zu repräsentieren, der zum Repräsentieren eines Berührungsdrucks verwendet wird. Die Werte können jedoch 0-16 betragen oder in einem anderen Bereich liegen, der nicht notwendigerweise auf einen 4-Bit-Wert beschränkt ist. Vom System 100 (in 1 dargestellt) gesammelte Werte können verwendet werden, um basierend auf den Stylus-Eigenschaften und/oder basierend auf der Rechensystemausrichtung zu bestimmen, welcher Stylus-Modus für einen Benutzer auszuwählen ist. Die Werte können gemäß verschiedenen Ausführungsformen durch eine 8-Bit-Zahl (d. h. einen Bereich von 0-255) repräsentiert werden, können durch eine 16-Bit-Zahl (d. h. einen Bereich von 0-65.535) repräsentiert werden oder können einen anderen Bereich aufweisen. Ein größerer Bereich von Werten kann zur Bereitstellung von größerer Granularität für Informationen, die durch einen Griffsensor gesammelt werden, vorteilhaft sein.
-
5 veranschaulicht ein Flussdiagramm eines Prozesses 500 zum Bestimmen eines Stylus-Betriebsmodus aus Stylus-Eigenschaften gemäß einer Ausführungsform.
-
Bei Vorgang 502 beinhaltet der Prozess 500 gemäß einer Ausführungsform Empfangen von Stylus-Ausrichtungsdaten mit einem Rechensystem, die eine Ausrichtung eines Stylus repräsentieren.
-
Bei Vorgang 504 beinhaltet der Prozess 500 gemäß einer Ausführungsform Identifizieren eines Stylus-Modus mit dem Rechensystem zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Stylus-Ausrichtungsdaten.
-
Bei Vorgang 506 beinhaltet der Prozess 500 gemäß einer Ausführungsform Anwenden des Stylus-Modus am Rechensystem, um Interaktionsdaten zu interpretieren, die Interaktionen des Stylus mit dem Rechensystem repräsentieren.
-
6 veranschaulicht ein Flussdiagramm eines Prozesses 600 zum Bestimmen eines Stylus-Betriebsmodus aus Stylus-Eigenschaften gemäß einer Ausführungsform.
-
Bei Vorgang 602 ergreift ein Benutzer gemäß einer Ausführungsform einen Stylus und nähert sich einem Rechensystem.
-
Bei Vorgang 604 wacht der Stylus gemäß einer Ausführungsform auf und überträgt Styl us- Eigenschaftsdaten.
-
Bei Vorgang 606 erfasst ein Rechensystem gemäß einer Ausführungsform Rechensystem-Ausrichtungsdaten und analysiert Stylus-Eigenschaftsdaten und/oder Rechensystem-Ausrichtungsdaten. Bei einer Ausführungsform kann das Analysieren von Stylus-Eigenschaftsdaten und/oder Rechensystem-Ausrichtungsdaten ein Anwenden von Stylus-Eigenschaftsdaten und/oder Rechensystem-Ausrichtungsdaten an einem prädiktiven Modell beinhalten. Das prädiktive Modell gibt eine Kategorie aus, die einen Stylus-Modus repräsentiert, der aus einer Gruppe von Stylus-Modi ausgewählt wird.
-
Bei Vorgang 608 bestimmt der Prozess 600 gemäß einer Ausführungsform, ob Daten zu einer bekannten Kategorie passen (Maschinenlernen-Modellklassifikation). Falls die Daten zu keiner bekannten Kategorie passen, geht der Vorgang 608 zu Vorgang 610 über. Falls die Daten zu einer bekannten Kategorie passen, geht der Vorgang 608 gemäß einer Ausführungsform zu Vorgang 612 über.
-
Bei Vorgang 610 wird der Stylus gemäß einer Ausführungsform im aktuellen/standardmäßigen Modus gelassen. Mit anderen Worten behält ein den Prozess 600 ausführendes Rechensystem einen standardmäßigen oder aktuellen Stylus-Modus bei, anstatt eine andere Benutzerabsicht für den Stylus zu identifizieren. Der Vorgang 610 geht gemäß einer Ausführungsform zu Vorgang 614 über.
-
Bei Vorgang 614 wartet der Prozess 600 gemäß einer Ausführungsform auf eine Änderung in den Stylus-Eigenschaftsdaten und/oder den Rechensystem-Ausrichtungsdaten. Mit anderen Worten kann der Prozess 600 bei Vorgang 614 darauf warten, dass sich eine Stylus-Ausrichtung ändert, wartet darauf, dass sich eine Griffeigenschaft ändert, oder wartet darauf, dass sich eine Rechensystemausrichtung ändert. Der Vorgang 614 geht gemäß einer Ausführungsform zu Vorgang 602 über.
-
Bei Vorgang 612 stellt der Prozess 600 gemäß einer Ausführungsform einen Stylus-Modus ein, der mit der Kategorie übereinstimmt.
-
Bei Vorgang 616 bestimmt der Prozess 600 gemäß einer Ausführungsform, ob ein Benutzer zu einem Menü geht und den Stylus-Modus ändert. Eine Änderung des Stylus-Modus vom Menü durch den Benutzer ist eine Art von Benutzerrückmeldung. Eine Änderung des Stylus-Modus vom Menü durch den Benutzer kann als eine Indikation interpretiert werden, dass der Prozess 600 einen Stylus-Modus für den Benutzer basierend auf den Stylus-Eigenschaften und/oder der Rechensystemausrichtung inkorrekt ausgewählt hat. Der Prozess 600 kann gemäß einer Ausführungsform dazu ausgelegt sein, eine unmittelbare Änderung des Stylus-Modus durch einen Benutzer als einen inkorrekt ausgewählten Stylus-Modus zu interpretieren. Der Prozess 600 kann gemäß einer Ausführungsform dazu ausgelegt sein, eine Änderung des Stylus-Modus durch einen Benutzer mit einer vorbestimmten Zeitbegrenzung (z. B. unter 30 Sekunden) als einen inkorrekt ausgewählten Stylus-Modus zu interpretieren. Der Prozess 600 kann gemäß einer Ausführungsform dazu ausgelegt sein, eine Änderung des Stylus-Modus durch einen Benutzer als eine erste Handlung während der Benutzerinteraktion mit einer Einrichtung (ungeachtet dessen, wie viel Zeit verstrichen ist, seitdem die Einrichtung eingeschaltet wurde) als einen inkorrekt ausgewählten Stylus-Modus zu interpretieren. Falls der Benutzer den voreingestellten Stylus-Modus für eine Weile vor dem Ändern des Stylus-Modus vom Menü verwendet, kann der Prozess 600 gemäß einer Ausführungsform dazu ausgelegt sein, die Benutzeränderung nicht als eine Indikation eines inkorrekt ausgewählten Stylus-Modus zu interpretieren. Falls der Benutzer den Stylus-Modus nicht ändert, geht der Vorgang 616 zu Vorgang 614 über. Falls der Benutzer den Stylus-Modus ändert, geht der Vorgang 616 gemäß einer Ausführungsform zu Vorgang 618 über.
-
Bei Vorgang 618 wendet der Prozess 600 gemäß einer Ausführungsform eine Benutzerrückmeldung an einem Maschinenlernalgorithmus an, um ein prädiktives Modell zu aktualisieren. Das Aktualisieren des prädiktiven Modells ermöglicht dem Prozess 600, die automatisierte Stylus-Modusauswahl auf Stylus-Eigenschaften und auf der Rechensystemausrichtung, die für einen speziellen Benutzer eindeutig sind oder zur Verwendung durch diesen angepasst sind, zu erlernen und zu entwickeln.
-
7 ist ein veranschaulichendes Diagramm 7 eines Rechensystems 700, das eine oder mehrere der offenbarten Techniken zum Bestimmen eines Stylus-Betriebsmodus aus Stylus-Eigenschaften verwenden kann, entsprechend Ausführungsformen der vorliegenden Offenbarung. Das Rechensystem 700 kann zum Beispiel in einem Desktop-Computer, einem Laptop-Computer, einem Netbook, einem Notebook-Computer, einem Personal Digital Assistant (PDA), einem Server, einer Arbeitsstation, einem Funktelefon, einer mobilen Recheneinrichtung, einem Internetgerät oder einer beliebigen anderen Art von Recheneinrichtung enthalten sein.
-
Das Rechensystem 700 kann eine Zentralverarbeitungseinheit (CPU: Central Processing Unit) 710 beinhalten, um Daten über einen Systembus 790 mit einer Benutzeroberfläche 760, einem Hauptspeicher 720, einem Plattenspeicher 730, einer E/A-Einrichtung 740 und einem Netzwerkverbinder 750 auszutauschen.
-
Der Hauptspeicher 720 kann einen synchronen dynamischen Direktzugriffsspeicher (SDRAM: Synchronous Dynamic Random-Access Memory), einen dynamischen Direktzugriffsspeicher (DRAM), einen dynamischen RAMBUS-Direktzugriffsspeicher (RDRAM) und/oder eine beliebige andere Art von Direktzugriffsspeichereinrichtung beinhalten. Der Hauptspeicher 720 kann einen nichtflüchtigen Speicher beinhalten, wie etwa einen Festkörperspeicher, einen Phasenwechselspeicher, 3D-XPoint™ oder eine beliebige Kombination davon.
-
Der Plattenspeicher 730 kann zum Beispiel ein Halbleiterplattenlaufwerk (SSD-Laufwerk; SSD: Solid State Disk), Flash-Speicher, Phasenwechselspeicher (PCM: Phase Change Memory), Nurlesespeicher (ROM), einen elektrisch löschbaren programmierbaren Nurlesespeicher (EEPROM) oder eine beliebige andere Art von nichtflüchtiger Speichereinrichtung umfassen.
-
Der Netzwerkverbinder 750 kann zum Beispiel eine Ethernet-Schnittstelle, eine USB(Universal Serial Bus)-Schnittstelle, eine PCI(Peripheral Component Interconnect)-Express-Schnittstelle, eine Drahtlosschnittstelle und/oder eine beliebige andere geeignete Art von Schnittstelle umfassen. Bei einer Ausführungsform arbeitet die Drahtlosschnittstelle unter anderem gemäß dem IEEE 802.11-Standard und seiner verwandten Familie, Home-Plug-AV (HPAV), Ultrabreitband (UWB: Ultra Wide Band), Bluetooth, WiMax oder einer beliebigen anderen Form von Drahtloskommunikationsprotokoll.
-
Wie in einer beliebigen Ausführungsform hierin verwendet, kann sich der Begriff „Logik“ auf eine App, eine Software, eine Firmware und/oder einen Schaltkreis beziehen, die bzw. der dazu ausgelegt ist, einen beliebigen der vorgenannten Vorgänge durchzuführen. Software kann als ein Softwarepaket, Code, Anweisungen, Befehlssätze und/oder Daten umgesetzt werden, die auf einem beständigen computerlesbaren Speicherungsmedium aufgezeichnet sind. Firmware kann als Code, Anweisungen oder Befehlssätze und/oder Daten umgesetzt werden, die (z. B. nichtflüchtig) in Speichereinrichtungen festcodiert sind.
-
„Schaltkreis“, wie in einer beliebigen Ausführungsform hierin verwendet, kann zum Beispiel einzeln oder in einer beliebigen Kombination einen festverdrahteten Schaltkreis, einen programmierbaren Schaltkreis, einen Zustandsmaschinenschaltkreis, Logik und/oder Firmware umfassen, die Anweisungen speichert, die durch einen programmierbaren Schaltkreis ausgeführt werden. Der Schaltkreis kann als eine integrierte Schaltung, wie etwa ein integrierter Schaltungschip, umgesetzt sein. Bei manchen Ausführungsformen kann der Schaltkreis zumindest teilweise durch einen Prozessor gebildet werden, der Code und/oder Befehlssätze (z. B. Software, Firmware usw.) entsprechend der hierin beschriebenen Funktionalität ausführt, wodurch ein Allgemeinprozessor in eine Spezialverarbeitungsumgebung zum Durchführen einer oder mehrerer der hierin beschriebenen Vorgänge transformiert wird. Bei manchen Ausführungsformen können die verschiedenen Komponenten und Schaltkreise des Speichersteuerungsschaltkreises oder andere Systeme in einer System-auf-Chip-Architektur (SoC-Architektur) kombiniert werden.
-
Ausführungsformen der hierin beschriebenen Vorgänge können in einer computerlesbaren Speicherungseinrichtung mit darauf gespeicherten Anweisungen implementiert werden, die bei Ausführung durch einen oder mehrere Prozessoren die Verfahren durchführen. Der Prozessor kann zum Beispiel eine Verarbeitungseinheit und/oder einen programmierbaren Schaltkreis beinhalten. Die Speicherungseinrichtung kann eine maschinenlesbare Speicherungseinrichtung einschließlich einer beliebigen Art von greifbarer beständiger Speicherungseinrichtung beinhalten, zum Beispiel einer beliebigen Art von Platte einschließlich Disketten, optischer Platten, CD-ROMs (Compact Disk Read-Only Memories), CD-RWs (Compact Disk Rewritables) und magnetooptischer Platten, Halbleitereinrichtungen, wie etwa Nurlesespeicher (ROMs), Direktzugriffsspeicher (RAMs), wie etwa dynamischer und statischer RAMs, löschbarer programmierbarer Nurlesespeicher (EPROMs), elektrisch löschbarer programmierbarer Nurlesespeicher (EEPROMs), Flash-Speicher, magnetischer oder optischer Karten oder einer beliebigen Art von Speicherungseinrichtungen, die sich zum Speichern von elektronischen Anweisungen eignen.
-
Bei manchen Ausführungsformen kann eine HDL (Hardware Description Language) verwendet werden, um eine oder mehrere Schaltungs- und/oder Logikimplementierungen für die hierin beschriebenen verschiedenen Logiken und/oder Schaltkreise zu spezifizieren. Bei einer Ausführungsform kann die HDL zum Beispiel einer VHDL (VHSIC-HDL; VHSIC: Very High Speed Integrated Circuit) entsprechen oder mit dieser kompatibel sein, die eine Halbleiterherstellung einer oder mehrerer hierin beschriebener Schaltungen und/oder Logik ermöglichen kann. Die VHDL kann dem IEEEE-Standard1076-1987, dem IEEE-Standard 1076.2, IEEE1076.1, dem IEEE-Entwurf 3.0 von VHDL-2006, dem IEEE-Entwurf 4.0 von VHDL-2008 und/oder anderen Versionen der IEEE-VHDL-Standards und/oder anderen Hardwarebeschreibungsstandards entsprechen oder mit diesen kompatibel sein.
-
Bei manchen Ausführungsformen kann eine Verilog-HDL (Hardware Description Language) verwendet werden, um eine oder mehrere Schaltungs- und/oder Logikimplementierungen für die hierin beschriebenen verschiedenen Logiken und/oder Schaltkreise zu spezifizieren. Bei einer Ausführungsform kann die HDL zum Beispiel mit dem IEEE-Standard 62530-2011: System Verilog - Unified Hardware Design, Specification and Verification Language; datiert 7. Juli 2011; dem IEEE-Standard 1800™-2012: IEEE Standard for SystemVerilog - Unified Hardware Design, Specification and Verification Language, veröffentlicht am 21. Februar 2013; dem IEEE-Standard 1364-2005: IEEE Standard for Verilog Hardware Description Language, datiert 18. April 2006 und/oder anderen Versionen von Verilog-HDL- und/oder SystemVerilog-Standards entsprechen oder mit diesen kompatibel sein.
-
Beispiele
-
Beispiele für die vorliegende Offenbarung beinhalten einen Gegenstand, wie etwa ein Verfahren, eine Einrichtung, eine Vorrichtung oder ein System bezüglich einer prädiktiven Detektion einer Benutzerabsicht zur Stylus-Verwendung, wie unten besprochen.
-
Beispiel 1. Gemäß diesem Beispiel ist ein Verfahren zum Bestimmen eines Stylus-Betriebsmodus aus Stylus-Eigenschaften bereitgestellt. Das Verfahren beinhaltet Empfangen von Stylus-Ausrichtungsdaten mit einem Rechensystem, die eine Ausrichtung eines Stylus repräsentieren; Identifizieren eines Stylus-Modus mit dem Rechensystem zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Stylus-Ausrichtungsdaten; und Anwenden des Stylus-Modus am Rechensystem, um Interaktionsdaten zu interpretieren, die Interaktionen des Stylus mit dem Rechensystem repräsentieren.
-
Beispiel 2. Dieses Beispiel beinhaltet die Elemente des Beispiels 1, wobei die Ausrichtung des Stylus einen Rollwinkel, einen Neigungswinkel und einen Gierwinkel des Stylus beinhaltet.
-
Beispiel 3. Dieses Beispiel beinhaltet die Elemente des Beispiels 1, wobei der Rollwinkel eine Drehung um eine x-Achse ist, der Neigungswinkel eine Drehung um eine y-Achse ist und ein Gierwinkel eine Drehung um eine z-Achse ist, wobei die x-Achse, die y-Achse und die z-Achse Achsen eines kartesischen Koordinatensystems repräsentieren.
-
Beispiel 4. Dieses Beispiel beinhaltet die Elemente des Beispiels 1, ferner umfassend: Empfangen von Griffeigenschaftsdaten, die Eigenschaften eines Griffs eines Benutzers am Stylus repräsentieren.
-
Beispiel 5. Dieses Beispiel beinhaltet die Elemente des Beispiels 4, wobei die Eigenschaften des Griffs des Benutzers am Stylus quantitative Eigenschaften und/oder qualitative Eigenschaften und/oder Mustereigenschaften beinhalten.
-
Beispiel 6. Dieses Beispiel beinhaltet die Elemente des Beispiels 5, wobei die quantitativen Eigenschaften eine Anzahl von durch den Benutzer berührten Griffeinheiten beinhalten, wobei die qualitativen Eigenschaften eine Druckhöhe, die an einem Griffsensor ausgeübt wird, beinhalten, wobei die Mustereigenschaften ein Muster des Griffs des Benutzers am Stylus beinhalten.
-
Beispiel 7. Dieses Beispiel beinhaltet die Elemente des Beispiels 4, ferner umfassend: Identifizieren des Stylus-Modus zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Griffeigenschaftsdaten.
-
Beispiel 8. Dieses Beispiel beinhaltet die Elemente des Beispiels 1, wobei der Stylus-Modus aus einer Gruppe von Stylus-Modi ausgewählt wird, einschließlich eines oder mehrerer aus Folgendem: einem Schreibmodus; einem Malmodus; einem Zeichnungsmodus; einem Sprühmalmodus; einem Auswahlmodus oder einem Zeigermodus.
-
Beispiel 9. Dieses Beispiel beinhaltet die Elemente des Beispiels 1, wobei das Identifizieren des Stylus-Modus ein Anwenden der Stylus-Ausrichtungsdaten an einem prädiktiven Modell beinhaltet, um den Stylus-Modus aus mehreren Stylus-Modi auszuwählen.
-
Beispiel 10. Dieses Beispiel beinhaltet die Elemente des Beispiels 1, ferner umfassend: Empfangen von korrigierenden Rückmeldedaten, die eine Auswahl durch einen Benutzer eines korrigierten Stylus-Modus repräsentieren; und Erzeugen eines ersetzenden prädiktiven Modells zumindest teilweise basierend auf den korrigierenden Rückmeldedaten.
-
Beispiel 11. Dieses Beispiel beinhaltet die Elemente des Beispiels 1, ferner umfassend: Erzeugen von Rechensystem-Ausrichtungsdaten mit dem Rechensystem, die eine Ausrichtung des Rechensystems repräsentieren; und Identifizieren eines Stylus-Modus mit dem Rechensystem zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Stylus-Ausrichtungsdaten und den Rechensystem-Ausrichtungsdaten.
-
Beispiel 12. Gemäß diesem Beispiel ist eine computerlesbare Einrichtung mit Anweisungen bereitgestellt, die bei Ausführung durch einen oder mehrere Prozessoren bewirken, dass der eine oder die mehreren Prozessoren ein Verfahren zum Bestimmen eines Stylus-Betriebsmodus aus Stylus-Eigenschaften durchführen. Die Anweisungen beinhalten Empfangen von Griffeigenschaftsdaten mit einem Rechensystem, die Eigenschaften eines Griffs eines Benutzers an einem Stylus repräsentieren; Identifizieren eines Stylus-Modus mit dem Rechensystem zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Griffeigenschaften; und Anwenden des Stylus-Modus am Rechensystem, um Interaktionsdaten zu bearbeiten, die Interaktionen des Stylus mit dem Rechensystem repräsentieren.
-
Beispiel 13. Dieses Beispiel beinhaltet die Elemente des Beispiels 12, wobei die Anweisungen ferner Folgendes umfassen: Empfangen von Stylus-Ausrichtungsdaten, die eine Ausrichtung des Stylus repräsentieren; und Identifizieren des Stylus-Modus zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Griffeigenschaftsdaten und den Stylus-Ausrichtungsdaten.
-
Beispiel 14. Dieses Beispiel beinhaltet die Elemente des Beispiels 12, wobei die Eigenschaften des Griffs des Benutzers am Stylus quantitative Eigenschaften und/oder qualitative Eigenschaften und/oder Mustereigenschaften beinhalten.
-
Beispiel 15. Dieses Beispiel beinhaltet die Elemente des Beispiels 14, wobei die quantitativen Eigenschaften eine Anzahl von durch den Benutzer berührten Griffeinheiten beinhalten, wobei die qualitativen Eigenschaften eine Druckhöhe beinhalten, die an einem Griffsensor ausgeübt wird, wobei die Mustereigenschaften ein Muster des Griffs des Benutzers am Stylus beinhalten.
-
Beispiel 16. Dieses Beispiel beinhaltet die Elemente des Beispiels 12, wobei der Stylus-Modus aus einer Gruppe von Stylus-Modi ausgewählt wird, einschließlich eines oder mehrerer aus Folgendem: einem Schreibmodus; einem Malmodus; einem Zeichnungsmodus; einem Sprühmalmodus; einem Auswahlmodus oder einem Zeigermodus.
-
Beispiel 17. Dieses Beispiel beinhaltet die Elemente des Beispiels 12, wobei das Identifizieren des Stylus-Modus ein Anwenden der Griffeigenschaftsdaten an einem prädiktiven Modell beinhaltet, um den Stylus-Modus aus mehreren Stylus-Modi auszuwählen.
-
Beispiel 18. Dieses Beispiel beinhaltet die Elemente des Beispiels 12, wobei die Anweisungen ferner Folgendes umfassen: Empfangen von korrigierenden Rückmeldedaten, die eine Auswahl durch den Benutzer eines korrigierten Stylus-Modus repräsentieren; und Erzeugen eines ersetzenden prädiktiven Modells zumindest teilweise basierend auf den korrigierenden Rückmeldedaten.
-
Beispiel 19. Dieses Beispiel beinhaltet die Elemente des Beispiels 12, wobei die Anweisungen ferner Folgendes umfassen: Erzeugen von Rechensystem-Ausrichtungsdaten mit dem Rechensystem, die eine Ausrichtung des Rechensystems repräsentieren; und Identifizieren eines Stylus-Modus mit dem Rechensystem zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Griffeigenschaftsdaten und den Rechensystem-Ausrichtungsdaten.
-
Beispiel 20. Gemäß diesem Beispiel ist ein System bereitgestellt. Das System beinhaltet einen Stylus-Sensor zum Erzeugen von Interaktionsdaten, die Interaktionen eines Stylus mit einem Rechensystem repräsentieren; einen Prozessorschaltkreis und einen Speicherschaltkreis, der kommunikativ mit dem Prozessorschaltkreis gekoppelt ist, wobei der Speicherschaltkreis ausgelegt ist zum Speichern von Anweisungen, die bei Ausführung durch den Prozessorschaltkreis bewirken, dass der Prozessorschaltkreis ein Verfahren zum Bestimmen eines Stylus-Betriebsmodus aus Stylus-Eigenschaften durchführt. Die Anweisungen beinhalten Empfangen von Stylus-Ausrichtungsdaten mit einem Rechensystem, die eine Ausrichtung eines Stylus repräsentieren; Identifizieren eines Stylus-Modus mit dem Rechensystem zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Stylus-Ausrichtungsdaten; und Anwenden des Stylus-Modus am Rechensystem, um Interaktionsdaten zu bearbeiten, die durch den Stylus-Sensor erzeugt werden.
-
Beispiel 21. Dieses Beispiel beinhaltet die Elemente des Beispiels 20, wobei die Ausrichtung des Stylus einen Rollwinkel, einen Neigungswinkel und einen Gierwinkel des Stylus beinhaltet.
-
Beispiel 22. Dieses Beispiel beinhaltet die Elemente des Beispiels 20, wobei die Anweisungen ferner Folgendes beinhalten: Empfangen von Griffeigenschaftsdaten, die Eigenschaften eines Griffs eines Benutzers am Stylus repräsentieren.
-
Beispiel 23. Dieses Beispiel beinhaltet die Elemente des Beispiels 22, wobei die Anweisungen ferner Folgendes beinhalten: Identifizieren des Stylus-Modus zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Griffei gen schaftsdaten .
-
Beispiel 24. Dieses Beispiel beinhaltet die Elemente des Beispiels 20, wobei der Stylus-Modus aus einer Gruppe von Stylus-Modi ausgewählt wird, einschließlich eines oder mehrerer aus Folgendem: einem Schreibmodus; einem Malmodus; einem Zeichnungsmodus; einem Sprühmalmodus; einem Auswahlmodus oder einem Zeigermodus.
-
Beispiel 25. Dieses Beispiel beinhaltet die Elemente des Beispiels 20, wobei Anweisungen zum Identifizieren des Stylus-Modus Anweisungen zum Anwenden der Stylus-Ausrichtungsdaten an einem prädiktiven Modell beinhalten, um den Stylus-Modus aus mehreren Stylus-Modi auszuwählen.
-
Beispiel 26. Dieses Beispiel beinhaltet die Elemente des Beispiels 20, wobei die Anweisungen ferner Folgendes beinhalten: Erzeugen von Rechensystem-Ausrichtungsdaten, die eine Ausrichtung des Rechensystems repräsentieren; und Identifizieren eines Stylus-Modus mit dem Rechensystem zur Verwendung durch das Rechensystem zumindest teilweise basierend auf den Stylus-Ausrichtungsdaten und den Rechensystem- Ausri chtungsdaten.
-
Beispiel 27. Gemäß diesem Beispiel ist eine computerlesbare Einrichtung bereitgestellt, die Anweisungen speichert, die, bei Ausführung durch einen oder mehrere Prozessoren, das Verfahren nach einem der Beispiele 13 bis 20 durchführt.
-
Beispiel 28. Gemäß diesem Beispiel ist eine Einrichtung bereitgestellt, die Mittel zum Durchführen des Verfahrens nach einem der Beispiele 1 bis 11 umfasst.
-
Die hierin eingesetzten Begriffe und Ausdrücke werden als Begriffe der Beschreibung und nicht Beschränkung verwendet, und es besteht durch die Verwendung derartiger Begriffe und Ausdrücke keine Absicht, irgendwelche Äquivalente der dargestellten und beschriebenen Merkmale (oder von Teilen davon) auszuschließen, und es wird erkannt, dass verschiedene Modifikationen innerhalb des Schutzumfangs der Ansprüche möglich sind. Dementsprechend wird beabsichtigt, dass die Ansprüche alle derartigen Äquivalente abdecken.
-
Verschiedene Merkmale, Aspekte und Ausführungsformen sind hierin beschrieben worden. Die Merkmale, Aspekte und Ausführungsformen können miteinander kombiniert sowie einer Variation und Modifikation unterzogen werden, wie Fachleuten bekannt ist. Die vorliegende Offenbarung sollte daher derart angesehen werden, dass sie derartige Kombinationen, Variationen und Modifikationen einschließt.