CONTACT GROUPING AND GESTURE RECOGNITION FOR SURFACE COMPUTING
First Claim
1. Apparatus comprising at least one physical computer-readable storage medium having stored thereon computer-executable instructions that, when loaded into at least one hardware processor and executed, transform the hardware processor to perform the following:
- receive at least one indication of a physical action directed by at least one user toward a surface computing system, wherein the physical action as represented by a plurality of contact points, wherein the contact points represent physical actions taken by the user in interacting with a software application presented on the surface computing system;
associate respective velocity parameters with the contact points;
select at least first and second contact points to maximize a differential between velocity parameters associated with the selected contact inputs;
associate a first one of the selected contact points with a first data structure;
associate a second one of the selected contact points with a second data structure;
assign a velocity parameter associated with the first contact point to the first data structure;
associate a first remainder of the contact points with the first data structure; and
associate a second remainder of the contact points with the second data structure.
2 Assignments
0 Petitions
Accused Products
Abstract
Tools and techniques for contact grouping and gesture recognition for surface computing are provided. These tools receive, from a finger grouping subsystem, data representing velocity parameters associated with contact points, with the contact points representing physical actions taken by users in interacting with software applications presented on a surface computing system. These tools also identify gestures corresponding to the physical actions by analyzing the velocity parameters, and provide indications of the identified gestures to the software applications.
57 Citations
20 Claims
-
1. Apparatus comprising at least one physical computer-readable storage medium having stored thereon computer-executable instructions that, when loaded into at least one hardware processor and executed, transform the hardware processor to perform the following:
-
receive at least one indication of a physical action directed by at least one user toward a surface computing system, wherein the physical action as represented by a plurality of contact points, wherein the contact points represent physical actions taken by the user in interacting with a software application presented on the surface computing system; associate respective velocity parameters with the contact points; select at least first and second contact points to maximize a differential between velocity parameters associated with the selected contact inputs; associate a first one of the selected contact points with a first data structure; associate a second one of the selected contact points with a second data structure; assign a velocity parameter associated with the first contact point to the first data structure; associate a first remainder of the contact points with the first data structure; and associate a second remainder of the contact points with the second data structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. Apparatus comprising at least one physical computer-readable storage medium having stored thereon computer-executable instructions that, when loaded into at least one hardware processor and executed, transform the hardware processor to perform the following:
-
receive, from a finger grouping subsystem, data representing a velocity parameter associated with at least one contact point, wherein the contact point represents a physical action taken by at least one user in interacting with a software application presented on a surface computing system; identify a gesture corresponding to the physical action by analyzing the velocity parameter; and provide an indication of the identified gesture to the software application. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A surface computing system comprising:
-
at least one instance of processing hardware; at least one bus system coupled to communicate with the processing hardware; at least one computer-readable storage medium coupled to communicate with the processing hardware via the bus system, wherein the storage medium is encoded with computer-executable instructions that, when loaded into the processing hardware, transform the processing hardware to receive at least one indication of a physical action directed by at least one user toward the surface computing system, wherein the physical action is represented by a plurality of contact points that correspond to a plurality of fingers associated with the user; associate respective velocity and position parameters with the contact points; select two of the contact points having a maximum velocity differential therebetween; associate a first one of the selected contact points with a first virtual hand structure; associate a second one of the selected contact points with a second virtual hand structure; assign the velocity and position parameters of the first selected contact point to the first virtual hand structure; assign the velocity and position parameters of the second selected contact point to the second virtual hand structure; and calculate a gesture represented by the physical action, based on relative movement between the first and second virtual hand structures as indicated by analysis of the first and second contact points. - View Dependent Claims (19, 20)
-
Specification