DE102019118952A1 - Method, device and computer program for controlling a user interface - Google Patents
Method, device and computer program for controlling a user interface Download PDFInfo
- Publication number
- DE102019118952A1 DE102019118952A1 DE102019118952.7A DE102019118952A DE102019118952A1 DE 102019118952 A1 DE102019118952 A1 DE 102019118952A1 DE 102019118952 A DE102019118952 A DE 102019118952A DE 102019118952 A1 DE102019118952 A1 DE 102019118952A1
- Authority
- DE
- Germany
- Prior art keywords
- hand
- user interface
- movement
- distance
- distance sensor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 102
- 238000004590 computer program Methods 0.000 title abstract description 9
- 238000012545 processing Methods 0.000 claims description 31
- 238000005259 measurement Methods 0.000 claims description 16
- 230000005484 gravity Effects 0.000 claims description 10
- 230000000694 effects Effects 0.000 claims description 9
- 230000003213 activating effect Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 3
- 210000003811 finger Anatomy 0.000 description 22
- 230000006870 function Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000003491 array Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000005452 bending Methods 0.000 description 3
- 230000009849 deactivation Effects 0.000 description 3
- 238000010079 rubber tapping Methods 0.000 description 3
- 210000003813 thumb Anatomy 0.000 description 3
- 241000699670 Mus sp. Species 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241000699666 Mus <mouse, genus> Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 210000004932 little finger Anatomy 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920000747 poly(lactic acid) Polymers 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Ausführungsbeispiele befassen sich mit Verfahren, einer Vorrichtung sowie einem Computerprogramm zum Steuern einer Benutzeroberfläche. Ein Verfahren zum Steuern einer Benutzeroberfläche umfasst ein Projizieren der Benutzeroberfläche auf eine Hand eines Benutzers. Das Verfahren umfasst ferner ein Bestimmen von drei-dimensionaler Distanzinformation einer Distanz zwischen der Hand und einem Distanzsensor. Das Verfahren umfasst ferner ein Bestimmen einer Bewegung von zumindest Teilen der Hand entlang einer Tiefenachse zwischen der Hand und dem Distanzsensor basierend auf der dreidimensionalen Distanzinformation. Das Verfahren umfasst ferner ein Steuern der Benutzeroberfläche basierend auf der Bewegung von zumindest Teilen der Hand entlang der Tiefenachse zwischen der Hand und dem Distanzsensor.Exemplary embodiments deal with methods, a device and a computer program for controlling a user interface. One method of controlling a user interface includes projecting the user interface onto a hand of a user. The method further comprises determining three-dimensional distance information of a distance between the hand and a distance sensor. The method further comprises determining a movement of at least parts of the hand along a depth axis between the hand and the distance sensor based on the three-dimensional distance information. The method further comprises controlling the user interface based on the movement of at least parts of the hand along the depth axis between the hand and the distance sensor.
Description
Technisches GebietTechnical area
Ausführungsbeispiele befassen sich mit Verfahren, einer Vorrichtung sowie einem Computerprogramm zum Steuern einer Benutzeroberfläche, genauer, aber nicht ausschließlich, mit Konzepten zum Steuern einer Benutzeroberfläche, bei denen die Benutzeroberfläche auf eine Hand projiziert wird.Exemplary embodiments deal with methods, a device and a computer program for controlling a user interface, more precisely, but not exclusively, with concepts for controlling a user interface in which the user interface is projected onto a hand.
Hintergrundbackground
Zur Steuerung von Benutzeroberflächen existieren einer Vielzahl von Ansätzen: So werden seit dem Beginn von elektrischen Systemen haptische Knöpfe oder Hebel benutzt, um Maschinen zu bedienen, etwa einfache Druckknöpfe. Um auch komplexere Systeme bedienen zu können wurden diese Knöpfe nach und nach in sog. Tastaturen zusammengefasst, wie sie auch heute genutzt werden, um Computer zu bedienen. Doch auch andere Eingabegeräte, wie etwa Mäuse, werden genutzt, um Benutzeroberflächen zu bedienen.There are a number of approaches to controlling user interfaces: For example, haptic buttons or levers, such as simple push buttons, have been used to operate machines since the beginning of electrical systems. In order to be able to operate more complex systems, these buttons were gradually combined in so-called keyboards, as they are also used today to operate computers. But other input devices, such as mice, are also used to operate user interfaces.
Eine weitere, seit den frühen 2000er Jahren häufig genutzte Möglichkeit, um Benutzeroberflächen zu bedienen, sind Touchscreens (berührungsempfindliche Anzeigegeräte), bei denen der Nutzer mit einem Finger oder einem sog. Stylus (Stift zur Bedienung von Touchscreens) die Benutzeroberfläche direkt manipulieren kann. Diese Eingabemöglichkeiten haben jedoch alle den Nachteil, dass ihre Implementierungen einen gewissen Platz benötigen oder eine ungünstige Ergonomie aufweisen: So benötigen Tastaturen und Mäuse eine große Fläche, auf der sie untergebracht werden können während Touchscreens in vielen Fällen ergonomisch fragwürdig sind, etwa in Bildschirmen, die annähernd Senkrecht vor dem Nutzer angeordnet sind.Another way of operating user interfaces that has been frequently used since the early 2000s is touchscreens (touch-sensitive display devices), in which the user can manipulate the user interface directly with a finger or a so-called stylus (pen for operating touchscreens). However, these input options all have the disadvantage that their implementations require a certain amount of space or have poor ergonomics: Keyboards and mice need a large area on which they can be accommodated, while touchscreens are ergonomically questionable in many cases, for example in screens that are arranged approximately vertically in front of the user.
Es besteht der Bedarf nach einem verbesserten Eingabekonzept zum Steuern einer Benutzeroberfläche.There is a need for an improved input concept for controlling a user interface.
ZusammenfassungSummary
Diesem Bedarf wird durch die Verfahren, die Vorrichtung sowie das Computerprogramm gemäß den unabhängigen Ansprüchen Rechnung getragen.This requirement is met by the method, the device and the computer program according to the independent claims.
Ausführungsbeispiele basieren auf der Einsicht, dass eine Hand genutzt werden kann, um die Benutzeroberfläche sowohl darzustellen als auch, über die Erfassung einer Bewegung der Hand, die Benutzeroberfläche zu steuern. Dazu wird erfindungsgemäß die Benutzeroberfläche auf die Hand eines Benutzers projiziert. Über einen Distanzsensor wird die Bewegung der Hand entlang einer Tiefenachse erfasst, d.h. die Bewegung der Hand wird beispielsweise nicht nur als laterale Bewegung erfasst, sondern auch in der Tiefenachse, was die Nutzung von intuitiveren Gesten in der Steuerung der Benutzeroberfläche ermöglicht. So kann z.B. eine Drehung der Hand erkannt werden, die dazu führt, dass die Benutzeroberfläche aktiviert oder deaktiviert wird, oder eine Krümmung der Hand kann erkannt werden und genutzt werden, um Auswahlmöglichkeiten der Benutzeroberfläche auszuwählen.Embodiments are based on the insight that a hand can be used to both display the user interface and to control the user interface by detecting a movement of the hand. For this purpose, according to the invention, the user interface is projected onto the hand of a user. The movement of the hand along a depth axis is recorded via a distance sensor, i.e. the movement of the hand is not only recorded as a lateral movement, for example, but also in the depth axis, which enables the use of more intuitive gestures in the control of the user interface. For example, a rotation of the hand can be recognized, which leads to the user interface being activated or deactivated, or a curvature of the hand can be recognized and used to select options in the user interface.
Ausführungsbeispiele schaffen ein Verfahren zum Steuern einer Benutzeroberfläche. Das Verfahren umfasst ein Projizieren der Benutzeroberfläche auf eine Hand eines Benutzers. Das Verfahren umfasst ferner ein Bestimmen von drei-dimensionaler Distanzinformation einer Distanz zwischen der Hand und einem Distanzsensor. Das Verfahren umfasst ferner ein Bestimmen einer Bewegung von zumindest Teilen der Hand entlang einer Tiefenachse zwischen der Hand und dem Distanzsensor basierend auf der dreidimensionalen Distanzinformation. Das Verfahren umfasst ferner ein Steuern der Benutzeroberfläche basierend auf der Bewegung von zumindest Teilen der Hand entlang der Tiefenachse zwischen der Hand und dem Distanzsensor. Durch die Projektion der Benutzeroberfläche auf die Hand, das Erfassen der Bewegung der Hand in der Tiefenachse und die Steuerung der Benutzeroberfläche basierend auf der erkannten Bewegung wird die Benutzeroberfläche bedienbar, ohne dass dabei eine Fläche für die Bedienung der Benutzeroberfläche vorgesehen sein muss, so dass zumindest manche Ausführungsbeispiele die erfindungsgemäße Aufgabe lösen.Exemplary embodiments create a method for controlling a user interface. The method includes projecting the user interface onto a hand of a user. The method further comprises determining three-dimensional distance information of a distance between the hand and a distance sensor. The method further comprises determining a movement of at least parts of the hand along a depth axis between the hand and the distance sensor based on the three-dimensional distance information. The method further comprises controlling the user interface based on the movement of at least parts of the hand along the depth axis between the hand and the distance sensor. By projecting the user interface onto the hand, detecting the movement of the hand in the depth axis and controlling the user interface based on the detected movement, the user interface can be operated without an area having to be provided for operating the user interface, so that at least some embodiments solve the problem according to the invention.
In zumindest manchen Ausführungsbeispielen umfasst das Bestimmen der Bewegung von zumindest Teilen der Hand ein Bestimmen einer Rotationsbewegung der Hand. Die Benutzeroberfläche kann basierend auf der Rotationsbewegung gesteuert werden. Das Erkennen der Rotationsbewegung wird durch das Bestimmung der Bewegung in der Tiefenachse ermöglicht oder verbessert, so dass entsprechende Bewegungen für die Bedienung der Benutzeroberfläche genutzt werden können.In at least some exemplary embodiments, determining the movement of at least parts of the hand includes determining a rotational movement of the hand. The user interface can be controlled based on the rotational movement. The detection of the rotational movement is made possible or improved by determining the movement in the depth axis, so that corresponding movements can be used to operate the user interface.
Beispielsweise kann das Verfahren ein Erkennen, ob eine Handinnenseite oder eine Handaußenseite dem Distanzsensor zugewandt ist, und ein Aktivieren der Benutzeroberfläche, falls die Handinnenseite durch eine Rotationsbewegung dem Distanzsensor zugewandt wird, umfassen. So kann die Rotation der Hand genutzt werden, um die Benutzeroberfläche zu aktivieren, indem intuitiv zwischen einer lediglich passiv genutzten Seite der Hand auf eine aktiv genutzte Seite der Hand gewechselt wird.For example, the method can include recognizing whether an inside or outside of the hand is facing the distance sensor, and activating the user interface if the inside of the hand is turned towards the distance sensor by a rotational movement. The rotation of the hand can be used to activate the user interface by switching intuitively between a side of the hand that is only used passively to an actively used side of the hand.
Zusätzlich oder alternativ kann das Bestimmen der Bewegung von zumindest Teilen der Hand ein Bestimmen einer Rotations- oder Krümmungsbewegung von zumindest Teilen der Hand umfassen. Die Benutzeroberfläche kann basierend auf der Rotations- oder Krümmungsbewegung gesteuert werden. Auch das Erkennen der Rotations- oder Krümmungsbewegung wird durch das Bestimmung der Bewegung in der Tiefenachse ermöglicht oder verbessert, so dass entsprechende Bewegungen für die Bedienung der Benutzeroberfläche genutzt werden können.Additionally or alternatively, determining the movement of at least parts of the hand can include determining a rotational or curving movement of at least parts of the hand. The user interface can be controlled based on the rotation or curvature movement. The detection of the rotational or curvature movement is also made possible or improved by determining the movement in the depth axis, so that corresponding movements can be used to operate the user interface.
Dabei kann durch eine Krümmung oder Rotation der Hand eine Auswahlmöglichkeit aus einer Mehrzahl von Auswahlmöglichkeiten ausgewählt werden. Durch die Krümmung oder Rotation wird die Auswahl ermöglicht, da sowohl ein Rotationsgrad der Rotation als auch ein Krümmungswinkel oder Krümmungsschwerpunkt eine feingranulare Auswahl von Auswahlmöglichkeiten ermöglichen.A selection option can be selected from a plurality of selection options by curving or rotating the hand. The selection is made possible by the curvature or rotation, since both a degree of rotation of the rotation and an angle of curvature or center of curvature allow a fine-grained selection of options.
Beispielsweise kann die Auswahl der Auswahlmöglichkeit durch ein Auswahlfeld in der Benutzeroberfläche visualisiert werden. Das Auswahlfeld kann durch die Krümmung oder Rotation der Hand so gesteuert werden, dass sich das Auswahlfeld basierend auf einer Lage der Hand schwerkraftgemäß zwischen den Auswahlmöglichkeiten bewegt. Durch eine schwerkraftgemäße Auswahl kann dem Benutzer eine intuitive Möglichkeit gegeben werden, um die Auswahlmöglichkeiten auszuwählen.For example, the selection of the selection option can be visualized by a selection field in the user interface. The selection field can be controlled by the curvature or rotation of the hand in such a way that the selection field moves between the selection options based on a position of the hand in accordance with the force of gravity. By making a selection based on gravity, the user can be given an intuitive way of selecting the options.
Alternativ oder zusätzlich kann die Benutzeroberfläche auch über die Krümmung der Finger bedient werden. Beispielsweise können zumindest zwei Auswahlmöglichkeiten der Benutzeroberfläche auf zumindest zwei Finger projiziert werden. Eine der zumindest zwei Auswahlmöglichkeiten kann ausgewählt werden, falls der entsprechende Finger gekrümmt wird. Dies ermöglicht einen direkten Zusammenhang zwischen der Auswahlmöglichkeit und dem Teil der Hand, der betätigt werden soll, um die Auswahlmöglichkeit auszuwählen.Alternatively or additionally, the user interface can also be operated using the curvature of the fingers. For example, at least two selection options of the user interface can be projected onto at least two fingers. One of the at least two options can be selected if the corresponding finger is curved. This enables a direct relationship between the selection option and the part of the hand that is to be actuated in order to select the selection option.
Beispielsweise kann eine der zumindest zwei Auswahlmöglichkeiten ausgewählt werden, falls der entsprechende Finger durch die Krümmung des Fingers einen weiteren Finger berührt, auf den keine Auswahlmöglichkeit projiziert wird. So kann etwa durch Zusammenführen eines Fingers mit Projektion und Daumen die Auswahl bestätigt werden.For example, one of the at least two selection options can be selected if, due to the curvature of the finger, the corresponding finger touches another finger onto which no selection option is projected. For example, the selection can be confirmed by bringing a finger, projection and thumb together.
In manchen Ausführungsbeispielen kann das Bestimmen der Bewegung von zumindest Teilen der Hand ein Bestimmen einer Bewegung der gesamten Hand entlang der Tiefenachse umfassen. Die Benutzeroberfläche kann basierend auf der Bewegung der gesamten Hand entlang der Tiefenachse gesteuert werden. Dies kann etwa genutzt werden, um eine Auswahl zu bestätigen oder um Werte graduell zu verändern.In some exemplary embodiments, determining the movement of at least parts of the hand can include determining a movement of the entire hand along the depth axis. The user interface can be controlled based on the movement of the entire hand along the depth axis. This can be used, for example, to confirm a selection or to change values gradually.
Beispielsweise kann durch eine Bewegung der gesamten Hand entlang der Tiefenachse in Richtung des Distanzsensors ein Element der Benutzeroberfläche geändert oder aktiviert werden. Im Falle des Aktivierens kann dies dem „Klicken“ einer Maus entsprechen.For example, an element of the user interface can be changed or activated by moving the entire hand along the depth axis in the direction of the distance sensor. In the case of activation, this can correspond to "clicking" a mouse.
In zumindest einigen Ausführungsbeispielen umfasst die drei-dimensionale Distanzinformation der Distanz zwischen der Hand und einem Distanzsensor eine Mehrzahl von Distanzwerten für unterschiedliche Abschnitte der Hand. Die Bewegung von zumindest Teilen der Hand kann basierend auf der Mehrzahl von Distanzwerten bestimmt werden. Dies ermöglicht oder verbessert eine Erkennung der Rotation und/oder der Krümmung der Hand.In at least some exemplary embodiments, the three-dimensional distance information of the distance between the hand and a distance sensor comprises a plurality of distance values for different sections of the hand. The movement of at least parts of the hand can be determined based on the plurality of distance values. This enables or improves recognition of the rotation and / or the curvature of the hand.
Das Verfahren kann ferner ein Bereitstellen einer akustischen Rückmeldung basierend auf der Steuerung der Benutzeroberfläche umfassen. Dies ermöglicht dem Benutzer eine verbesserte Rückmeldung auf die abstrakte Bedienung der Benutzeroberfläche mit der Hand.The method can further include providing an acoustic feedback based on the control of the user interface. This allows the user improved feedback on the abstract operation of the user interface by hand.
In zumindest manchen Ausführungsbeispielen ist die Steuerung der Benutzeroberfläche unabhängig von einer Bewegung der Hand orthogonal zu der Tiefenachse. Dies vermeidet Situationen, in denen der Benutzer eine unangenehme Handposition einhalten muss, während er die Benutzeroberfläche bedient.In at least some exemplary embodiments, the control of the user interface is independent of a movement of the hand orthogonal to the depth axis. This avoids situations in which the user has to maintain an uncomfortable hand position while operating the user interface.
Das Verfahren kann ein Bereitstellen eines Steuersignals für die Benutzeroberfläche umfassen, um das Steuern der Benutzeroberfläche zu bewirken. Das Steuern der Benutzeroberfläche kann durch die Benutzeroberfläche visualisiert werden. Das Steuersignal wird generiert, um nach der Verarbeitung der Bewegung der Hand die Benutzeroberfläche entsprechend steuern zu können. Dadurch, dass das Steuersignal entsprechende Instruktionen zum Steuern der Benutzeroberfläche enthält können diese ferner genutzt werden, um die Steuerung zu visualisieren.The method can include providing a control signal for the user interface in order to effect the control of the user interface. Controlling the user interface can be visualized through the user interface. The control signal is generated in order to be able to control the user interface accordingly after processing the movement of the hand. Because the control signal contains corresponding instructions for controlling the user interface, these can also be used to visualize the control.
In einigen Ausführungsbeispielen umfasst das Verfahren ein Erkennen, ob die Hand geöffnet oder geschlossen wird, basierend auf der Bewegung von zumindest Teilen der Hand entlang der Tiefenachse. Das Verfahren kann ein Aktivieren der Benutzeroberfläche, falls erkannt wird, dass die Hand geöffnet wird, und ein Deaktivieren der Benutzeroberfläche, falls erkannt wird, dass die Hand geschlossen wird, umfassen. Durch „Öffnen“ und „Schließen“ der Hand kann der Benutzer intuitiv signalisieren, dass er wünscht, die Benutzeroberfläche zu nutzen, oder dass er wünscht, die Nutzung zu beendigen.In some exemplary embodiments, the method includes recognizing whether the hand is being opened or closed based on the movement of at least parts of the hand along the depth axis. The method may include activating the user interface if it is detected that the hand is being opened and deactivating the user interface if it is detected that the hand is being closed. By "opening" and "closing" the hand, the user can intuitively signal that he wishes to use the user interface or that he wishes to stop using it.
Ausführungsbeispiele schaffen ferner ein weiteres Verfahren zum Steuern der Benutzeroberfläche. Wo das vorherige Verfahren sich auf das Gesamtsystem aus Distanzsensor, Projektionseinrichtung, Verarbeitung und Benutzeroberfläche bezieht, bezieht sich das weitere Verfahren auf die entsprechenden Merkmale in Bezug auf ein Verarbeitungsmodul, etwa einen Prozessor, das ausgebildet ist, um die Verarbeitungsschritte des o.g. Verfahrens auszuführen. Folglich entspricht das weitere Verfahren dem zuvor vorgestellten Verfahren in weiten Teilen. Das weitere Verfahren erfasst ein Bereitstellen eines Anzeigesignals für eine Projektionseinrichtung, um zu bewirken, dass die Benutzeroberfläche auf eine Hand eines Benutzers projiziert wird. Das weitere Verfahren umfasst ferner ein Erhalten eines Distanzmesssignals von einem Distanzsensor. Das weitere Verfahren umfasst ferner ein Bestimmen von drei-dimensionaler Distanzinformation einer Distanz zwischen der Hand und dem Distanzsensor basierend auf dem Distanzmesssignal. Das weitere Verfahren umfasst ferner ein Bestimmen einer Bewegung von zumindest Teilen der Hand entlang einer Tiefenachse zwischen der Hand und dem Distanzsensor basierend auf der dreidimensionalen Distanzinformation. Das weitere Verfahren umfasst ferner ein Bereitstellen eines Steuersignals für die Benutzeroberfläche, um ein Steuern der Benutzeroberfläche basierend auf der Bewegung von zumindest Teilen der Hand entlang der Tiefenachse zwischen der Hand und dem Distanzsensor zu bewirkenEmbodiments also provide a further method for controlling the user interface. Where the previous procedure related to the The overall system comprising distance sensor, projection device, processing and user interface relates, the further method relates to the corresponding features in relation to a processing module, for example a processor which is designed to carry out the processing steps of the above-mentioned method. Consequently, the further procedure corresponds to a large extent to the procedure presented above. The further method detects providing a display signal for a projection device in order to cause the user interface to be projected onto a hand of a user. The further method further comprises receiving a distance measurement signal from a distance sensor. The further method further comprises determining three-dimensional distance information of a distance between the hand and the distance sensor based on the distance measurement signal. The further method further comprises determining a movement of at least parts of the hand along a depth axis between the hand and the distance sensor based on the three-dimensional distance information. The further method further comprises providing a control signal for the user interface in order to effect a control of the user interface based on the movement of at least parts of the hand along the depth axis between the hand and the distance sensor
Ausführungsbeispiele schaffen ferner ein Programm mit einem Programmcode zum Durchführen des weiteren Verfahrens, wenn der Programmcode auf einem Computer, einem Prozessor, einem Kontrollmodul oder einer programmierbaren Hardwarekomponente ausgeführt wird.Embodiments also create a program with a program code for performing the further method when the program code is executed on a computer, a processor, a control module or a programmable hardware component.
Ausführungsbeispiele schaffen ferner eine Vorrichtung zum Steuern einer Benutzeroberfläche. Die Vorrichtung umfasst zumindest eine Schnittstelle ausgebildet zur Kommunikation mit einer Projektionseinrichtung und mit einem Distanzsensor. Die Vorrichtung umfasst ferner ein Verarbeitungsmodul ausgebildet zum Bereitstellen eines Anzeigesignals für die Projektionseinrichtung, um die Benutzeroberfläche auf eine Hand eines Benutzers zu projizieren. Das Verarbeitungsmodul ist ferner ausgebildet zum Erhalten eines Distanzmesssignals von dem Distanzsensor. Das Verarbeitungsmodul ist ausgebildet zum Bestimmen von drei-dimensionaler Distanzinformation einer Distanz zwischen der Hand und dem Distanzsensor basierend auf dem Distanzmesssignal. Das Verarbeitungsmodul ist ausgebildet zum Bestimmen einer Bewegung von zumindest Teilen der Hand entlang einer Tiefenachse zwischen der Hand und dem Distanzsensor basierend auf der dreidimensionalen Distanzinformation. Das Verarbeitungsmodul ist ferner ausgebildet zum Bereitstellen eines Steuersignals für die Benutzeroberfläche, um ein Steuern der Benutzeroberfläche basierend auf der Bewegung von zumindest Teilen der Hand entlang der Tiefenachse zwischen der Hand und dem Distanzsensor zu bewirken.Embodiments also create a device for controlling a user interface. The device comprises at least one interface designed for communication with a projection device and with a distance sensor. The device further comprises a processing module designed to provide a display signal for the projection device in order to project the user interface onto a hand of a user. The processing module is also designed to receive a distance measurement signal from the distance sensor. The processing module is designed to determine three-dimensional distance information of a distance between the hand and the distance sensor based on the distance measurement signal. The processing module is designed to determine a movement of at least parts of the hand along a depth axis between the hand and the distance sensor based on the three-dimensional distance information. The processing module is further designed to provide a control signal for the user interface in order to effect a control of the user interface based on the movement of at least parts of the hand along the depth axis between the hand and the distance sensor.
FigurenlisteFigure list
Einige Beispiele von Vorrichtungen und/oder Verfahren werden nachfolgend bezugnehmend auf die beiliegenden Figuren lediglich beispielhaft näher erläutert. Es zeigen:
-
1a bis1c zeigen Flussdiagramme von Ausführungsbeispielen von Verfahren zum Steuern einer Benutzeroberfläche; -
1d zeigt ein Blockdiagramm eines Ausführungsbeispiels einer Vorrichtung zum Steuern einer Benutzeroberfläche. -
2a bis2d zeigen schematische Zeichnungen eines Ausführungsbeispiels, in dem ein Telefonanruf angenommen wird; -
3a und3b zeigen schematische Zeichnungen eines weiteren Ausführungsbeispiels, in dem ein Auswahlmenü in 3 Dimensionen bedient wird; und -
4a und4b zeigen schematische Zeichnungen eines weiteren Ausführungsbeispiels, in dem eine Kategorie durch das Antippen von Fingerspitzen ausgewählt wird.
-
1a to1c show flow charts of exemplary embodiments of methods for controlling a user interface; -
1d FIG. 11 shows a block diagram of an embodiment of a device for controlling a user interface. -
2a to2d show schematic drawings of an embodiment in which a telephone call is accepted; -
3a and3b show schematic drawings of a further embodiment in which a selection menu is operated in 3 dimensions; and -
4a and4b show schematic drawings of a further embodiment in which a category is selected by tapping fingertips.
Beschreibungdescription
Verschiedene Beispiele werden nun ausführlicher Bezug nehmend auf die beiliegenden Figuren beschrieben, in denen einige Beispiele dargestellt sind. In den Figuren können die Stärken von Linien, Schichten und/oder Bereichen zur Verdeutlichung übertrieben sein.Various examples will now be described in more detail with reference to the accompanying figures, in which some examples are shown. In the figures, the strengths of lines, layers and / or areas may be exaggerated for clarity.
Während sich weitere Beispiele für verschiedene Modifikationen und alternative Formen eignen, sind dementsprechend einige bestimmte Beispiele derselben in den Figuren gezeigt und werden nachfolgend ausführlich beschrieben. Allerdings beschränkt diese detaillierte Beschreibung weitere Beispiele nicht auf die beschriebenen bestimmten Formen. Weitere Beispiele können alle Modifikationen, Entsprechungen und Alternativen abdecken, die in den Rahmen der Offenbarung fallen. Gleiche oder ähnliche Bezugszeichen beziehen sich in der gesamten Beschreibung der Figuren auf gleiche oder ähnliche Elemente, die bei einem Vergleich miteinander identisch oder in modifizierter Form implementiert sein können, während sie die gleiche oder eine ähnliche Funktion bereitstellen.Accordingly, while other examples are susceptible of various modifications and alternative forms, some specific examples thereof are shown in the figures and will be described in detail below. However, this detailed description does not limit other examples to the particular forms described. Other examples may cover all modifications, equivalents, and alternatives that come within the scope of the disclosure. Throughout the description of the figures, the same or similar reference symbols refer to the same or similar elements which, when compared with one another, may be identical or implemented in a modified form while they provide the same or a similar function.
Es versteht sich, dass, wenn ein Element als mit einem anderen Element „verbunden“ oder „gekoppelt“ bezeichnet wird, die Elemente direkt, oder über ein oder mehrere Zwischenelemente, verbunden oder gekoppelt sein können. Wenn zwei Elemente A und B unter Verwendung eines „oder“ kombiniert werden, ist dies so zu verstehen, dass alle möglichen Kombinationen offenbart sind, d. h. nur A, nur B sowie A und B, sofern nicht explizit oder implizit anders definiert. Eine alternative Formulierung für die gleichen Kombinationen ist „zumindest eines von A und B“ oder „A und/oder B“. Das Gleiche gilt, mutatis mutandis, für Kombinationen von mehr als zwei Elementen.It will be understood that when an element is referred to as being “connected” or “coupled” to another element, the elements may be connected or coupled directly, or through one or more intermediate elements. If two Elements A and B are combined using an “or”, this is to be understood in such a way that all possible combinations are disclosed, ie only A, only B and A and B, unless otherwise explicitly or implicitly defined. An alternative phrase for the same combinations is “at least one of A and B” or “A and / or B”. The same applies, mutatis mutandis, to combinations of more than two elements.
Die Terminologie, die hier zum Beschreiben bestimmter Beispiele verwendet wird, soll nicht begrenzend für weitere Beispiele sein. Wenn eine Singularform, z. B. „ein, eine“ und „der, die, das“ verwendet wird und die Verwendung nur eines einzelnen Elements weder explizit noch implizit als verpflichtend definiert ist, können weitere Beispiele auch Pluralelemente verwenden, um die gleiche Funktion zu implementieren. Wenn eine Funktion nachfolgend als unter Verwendung mehrerer Elemente implementiert beschrieben ist, können weitere Beispiele die gleiche Funktion unter Verwendung eines einzelnen Elements oder einer einzelnen Verarbeitungsentität implementieren. Es versteht sich weiterhin, dass die Begriffe „umfasst“, „umfassend“, „aufweist“ und/oder „aufweisend“ bei Gebrauch das Vorhandensein der angegebenen Merkmale, Ganzzahlen, Schritte, Operationen, Prozesse, Elemente, Komponenten und/oder einer Gruppe derselben präzisieren, aber nicht das Vorhandensein oder das Hinzufügen eines oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Operationen, Prozesse, Elemente, Komponenten und/einer Gruppe derselben ausschließen.The terminology used herein to describe specific examples is not intended to be limiting of additional examples. When a singular form, e.g. B. "ein, an" and "der, die, das" are used and the use of only a single element is neither explicitly nor implicitly defined as mandatory, further examples can also use plural elements to implement the same function. When a function is described below as being implemented using multiple elements, other examples may implement the same function using a single element or a single processing entity. It is further understood that the terms “comprises”, “comprising”, “having” and / or “having” the presence of the specified features, integers, steps, operations, processes, elements, components and / or a group thereof when used Specify but not exclude the presence or addition of one or more other characteristics, integers, steps, operations, processes, elements, components and / or a group thereof.
Sofern nicht anderweitig definiert, werden alle Begriffe (einschließlich technischer und wissenschaftlicher Begriffe) hier in ihrer üblichen Bedeutung auf dem Gebiet verwendet, zu dem Beispiele gehören.Unless otherwise defined, all terms (including technical and scientific terms) are used herein with their normal meaning in the field to which examples belong.
Die
Die folgende Beschreibung bezieht sich sowohl auf die Verfahren der
Ausführungsbeispiele befassen sich mit Verfahren, Computerprogrammen und Vorrichtung zum Steuern einer Benutzeroberfläche. Die Benutzeroberfläche ist in diesem Fall eine visuelle Benutzeroberfläche, d.h. sie wird von dem Benutzer sehend wahrgenommen, und sie ist veränderbar, d.h. die Benutzeroberfläche verändert sich, etwa basierend auf einer Eingabe des Benutzer oder basierend auf Ereignissen eines Betriebssystems. Die Benutzeroberfläche wird in Ausführungsbeispielen auf eine (einzige) Hand des Benutzers projiziert
Beispielsweise kann die Projektionseinrichtung oberhalb der Hand des Benutzers angeordnet sein, etwa in einer Standleuchte, in einer Deckenleuchte, an der Decke eines Raums oder eine Fahrzeugs oder an einer Wand oder einem elektronischen Gerät, wie etwa einem Monitor. Die Benutzeroberfläche kann durch die Projektionseinrichtung (von oben) auf eine Oberfläche der Hand des Benutzers projiziert werden. Der Distanzsensor kann nach Wahl ebenfalls oberhalb der Hand des Benutzers angeordnet sein, etwa wie die Projektionseinrichtung/parallel zur Projektionseinrichtung. Alternativ kann der Distanzsensor unterhalb der Hand des Benutzers angeordnet sein.For example, the projection device can be arranged above the user's hand, for example in a floor lamp, in a ceiling lamp, on the ceiling of a room or a vehicle or on a wall or an electronic device such as a monitor. The user interface can be projected (from above) onto a surface of the hand of the user by the projection device. The distance sensor can optionally also be arranged above the hand of the user, for example like the projection device / parallel to the projection device. Alternatively, the distance sensor can be arranged below the user's hand.
Die Projektion der Benutzeroberfläche auf die Hand des Benutzers kann von der Distanz zwischen der Hand des Benutzers und der Projektionseinrichtung abhängen. Im Allgemeinen hat die Benutzeroberfläche eine feste Zielgröße, die basierend auf der Distanz zwischen der Hand des Benutzers und der Projektionseinrichtung angepasst werden kann, etwa um eine vorgegebene absolute Größe (etwa 8x10 cm) oder eine vorgegebene Größe relativ zur Hand (etwa 50%/60%/70%/80% einer Fläche des Handrückens oder der Handinnenseite) der Benutzeroberfläche zu erreichen. Ferner kann die Projektion der Benutzeroberfläche auf die Hand des Benutzers basierend auf der Distanz angepasst werden, um zu erreichen, dass die Benutzeroberfläche „scharf“ auf der Hand dargestellt ist, etwa durch Anpassen der Fokaldistanz. In anderen Worten kann das Verfahren ein Anpassen der Projektion der Benutzeroberfläche basierend auf der drei-dimensionalen Distanzinformation umfassen, etwa um eine vorgegebene absolute Größe oder eine vorgegebene Größe relativ zur Hand zu erreichen, oder um die Projektion scharzustellen. Dabei kann das Scharfstellen der Projektion über die Änderung der Fokaldistanz basierend auf der drei-dimensionalen Distanzinformation erfolgen. Die absolute oder relative Größe der Benutzeroberfläche kann durch Ändern des Bildwinkels, basierend auf drei-dimensionalen Distanzinformation erfolgen. Ferner kann die Projektion basierend auf einer Bewegung der Hand orthogonal zu der Tiefenachse angepasst werden, d.h. eine Zielrichtung der Projektion kann abhängig von der Bewegung der Hand orthogonal zu der Tiefenachse angepasst werden, etwa basierend auf der dreidimensionalen Distanzinformation.The projection of the user interface onto the hand of the user can depend on the distance between the hand of the user and the projection device. In general, the user interface has a fixed target size that can be adjusted based on the distance between the user's hand and the projection device, e.g. by a predetermined absolute size (about 8x10 cm) or a predetermined size relative to the hand (about 50% / 60 % / 70% / 80% of an area on the back of the hand or the palm of the hand) of the user interface. Furthermore, the projection of the user interface onto the hand of the user can be adjusted based on the distance in order to achieve that the user interface is displayed “sharply” on the hand, for example by adjusting the focal distance. In other words, the method can include an adaptation of the projection of the user interface based on the three-dimensional distance information, for example in order to achieve a predefined absolute size or a predefined size relative to the hand, or in order to focus the projection. The projection can be brought into focus by changing the focal distance based on the three-dimensional distance information. The absolute or relative size of the user interface can be done by changing the angle of view based on three-dimensional distance information. Furthermore, the projection can be adjusted based on a movement of the hand orthogonally to the depth axis, i.e. a target direction of the projection can be adjusted as a function of the movement of the hand orthogonally to the depth axis, for example based on the three-dimensional distance information.
Das Verfahren umfasst das Bestimmen
Die Distanzinformation ist drei-dimensional ausgeprägt, d.h. die Distanzinformation unterscheidet nicht nur Abstände zwischen Distanzsensor und Hand in der Tiefenachse, sondern auch Orthogonal zur Tiefenachse. Wird etwa durch die Achse zwischen Hand und Distanzsensor die Tiefenachse (auch z-Achse) definiert, so wird orthogonal dazu eine laterale Ebene aufgespannt, die durch eine x-Achse und eine y-Achse definiert sind. Innerhalb der lateralen Ebene, die orthogonal zur Tiefenachse aufgespannt ist, umfasst die Distanzinformationen Unterscheidungen, d.h. die Bewegung der Hand wird nicht nur relativ zur Tiefenachse bestimmt, sondern auch orthogonal dazu. Dies kann genutzt werden, um die Hand nicht als Ganzes wahrzunehmen, sondern um eine Mehrzahl (etwa zumindest zwei, zumindest vier, zumindest 10) Distanzwerte für unterschiedliche Abschnitte der Hand zu Bestimmen und zu Verfolgen. In anderen Worten kann die drei-dimensionale Distanzinformation der Distanz zwischen der Hand und einem Distanzsensor eine Mehrzahl von Distanzwerten für unterschiedliche Abschnitte der Hand umfassen. Die Bewegung von zumindest Teilen der Hand (die den unterschiedlichen Abschnitten entsprechen können) kann basierend auf der Mehrzahl von Distanzwerten bestimmt
Das Verfahren umfasst das Bestimmen
Beispielsweise kann das Bestimmen
In manchen Ausführungsbeispielen kann das Bestimmen der Bewegung von zumindest Teilen der Hand ein Bestimmen
Zusätzlich oder alternativ zu der Rotation und/oder Krümmung kann ebenfalls eine Bewegung der gesamten Hand entlang der Tiefenachse bestimmt werden, etwa eine Auf- oder Abwärtsbewegung der Hand (falls der Distanzsensor unterhalb oder oberhalb der Hand angeordnet ist). Dabei kann etwa ein Durchschnittswert der Mehrzahl von Distanzwerten gebildet werden, d.h. die Bewegung der gesamten Hand entlang der Tiefenachse kann basierend auf dem Durchschnittswert der Mehrzahl von Distanzwerten bestimmt werden. Dabei kann die Bewegung der gesamten Hand entlang der Tiefenachse entlang der Tiefenachse beispielsweise berücksichtigt werden, falls sie einen Distanzschwellenwert innerhalb einer vorgegebenen Zeitspanne überschreitet (beispielsweise mehr als 1 cm innerhalb von 0,5 s). Zudem kann die Bewegung der gesamten Hand entlang der Tiefenachse entlang der Tiefenachse beispielsweise berücksichtigt werden, falls keine (oder lediglich eine geringe) Rotationsbewegung und/oder keine (oder lediglich eine geringe) Krümmungsbewegung vorliegt.In addition or as an alternative to the rotation and / or curvature, a movement of the entire hand along the depth axis can also be determined, for example an upward or downward movement of the hand (if the distance sensor is arranged below or above the hand). For example, an average value of the plurality of distance values can be formed, i.e. the movement of the entire hand along the depth axis can be determined based on the average value of the plurality of distance values. The movement of the entire hand along the depth axis along the depth axis can be taken into account, for example, if it exceeds a distance threshold value within a predetermined period of time (for example more than 1 cm within 0.5 s). In addition, the movement of the entire hand along the depth axis along the depth axis can be taken into account, for example, if there is no (or only a slight) rotational movement and / or no (or only a slight) curvature movement.
Das Verfahren umfasst ferner das Steuern
In Folgenden wird dargestellt, wie die bestimmte Bewegung genutzt werden kann, um die Benutzeroberfläche zu steuern. Dabei wird im Folgenden davon ausgegangen, dass die Bewegung in eine Steuerungsanweisung (des Steuersignals) für die Benutzeroberfläche umgesetzt wird, d.h. eine abstrakte Bewegung wird verarbeitet und die Steuerungsanweisung wird basierend auf der Bewegung (ggf. kontextabhängig) generiert. Sowohl die Bewegungen als auch die Auswirkungen auf die Benutzeroberfläche werden abstrakt beschrieben, es sollte jedoch immer mitgelesen werden, dass die jeweilige Bewegung erkannt wird, eine entsprechende Steuerungsanweisung basierend auf der erkannten Bewegung generiert wird und diese Steuerungsanweisung geeignet ist, um die Benutzeroberfläche entsprechend zu steuern.The following shows how the particular movement can be used to control the user interface. In the following, it is assumed that the movement is converted into a control instruction (of the control signal) for the user interface, i.e. an abstract movement is processed and the control instruction is generated based on the movement (possibly context-dependent). Both the movements and the effects on the user interface are described in abstract terms, but it should always be noted that the respective movement is detected, a corresponding control instruction is generated based on the detected movement and this control instruction is suitable for controlling the user interface accordingly .
Beispielsweise kann die Krümmungs- oder Rotationsbewegung der Hand genutzt werden, um die Benutzeroberfläche zu steuern. Durch eine Krümmung oder Rotation der Hand kann eine Auswahlmöglichkeit aus einer Mehrzahl von Auswahlmöglichkeiten ausgewählt werden. So kann in einem einfachen Ausführungsbeispiel die Benutzeroberfläche ein Auswahlfeld umfassen, wobei die Mehrzahl von Auswahlmöglichkeiten sequenziell in dem Auswahlfeld darstellbar sind. Basierend auf der Rotationsbewegung kann die Benutzeroberfläche so gesteuert werden, dass die Auswahlmöglichkeiten sequenziell durch das Auswahlfeld hindurch verschoben (d.h. „gescrollt“) werden. Dies kann entweder solange geschehen wie die Rotationsbewegung ausgeführt wird (wobei die beiden Rotationsrichtungen unterschieden werden), oder die Verschiebung kann solange durchgeführt werden, wie eine Rotationslage der Hand unterschiedlich zu einer Ruhelage der Hand ist. Die Krümmung der Hand kann ähnlich genutzt werden. Wird durch Krümmung der Hand eine Schieflage erzeugt, so können die Auswahlmöglichkeiten sequenziell durch das Auswahlfeld hindurch verschoben, etwa entlang der Schieflage. Dies ist eine einfache Form einer schwerkraftgemäßen Bedienung der Benutzeroberfläche. In einer schwerkraftgemäßen Bedienung der Benutzeroberfläche wird eine Lage, Krümmung und/oder Rotation der Hand dermaßen interpretiert, dass ein Auswahlfeld (ähnlich wie ein „Cursor“) oder die Auswahlmöglichkeiten entlang der Schwerkraft verschoben wird/werden. Wird die Hand schräg gehalten (durch Rotation oder Krümmung), so verschiebt sich das Auswahlfeld oder die Auswahlmöglichkeiten schwerkraftgemäß nach unten. In anderen Worten kann ein Auswahlfeld durch die Krümmung oder Rotation der Hand so gesteuert werden, dass sich das Auswahlfeld basierend auf einer Lage der Hand schwerkraftgemäß zwischen den Auswahlmöglichkeiten bewegt. Dabei kann das Auswahlfeld (der Cursor) in der Hand balanciert werden. Das Auswahlfeld kann beispielsweise in einer Dimension verschiebbar sein (entlang einer Achse) oder in zwei Dimensionen verschiebbar sein (entlang zweier orthogonal zueinander verlaufenden Achsen). Schwerkraftgemäß bedeutet dabei, dass sich, bei Schräglage der Hand, das Auswahlfeld dorthin bewegt, wo eine Oberfläche der Hand, eine geringere Höhe über dem Boden aufweist (wobei auf die Oberfläche die Benutzeroberfläche projiziert wird).For example, the curving or rotating movement of the hand can be used to control the user interface. A selection option can be selected from a plurality of selection options by curving or rotating the hand. Thus, in a simple exemplary embodiment, the user interface can include a selection field, the plurality of selection options being able to be displayed sequentially in the selection field. Based on the rotational movement, the user interface can be controlled in such a way that the selection options are sequentially shifted (ie "scrolled") through the selection field. This can either happen as long as the rotational movement is being carried out (with a distinction being made between the two directions of rotation), or the displacement can be carried out as long as a rotational position of the hand is different from a rest position of the hand. The curvature of the hand can be used similarly. If the curvature of the hand creates a tilt, the selection options can be sequential through the selection field shifted, roughly along the inclination. This is a simple form of gravity control of the user interface. When the user interface is operated according to gravity, a position, curvature and / or rotation of the hand is interpreted in such a way that a selection field (similar to a “cursor”) or the selection options is / are moved along the force of gravity. If the hand is held at an angle (by rotation or curvature), the selection field or the selection options move downwards according to gravity. In other words, a selection field can be controlled by the curvature or rotation of the hand in such a way that the selection field moves between the selection options based on a position of the hand in accordance with the force of gravity. The selection field (the cursor) can be balanced in the hand. The selection field can, for example, be displaceable in one dimension (along an axis) or displaceable in two dimensions (along two axes that run orthogonally to one another). According to gravity means that, when the hand is tilted, the selection field moves to where a surface of the hand has a lower height above the ground (the user interface being projected onto the surface).
Alternativ oder zusätzlich kann beispielsweise eine Krümmung eines Fingers genutzt werden, um die Benutzeroberfläche zu steuern. Beispielsweise können, wie in
In manchen Ausführungsbeispielen kann die Benutzeroberfläche basierend auf der Bewegung der gesamten Hand entlang der Tiefenachse gesteuert werden. So kann beispielsweise durch die Bewegung der gesamten Hand entlang der Tiefenachse in Richtung des Distanzsensors ein Element der Benutzeroberfläche aktiviert werden, beispielsweise eine Auswahlmöglichkeit bestätigt werden. So kann eine Auswahlmöglichkeit beispielsweise bestätigt werden, indem die Hand ruckartig entlang der Tiefenachse nach oben (etwa in Richtung des Distanzsensors) bewegt wird. Alternativ oder zusätzlich kann durch die Bewegung der gesamten Hand entlang der Tiefenachse in Richtung des Distanzsensors ein Element der Benutzeroberfläche geändert werden, etwa eine Auswahlmöglichkeit der Mehrzahl von Auswahlmöglichkeiten ausgewählt werden oder ein numerischer Wert graduell oder gemäß einem vorgegebenen Intervall geändert werden (abhängig von der Distanz der gesamten Hand von dem Distanzsensor).In some embodiments, the user interface can be controlled based on the movement of the entire hand along the depth axis. For example, by moving the entire hand along the depth axis in the direction of the distance sensor, an element of the user interface can be activated, for example a selection option can be confirmed. For example, a selection option can be confirmed by jerking the hand upwards along the depth axis (e.g. in the direction of the distance sensor). Alternatively or additionally, an element of the user interface can be changed by moving the entire hand along the depth axis in the direction of the distance sensor, for example one of the plurality of options can be selected or a numerical value can be changed gradually or according to a predetermined interval (depending on the distance the entire hand from the distance sensor).
Neben der Lage der Hand zur Auswahl von Auswahlmöglichkeiten können auch festgefertigte Gesten genutzt werden, um festgelegte Aktionen auszuführen, etwa um die Benutzeroberfläche zu aktivieren
In einigen Ausführungsbeispielen kann eine Bewegung der Hand, die rein orthogonal zu der Tiefenachse erfolgt, außer Acht gelassen werden. In anderen Worten kann die Steuerung der Benutzeroberfläche unabhängig von einer Bewegung der Hand orthogonal zu der Tiefenachse sein.In some exemplary embodiments, a movement of the hand that is purely orthogonal to the depth axis can be disregarded. In other words, the control of the user interface can be orthogonal to the depth axis independently of a movement of the hand.
Das Verfahren kann ferner ein Bereitstellen
Die zumindest eine Schnittstelle
Mehr Details und Aspekte des Verfahrens, der Vorrichtung, des Computerprogramms und des Fahrzeugs werden in Verbindung mit dem Konzept oder Beispielen genannt, die vorher oder nachher beschrieben werden. Das Verfahren, die Vorrichtung, das Computerprogramm oder das Fahrzeug kann/können ein oder mehrere zusätzliche optionale Merkmale umfassen, die ein oder mehreren Aspekten des vorgeschlagenen Konzepts oder der beschriebenen Beispiele entsprechen, wie sie vorher oder nachher beschrieben wurden.More details and aspects of the method, the device, the computer program and the vehicle are mentioned in connection with the concept or examples which are described before or after. The method, the device, the computer program or the vehicle may include one or more additional optional features that correspond to one or more aspects of the proposed concept or the examples described, as described before or after.
Ausführungsbeispiele befassen sich im Allgemeinen mit einer Objektsteuerung in Körper-Projizierten Benutzeroberflächen. Generell kann in Körper-Projizierten Benutzeroberflächen ein Cursor auf einer Hand über laterale x/y-Bewegungen gesteuert werden.Embodiments generally deal with object control in body-projected user interfaces. In general, in body-projected user interfaces, a cursor on one hand can be controlled via lateral x / y movements.
Zusätzlich dazu wird eine intuitivere Möglichkeit untersucht, um einen Cursor auf einer Hand zu steuern. Dabei kann das Objekt etwa über Rotationsbewegungen der Hand gesteuert werden, indem der Cursor quasi in der Hand balanciert wird.In addition, a more intuitive way to control a cursor on a hand is explored. The object can be controlled by rotating the hand, for example, by balancing the cursor in the hand.
Eine solche Steuerung des Cursors wird mit Hilfe der folgenden Figuren beschrieben.Such control of the cursor is described with the aid of the following figures.
Die Aspekte und Merkmale, die zusammen mit einem oder mehreren der vorher detaillierten Beispiele und Figuren beschrieben sind, können auch mit einem oder mehreren der anderen Beispiele kombiniert werden, um ein gleiches Merkmal des anderen Beispiels zu ersetzen oder um das Merkmal in das andere Beispiel zusätzlich einzuführen.The aspects and features that are described together with one or more of the previously detailed examples and figures can also be combined with one or more of the other examples in order to replace an identical feature of the other example or to add the feature in the other example to introduce.
Beispiele können weiterhin ein Computerprogramm mit einem Programmcode zum Ausführen eines oder mehrerer der obigen Verfahren sein oder sich darauf beziehen, wenn das Computerprogramm auf einem Computer oder Prozessor ausgeführt wird. Schritte, Operationen oder Prozesse von verschiedenen, oben beschriebenen Verfahren können durch programmierte Computer oder Prozessoren ausgeführt werden. Beispiele können auch Programmspeichervorrichtungen, z. B. Digitaldatenspeichermedien, abdecken, die maschinen-, prozessor- oder computerlesbar sind und maschinenausführbare, prozessorausführbare oder computerausführbare Programme von Anweisungen codieren. Die Anweisungen führen einige oder alle der Schritte der oben beschriebenen Verfahren aus oder verursachen deren Ausführung. Die Programmspeichervorrichtungen können z. B. Digitalspeicher, magnetische Speichermedien wie beispielsweise Magnetplatten und Magnetbänder, Festplattenlaufwerke oder optisch lesbare Digitaldatenspeichermedien umfassen oder sein. Weitere Beispiele können auch Computer, Prozessoren oder Steuereinheiten, die zum Ausführen der Schritte der oben beschriebenen Verfahren programmiert sind, oder (feld-)programmierbare Logik-Arrays ((F)PLAs = (Field) Programmable Logic Arrays) oder (feld-)programmierbare Gate-Arrays ((F)PGA = (Field) Programmable Gate Arrays), die zum Ausführen der Schritte der oben beschriebenen Verfahren programmiert sind, abdecken.Examples can furthermore be or relate to a computer program with a program code for executing one or more of the above methods when the computer program is executed on a computer or processor. Steps, operations or processes of various methods described above can be carried out by programmed computers or processors. Examples can also include program storage devices, e.g. Digital data storage media that are machine, processor, or computer readable and encode machine, processor, or computer executable programs of instructions. The instructions perform or cause some or all of the steps in the procedures described above. The program storage devices may e.g. B. digital storage, magnetic storage media such as magnetic disks and tapes, hard disk drives or optically readable digital data storage media or be. Further examples can also include computers, processors or control units which are programmed to carry out the steps of the method described above, or (field) programmable logic arrays ((F) PLAs = (field) programmable logic arrays) or (field) programmable ones Gate Arrays ((F) PGA = (Field) Programmable Gate Arrays) that are programmed to perform the steps of the procedures described above.
Durch die Beschreibung und Zeichnungen werden nur die Grundsätze der Offenbarung dargestellt. Weiterhin sollen alle hier aufgeführten Beispiele grundsätzlich ausdrücklich nur illustrativen Zwecken dienen, um den Leser beim Verständnis der Grundsätze der Offenbarung und der durch den (die) Erfinder beigetragenen Konzepte zur Weiterentwicklung der Technik zu unterstützen. Alle hiesigen Aussagen über Grundsätze, Aspekte und Beispiele der Offenbarung sowie konkrete Beispiele derselben umfassen deren Entsprechungen.The description and drawings only represent the principles of the disclosure. Furthermore, all examples listed here are expressly intended to serve only illustrative purposes in order to support the reader in understanding the principles of the disclosure and the concepts contributed by the inventor (s) for the further development of the technology. All statements herein about principles, aspects, and examples of the disclosure as well as specific examples of the same include their equivalents.
Ein als „Mittel zum...“ Ausführen einer bestimmten Funktion bezeichneter Funktionsblock kann sich auf eine Schaltung beziehen, die ausgebildet ist zum Ausführen einer bestimmten Funktion. Somit kann ein „Mittel für etwas“ als ein „Mittel ausgebildet für oder geeignet für etwas“ implementiert sein, z. B. ein Bauelement oder eine Schaltung ausgebildet für oder geeignet für die jeweilige Aufgabe.A function block referred to as a “means for ...” performing a specific function can refer to a circuit that is designed to perform a specific function. Thus, a “means for something” can be implemented as a “means designed for or suitable for something”, e.g. B. a component or a circuit designed for or suitable for the respective task.
Funktionen verschiedener in den Figuren gezeigter Elemente einschließlich jeder als „Mittel“, „Mittel zum Bereitstellen eines Signals“, „Mittel zum Erzeugen eines Signals“, etc. bezeichneter Funktionsblöcke kann in Form dedizierter Hardware, z. B „eines Signalanbieters“, „einer Signalverarbeitungseinheit“, „eines Prozessors“, „einer Steuerung“ etc. sowie als Hardware fähig zum Ausführen von Software in Verbindung mit zugehöriger Software implementiert sein. Bei Bereitstellung durch einen Prozessor können die Funktionen durch einen einzelnen dedizierten Prozessor, durch einen einzelnen gemeinschaftlich verwendeten Prozessor oder durch eine Mehrzahl von individuellen Prozessoren bereitgestellt sein, von denen einige oder von denen alle gemeinschaftlich verwendet werden können. Allerdings ist der Begriff „Prozessor“ oder „Steuerung“ bei Weitem nicht auf ausschließlich zur Ausführung von Software fähige Hardware begrenzt, sondern kann Digitalsignalprozessor-Hardware (DSP-Hardware; DSP = Digital Signal Processor), Netzprozessor, anwendungsspezifische integrierte Schaltung (ASIC = Application Specific Integrated Circuit), feldprogrammierbare Logikanordnung (FPGA = Field Programmable Gate Array), Nurlesespeicher (ROM = Read Only Memory) zum Speichern von Software, Direktzugriffsspeicher (RAM = Random Access Memory) und nichtflüchtige Speichervorrichtung (storage) umfassen. Sonstige Hardware, herkömmliche und/oder kundenspezifische, kann auch eingeschlossen sein.Functions of various elements shown in the figures, including each function block referred to as "means", "means for providing a signal", "means for generating a signal", etc. may be in the form of dedicated hardware, e.g. B “a signal provider”, “a signal processing unit”, “a processor”, “a controller” etc. as well as being implemented as hardware capable of executing software in conjunction with the associated software. When provided by a processor, the functions can be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some or all of which can be shared. However, the term "processor" or "controller" is by no means limited to hardware that is exclusively capable of executing software, but can include digital signal processor hardware (DSP hardware; DSP = digital signal processor), network processor, application-specific integrated circuit (ASIC = application Specific Integrated Circuit), Field Programmable Gate Array (FPGA), Read Only Memory (ROM) for storing software, Random Access Memory (RAM), and non-volatile storage device (storage). Other hardware, conventional and / or custom, can also be included.
Ein Blockdiagramm kann zum Beispiel ein grobes Schaltdiagramm darstellen, das die Grundsätze der Offenbarung implementiert. Auf ähnliche Weise können ein Flussdiagramm, ein Ablaufdiagramm, ein Zustandsübergangsdiagramm, ein Pseudocode und dergleichen verschiedene Prozesse, Operationen oder Schritte repräsentieren, die zum Beispiel im Wesentlichen in computerlesbarem Medium dargestellt und so durch einen Computer oder Prozessor ausgeführt werden, ungeachtet dessen, ob ein solcher Computer oder Prozessor explizit gezeigt ist. In der Beschreibung oder in den Patentansprüchen offenbarte Verfahren können durch ein Bauelement implementiert werden, das ein Mittel zum Ausführen eines jeden der jeweiligen Schritte dieser Verfahren aufweist.For example, a block diagram may represent a high level circuit diagram that implements the principles of the disclosure. Similarly, a flowchart, sequence diagram, state transition diagram, pseudocode, and the like may represent various processes, operations, or steps, for example, essentially represented in computer readable medium and so performed by a computer or processor, whether or not such Computer or processor is shown explicitly. Methods disclosed in the description or in the claims can be implemented by a device having means for performing each of the respective steps of these methods.
Es versteht sich, dass die Offenbarung mehrerer, in der Beschreibung oder den Ansprüchen offenbarter Schritte, Prozesse, Operationen oder Funktionen nicht als in der bestimmten Reihenfolge befindlich ausgelegt werden soll, sofern dies nicht explizit oder implizit anderweitig, z. B. aus technischen Gründen, angegeben ist. Daher werden diese durch die Offenbarung von mehreren Schritten oder Funktionen nicht auf eine bestimmte Reihenfolge begrenzt, es sei denn, dass diese Schritte oder Funktionen aus technischen Gründen nicht austauschbar sind. It is to be understood that the disclosure of multiple steps, processes, operations, or functions disclosed in the specification or claims should not be construed as being in order, unless explicitly or implicitly otherwise, e.g. B. for technical reasons is given. Therefore, the disclosure of several steps or functions does not limit them to a specific order, unless these steps or functions are not interchangeable for technical reasons.
Ferner kann bei einigen Beispielen ein einzelner Schritt, Funktion, Prozess oder Operation mehrere Teilschritte, -funktionen, -prozesse oder -operationen einschließen und/oder in dieselben aufgebrochen werden. Solche Teilschritte können eingeschlossen sein und Teil der Offenbarung dieses Einzelschritts sein, sofern sie nicht explizit ausgeschlossen sind.Further, in some examples, a single step, function, process, or operation may include and / or be broken down into multiple sub-steps, functions, processes, or operations. Such sub-steps can be included and part of the disclosure of this single step, unless they are explicitly excluded.
Weiterhin sind die folgenden Ansprüche hiermit in die detaillierte Beschreibung aufgenommen, wo jeder Anspruch als getrenntes Beispiel für sich stehen kann. Während jeder Anspruch als getrenntes Beispiel für sich stehen kann, ist zu beachten, dass - obwohl ein abhängiger Anspruch sich in den Ansprüchen auf eine bestimmte Kombination mit einem oder mehreren anderen Ansprüchen beziehen kann - andere Beispiele auch eine Kombination des abhängigen Anspruchs mit dem Gegenstand jedes anderen abhängigen oder unabhängigen Anspruchs umfassen können. Solche Kombinationen werden hier explizit vorgeschlagen, sofern nicht angegeben ist, dass eine bestimmte Kombination nicht beabsichtigt ist. Ferner sollen auch Merkmale eines Anspruchs für jeden anderen unabhängigen Anspruch eingeschlossen sein, selbst wenn dieser Anspruch nicht direkt abhängig von dem unabhängigen Anspruch gemacht ist.Furthermore, the following claims are hereby incorporated into the detailed description, where each claim can stand on its own as a separate example. While each claim may stand on its own as a separate example, it should be noted that although a dependent claim in the claims may refer to a particular combination with one or more other claims, other examples also combine the dependent claim with the subject matter of each other dependent or independent claims. Such combinations are explicitly suggested here unless it is indicated that a particular combination is not intended. Furthermore, it is intended to include features of a claim for any other independent claim, even if that claim is not made directly dependent on the independent claim.
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019118952.7A DE102019118952A1 (en) | 2019-07-12 | 2019-07-12 | Method, device and computer program for controlling a user interface |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019118952.7A DE102019118952A1 (en) | 2019-07-12 | 2019-07-12 | Method, device and computer program for controlling a user interface |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102019118952A1 true DE102019118952A1 (en) | 2021-01-14 |
Family
ID=74092292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102019118952.7A Pending DE102019118952A1 (en) | 2019-07-12 | 2019-07-12 | Method, device and computer program for controlling a user interface |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102019118952A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021115090A1 (en) | 2021-06-11 | 2022-12-15 | Bayerische Motoren Werke Aktiengesellschaft | Method and apparatus for providing a one-hand user interface |
-
2019
- 2019-07-12 DE DE102019118952.7A patent/DE102019118952A1/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021115090A1 (en) | 2021-06-11 | 2022-12-15 | Bayerische Motoren Werke Aktiengesellschaft | Method and apparatus for providing a one-hand user interface |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1853990B1 (en) | Input device, input method, corresponding computer program, and corresponding computer-readable storage medium | |
DE60320393T2 (en) | SYSTEM AND METHOD FOR COMPUTER PROGRAM NAVIGATION USING A GRAPHIC USER INTERFACE | |
DE202017105262U1 (en) | Create virtual notation surfaces with gestures in an augmented and / or virtual reality environment | |
DE112012007203T5 (en) | Information display device, display information operation method | |
DE112016004135T5 (en) | Teleportation in an augmented and / or virtual reality environment | |
DE102010036906A1 (en) | Configurable pie menu | |
DE102009012638A1 (en) | Method for displaying and using a user interface and an electronic device | |
DE202011110907U1 (en) | Multi-touch marker menus and directional pattern-forming gestures | |
DE112010002760T5 (en) | User interface | |
DE202005021492U1 (en) | Electronic device with touch-sensitive input device | |
DE112012007167T5 (en) | Information display device, display information operation method | |
DE112006003515T5 (en) | Unlock a device by running gestures on an unlock screen | |
DE112013004801T5 (en) | Multimodal touch screen emulator | |
DE102017218120A1 (en) | A method of providing haptic feedback to an operator of a touch-sensitive display | |
DE112019001607T5 (en) | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHODS AND PROGRAM | |
DE102010023613A1 (en) | Navigation device and method therefor | |
DE102012220062A1 (en) | SETTING MULTIPLE USER INPUT PARAMETERS | |
DE102012020607A1 (en) | Method for controlling selection element e.g. cursor, on monitor of e.g. navigation device, of motor vehicle i.e. passenger car, involves activating function of electronic device by control device based on relative position of finger | |
DE102013015024A1 (en) | gear cutting | |
DE202017105674U1 (en) | Control a window using a touch-sensitive edge | |
WO2010083821A1 (en) | Method for controlling a selected object displayed on a screen | |
EP3538977B1 (en) | Method for operating an operating system, and operating system | |
DE102021122362A1 (en) | SWITCHING BETWEEN STATES IN A HYBRID VIRTUAL REALITY DESKTOP COMPUTING ENVIRONMENT | |
DE102013203918A1 (en) | A method of operating a device in a sterile environment | |
DE102016010920A1 (en) | Smart touch |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R012 | Request for examination validly filed |