Multi-Contact Gesture Recognition for Graphical Object Manipulation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Interactive input systems face challenges in accurately determining the intended image processing operations during user pointer interaction with graphical objects, leading to ambiguous interpretations and limited communication of user intent.

Innovation Solution

A method and system that receive input events from an interactive surface, determine the number of contacts, track their movement, and identify graphical object manipulations based on the number of contacts and object type, allowing for specific actions such as moving, resizing, copying, and deleting graphical objects.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If pointer-based inputs are used for manipulating graphical objects, then the system provides intuitive visual interaction, but the interpretation of user intent becomes ambiguous

Engineering Contradiction:
Improvevisual interactionVSAvoiduser intent determination
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The system changes the parameters of pointer input by detecting multiple contact points (fingers) simultaneously and using their relative positions, distances, and movement patterns to differentiate between various manipulation intents. This transforms ambiguous single-pointer input into distinguishable multi-parameter gestures that clearly indicate user intent.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system segments the pointer input into multiple contact points, each with its own position and movement characteristics. By analyzing the relationship between these segmented contact points (distance, relative movement, contact timing), the system can distinguish between different manipulation operations such as moving, resizing, or rotating graphical objects.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If multiple contact points are detected to determine user intent, then the accuracy of manipulation identification improves, but the system complexity increases

Engineering Contradiction:
Improvemanipulation identification accuracyVSAvoidinput processing system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system creates a simplified representation of the multi-contact gesture by calculating key parameters such as distance between contacts, relative movement vectors, and contact patterns. These copied/derived parameters serve as features for classification, reducing the complexity of analyzing raw multi-contact data while maintaining high accuracy in identifying manipulation intent.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If the system supports multiple manipulation operations for different object types, then the versatility of the input system improves, but the difficulty of determining intended operation increases

Engineering Contradiction:
Improvemanipulation operationsVSAvoidintended operation detection
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The system applies different analysis rules and parameter weightings based on the local context of each graphical object type. For example, different manipulation operations may be more likely or appropriate for different object types (images, text, shapes), and the system adjusts its interpretation accordingly. This localized adaptation reduces ambiguity without requiring a complete reanalysis for each object type.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9588673B2Method for manipulating a graphical object and an interactive input system employing the same
Publication Date: 2017.03.07 SMART TECH INC (CA)
  • US9588673B2 patent drawing
  • US9588673B2 patent drawing
  • US9588673B2 patent drawing

AI summary

A method comprises receiving an input event generated when at least one contact is made on an interactive surface at a location corresponding to a graphical object; determining the number of contacts associated with the input event; tracking movement of the at least one contact on the interactive surface; identifying a graphical object manipulation based on the number of contacts, the movement of the at least one contact, and the graphical object type; and performing the graphical object manipulation.