US11275446B2 - Gesture-based user interface - Google Patents

Gesture-based user interface Download PDF

Info

Publication number
US11275446B2
US11275446B2 US15/644,008 US201715644008A US11275446B2 US 11275446 B2 US11275446 B2 US 11275446B2 US 201715644008 A US201715644008 A US 201715644008A US 11275446 B2 US11275446 B2 US 11275446B2
Authority
US
United States
Prior art keywords
gesture
user
determining
commands
receiving
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.)
Active, expires
Application number
US15/644,008
Other versions
US20180011544A1 (en
Inventor
David Franklin
Van Shea Sedita
Stephen Simpson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Capital One Services LLC
Original Assignee
Capital One Services LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Capital One Services LLC filed Critical Capital One Services LLC
Priority to US15/644,008 priority Critical patent/US11275446B2/en
Publication of US20180011544A1 publication Critical patent/US20180011544A1/en
Assigned to CAPITAL ONE SERVICES, LLC reassignment CAPITAL ONE SERVICES, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FRANKLIN, DAVID, SIMPSON, STEPHEN, Sedita, Van Shea
Priority to US17/589,927 priority patent/US20220261083A1/en
Application granted granted Critical
Publication of US11275446B2 publication Critical patent/US11275446B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • B60K35/10
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • G10L17/22Interactive procedures; Man-machine interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • B60K2360/146
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2370/00Details of arrangements or adaptations of instruments specially adapted for vehicles, not covered by groups B60K35/00, B60K37/00
    • B60K2370/10Input devices or features thereof
    • B60K2370/12Input devices or input features
    • B60K2370/146Input by gesture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/30User interface
    • G08C2201/32Remote control based on movements, attitude of remote control device

Definitions

  • a financial service provider e.g., a bank
  • various applications through which a customer can remotely access and management her financial accounts.
  • UIs user interfaces
  • Traditional UIs are achieved by way of, for example, key combinations, mouse motions, mouse clicks, and displays. However, they often require hand-eye coordination of a user. They may also require multiple user actions to finish a task. Thus, these traditional UIs are unintuitive, slow, and rigid. For example, when the above bank customer discovers that suspicious activates have occurred to her account, she needs to first find and open the “emergency contact” page in the banking application. She may then face a pop-up window listing several reasons for contacting the bank. She needs to select the most applicable reason and then click a “confirm” button to send an emergency notice to the bank. Sometimes, she may also be required to type a message describing her situation. This way of interacting with the application is cumbersome.
  • physically impaired people may not be able to effectively use a conventional UI.
  • a visually impaired person cannot view information displayed on a screen, and cannot use a mouse or keyboard as intended.
  • patients suffering from hand or finger arthritis often find it difficult, painful, or even impossible to perform the clicking action on a mouse button or typing action on a keyboard.
  • mobile devices e.g., a smart phone and a smart wristband
  • the size constraints associated with mobile devices renders many input devices associated with conventional computing systems, such as keyboards, mouse, etc., to be impractical.
  • the present disclosure provides methods and systems for providing a natural UI between a user and a computer program, i.e., an application or an operating system.
  • the natural interactions may be in the form of gestures. Additional aspects of the disclosed embodiments are set forth below in this disclosure.
  • a computer-implemented method for enabling gesture-based interactions between a computer program and a user may include initiating the computer program. The method may also include detecting that a condition has occurred. The method may also include activating a gesture-based operation mode of the computer program. The method may also include receiving gesture data generated by a sensor, the gesture data representing a gesture performed by the user. The method may further include performing a task based on the gesture data.
  • a non-transitory computer readable medium stores instructions, which when executed, cause at least one processor to perform a method for enabling gesture-based interactions between a computer program and a user.
  • the method may include initiating the computer program.
  • the method may also include detecting that a condition has occurred.
  • the method may also include activating a gesture-based operation mode of the computer program.
  • the method may also include receiving gesture data generated by a sensor, the gesture data representing a gesture performed by the user.
  • the method may further include performing a task based on the gesture data.
  • a terminal may include a memory storing instructions that are part of a computer program.
  • the terminal may also include a processor configured to execute the instructions to: initiate the computer program; detect that a condition has occurred; activate a gesture-based operation mode of the computer program; receive gesture data generated by a sensor, the gesture data representing a gesture performed by the user; and perform a task based on the gesture data.
  • FIG. 1 is a block diagram of an exemplary system, consistent with disclosed embodiments.
  • FIG. 2 is a block diagram of an exemplary client device, consistent with disclosed embodiments.
  • FIG. 3A is a schematic diagram illustrating an exemplary gesture-based user interfaces, consistent with the disclosed embodiments.
  • FIG. 3B is a schematic diagram illustrating an exemplary gesture-based user interfaces, consistent with the disclosed embodiments.
  • FIG. 3C is a schematic diagram illustrating an exemplary gesture-based user interfaces, consistent with the disclosed embodiments.
  • FIG. 3D is a schematic diagram illustrating an exemplary gesture-based user interfaces, consistent with the disclosed embodiments.
  • FIG. 4 is a flowchart of an exemplary method for receiving and executing gesture commands, consistent with disclosed embodiments.
  • FIG. 5 is a flowchart of an exemplary method for enabling gesture-based interactions between a client device and a user, consistent with disclosed embodiments.
  • FIG. 6 is a flowchart of an exemplary method for setting gesture commands, consistent with disclosed embodiments.
  • FIG. 7 is a flowchart of an exemplary method for providing gesture-related suggestions to a user, consistent with disclosed embodiments.
  • the disclosed embodiments include methods and systems configured to, for example, provide a natural language-based UI between a user and a computer program, i.e., an application or an operating system.
  • the natural language may be in the form of gestures.
  • the computer program may have two operation modes, i.e., a standard operation mode and a gesture-based operation mode.
  • the gesture-based operation mode When the gesture-based operation mode is activated, the computer program may activate the features of receiving and executing gesture commands, and convert the existing UI into a gesture-focused UI, through which all or majority of the functions of the computer program may be controlled by gesture commands.
  • the accessibility of the gesture-focused UI may be further enhanced by incorporate assistive technologies like voice/sound recognition, such that physically disabled users may interact with the computer problem through voices/sounds, in addition to gestures.
  • FIG. 1 is a block diagram of an exemplary system 100 for performing one or more operations consistent with the disclosed embodiments.
  • system 100 may include one or more service provider systems 110 , one or more client devices 120 , one or more users 121 , one or more cloud servers 130 , and a network 140 .
  • Components of system 100 may be configured to receive and execute gesture commands, according to the disclosed embodiments.
  • Client device 120 may be a desktop computer, a laptop, a server, a mobile device (for example, tablet, smart phone, etc.), a smart TV, a wearable device (for example, multifunctional watch, smart wristband, pair of multifunctional glasses), or any suitable device with computing capability and/or gesture sensing capability.
  • client device 120 may be a computing device that is not operated by user 121 , but is part of a system, such as a home entertainment system, a building security system, an automated teller machine (ATM). These systems, for example, may be associated with a third-party.
  • ATM automated teller machine
  • client device 120 may include a gesture sensing device for capturing real-time gesture data of a person (e.g., user 121 ).
  • the gesture data may represent the movements performed by user 121 .
  • a gesture sensing device may be incorporated into client device 120 or otherwise in communication with client device 120 .
  • Client device 120 may also include executable software instructions for performing certain aspects of the disclosed methods.
  • client device 120 includes executable software instructions provided as part of an application or app associated with a service provider, such as, for example, a financial service provider for performing operations associated with one or more financial service accounts.
  • the disclosed methods may be performed in association with the financial service application.
  • Client device 120 is discussed in additional detail with respect to FIG. 2 , below.
  • the disclosed methods may be used to enable client device 120 to interact with user 121 based on gestures, voices, or any other types of input performed by user 121 .
  • some or all steps of the disclosed methods may be implemented by service provider system 110 .
  • Service provider system 110 may be associated with any service providing entity, including a financial service entity that provides, maintains, manages, or otherwise offers financial services.
  • the financial service entity may be a bank, credit card issuer, or any other type of financial service entity that generates, provides, manages, and/or maintains financial service accounts for one or more users.
  • Financial service accounts may include, for example, credit card accounts, loan accounts, checking accounts, savings accounts, reward or loyalty program accounts, and/or any other type of financial service account known to those skilled in the art.
  • service provider system 110 may be enabled by the disclosed methods to remotely interact with a person associated with a financial service account, through gesture commands.
  • cloud server 130 may be independent of or associated with one or more service provider systems 110 , one or more merchant systems (not shown), or a plurality of other entity systems (not shown) associated with system 100 .
  • cloud server 130 may be associated with a third-party service entity that provides services such as analyzing data regarding the behaviors and/or habits of people in using the financial service applications.
  • Service provider system 110 , client device 120 , and cloud server 130 may include one or more computing devices (e.g., computer(s), server(s), etc.), memory storing data and/or software instructions (e.g., database(s), memory devices, etc.), and other known computing components configured to perform the disclosed methods.
  • the one or more computing devices may include one or more processors configured to execute software instructions stored on one or more memory devices to perform one or more methods or other operations consistent with the disclosed embodiments.
  • users may operate one or more components of system 100 to receive communications, initiate operations, and/or provide input for one or more operations consistent with the disclosed embodiments. The disclosed embodiments are not limited to any particular configuration of system 100 .
  • Network 140 may comprise any type of computer networking arrangement configured to provide communications or exchange data, or both, between components of system 100 .
  • network 140 may include any type of network (including infrastructure) that provides communications, exchanges information, and/or facilitates the exchange of information, such as the Internet, a private data network, a virtual private network using a public network, a Wi-Fi network, a LAN or WAN network, and/or other suitable connections that may enable information exchange among various components of system 100 .
  • Network 140 may also include a public switched telephone network (“PSTN”) and/or a wireless cellular network.
  • PSTN public switched telephone network
  • Network 140 may be a secured network or unsecured network.
  • one or more components of system 100 may communicate directly through a dedicated communication link(s).
  • system 100 may have been defined herein for the convenience of the description.
  • the components and arrangement of the components included in system 100 may vary.
  • service provider system 110 and cloud server 130 may be implemented together as part of a single system.
  • system 100 may include other components that perform or assist in the performance of one or more processes consistent with the disclosed methods.
  • Alternatives including equivalents, extensions, variations, deviations, etc., of those described herein will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
  • FIG. 2 shows an exemplary configuration of client device 120 , consistent with disclosed embodiments.
  • Client device 120 may run a computer program to receive and execute gesture commands from user 121 . These gesture commands may operate client device 120 to perform remote or mobile transactions with service provider system 110 .
  • client device 120 may be a personal computing device.
  • client device 120 may be a smartphone, a laptop or notebook computer, a tablet, a wearable device, or any mobile device with computing ability, or any combination of these computers and/or affiliated components.
  • client device 120 may be a device that has computing capabilities and is operated by user 121 .
  • client device 120 may be a smart TV, a dashboard in a vehicle, etc.
  • Client device 120 may include any arrangement of one or more computing devices configured to perform one or more operations consistent with disclosed embodiments.
  • Client device 120 may include one or more processors configured to execute software instructions stored in memory, such as memory 240 included in client device 120 .
  • Client device 120 may include software that when executed by a processor (e.g., processor 230 ) performs known Internet-related communication, content display processes, and financial service-related processes for user 121 .
  • client device 120 may execute browser or related mobile display software that generates and displays interfaces including content on a display device included in, or in communication with, client device 120 .
  • Client device 120 may be a mobile device that executes mobile device applications and/or mobile device communication software that allows client device 120 to communicate with service provider system 110 or could server 130 and other components over network 140 , and generates and displays content in interfaces via a display device included in client device 120 .
  • the disclosed embodiments are not limited to any particular configuration of client device 120 .
  • Client device 120 may be configured with storage that stores one or more operating systems that perform known operating system functions when executed by one or more processors.
  • the operating systems may include Microsoft WindowsTM, UnixTM, LinuxTM, AndroidTM, OS XTM, or other types of operating systems. Accordingly, embodiments of the disclosed invention may operate and function with computer systems running any type of operating system.
  • Client device 120 may also include communication software that, when executed by a processor, provides communications with network 140 , such as Web browser software, tablet or smart handheld device networking software, etc.
  • Client device 120 may include an input/output (I/O) interface 210 configured to allow client device 120 to send and receive information from user 121 or another device.
  • I/O interface 210 may include various input/output devices, such as a keyboard, a mouse-type device, a physical button, a click wheel, oratory input, etc.
  • I/O interface 210 may include various gesture detection sensors 211 configured to sense gestures performed by user 121 .
  • gesture detection sensors 211 may include an image capturing device, such as a CMOS or CCD image sensor, configured to capture images of gestures performed by user 121 .
  • Gesture detection sensors 211 may also include a proximity sensor configured to detect proximity of a body part from the computing device.
  • a proximity sensor configured to detect proximity of a body part from the computing device.
  • user 121 may use hands for making one or more gestures.
  • the proximity sensor may thus detect proximity of the hand.
  • Gesture detection sensors 211 may also include a radar configured to detect number of body parts and angular movement of the body parts required to make one or more gestures.
  • user 121 may use hands for making the one or more gestures.
  • the radar detects number of fingers used and angular movement of the hand while making the one or more gestures.
  • Gesture detection sensors 211 may also include an infrared (IR) muscle contraction sensor configured to detect number of muscles involved while making the one or more gestures.
  • IR infrared
  • Gesture detection sensors 211 may also include any other devices suitable for detecting gestures performed by user 121 , such as an accelerometer, a gyroscope, a pressure sensor, or the like.
  • client device 120 may also receive gesture data from gesture detection sensors that are in communication with client device 120 but are separate from or otherwise not integrated in client device 120 . It is also contemplated that other type of input devices may also be converted into gesture sensing devices. For example, a mouse or a remote control, when installed with a motion sensor, can also sense the gestures performed by user 121 .
  • I/O Interface 210 may also include a screen providing an input/output interface between the client device 120 and user 121 .
  • the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes the touch panel, the screen may be realized as a touch screen to receive input signals from the user.
  • the touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may not only sense a boundary of a touch or swipe action, but also sense a period of time and a pressure associated with the touch or swipe action.
  • I/O interface 210 may also include devices configured to output and/or input audio signals.
  • I/O interface 210 may include a microphone configured to receive an external audio signal when client device 120 is in an operation mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal may be stored in memory 210 .
  • I/O interface 210 may further include a speaker to output audio signals
  • Client device 120 may include a communication component 220 configured to facilitate communication, wired or wirelessly, between client device 120 and other devices.
  • Client device 120 may access a wireless network based on one or more communication standard, such as Wi-Fi, LTE, 2G, 3G, 4G, 5G, etc.
  • communication component 220 may receive a broadcast signal or receive associated information from an external broadcast management system via a broadcast channel.
  • communication component 220 may further include a NFC module to facilitate short-range communications.
  • communication component 220 may be implemented based on a radio frequency identification (RFID) technology, an infrared data association (IrDA) technology, an ultra-wideband (UWB) technology, a Bluetooth technology, a short-range wireless technology, or other technologies.
  • RFID radio frequency identification
  • IrDA infrared data association
  • UWB ultra-wideband
  • Bluetooth Bluetooth
  • short-range wireless technology or other technologies.
  • Client device 120 may include at least one processor 230 , which may be one or more known computing processors, such as one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, micro-controllers, microprocessors, or other electronic components.
  • processor 230 may execute various instructions stored in client device 120 to perform various functions of the disclosed embodiments described in greater detail below.
  • Client device 120 may include a memory 240 , which may be a volatile or non-volatile, magnetic, semiconductor, tape, optical, removable, non-removable, or other type of storage device or tangible (i.e., non-transitory) computer-readable medium.
  • Memory 240 may store one or more programs 250 .
  • Programs 250 may include operating systems (not shown) that perform known operating system functions when executed by one or more processors. Disclosed embodiments may operate and function with computer systems running any type of operating system.
  • Client device 120 may be a device that executes mobile applications for performing operations consistent with disclosed embodiments, such as a tablet or mobile device.
  • client device 120 may have a financial service application 252 installed thereon, which may enable client device 120 to communicate with service provider system 110 , which may be associated with a financial entity, via network 140 and perform aspects of the disclosed methods for enabling gesture-based interactions between client device 120 and user 121 .
  • financial service application 252 may have a gesture-based operation mode. When this mode is enabled, financial service application 252 may constantly monitor the gestures performed by user 121 and execute commands corresponding to the gestures.
  • FIGS. 3A-3D illustrate four exemplary implementations of gesture-based user interface, consistent with the disclosed embodiments.
  • client device 120 may include a touch screen or touch pad.
  • User 121 may move her fingers or hands directly on the surface of the touch screen to issue a gesture command.
  • client device 120 may include an air-gesture capturing system (e.g., a camera system) for capturing user 120 's movement in the open air.
  • an air-gesture capturing system e.g., a camera system
  • user 121 may be a visually impaired person who cannot use the touch screen of client device 120 as intended. Instead, user 121 may move her fingers, hands, and/or arms in the open air near client device 120 to issue gesture commands.
  • client device 120 may have an audio system (not pictured in FIG. 3B ) configured to generate voice feedback about the execution results of the gesture commands and/or capture and recognize voice commands issued by user 121 .
  • the gesture and voice commands allow a visually impaired person to quickly interact with client device 120 .
  • client device 130 may be a smart TV.
  • the smart TV may be part of a home entertainment system that can sense and recognize gestures performed by user 121 .
  • the smart TV may have a touch screen, on which user 121 may perform various gestures.
  • User 121 may perform gestures on the touch pad, which in turn transmit information about the gestures to the smart TV.
  • the smart TV may be paired with a remote control with motion sensing capabilities. User 121 may move the remote control in the air, so as to generate gesture commands.
  • the smart TV may also include an air-gesture capturing system, such that user 121 may openly gesture in the air to issue commands.
  • client device 120 may be a control panel on a dashboard of a vehicle.
  • the control panel may have a touch surface through which user 121 may issue gesture commands.
  • user 121 may openly gesture in the air towards the control panel to issue commands. In these ways, user 121 may interact with the control panel quickly without being overly distracted from driving the vehicle.
  • the following processes are directed to various embodiments for enabling gesture-based interactions between client device 120 and user 121 .
  • the following processes may be performed by various aspects and components of system 100 as is apparent from the disclosure.
  • FIG. 4 is a flowchart of a method 400 for receiving and executing gesture-based commands, consistent with disclosed embodiments.
  • method 400 may be performed by client device 120 , which is installed with financial service application 252 .
  • client device 120 may initiate financial service application 252 .
  • client device 120 may display an icon associated with financial service application 252 on a screen of client device 120 .
  • client device 120 may activate financial service application 252 .
  • financial service application 252 may be initiated by user 121 though audio command.
  • client device 120 detects a sound pattern corresponding to financial service application 252
  • client device 120 may initiate financial service application 252 .
  • Other embodiments for initiating financial service application 252 are possible as well.
  • Financial service application 252 may have two operation modes, a standard operation mode and a gesture-based operation mode.
  • financial service application 252 may present a normal user interface.
  • financial service application 252 makes client device 120 to display webpages and/or interface windows in a display screen.
  • User 121 may use a mouse to navigate on the webpages and/or windows, and switch among them.
  • User 121 may also perform standard touch operations, such as clicking, on a touch screen of client device 120 .
  • financial service application 252 may activate and establish communication with gesture detection sensors 211 .
  • Financial service application 252 may also convert other existing input and output devices of client device 120 into portals to receive gesture commands.
  • financial service application 252 may convert the entire screen of client device 120 into a touch screen or touch pad and lock the screen in such touch mode, so that user 121 may conveniently use the entire screen area to issue gesture commands and avoid distractions from other unrelated UI features, for example, pop-up keyboards.
  • financial service application 252 may completely or mainly operate based on gesture commands. Financial service application 252 may execute all possible commands and functions based on gestures performed by user 121 . This is advantageous because, for example, a visually impaired user can rely on gestures to directly and quickly communicate with financial service application 252 .
  • financial service application 252 may automatically switch to the gesture-based operation mode when an emergency is detected. For example, when user 121 discovers that her financial accounts are compromised, she may click a hot key in financial service application 252 to switch to the gesture-based operation mode. As described below in more details, gesture commands may be faster than other types of input methods, and thus entering the gesture-based operation mode may allow user 121 to react to the emergency more quickly.
  • financial service application 252 may determine whether to enter the gesture-based mode based on identity of user 121 . For example, a visually impaired user may rely on the gesture-based mode to use the functions of financial service application 252 . When financial service application 252 determines that the current user is a predetermined disabled user, financial service application 252 may automatically switch to the gesture-based mode.
  • the identity of a person may be determined based on facial recognition techniques to identify distinct facial features of a person's face captured in image data. Other image processing techniques may be used to identify a user's fingerprint, or a pattern of a person's iris, or other biometric information identifiable in the image data.
  • biometric information may include uniquely identifying information associated with a user such as a “signature” pattern of facial changes or contortions associated with speech, or a “signature” of hand movements associated with performing certain gestures. For example, a person may be identified based on the unique combination or “signature” of facial changes when speaking certain letters, words, or sounds. People may also be identified based on the unique hand or finger positioning patterns when making certain gestures.
  • the disclosed embodiments may generally determine the identity of a person based on any suitable biometric information that may be captured in image data with a prescribed authentication parameter.
  • client device 120 may activate the gesture-based operation mode.
  • the gesture-based operation mode creates an extra interaction “layer,” either in addition to or in replacement of the existing user interface, for receiving gesture commands from user 121 and present gesture-related information to user 121 .
  • user 121 may use gestures to enter all or some of the commands provided by financial service application 252 .
  • the gesture-based operation mode may also use other assistive technologies to assist user 121 in using the gesture commands.
  • the gesture-based operation may use audio cue to inform user 121 about the execution result of the gesture commands or to prompt user 121 to enter certain gesture commands.
  • the gesture-based operation mode may enable financial service application 252 to receive, recognize, and execute audio commands from user 121 .
  • client device 120 may receive gesture data representing a gesture performed by user 121 .
  • the gesture data may include a single image or a video clip.
  • the signal image may show a static hand or finger gesture.
  • the video clip may show a motion of the hand or finger.
  • the gesture data may include both a still image and a video clip to show relationship between a static gesture and a related motion.
  • client device 120 may determine the gesture based on the gesture data. For example, client device 120 may use any suitable computer-vision algorithm to extract features from the gesture data and decipher the gesture represented by the gesture data. Then, in step 412 , client device 120 may query a database to determine a command corresponding to the gesture.
  • the database may store a mapping relationship between the commands used in financial service application 252 and the corresponding gestures.
  • client device 120 may confirm whether the command is intended by the user.
  • Client device 120 may employ various confirmation mechanisms.
  • client device 120 may generate a prompt requesting the user to confirm the command.
  • the prompt may be in various formats, such as a visual or verbal cue.
  • Client device 120 may require the user to actively confirm that the identified command is correct. Exemplary ways of making the active confirmations may include pressing a button, performing a gesture, speaking a phrase, or a combination thereof.
  • client device 120 may require the user to perform a confirmation gesture, such as thumbs-up for “yes” and thumbs-down for “no.” Alternatively, client device 120 may indicate that the identified command will be executed unless the user indicates, within a predetermined time period (e.g., five seconds), that the command is incorrect. Once the command is confirmed, client device 120 may proceed to execute the command (step 416 ).
  • a confirmation gesture such as thumbs-up for “yes” and thumbs-down for “no.”
  • client device 120 may indicate that the identified command will be executed unless the user indicates, within a predetermined time period (e.g., five seconds), that the command is incorrect.
  • client device 120 may proceed to execute the command (step 416 ).
  • Method 400 can create a gesture-focused UI aided with assistive technologies like audio recognition.
  • Such gesture-focused UI makes the previous complex interfaces easier to use.
  • a visually impaired user 121 may slide her finger through a fingerprint scanner on client device 120 or read out a predetermined phrase.
  • financial service application 252 may enter the gesture-based operation mode.
  • user 121 may draw a circle in the air to instruct financial service application 252 to check her account balance.
  • financial service application 252 may generate an audio message presenting the current balance and the account activities within the last week.
  • user 121 may perform an “S” shaped air-gesture to instruct financial service application 252 to disable the account and transmit a duress signal to service provider system 110 . This way, user 121 can use one or two gestures to complete a transaction in financial service application 252 . The experience of using financial service application 252 can become simpler and faster.
  • FIG. 5 is a flowchart of a method 500 for enabling gesture-based interactions between client device 120 and user 121 , according to some exemplary embodiments.
  • client device 120 may detect user 121 has performed a first gesture. As described above (steps 412 - 416 ), if client device 120 determines that the first gesture corresponds to a command, client device 120 may proceed to execute the corresponding command. Otherwise, client device 120 may present on a screen a listed of suggested commands (step 504 ). For example, user 121 may have swiped left or right in the open air. If client device 120 cannot identify the command corresponding to such gesture, client device 120 may present (e.g., display or read out) a list of suggested commands. The suggested commands may include, for example, switching between the checking and savings accounts, opening the most recent statement, displaying the account balance, etc.
  • client device 120 may proceed to execute the selected command (step 508 ). For example, if the selected command is to switch between the accounts, client device 120 may display the account summary page of a different account. In some embodiments, client device 120 may also save in memory 240 a corresponding relationship between the first gesture and the selected command (step 510 ), such that client device 120 may directly execute the selected command when detecting the first gesture again in the future.
  • Method 500 makes it possible for client device 120 to be controlled entirely based on gesture commands. Moreover, method 500 makes the gesture-focused UI adaptive and fast to use.
  • client device 120 may determine the list of suggested commands based on data regarding user 121 's previous behaviors in using financial service application 252 . For example, client device 120 may use machine-learning algorithm to extract and analyze the historical patterns of user 121 's usage of financial service application 252 . If, for example, the analysis shows that the feature most frequently used by user 121 is displaying the account balance, client device 120 may include displaying the account balance in the suggested commands.
  • client device 120 may determine the list of suggested commands based on data regarding multiple users' behaviors in using financial service application 252 .
  • cloud server 130 may collect and aggregate the usage data from multiple users of financial service application 252 . Cloud server may then determine the multiple users' collective usage trend. Cloud server 130 may discovered that majority of users switch between different accounts by swiping to the right. Cloud server 130 may then send the analysis result to client device 120 . This way, when client device 120 detects that user 121 has performed a left swiping, client device 120 may include the account switching as a suggested command.
  • client device 120 may allow user 121 to customize the gesture commands.
  • FIG. 6 is a flowchart of method of 600 for setting gesture commands, according to certain exemplary embodiments.
  • client device 121 may present a prompt for user 121 to perform a first gesture.
  • the prompt may be a message window displayed on a screen of client device 121 .
  • the prompt may include the instructions for performing a first gesture and ask user 121 whether to set a corresponding relationship between the first gesture and a first command.
  • client device 120 may determine whether the gesture data represents the first gesture (step 606 ). In step 608 , if the gesture data represents the first gesture, client device 120 may determine that user 121 intends to set a corresponding relationship between the first gesture and the first command, and save the corresponding relationship.
  • client device 120 may determine the gesture data does not unambiguously represent a gesture.
  • the present disclosure also provides methods to guide user 121 to improve the accuracy of performing the gestures.
  • FIG. 7 is a flowchart of a method 700 for providing gesture-related suggestions to user 121 , according to certain exemplary embodiments.
  • Method 700 starts with client device 120 receiving gesture data representing a gesture performed by user 121 (step 702 ).
  • client device determines a quality score for the gesture.
  • the quality scores may be a sum of multiple scores that measure various features of the gesture.
  • the quality score may be a sum of noise score and shape score of the gesture.
  • Client device 120 may assign a noise score based on the mistakes made by user 121 while making the gesture or each time the gesture was not detected correctly by client device 120 .
  • Client device 120 may assign a shape score based on the shape of user 121 's hands during the performance of the gesture.
  • client device 120 may determine, based on the quality score, suggestions for user 121 to either improve the gesture or change the gesture. For example, if the quality score is below a predetermined threshold, client device 120 may determine that the gesture cannot be accurately determined. Client device 120 may then present suggestions, through a visual or audio message, for user 121 to improve performance of the gesture, such as swiping less distance in certain directions. In one embodiment, client device 120 may also suggest user 121 to change the currently used gesture, such as changing a complicated gesture to a simpler gesture or a gesture that user 121 performs well.
  • client device 120 may also present (e.g., display or read out) a list of suggested gestures, and ask user 121 to confirm which suggested gesture is the intended gesture. After user 121 selects a suggested gesture, client device 120 may determine the command corresponding to the selected gesture and execute the command.
  • Computer programs based on the written description and methods of this specification are within the skill of a software developer.
  • the various programs or program modules can be created using a variety of programming techniques.
  • program sections or program modules can be designed in or by means of Java, C, C++, assembly language, Python, or any such programming languages.
  • One or more of such software sections or modules can be integrated into a computer system, non-transitory computer-readable media, or existing communications software.

Abstract

A computer-implemented method for enabling gesture-based interactions between a computer program and a user is disclosed. According to certain embodiments, the method may include initiating the computer program. The method may also include detecting that a condition has occurred. The method may also include activating a gesture-based operation mode of the computer program. The method may also include receiving gesture data generated by a sensor, the gesture data representing a gesture performed by the user. The method may further include performing a task based on the gesture data.

Description

RELATED APPLICATIONS
This application is related to U.S. Provisional Patent Application No. 62/359,386, filed on Jul. 7, 2016, and entitled “Gesture-Based User Interface,” the disclosure of which is hereby incorporated by reference in its entirety.
BACKGROUND
Advancements in computer technology have brought tremendous convenience to people's life and greatly improved our society's productivity. For example, a financial service provider (e.g., a bank) may develop various applications, through which a customer can remotely access and management her financial accounts.
Applications need user interfaces (UIs) to interact with a user. Traditional UIs are achieved by way of, for example, key combinations, mouse motions, mouse clicks, and displays. However, they often require hand-eye coordination of a user. They may also require multiple user actions to finish a task. Thus, these traditional UIs are unintuitive, slow, and rigid. For example, when the above bank customer discovers that suspicious activates have occurred to her account, she needs to first find and open the “emergency contact” page in the banking application. She may then face a pop-up window listing several reasons for contacting the bank. She needs to select the most applicable reason and then click a “confirm” button to send an emergency notice to the bank. Sometimes, she may also be required to type a message describing her situation. This way of interacting with the application is cumbersome.
Moreover, physically impaired people may not be able to effectively use a conventional UI. For example, a visually impaired person cannot view information displayed on a screen, and cannot use a mouse or keyboard as intended. For another example, patients suffering from hand or finger arthritis often find it difficult, painful, or even impossible to perform the clicking action on a mouse button or typing action on a keyboard.
In addition, more and more people are using mobile devices (e.g., a smart phone and a smart wristband) to perform various tasks. The size constraints associated with mobile devices renders many input devices associated with conventional computing systems, such as keyboards, mouse, etc., to be impractical.
Therefore, there is a high demand for faster, more robust, and more intuitive mechanisms for enable the interaction between computing devices and their users. In view of the shortcomings and problems with traditional workload management systems, an improved system and method for server workload management is desired.
SUMMARY
In the following description, certain aspects and embodiments of the present disclosure will become evident. It should be understood that the disclosure, in its broadest sense, could be practiced without having one or more features of these aspects and embodiments. It should also be understood that these aspects and embodiments are merely exemplary.
The present disclosure provides methods and systems for providing a natural UI between a user and a computer program, i.e., an application or an operating system. In particular, the natural interactions may be in the form of gestures. Additional aspects of the disclosed embodiments are set forth below in this disclosure.
Consistent with the present embodiments, a computer-implemented method for enabling gesture-based interactions between a computer program and a user is disclosed. For example, the method may include initiating the computer program. The method may also include detecting that a condition has occurred. The method may also include activating a gesture-based operation mode of the computer program. The method may also include receiving gesture data generated by a sensor, the gesture data representing a gesture performed by the user. The method may further include performing a task based on the gesture data.
Consistent with the present embodiments, a non-transitory computer readable medium is disclosed. The medium stores instructions, which when executed, cause at least one processor to perform a method for enabling gesture-based interactions between a computer program and a user. For example, the method may include initiating the computer program. The method may also include detecting that a condition has occurred. The method may also include activating a gesture-based operation mode of the computer program. The method may also include receiving gesture data generated by a sensor, the gesture data representing a gesture performed by the user. The method may further include performing a task based on the gesture data.
Consistent with the present embodiments, a terminal is disclosed. For example, the terminal may include a memory storing instructions that are part of a computer program. The terminal may also include a processor configured to execute the instructions to: initiate the computer program; detect that a condition has occurred; activate a gesture-based operation mode of the computer program; receive gesture data generated by a sensor, the gesture data representing a gesture performed by the user; and perform a task based on the gesture data.
The foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the claims.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate several embodiments and, together with the description, serve to explain the disclosed principles. In the drawings:
FIG. 1 is a block diagram of an exemplary system, consistent with disclosed embodiments.
FIG. 2 is a block diagram of an exemplary client device, consistent with disclosed embodiments.
FIG. 3A is a schematic diagram illustrating an exemplary gesture-based user interfaces, consistent with the disclosed embodiments.
FIG. 3B is a schematic diagram illustrating an exemplary gesture-based user interfaces, consistent with the disclosed embodiments.
FIG. 3C is a schematic diagram illustrating an exemplary gesture-based user interfaces, consistent with the disclosed embodiments.
FIG. 3D is a schematic diagram illustrating an exemplary gesture-based user interfaces, consistent with the disclosed embodiments.
FIG. 4 is a flowchart of an exemplary method for receiving and executing gesture commands, consistent with disclosed embodiments.
FIG. 5 is a flowchart of an exemplary method for enabling gesture-based interactions between a client device and a user, consistent with disclosed embodiments.
FIG. 6 is a flowchart of an exemplary method for setting gesture commands, consistent with disclosed embodiments.
FIG. 7 is a flowchart of an exemplary method for providing gesture-related suggestions to a user, consistent with disclosed embodiments.
DESCRIPTION OF THE EMBODIMENTS
Reference will now be made in detail to the disclosed embodiments, examples of which are illustrated in the accompanying drawings. Wherever convenient, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
The disclosed embodiments include methods and systems configured to, for example, provide a natural language-based UI between a user and a computer program, i.e., an application or an operating system. In particular, the natural language may be in the form of gestures. In some embodiments, the computer program may have two operation modes, i.e., a standard operation mode and a gesture-based operation mode. When the gesture-based operation mode is activated, the computer program may activate the features of receiving and executing gesture commands, and convert the existing UI into a gesture-focused UI, through which all or majority of the functions of the computer program may be controlled by gesture commands. This way, previously complicated user operations may be simplified as gestures, so as to allow fast, natural, and intuitive usage of the computer program. In some embodiments, the accessibility of the gesture-focused UI may be further enhanced by incorporate assistive technologies like voice/sound recognition, such that physically disabled users may interact with the computer problem through voices/sounds, in addition to gestures.
FIG. 1 is a block diagram of an exemplary system 100 for performing one or more operations consistent with the disclosed embodiments. Referring to FIG. 1, system 100 may include one or more service provider systems 110, one or more client devices 120, one or more users 121, one or more cloud servers 130, and a network 140. Components of system 100 may be configured to receive and execute gesture commands, according to the disclosed embodiments.
In some embodiments, the disclosed methods are used to enable user 121 to use gestures to control client device 120. Client device 120 may be a desktop computer, a laptop, a server, a mobile device (for example, tablet, smart phone, etc.), a smart TV, a wearable device (for example, multifunctional watch, smart wristband, pair of multifunctional glasses), or any suitable device with computing capability and/or gesture sensing capability. In some embodiments, client device 120 may be a computing device that is not operated by user 121, but is part of a system, such as a home entertainment system, a building security system, an automated teller machine (ATM). These systems, for example, may be associated with a third-party.
In some embodiments client device 120 may include a gesture sensing device for capturing real-time gesture data of a person (e.g., user 121). The gesture data may represent the movements performed by user 121. A gesture sensing device may be incorporated into client device 120 or otherwise in communication with client device 120.
Client device 120 may also include executable software instructions for performing certain aspects of the disclosed methods. In some embodiments, client device 120 includes executable software instructions provided as part of an application or app associated with a service provider, such as, for example, a financial service provider for performing operations associated with one or more financial service accounts. In some embodiments, the disclosed methods may be performed in association with the financial service application. Client device 120 is discussed in additional detail with respect to FIG. 2, below.
As further described herein, the disclosed methods may be used to enable client device 120 to interact with user 121 based on gestures, voices, or any other types of input performed by user 121. In some embodiments, some or all steps of the disclosed methods may be implemented by service provider system 110. Service provider system 110 may be associated with any service providing entity, including a financial service entity that provides, maintains, manages, or otherwise offers financial services. For example, the financial service entity may be a bank, credit card issuer, or any other type of financial service entity that generates, provides, manages, and/or maintains financial service accounts for one or more users. Financial service accounts may include, for example, credit card accounts, loan accounts, checking accounts, savings accounts, reward or loyalty program accounts, and/or any other type of financial service account known to those skilled in the art. In providing, maintaining, managing or otherwise offering financial services, service provider system 110 may be enabled by the disclosed methods to remotely interact with a person associated with a financial service account, through gesture commands.
The disclosed embodiments are not limited to a financial service provider. Rather, disclosed systems and methods may be implemented by any entity with a need or purpose to interact with people, regardless of industry. For ease of discussion, in some embodiments, some or all steps of the disclosed methods may be described as implemented by cloud server 130, which may be independent of or associated with one or more service provider systems 110, one or more merchant systems (not shown), or a plurality of other entity systems (not shown) associated with system 100. In some embodiments, cloud server 130 may be associated with a third-party service entity that provides services such as analyzing data regarding the behaviors and/or habits of people in using the financial service applications.
Service provider system 110, client device 120, and cloud server 130 may include one or more computing devices (e.g., computer(s), server(s), etc.), memory storing data and/or software instructions (e.g., database(s), memory devices, etc.), and other known computing components configured to perform the disclosed methods. In some embodiments, the one or more computing devices may include one or more processors configured to execute software instructions stored on one or more memory devices to perform one or more methods or other operations consistent with the disclosed embodiments. In certain aspects, users may operate one or more components of system 100 to receive communications, initiate operations, and/or provide input for one or more operations consistent with the disclosed embodiments. The disclosed embodiments are not limited to any particular configuration of system 100.
Service provider system 110, client device 120, and cloud server 130 may be configured to communicate with each other and one or more other components of system 100 over a network 140 for performing the disclosed methods. Network 140 may comprise any type of computer networking arrangement configured to provide communications or exchange data, or both, between components of system 100. For example, network 140 may include any type of network (including infrastructure) that provides communications, exchanges information, and/or facilitates the exchange of information, such as the Internet, a private data network, a virtual private network using a public network, a Wi-Fi network, a LAN or WAN network, and/or other suitable connections that may enable information exchange among various components of system 100. Network 140 may also include a public switched telephone network (“PSTN”) and/or a wireless cellular network. Network 140 may be a secured network or unsecured network. In some embodiments, one or more components of system 100 may communicate directly through a dedicated communication link(s).
It is to be understood that the configuration of the functional building blocks of system 100 have been defined herein for the convenience of the description. The components and arrangement of the components included in system 100 may vary. For example, in some embodiments, service provider system 110 and cloud server 130 may be implemented together as part of a single system. Additionally, in some embodiments, system 100 may include other components that perform or assist in the performance of one or more processes consistent with the disclosed methods. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
FIG. 2 shows an exemplary configuration of client device 120, consistent with disclosed embodiments. Client device 120 may run a computer program to receive and execute gesture commands from user 121. These gesture commands may operate client device 120 to perform remote or mobile transactions with service provider system 110. In some embodiments, client device 120 may be a personal computing device. For example, client device 120 may be a smartphone, a laptop or notebook computer, a tablet, a wearable device, or any mobile device with computing ability, or any combination of these computers and/or affiliated components. In some embodiments, client device 120 may be a device that has computing capabilities and is operated by user 121. For example, client device 120 may be a smart TV, a dashboard in a vehicle, etc. Client device 120 may include any arrangement of one or more computing devices configured to perform one or more operations consistent with disclosed embodiments.
Client device 120 may include one or more processors configured to execute software instructions stored in memory, such as memory 240 included in client device 120. Client device 120 may include software that when executed by a processor (e.g., processor 230) performs known Internet-related communication, content display processes, and financial service-related processes for user 121. For instance, client device 120 may execute browser or related mobile display software that generates and displays interfaces including content on a display device included in, or in communication with, client device 120. Client device 120 may be a mobile device that executes mobile device applications and/or mobile device communication software that allows client device 120 to communicate with service provider system 110 or could server 130 and other components over network 140, and generates and displays content in interfaces via a display device included in client device 120. The disclosed embodiments are not limited to any particular configuration of client device 120.
Client device 120 may be configured with storage that stores one or more operating systems that perform known operating system functions when executed by one or more processors. By way of example, the operating systems may include Microsoft Windows™, Unix™, Linux™, Android™, OS X™, or other types of operating systems. Accordingly, embodiments of the disclosed invention may operate and function with computer systems running any type of operating system. Client device 120 may also include communication software that, when executed by a processor, provides communications with network 140, such as Web browser software, tablet or smart handheld device networking software, etc.
Client device 120 may include an input/output (I/O) interface 210 configured to allow client device 120 to send and receive information from user 121 or another device. For example, I/O interface 210 may include various input/output devices, such as a keyboard, a mouse-type device, a physical button, a click wheel, oratory input, etc.
In particular, I/O interface 210 may include various gesture detection sensors 211 configured to sense gestures performed by user 121. For example, gesture detection sensors 211 may include an image capturing device, such as a CMOS or CCD image sensor, configured to capture images of gestures performed by user 121.
Gesture detection sensors 211 may also include a proximity sensor configured to detect proximity of a body part from the computing device. As an example, user 121 may use hands for making one or more gestures. The proximity sensor may thus detect proximity of the hand.
Gesture detection sensors 211 may also include a radar configured to detect number of body parts and angular movement of the body parts required to make one or more gestures. As an example, user 121 may use hands for making the one or more gestures. In this scenario, the radar detects number of fingers used and angular movement of the hand while making the one or more gestures.
Gesture detection sensors 211 may also include an infrared (IR) muscle contraction sensor configured to detect number of muscles involved while making the one or more gestures.
Gesture detection sensors 211 may also include any other devices suitable for detecting gestures performed by user 121, such as an accelerometer, a gyroscope, a pressure sensor, or the like.
It is contemplated that client device 120 may also receive gesture data from gesture detection sensors that are in communication with client device 120 but are separate from or otherwise not integrated in client device 120. It is also contemplated that other type of input devices may also be converted into gesture sensing devices. For example, a mouse or a remote control, when installed with a motion sensor, can also sense the gestures performed by user 121.
I/O Interface 210 may also include a screen providing an input/output interface between the client device 120 and user 121. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes the touch panel, the screen may be realized as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may not only sense a boundary of a touch or swipe action, but also sense a period of time and a pressure associated with the touch or swipe action.
I/O interface 210 may also include devices configured to output and/or input audio signals. For example, I/O interface 210 may include a microphone configured to receive an external audio signal when client device 120 is in an operation mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal may be stored in memory 210. In some embodiments, I/O interface 210 may further include a speaker to output audio signals
Client device 120 may include a communication component 220 configured to facilitate communication, wired or wirelessly, between client device 120 and other devices. Client device 120 may access a wireless network based on one or more communication standard, such as Wi-Fi, LTE, 2G, 3G, 4G, 5G, etc. In one exemplary embodiment, communication component 220 may receive a broadcast signal or receive associated information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 220 may further include a NFC module to facilitate short-range communications. In other embodiments, communication component 220 may be implemented based on a radio frequency identification (RFID) technology, an infrared data association (IrDA) technology, an ultra-wideband (UWB) technology, a Bluetooth technology, a short-range wireless technology, or other technologies.
Client device 120 may include at least one processor 230, which may be one or more known computing processors, such as one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, micro-controllers, microprocessors, or other electronic components. Processor 230 may execute various instructions stored in client device 120 to perform various functions of the disclosed embodiments described in greater detail below.
Client device 120 may include a memory 240, which may be a volatile or non-volatile, magnetic, semiconductor, tape, optical, removable, non-removable, or other type of storage device or tangible (i.e., non-transitory) computer-readable medium. Memory 240 may store one or more programs 250. Programs 250 may include operating systems (not shown) that perform known operating system functions when executed by one or more processors. Disclosed embodiments may operate and function with computer systems running any type of operating system. Client device 120 may be a device that executes mobile applications for performing operations consistent with disclosed embodiments, such as a tablet or mobile device.
In some embodiments, client device 120 may have a financial service application 252 installed thereon, which may enable client device 120 to communicate with service provider system 110, which may be associated with a financial entity, via network 140 and perform aspects of the disclosed methods for enabling gesture-based interactions between client device 120 and user 121. For example, financial service application 252 may have a gesture-based operation mode. When this mode is enabled, financial service application 252 may constantly monitor the gestures performed by user 121 and execute commands corresponding to the gestures.
FIGS. 3A-3D illustrate four exemplary implementations of gesture-based user interface, consistent with the disclosed embodiments. Referring to FIG. 3A, client device 120 may include a touch screen or touch pad. User 121 may move her fingers or hands directly on the surface of the touch screen to issue a gesture command.
Referring to FIG. 3B, client device 120 may include an air-gesture capturing system (e.g., a camera system) for capturing user 120's movement in the open air. For example, user 121 may be a visually impaired person who cannot use the touch screen of client device 120 as intended. Instead, user 121 may move her fingers, hands, and/or arms in the open air near client device 120 to issue gesture commands. Additionally, client device 120 may have an audio system (not pictured in FIG. 3B) configured to generate voice feedback about the execution results of the gesture commands and/or capture and recognize voice commands issued by user 121. The gesture and voice commands allow a visually impaired person to quickly interact with client device 120.
Referring to FIG. 3C, client device 130 may be a smart TV. The smart TV may be part of a home entertainment system that can sense and recognize gestures performed by user 121. For example, the smart TV may have a touch screen, on which user 121 may perform various gestures. For another example, there may be provided a touch pad separate from but in communication with the smart TV. User 121 may perform gestures on the touch pad, which in turn transmit information about the gestures to the smart TV. Also for example, the smart TV may be paired with a remote control with motion sensing capabilities. User 121 may move the remote control in the air, so as to generate gesture commands. For yet another example, similar to the description of FIG. 3B, the smart TV may also include an air-gesture capturing system, such that user 121 may openly gesture in the air to issue commands.
Referring to FIG. 3D, client device 120 may be a control panel on a dashboard of a vehicle. The control panel may have a touch surface through which user 121 may issue gesture commands. Alternatively, user 121 may openly gesture in the air towards the control panel to issue commands. In these ways, user 121 may interact with the control panel quickly without being overly distracted from driving the vehicle.
The following processes are directed to various embodiments for enabling gesture-based interactions between client device 120 and user 121. The following processes may be performed by various aspects and components of system 100 as is apparent from the disclosure.
FIG. 4 is a flowchart of a method 400 for receiving and executing gesture-based commands, consistent with disclosed embodiments. For example, method 400 may be performed by client device 120, which is installed with financial service application 252.
In step 402, client device 120 may initiate financial service application 252. For example, client device 120 may display an icon associated with financial service application 252 on a screen of client device 120. When user 121 clicks the icon, client device 120 may activate financial service application 252. Alternatively, financial service application 252 may be initiated by user 121 though audio command. When client device 120 detects a sound pattern corresponding to financial service application 252, client device 120 may initiate financial service application 252. Other embodiments for initiating financial service application 252 are possible as well.
Financial service application 252 may have two operation modes, a standard operation mode and a gesture-based operation mode. In the standard operation mode, financial service application 252 may present a normal user interface. For example, financial service application 252 makes client device 120 to display webpages and/or interface windows in a display screen. User 121 may use a mouse to navigate on the webpages and/or windows, and switch among them. User 121 may also perform standard touch operations, such as clicking, on a touch screen of client device 120.
By contrast, in the gesture-based operation mode, financial service application 252 may activate and establish communication with gesture detection sensors 211. Financial service application 252 may also convert other existing input and output devices of client device 120 into portals to receive gesture commands. For example, financial service application 252 may convert the entire screen of client device 120 into a touch screen or touch pad and lock the screen in such touch mode, so that user 121 may conveniently use the entire screen area to issue gesture commands and avoid distractions from other unrelated UI features, for example, pop-up keyboards.
In the gesture-based operation mode, financial service application 252 may completely or mainly operate based on gesture commands. Financial service application 252 may execute all possible commands and functions based on gestures performed by user 121. This is advantageous because, for example, a visually impaired user can rely on gestures to directly and quickly communicate with financial service application 252.
In step 404, client device 120 may detect that a predetermined condition has occurred. The predetermined condition may be in various forms. In some embodiments, financial service application 252 may display a button in its user interface window. When user 121 clicks the button, financial service application 252 may enter the gesture-based operation.
In some embodiments, financial service application 252 may automatically switch to the gesture-based operation mode when an emergency is detected. For example, when user 121 discovers that her financial accounts are compromised, she may click a hot key in financial service application 252 to switch to the gesture-based operation mode. As described below in more details, gesture commands may be faster than other types of input methods, and thus entering the gesture-based operation mode may allow user 121 to react to the emergency more quickly.
In some embodiments, financial service application 252 may determine whether to enter the gesture-based mode based on identity of user 121. For example, a visually impaired user may rely on the gesture-based mode to use the functions of financial service application 252. When financial service application 252 determines that the current user is a predetermined disabled user, financial service application 252 may automatically switch to the gesture-based mode. In some embodiments, the identity of a person may be determined based on facial recognition techniques to identify distinct facial features of a person's face captured in image data. Other image processing techniques may be used to identify a user's fingerprint, or a pattern of a person's iris, or other biometric information identifiable in the image data. Other biometric information may include uniquely identifying information associated with a user such as a “signature” pattern of facial changes or contortions associated with speech, or a “signature” of hand movements associated with performing certain gestures. For example, a person may be identified based on the unique combination or “signature” of facial changes when speaking certain letters, words, or sounds. People may also be identified based on the unique hand or finger positioning patterns when making certain gestures. The disclosed embodiments may generally determine the identity of a person based on any suitable biometric information that may be captured in image data with a prescribed authentication parameter.
In step 406, client device 120 may activate the gesture-based operation mode. The gesture-based operation mode creates an extra interaction “layer,” either in addition to or in replacement of the existing user interface, for receiving gesture commands from user 121 and present gesture-related information to user 121. Within this extra layer, user 121 may use gestures to enter all or some of the commands provided by financial service application 252. In some embodiments, the gesture-based operation mode may also use other assistive technologies to assist user 121 in using the gesture commands. For example, the gesture-based operation may use audio cue to inform user 121 about the execution result of the gesture commands or to prompt user 121 to enter certain gesture commands. In one embodiment, the gesture-based operation mode may enable financial service application 252 to receive, recognize, and execute audio commands from user 121.
In step 408, client device 120 may receive gesture data representing a gesture performed by user 121. For example, the gesture data may include a single image or a video clip. The signal image may show a static hand or finger gesture. The video clip may show a motion of the hand or finger. Sometimes, the gesture data may include both a still image and a video clip to show relationship between a static gesture and a related motion.
In step 410, client device 120 may determine the gesture based on the gesture data. For example, client device 120 may use any suitable computer-vision algorithm to extract features from the gesture data and decipher the gesture represented by the gesture data. Then, in step 412, client device 120 may query a database to determine a command corresponding to the gesture. The database may store a mapping relationship between the commands used in financial service application 252 and the corresponding gestures.
Further, in step 414, client device 120 may confirm whether the command is intended by the user. Client device 120 may employ various confirmation mechanisms. In one embodiment, client device 120 may generate a prompt requesting the user to confirm the command. The prompt may be in various formats, such as a visual or verbal cue. Client device 120 may require the user to actively confirm that the identified command is correct. Exemplary ways of making the active confirmations may include pressing a button, performing a gesture, speaking a phrase, or a combination thereof. For example, client device 120 may require the user to perform a confirmation gesture, such as thumbs-up for “yes” and thumbs-down for “no.” Alternatively, client device 120 may indicate that the identified command will be executed unless the user indicates, within a predetermined time period (e.g., five seconds), that the command is incorrect. Once the command is confirmed, client device 120 may proceed to execute the command (step 416).
Method 400 can create a gesture-focused UI aided with assistive technologies like audio recognition. Such gesture-focused UI makes the previous complex interfaces easier to use. As an illustration of the implementation of method 400, after financial service application 252 is opened, a visually impaired user 121 may slide her finger through a fingerprint scanner on client device 120 or read out a predetermined phrase. After financial service application 252 recognizes the fingerprint or voice of user 121, financial service application 252 may enter the gesture-based operation mode. Then user 121 may draw a circle in the air to instruct financial service application 252 to check her account balance. Upon receiving the gesture command, financial service application 252 may generate an audio message presenting the current balance and the account activities within the last week. If user 121 determines that a faux or fraudulent transaction has occurred, user 121 may perform an “S” shaped air-gesture to instruct financial service application 252 to disable the account and transmit a duress signal to service provider system 110. This way, user 121 can use one or two gestures to complete a transaction in financial service application 252. The experience of using financial service application 252 can become simpler and faster.
The gesture-focused UI can enable financial service application 252 to be used entirely based on gestures. FIG. 5 is a flowchart of a method 500 for enabling gesture-based interactions between client device 120 and user 121, according to some exemplary embodiments.
In step 502, client device 120 may detect user 121 has performed a first gesture. As described above (steps 412-416), if client device 120 determines that the first gesture corresponds to a command, client device 120 may proceed to execute the corresponding command. Otherwise, client device 120 may present on a screen a listed of suggested commands (step 504). For example, user 121 may have swiped left or right in the open air. If client device 120 cannot identify the command corresponding to such gesture, client device 120 may present (e.g., display or read out) a list of suggested commands. The suggested commands may include, for example, switching between the checking and savings accounts, opening the most recent statement, displaying the account balance, etc. When client device 120 receives an input from user 121 for selecting one of the suggested commands (step 506), client device 120 may proceed to execute the selected command (step 508). For example, if the selected command is to switch between the accounts, client device 120 may display the account summary page of a different account. In some embodiments, client device 120 may also save in memory 240 a corresponding relationship between the first gesture and the selected command (step 510), such that client device 120 may directly execute the selected command when detecting the first gesture again in the future. Method 500 makes it possible for client device 120 to be controlled entirely based on gesture commands. Moreover, method 500 makes the gesture-focused UI adaptive and fast to use.
In some embodiments, client device 120 may determine the list of suggested commands based on data regarding user 121's previous behaviors in using financial service application 252. For example, client device 120 may use machine-learning algorithm to extract and analyze the historical patterns of user 121's usage of financial service application 252. If, for example, the analysis shows that the feature most frequently used by user 121 is displaying the account balance, client device 120 may include displaying the account balance in the suggested commands.
In some embodiments, client device 120 may determine the list of suggested commands based on data regarding multiple users' behaviors in using financial service application 252. For example, cloud server 130 may collect and aggregate the usage data from multiple users of financial service application 252. Cloud server may then determine the multiple users' collective usage trend. Cloud server 130 may discovered that majority of users switch between different accounts by swiping to the right. Cloud server 130 may then send the analysis result to client device 120. This way, when client device 120 detects that user 121 has performed a left swiping, client device 120 may include the account switching as a suggested command.
In some embodiments, client device 120 may allow user 121 to customize the gesture commands. FIG. 6 is a flowchart of method of 600 for setting gesture commands, according to certain exemplary embodiments.
In step 602, client device 121 may present a prompt for user 121 to perform a first gesture. The prompt may be a message window displayed on a screen of client device 121. The prompt may include the instructions for performing a first gesture and ask user 121 whether to set a corresponding relationship between the first gesture and a first command.
If client device 120 receives gesture data (i.e., detects the performance of a gesture) within a predetermined time window after the prompt is presented (step 604), client device 120 may determine whether the gesture data represents the first gesture (step 606). In step 608, if the gesture data represents the first gesture, client device 120 may determine that user 121 intends to set a corresponding relationship between the first gesture and the first command, and save the corresponding relationship.
Sometimes, client device 120 may determine the gesture data does not unambiguously represent a gesture. The present disclosure also provides methods to guide user 121 to improve the accuracy of performing the gestures. FIG. 7 is a flowchart of a method 700 for providing gesture-related suggestions to user 121, according to certain exemplary embodiments.
Method 700 starts with client device 120 receiving gesture data representing a gesture performed by user 121 (step 702). In step 704, client device determines a quality score for the gesture. The quality scores may be a sum of multiple scores that measure various features of the gesture. For example, the quality score may be a sum of noise score and shape score of the gesture. Client device 120 may assign a noise score based on the mistakes made by user 121 while making the gesture or each time the gesture was not detected correctly by client device 120. Client device 120 may assign a shape score based on the shape of user 121's hands during the performance of the gesture.
In step 706, client device 120 may determine, based on the quality score, suggestions for user 121 to either improve the gesture or change the gesture. For example, if the quality score is below a predetermined threshold, client device 120 may determine that the gesture cannot be accurately determined. Client device 120 may then present suggestions, through a visual or audio message, for user 121 to improve performance of the gesture, such as swiping less distance in certain directions. In one embodiment, client device 120 may also suggest user 121 to change the currently used gesture, such as changing a complicated gesture to a simpler gesture or a gesture that user 121 performs well.
In some embodiments, similar to method 500, when the gesture performed by user 121 cannot be ascertained, client device 120 may also present (e.g., display or read out) a list of suggested gestures, and ask user 121 to confirm which suggested gesture is the intended gesture. After user 121 selects a suggested gesture, client device 120 may determine the command corresponding to the selected gesture and execute the command.
The foregoing description has been presented for purposes of illustration. It is not exhaustive and is not limited to the precise forms or embodiments disclosed. Modifications and adaptations of the embodiments will be apparent from consideration of the specification and practice of the disclosed embodiments. For example, the described implementations include hardware and software, but systems and methods consistent with the present disclosure can be implemented as hardware alone.
Computer programs based on the written description and methods of this specification are within the skill of a software developer. The various programs or program modules can be created using a variety of programming techniques. For example, program sections or program modules can be designed in or by means of Java, C, C++, assembly language, Python, or any such programming languages. One or more of such software sections or modules can be integrated into a computer system, non-transitory computer-readable media, or existing communications software.
Moreover, while illustrative embodiments have been described herein, the scope includes any and all embodiments having equivalent elements, modifications, omissions, combinations (for example, of aspects across various embodiments), adaptations or alterations based on the present disclosure. The elements in the claims are to be interpreted broadly based on the language employed in the claims and not limited to examples described in the present specification or during the prosecution of the application, which examples are to be construed as non-exclusive. Further, the steps of the disclosed methods can be modified in any manner, including by reordering steps or inserting or deleting steps. It is intended, therefore, that the specification and examples be considered as exemplary only, with a true scope and spirit being indicated by the following claims and their full scope of equivalents.

Claims (20)

What is claimed is:
1. A computer-implemented method used in a computer program to enable gesture-based interactions between the computer program and a user, the method comprising:
initiating the computer program;
detecting that a condition has occurred by:
determining an identity of a user based on facial changes associated with speech of the user; and
determining that the user is a disabled user;
automatically activating, based on the detection that the condition occurred, a gesture-based operation mode of the computer program;
receiving first gesture data generated by a sensor, the first gesture data representing a first one of a plurality of gestures;
determining that the first gesture does not correspond to a command; and
performing a task based on the first gesture data, wherein performing the task comprises:
determining a plurality of suggested commands using a machine-learning algorithm to analyze historical patterns of user behavior, the commands being determined based on first behavior data regarding a behavior related to the user;
presenting, through a user interface, information regarding the commands;
receiving an input from the user for selecting one of the commands; and
executing the selected command.
2. The method of claim 1, wherein detecting that the condition has occurred further comprises:
receiving a signal indicating that an emergency has occurred.
3. The method of claim 1, wherein detecting that the condition has occurred further comprises:
receiving a second input from the user for activating the gesture-based operation mode.
4. The method of claim 1, further comprising:
receiving, from a server, second behavior data regarding behaviors of multiple users that use the computer program; and
determining the commands based on the second behavior data.
5. The method of claim 1, further comprising:
presenting a prompt for the user to perform a second gesture, the prompt comprising the selected command;
receiving second gesture data generated by the sensor, the second gesture data representing a second one of the gestures;
determining the second gesture based on the second gesture data; and setting a corresponding relationship between the second gesture and the selected command.
6. The method of claim 1, wherein performing the task further comprises:
determining a plurality of gesture candidates based on a collective usage trend for a plurality of second gestures of multiple users, the collective usage trend being determined by evaluating how often the second gestures are used by the multiple users;
presenting, through a user interface, information regarding the gesture candidates; and
receiving a second input from the user for selecting a gesture candidate.
7. The method of claim 1, wherein:
receiving the gesture data comprises:
presenting, through a user interface, a prompt for the user to perform the first gesture, and
within a predetermined amount of time after the prompt is presented, receiving the first gesture data; and
performing the task comprises:
determining whether the first gesture data represents the first gesture; and
when it is determined that the gesture data represents the first gesture, setting a corresponding relationship between the first gesture and a predetermined command.
8. The method of claim 1, wherein performing the task comprises:
determining a quality score based on the first gesture data; and
generating, based on the quality score, suggestions for the user to improve performance of the first gesture.
9. The method of claim 1, wherein determining an identity of the user is based on at least one of unique hand or finger positioning patterns related to a gesture of the user.
10. A non-transitory computer readable medium having stored instructions, which when executed, cause at least one processor to perform a method for enabling gesture-based interactions between a computer program and a user, the method comprising:
initiating the computer program;
detecting that a condition has occurred by:
determining an identity of a user based on facial changes associated with speech of the user; and
indicating that the user is a disabled user;
automatically activating, based on the detection that the condition occurred, a gesture-based operation mode of the computer program;
receiving first gesture data generated by a sensor, the first gesture data representing a first one of a plurality of gestures;
determining that the first gesture does not correspond to a command; and
performing a task based on the gesture data, wherein performing the task comprises:
determining a plurality of suggested commands using a machine-learning algorithm to analyze historical patterns of user behavior, the commands being determined based on first behavior data regarding a behavior related to the user;
presenting, through a user interface, information regarding the commands;
receiving an input from the user for selecting one of the commands; and
executing the selected command.
11. The medium of claim 10, wherein detecting that the condition has occurred further comprises:
receiving a signal indicating that an emergency has occurred.
12. The medium of claim 10, wherein performing the task further comprises:
receiving, from a server, second behavior data regarding behaviors of multiple users that use the computer program; and
determining the commands based on the second behavior data.
13. The medium of claim 10, wherein performing the task further comprises:
presenting a prompt for the user to perform a second gesture, the prompt comprising the selected command;
receiving new gesture data generated by the sensor, the new gesture data representing the second gesture performed by the user;
determining the second gesture based on the new gesture data; and
setting a corresponding relationship between the second gesture and the suggested command that is selected.
14. The medium of claim 10, further comprising determining an identity of the user based on at least one of unique hand or finger positioning patterns related to a gesture of the user.
15. The medium of claim 10, wherein performing the task further comprises:
determining a plurality of gesture candidates based on a collective usage trend for a plurality of second gestures of multiple users, the collective usage trend being determined by evaluating how often the second gestures are used by the multiple users;
presenting, through a user interface, information regarding the gesture candidates; and
receiving a second input from the user for selecting a gesture candidate.
16. The medium of claim 10, wherein presenting information regarding the suggested commands comprises providing an audio message.
17. A terminal, comprising:
a memory storing instructions, the instructions being part of a computer program; and
a processor configured to executed the instructions to perform operations comprising:
initiating the computer program;
detecting that a condition has occurred by:
determining an identity of a user based on facial changes associated with speech of the user; and
determining that the user is a disabled user;
automatically activating, based on the detection that the condition occurred, a gesture-based operation mode of the computer program;
receiving first gesture data generated by a sensor, the first gesture data representing a first one of a plurality of gestures;
determining that the first gesture does not correspond to a command; and
performing a task based on the first gesture data, wherein performing the task comprises:
determining a plurality of suggested commands using a machine-learning algorithm to analyze historical patterns of user behavior, the commands being determined based on behavior data regarding a behavior related to the user;
presenting, through a user interface, information regarding the suggested commands;
receiving an input from the user for selecting one of the commands; and
executing the selected command.
18. The terminal of claim 17, wherein determining an identity of the user is based on at least one of unique hand or finger positioning patterns related to a gesture of the user.
19. The terminal of claim 17, wherein performing the task further comprises:
determining a plurality of gesture candidates based on a collective usage trend for a plurality of second gestures of multiple users, the collective usage trend being determined by evaluating how often the second gestures are used by the multiple users;
presenting, through a user interface, information regarding the gesture candidates; and
receiving a second input from the user for selecting a gesture candidate.
20. The terminal of claim 17, the operations further comprising providing an audio cue prompting the user to perform a gesture.
US15/644,008 2016-07-07 2017-07-07 Gesture-based user interface Active 2038-06-12 US11275446B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/644,008 US11275446B2 (en) 2016-07-07 2017-07-07 Gesture-based user interface
US17/589,927 US20220261083A1 (en) 2016-07-07 2022-02-01 Gesture-based user interface

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662359386P 2016-07-07 2016-07-07
US15/644,008 US11275446B2 (en) 2016-07-07 2017-07-07 Gesture-based user interface

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/589,927 Continuation US20220261083A1 (en) 2016-07-07 2022-02-01 Gesture-based user interface

Publications (2)

Publication Number Publication Date
US20180011544A1 US20180011544A1 (en) 2018-01-11
US11275446B2 true US11275446B2 (en) 2022-03-15

Family

ID=59315428

Family Applications (2)

Application Number Title Priority Date Filing Date
US15/644,008 Active 2038-06-12 US11275446B2 (en) 2016-07-07 2017-07-07 Gesture-based user interface
US17/589,927 Pending US20220261083A1 (en) 2016-07-07 2022-02-01 Gesture-based user interface

Family Applications After (1)

Application Number Title Priority Date Filing Date
US17/589,927 Pending US20220261083A1 (en) 2016-07-07 2022-02-01 Gesture-based user interface

Country Status (3)

Country Link
US (2) US11275446B2 (en)
EP (2) EP3267291B1 (en)
CA (1) CA2972732A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220382450A1 (en) * 2021-05-27 2022-12-01 Trees Technology Company Rapidly capturing user input
US20230419280A1 (en) * 2022-06-23 2023-12-28 Truist Bank Gesture recognition for advanced security

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017200571A1 (en) 2016-05-16 2017-11-23 Google Llc Gesture-based control of a user interface
US11067667B2 (en) 2016-09-08 2021-07-20 Magna Closures Inc. Radar detection system for non-contact human activation of powered closure member
US10934764B2 (en) 2016-09-08 2021-03-02 Magna Closures Inc. Radar detection system for non-contact human activation of powered closure member
US10706396B2 (en) 2018-03-19 2020-07-07 Capital One Services, Llc Systems and methods for translating a gesture to initiate a financial transaction
GB2576359B (en) * 2018-08-16 2023-07-12 Displaylink Uk Ltd Controlling display of images
US11442550B2 (en) * 2019-05-06 2022-09-13 Samsung Electronics Co., Ltd. Methods for gesture recognition and control
CN110162183B (en) * 2019-05-30 2022-11-01 努比亚技术有限公司 Volley gesture operation method, wearable device and computer readable storage medium
WO2020263250A1 (en) 2019-06-26 2020-12-30 Google Llc Radar-based authentication status feedback
US11868537B2 (en) 2019-07-26 2024-01-09 Google Llc Robust radar-based gesture-recognition by user equipment
US11385722B2 (en) 2019-07-26 2022-07-12 Google Llc Robust radar-based gesture-recognition by user equipment
EP4004686A1 (en) 2019-07-26 2022-06-01 Google LLC Authentication management through imu and radar
CN113853567B (en) 2019-07-26 2024-03-29 谷歌有限责任公司 IMU and radar based reduced state
US11467672B2 (en) 2019-08-30 2022-10-11 Google Llc Context-sensitive control of radar-based gesture-recognition
WO2021040749A1 (en) * 2019-08-30 2021-03-04 Google Llc Detecting and processing unsuccessfully recognized or unsuccessfully utilized non-contact gestures for a computing system
EP3936980A1 (en) 2019-08-30 2022-01-12 Google LLC Input methods for mobile devices
KR20220098805A (en) 2019-08-30 2022-07-12 구글 엘엘씨 Input-mode notification for a multi-input node
WO2021040748A1 (en) 2019-08-30 2021-03-04 Google Llc Visual indicator for paused radar gestures
CN112328087A (en) * 2020-11-19 2021-02-05 成都金都超星天文设备有限公司 Method for controlling planetarium by gestures and control system

Citations (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020015064A1 (en) * 2000-08-07 2002-02-07 Robotham John S. Gesture-based user interface to multi-level and multi-modal sets of bit-maps
US20030218643A1 (en) * 2002-05-22 2003-11-27 Konica Corporation Image forming apparatus
US20050134800A1 (en) * 2003-11-07 2005-06-23 Lg Electronics Inc. Method of compensating colors in image display device for users with color vision deficiency and device of the same
US20070177804A1 (en) * 2006-01-30 2007-08-02 Apple Computer, Inc. Multi-touch gesture dictionary
US20080148030A1 (en) * 2006-12-14 2008-06-19 General Instrument Corporation Method and System for Configuring Electronic Communication Device
US20080170776A1 (en) * 2007-01-12 2008-07-17 Albertson Jacob C Controlling resource access based on user gesturing in a 3d captured image stream of the user
US20080178126A1 (en) 2007-01-24 2008-07-24 Microsoft Corporation Gesture recognition interactive feedback
US20100281432A1 (en) * 2009-05-01 2010-11-04 Kevin Geisner Show body position
US20110126154A1 (en) * 2009-11-24 2011-05-26 International Business Machines Corporation Intelligent command prediction
US20110257971A1 (en) * 2010-04-14 2011-10-20 T-Mobile Usa, Inc. Camera-Assisted Noise Cancellation and Speech Recognition
US8196066B1 (en) * 2011-09-20 2012-06-05 Google Inc. Collaborative gesture-based input language
US20120249741A1 (en) * 2011-03-29 2012-10-04 Giuliano Maciocci Anchoring virtual images to real world surfaces in augmented reality systems
US20120281885A1 (en) * 2011-05-05 2012-11-08 At&T Intellectual Property I, L.P. System and method for dynamic facial features for speaker recognition
US20130050118A1 (en) * 2011-08-29 2013-02-28 Ebay Inc. Gesture-driven feedback mechanism
US20130155237A1 (en) 2011-12-16 2013-06-20 Microsoft Corporation Interacting with a mobile device within a vehicle using gestures
US20130159939A1 (en) * 2011-10-12 2013-06-20 Qualcomm Incorporated Authenticated gesture recognition
US20130198762A1 (en) * 2012-01-26 2013-08-01 Ronald Charles Thorpe System and Method for Providing Customized Feedback to a User
US8700392B1 (en) * 2010-09-10 2014-04-15 Amazon Technologies, Inc. Speech-inclusive device interfaces
US20140143688A1 (en) * 2012-11-19 2014-05-22 Microsoft Corporation Enhanced navigation for touch-surface device
US20140160030A1 (en) * 2009-02-09 2014-06-12 Cypress Semiconductor Corporation Sensor system and method for mapping and creating gestures
US20150206535A1 (en) * 2012-08-10 2015-07-23 Honda Access Corp. Speech recognition method and speech recognition device
US20150205359A1 (en) * 2014-01-20 2015-07-23 Lenovo (Singapore) Pte. Ltd. Interactive user gesture inputs
US20150212677A1 (en) * 2014-01-28 2015-07-30 International Business Machines Corporation Impairment-adaptive electronic data interaction system
US20150287043A1 (en) * 2014-04-02 2015-10-08 Avaya Inc. Network-based identification of device usage patterns that can indicate that the user has a qualifying disability
US9218813B2 (en) * 2013-03-14 2015-12-22 Intel Corporation Voice and/or facial recognition based service provision
US20160062473A1 (en) * 2014-08-29 2016-03-03 Hand Held Products, Inc. Gesture-controlled computer system
US9299350B1 (en) * 2013-03-15 2016-03-29 Amazon Technologies, Inc. Systems and methods for identifying users of devices and customizing devices to users
US20160182502A1 (en) * 2014-12-23 2016-06-23 Ned M. Smith User profile selection using contextual authentication
US20160187992A1 (en) * 2014-04-03 2016-06-30 Honda Motor Co., Ltd. Smart tutorial for gesture control system
US20170087453A1 (en) * 2015-09-24 2017-03-30 Intel Corporation Magic wand methods, apparatuses and systems for defining, initiating, and conducting quests
US20170205888A1 (en) * 2016-01-19 2017-07-20 Lenovo (Singapore) Pte. Ltd. Gesture ambiguity determination and resolution
US20170212597A1 (en) * 2016-01-27 2017-07-27 Wipro Limited Method and System for Recommending One or More Gestures to Users Interacting With Computing Device
US20170315706A1 (en) * 2016-04-27 2017-11-02 Rockwell Collins, Inc. Avionics Picture-in-Picture Display
US20180121215A1 (en) * 2015-04-23 2018-05-03 Fluent Systems, Inc. Dynamic and customizable user interface platform
US10178301B1 (en) * 2015-06-25 2019-01-08 Amazon Technologies, Inc. User identification based on voice and face

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7365736B2 (en) * 2004-03-23 2008-04-29 Fujitsu Limited Customizable gesture mappings for motion controlled handheld devices
US20110221666A1 (en) * 2009-11-24 2011-09-15 Not Yet Assigned Methods and Apparatus For Gesture Recognition Mode Control
JP5625506B2 (en) * 2010-06-04 2014-11-19 ソニー株式会社 Operation terminal device, electronic device, and electronic device system
JP2012231249A (en) * 2011-04-25 2012-11-22 Sony Corp Display control device, display control method, and program
CN102289898B (en) * 2011-09-08 2013-05-29 广州广电运通金融电子股份有限公司 Automatic emergency hedge system for self-service transaction
US9223955B2 (en) * 2014-01-30 2015-12-29 Microsoft Corporation User-authentication gestures
US10782986B2 (en) * 2018-04-20 2020-09-22 Facebook, Inc. Assisting users with personalized and contextual communication content
EP3716020B1 (en) * 2019-03-29 2023-03-01 Tata Consultancy Services Limited Systems and methods for three dimensional (3d) reconstruction of human gestures from radar based measurements

Patent Citations (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020015064A1 (en) * 2000-08-07 2002-02-07 Robotham John S. Gesture-based user interface to multi-level and multi-modal sets of bit-maps
US20030218643A1 (en) * 2002-05-22 2003-11-27 Konica Corporation Image forming apparatus
US20050134800A1 (en) * 2003-11-07 2005-06-23 Lg Electronics Inc. Method of compensating colors in image display device for users with color vision deficiency and device of the same
US20070177804A1 (en) * 2006-01-30 2007-08-02 Apple Computer, Inc. Multi-touch gesture dictionary
US20080148030A1 (en) * 2006-12-14 2008-06-19 General Instrument Corporation Method and System for Configuring Electronic Communication Device
US20080170776A1 (en) * 2007-01-12 2008-07-17 Albertson Jacob C Controlling resource access based on user gesturing in a 3d captured image stream of the user
US20080178126A1 (en) 2007-01-24 2008-07-24 Microsoft Corporation Gesture recognition interactive feedback
US20140160030A1 (en) * 2009-02-09 2014-06-12 Cypress Semiconductor Corporation Sensor system and method for mapping and creating gestures
US20100281432A1 (en) * 2009-05-01 2010-11-04 Kevin Geisner Show body position
US20110126154A1 (en) * 2009-11-24 2011-05-26 International Business Machines Corporation Intelligent command prediction
US20110257971A1 (en) * 2010-04-14 2011-10-20 T-Mobile Usa, Inc. Camera-Assisted Noise Cancellation and Speech Recognition
US8700392B1 (en) * 2010-09-10 2014-04-15 Amazon Technologies, Inc. Speech-inclusive device interfaces
US20120249741A1 (en) * 2011-03-29 2012-10-04 Giuliano Maciocci Anchoring virtual images to real world surfaces in augmented reality systems
US20120281885A1 (en) * 2011-05-05 2012-11-08 At&T Intellectual Property I, L.P. System and method for dynamic facial features for speaker recognition
US20130050118A1 (en) * 2011-08-29 2013-02-28 Ebay Inc. Gesture-driven feedback mechanism
US8196066B1 (en) * 2011-09-20 2012-06-05 Google Inc. Collaborative gesture-based input language
US20130159939A1 (en) * 2011-10-12 2013-06-20 Qualcomm Incorporated Authenticated gesture recognition
US20130155237A1 (en) 2011-12-16 2013-06-20 Microsoft Corporation Interacting with a mobile device within a vehicle using gestures
US20130198762A1 (en) * 2012-01-26 2013-08-01 Ronald Charles Thorpe System and Method for Providing Customized Feedback to a User
US20150206535A1 (en) * 2012-08-10 2015-07-23 Honda Access Corp. Speech recognition method and speech recognition device
US20140143688A1 (en) * 2012-11-19 2014-05-22 Microsoft Corporation Enhanced navigation for touch-surface device
US9218813B2 (en) * 2013-03-14 2015-12-22 Intel Corporation Voice and/or facial recognition based service provision
US9299350B1 (en) * 2013-03-15 2016-03-29 Amazon Technologies, Inc. Systems and methods for identifying users of devices and customizing devices to users
US20150205359A1 (en) * 2014-01-20 2015-07-23 Lenovo (Singapore) Pte. Ltd. Interactive user gesture inputs
US20150212677A1 (en) * 2014-01-28 2015-07-30 International Business Machines Corporation Impairment-adaptive electronic data interaction system
US20150287043A1 (en) * 2014-04-02 2015-10-08 Avaya Inc. Network-based identification of device usage patterns that can indicate that the user has a qualifying disability
US20160187992A1 (en) * 2014-04-03 2016-06-30 Honda Motor Co., Ltd. Smart tutorial for gesture control system
US20160062473A1 (en) * 2014-08-29 2016-03-03 Hand Held Products, Inc. Gesture-controlled computer system
US20160182502A1 (en) * 2014-12-23 2016-06-23 Ned M. Smith User profile selection using contextual authentication
US20180121215A1 (en) * 2015-04-23 2018-05-03 Fluent Systems, Inc. Dynamic and customizable user interface platform
US10178301B1 (en) * 2015-06-25 2019-01-08 Amazon Technologies, Inc. User identification based on voice and face
US20170087453A1 (en) * 2015-09-24 2017-03-30 Intel Corporation Magic wand methods, apparatuses and systems for defining, initiating, and conducting quests
US20170205888A1 (en) * 2016-01-19 2017-07-20 Lenovo (Singapore) Pte. Ltd. Gesture ambiguity determination and resolution
US20170212597A1 (en) * 2016-01-27 2017-07-27 Wipro Limited Method and System for Recommending One or More Gestures to Users Interacting With Computing Device
US20170315706A1 (en) * 2016-04-27 2017-11-02 Rockwell Collins, Inc. Avionics Picture-in-Picture Display

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220382450A1 (en) * 2021-05-27 2022-12-01 Trees Technology Company Rapidly capturing user input
US20230419280A1 (en) * 2022-06-23 2023-12-28 Truist Bank Gesture recognition for advanced security

Also Published As

Publication number Publication date
EP3267291A3 (en) 2018-02-14
EP3267291B1 (en) 2019-11-06
EP3674851A1 (en) 2020-07-01
US20220261083A1 (en) 2022-08-18
EP3267291A2 (en) 2018-01-10
US20180011544A1 (en) 2018-01-11
CA2972732A1 (en) 2018-01-07

Similar Documents

Publication Publication Date Title
US20220261083A1 (en) Gesture-based user interface
US11574041B2 (en) User interface for managing access to credentials for use in an operation
US11514430B2 (en) User interfaces for transfer accounts
US11900372B2 (en) User interfaces for transactions
US11206309B2 (en) User interface for remote authorization
US11100498B2 (en) User interfaces for transfer accounts
US20210224785A1 (en) User interface for payments
US20230019250A1 (en) User interfaces for authenticating to perform secure operations
US11643048B2 (en) Mobile key enrollment and use
US11703996B2 (en) User input interfaces
US20230234537A1 (en) Mobile key enrollment and use
US10902153B2 (en) Operating a mobile device in a limited access mode

Legal Events

Date Code Title Description
STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: ADVISORY ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

AS Assignment

Owner name: CAPITAL ONE SERVICES, LLC, VIRGINIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FRANKLIN, DAVID;SEDITA, VAN SHEA;SIMPSON, STEPHEN;SIGNING DATES FROM 20191008 TO 20210325;REEL/FRAME:058807/0120

STCF Information on status: patent grant

Free format text: PATENTED CASE

CC Certificate of correction