CN116670626A - 用于手势控制设备的用户界面控制元件的多精度离散控制的方法和系统 - Google Patents

用于手势控制设备的用户界面控制元件的多精度离散控制的方法和系统 Download PDF

Info

Publication number
CN116670626A
CN116670626A CN202180085735.7A CN202180085735A CN116670626A CN 116670626 A CN116670626 A CN 116670626A CN 202180085735 A CN202180085735 A CN 202180085735A CN 116670626 A CN116670626 A CN 116670626A
Authority
CN
China
Prior art keywords
gesture
control
dynamic
drag
video frames
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180085735.7A
Other languages
English (en)
Inventor
周维
萨奇·米佐布奇
拉斐尔·维拉斯·吉马雷斯
加扎勒·萨尼·蒙法里德
李维
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN116670626A publication Critical patent/CN116670626A/zh
Pending legal-status Critical Current

Links

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
    • 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/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/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)

Abstract

本申请描述了用于如图形小部件等用户界面元件的离散控制的方法和系统。捕获并处理第一多个视频帧以识别其中的手势。响应于所述第一多个帧中的拖动模式激活手势而激活拖动模式。捕获并处理第二多个视频帧以识别其中的手势。在所述第二多个帧中识别离散控制手势后,拖动用户界面控件的元件。使用空中手势对用户界面控件进行所述离散控制使得能够精确设置与所述用户界面控件相关联的系统参数。

Description

用于手势控制设备的用户界面控制元件的多精度离散控制的 方法和系统
交叉参考
本申请要求于2020年12月17日提交的发明名称为“用于手势控制设备的用户界面控制元件的多精度离散控制的方法和系统(Methods and systems for multi-precisiondiscrete control of a user interface control element of a gesture-controlleddevice)”的第17/125,462号美国非临时申请的权益,所述申请通过引用的方式并入本文中。
技术领域
本发明大体上涉及手势控制设备,更具体地,涉及用于显示在手势控制设备的显示器上的用户界面控制元件的多精度离散控制的方法和系统。
背景技术
传统上,电子设备的用户使用定点设备,例如手持鼠标或操纵杆,或手指或手写笔来与电子设备交互。例如,在物理表面上移动手持鼠标并激活鼠标上的开关(例如,通过按下按钮)使得用户能够与电子设备交互(例如,控制电子设备)。类似地,人的手指或手写笔触摸电子设备的触敏表面,例如电子设备的触控板或触摸屏显示器,以及手指或手写笔在触敏表面上移动使得用户能够与电子设备交互(即,控制并向其提供数据)。
如电视、大显示屏、车辆信息娱乐系统等现代电子设备使得用户能够使用在电子设备前面的空间中执行的手势与此类电子设备交互。此类设备的摄像头(或连接到此类设备的摄像头)捕获用户在视场(field of view,FOV)中执行手势的视频,并处理所述视频以识别手势。此类手势被称为空中手势,且使得用户能够以比使用定点设备(例如鼠标)更有效的方式与现代电子设备交互,而不必物理触摸电子设备的显示器。
空中手势可用于与显示在此类现代电子设备的显示器上的用户界面元件交互;然而,使用空中手势与此类用户界面元件交互可能困难且不精确。
因此,期望有所改进,以使得用户能够以更有效的方式使用空中手势与手势控制设备交互。
发明内容
在各种示例中,本发明描述了用于用户界面(user interface,UI)控制元件的多精度离散控制的方法和系统。所公开的方法和系统识别与UI控制元件的实时交互,以及手势控制设备的用户对UI控制元件的可拖动元件(例如,图形小部件)的操控。激活UI控制元件的拖动模式,且在激活UI控制元件的拖动模式之后识别离散控制手势使UI控制元件的可拖动元件移动离散量。将UI控制元件的元件移动离散量可使与UI控制元件相关联的系统参数的值调整离散量。本发明的方法和系统能够对显示在手势控制设备的显示器上的UI控制元件和与UI控制元件相关联的系统参数精确地进行离散控制。
一方面,本发明描述了一种用于控制显示在手势控制设备的显示器上的用户界面控制元件的方法。所述方法包括:获得所述手势控制设备的图像捕获设备捕获的视频的第一多个视频帧;以及在所述第一多个视频帧中识别所述手势控制设备的用户执行的拖动模式激活空中手势后,激活所述用户界面控制元件的拖动模式。所述方法还包括:获取所述手势控制设备的所述图像捕获设备捕获的所述视频的第二多个视频帧;以及在所述第二多个视频帧中识别所述手势控制设备的所述用户执行的动态离散控制空中手势后,使所述用户界面控制元件的可拖动图形小部件在默认拖动方向上移动离散距离。
在本发明的一些示例中,所述方法还包括将与所述用户界面控制元件相关联的系统参数调整离散量。
在本发明的一些示例中,所述方法还包括在所述第二多个视频帧中识别所述手势控制设备的所述用户执行的拖动模式停用手势后,停用所述用户界面控制元件的所述拖动模式。
在本发明的一些示例中,所述方法还包括在识别方向设置空中手势后,针对所述用户界面控制元件的所述可拖动图形小部件设置所述默认拖动方向。
在本发明的一些示例中,识别所述方向设置空中手势包括在所述视频的第三多个视频帧中识别主手的动态方向设置空中手势。
在本发明的一些示例中,识别所述动态方向设置空中手势包括确定所述用户的所述主手在所述第一多个视频帧内的初始位置,且识别所述动态方向设置空中手势包括确定所述主手在所述第三多个视频帧内已从所述初始位置移动到后续位置。
在本发明的一些示例中,所述初始位置确定在所述主手上的点与所述第一多个视频帧内的参照点之间,且所述后续位置确定在所述主手上的点与所述第三多个视频帧内的参照点之间。
在本发明的一些示例中,设置所述默认拖动方向还包括比较所述初始位置与所述后续位置,以及确定所述初始位置与所述后续位置之间的差值是否大于特定阈值。
在本发明的一些示例中,所述离散距离基于所述初始位置与所述后续位置之间的所述差值。
在本发明的一些示例中,所述初始位置由所述主手上的所述点与所述第一多个视频帧内的所述参照点之间的初始水平距离确定,且所述后续位置由所述主手上的所述点与所述第三多个视频帧内的所述参照点之间的后续水平距离确定。
在本发明的一些示例中,所述初始位置由所述主手上的所述点与所述第一多个视频帧内的所述参照点之间的初始高度确定,且所述后续位置由所述主手上的所述点与所述第三多个视频帧内的所述参照点之间的后续高度确定。
在本发明的一些示例中,识别所述方向设置空中手势包括在所述第二多个视频帧中识别副手的方向设置空中手势。
在本发明的一些示例中,所述动态离散控制空中手势包括动态捏合空中手势。
在上述示例中,所述动态捏合空中手势包括撑开手势后跟捏紧手势。
在本发明的一些示例中,所述用户界面控制元件包括滑块控件,并且移动所述用户界面控件的所述可拖动图形小部件包括沿着所述滑块控件的轨道拖动滑块元件。
另一方面,本发明描述了一种手势控制设备,所述手势控制设备包括图像捕获设备、处理器和耦合到所述处理器的存储器,所述存储器上存储有机器可执行指令。所述机器可执行指令在由所述处理器执行时使所述手势控制设备处理所述图像捕获设备捕获的视频的第一多个视频帧,以识别所述手势控制设备的用户执行的手势。所述机器可执行指令在由所述处理器执行时还将所述手势控制设备配置为:在所述第一多个视频帧中识别拖动模式激活空中手势后,激活用于控制用户界面控制元件的拖动模式;处理所述图像捕获设备捕获的所述视频的第二多个视频帧,以识别所述手势控制设备的所述用户执行的手势;以及在所述第二多个视频帧中识别所述用户执行的动态离散控制空中手势后,使所述用户界面控制元件的可拖动图形小部件在默认拖动方向上移动离散距离。
在本发明的一些示例中,所述机器可执行指令还使所述手势控制设备在所述第二多个视频帧中识别所述手势控制设备的所述用户执行的拖动模式停用手势后,停用所述用户界面控制元件的所述拖动模式。
在本发明的一些示例中,所述机器可执行指令还使所述手势控制设备在识别方向设置空中手势后,针对所述用户界面控制元件的所述可拖动图形小部件设置所述默认拖动方向。
在本发明的一些示例中,所述识别所述方向设置空中手势包括在所述视频的第三多个视频帧中识别主手的动态方向设置空中手势。
又一方面,本发明描述了一种其上存储有机器指令的计算机可读介质。所述指令在由处理器执行时使所述手势控制设备:处理图像捕获设备捕获的视频的第一多个视频帧,以识别所述手势控制设备的用户执行的手势;在所述第一多个视频帧中识别拖动模式激活空中手势后,激活用于控制用户界面控制元件的拖动模式;处理所述图像捕获设备捕获的所述视频的第二多个视频帧,以识别所述手势控制设备的所述用户执行的手势;以及在所述第二多个视频帧中识别所述用户执行的动态离散控制空中手势后,使所述用户界面控制元件的可拖动图形小部件在默认拖动方向上移动离散距离。
识别用于与系统参数相关联的UI控制元件的可拖动元件(例如,小部件)的离散控制(例如,调整或移动)的空中手势使系统参数的值调整预定量,且可具有以下优点。离散控制在改变系统参数的值方面具有更高的精度调整能力。例如,离散控制手势可将系统参数的值调整较小百分比,如1%-5%,此精度可能很难通过连续控制手势,如触摸和拖动可拖动UI控制元件实现。
附图说明
现在将通过示例参考示出本申请示例性实施例的附图,其中:
图1为示出用户与手势控制设备交互的图;
图2为示出本发明实施例的图1的手势控制设备的示例的一些组件的框图;
图3为本发明实施例的类似于图2中的手势控制设备的图,展示了其显示器上的滑块,所示手势控制设备捕获并识别动态拖动模式激活手势;
图4为本发明实施例的图3所示的手势控制设备捕获并识别用于将滑块的默认拖动方向设置为向右的动态大致水平手势的图;
图5为本发明实施例的图3所示的手势控制设备捕获并识别用于将滑块的默认拖动方向设置为向左的动态大致水平手势的图;
图6为本发明实施例的图3所示的手势控制设备捕获并识别用于将滑块的默认拖动方向设置为向右的动态大致竖直手势的图;
图7为本发明实施例的图3所示的手势控制设备捕获并识别用于将滑块的默认拖动方向设置为向左的动态大致竖直手势的图;
图8为本发明实施例的图3所示的手势控制设备捕获并识别动态离散控制手势的图,所述动态离散控制手势向右推进滑块的滑块元件;
图9为本发明实施例的图3所示的手势控制设备捕获并识别动态离散控制手势的图,所述动态离散控制手势向左推进滑块的滑块元件;
图10为本发明实施例的图3所示的手势控制设备捕获并识别另一动态离散控制手势的图,所述另一动态离散控制手势向左推进滑块的滑块元件;
图11为本发明实施例的图3所示的手势控制设备捕获并识别多个动态离散控制手势的图,所述多个动态离散控制手势向右推进滑块的滑块元件;
图12为本发明实施例的图3所示的手势控制设备捕获并识别主手的动态离散控制手势和副手的静态向右手势的图;
图13为本发明实施例的图3所示的手势控制设备捕获并识别主手的动态离散控制手势和副手的静态向左手势的图;
图14为本发明实施例的图2所示的手势控制设备捕获并识别动态离散控制手势的图,所述动态离散控制手势使旋转用户界面控件的旋转元件旋转离散周向距离;
图15为本发明实施例的图3所示的手势控制设备捕获并识别静态拖动模式停用手势的图;
图16为本发明实施例的示出用于滑块控制元件的滑块元件的离散控制的方法的流程图,包括动态大致水平拖动方向设置空中手势;
图17为本发明实施例的描绘用于滑块控制元件的滑块元件的离散控制的方法的流程图,包括动态大致竖直拖动方向设置空中手势;
图18为本发明实施例的描绘用于滑块控制元件的滑块元件的离散控制的方法的流程图,包括通过副手的静态定向手势设置拖动方向;
图19为示例性实施例的描述手势控制设备中的方法的流程图。
具体实施方式
手势控制设备使得用户能够使用空中手势与UI控制元件交互。然而,用户可能难以使用空中手势对UI控制元件进行精调。例如,对于滑块,使用空中手势的用户可以拖动滑块的滑块元件,这可能导致滑块元件的调整(即,移动)的量比预期距离更大。这将导致对与滑块相关联的系统参数进行粗调。这种粗调可能导致与UI控制元件相关联的系统参数的不精确操作,从而产生潜在的危险或非期望的结果。此外,与UI控制元件相关联的系统参数可以控制工业过程。如果与系统参数相关联的UI控制元件的可拖动图形小部件无法被精确或准确控制(即,由用户使用空中手势操控),则系统参数可能无法进行最佳配置,这会导致潜在的危险状况和/或有缺陷的产品。
所呈现的实施例涉及对显示在手势控制设备的显示器上的用户界面(userinterface,UI)控制元件的多精度离散控制。UI控制元件可以包括可拖动元件(例如,图形小部件),且UI控制元件可以与手势控制设备的系统参数相关联。识别UI控制元件的可拖动元件的操控(例如,移动)可调整手势控制设备的系统参数,例如与UI控制元件相关联的系统参数的大小。系统参数的示例包括用于显示设备的视听参数,例如对比度、亮度、颜色和音量。可通过操控UI控制元件的可拖动元件进行调整的系统参数的其他示例包括工业过程参数、诸如运动范围和速度的机械运动参数以及诸如温度、压力和湿度的其他物理参数。
UI控制元件的示例包括滚动条、滑块、旋转控制元件和进度条。可拖动元件的示例包括拇指、滑块、旋转元件、小部件和旋钮等。此类系统参数的示例包括对比度、时间、音量、亮度、缩放/平移放大率。手势控制设备可以是电视(例如,智能电视)、桌面设备、视频会议系统、视频游戏系统、车辆耦合设备(例如,仪表板设备)、增强现实(augment reality,AR)或虚拟现实(virtual reality,VR)系统或智能扬声器等。
本文描述的方法和系统使用空中手势识别用户与显示在手势控制设备的显示器上的任何UI控制元件的交互。识别与UI控制元件的交互包括识别与UI控制元件相关联的空中手势。本发明的方法和系统的示例还能够对显示在增强现实(augmented reality,AR)或虚拟现实(virtual reality,VR)系统等呈现的交互空间中的UI控制元件进行多精度离散控制。
为了简单起见,本发明描述了在具有显示设备(例如,与视频会议系统通信的智能电视(smart television,TV)或显示设备)的手势控制设备的上下文中的示例。所描述的用于对显示在手势控制设备的显示器上的UI控制元件进行离散多精度控制的方法和系统例如用于调整(即,改变)手势控制设备的系统参数以播放视频。然而,应当理解,本发明并不限于此类实施例,本文描述的方法和系统可以涉及识别用于对显示在手势控制设备的显示器上的可拖动UI控制元件进行离散控制的各种空中手势。例如,本文中描述的方法和系统的一些实施例可以使用例如扬声器的其他输出设备向用户提供反馈信息。一些实施例可以使得用户能够使用空中手势与其他类型的内容或其他软件应用进行交互,例如音乐播放器、视频会议应用、视频游戏或通过多用户虚拟现实(virtual reality,VR)或增强现实(augmented reality,AR)系统在交互空间中呈现的内容等。可以使用空中手势控制显示在手势控制设备的显示器上的UI控制元件的可拖动元件。
识别用于与系统参数相关联的UI控制元件的可拖动元件(例如,小部件)的离散控制(例如,调整或移动)的空中手势使系统参数的值调整预定量可具有以下优点。离散控制在改变系统参数的值方面具有更高的精度调整能力。例如,离散控制手势可将系统参数的值调整较小百分比,如1%-5%,此精度可能很难通过连续控制手势,如触摸和拖动可拖动UI控制元件实现。
在本发明中,“手势”是指人手呈现出特定形态或人手在空中以特定方式移动的空中手势。在本发明中,术语“空中手势”、“手势(hand gesture)”和“手势(gesture)”应可互换地使用,以指用户的手在摄像头的视场内执行的手势,如下文进一步详细描述。
在本发明中,“静态手势”为人手执行的手势,其中人手保持在相同的位置,具有相同的取向,并且人手的手指在一段时间内具有相同的形态。例如,“撑开”手势是一种静态手势,其中人手在相同的位置以相同的取向和相同的手指形态保持“撑开”手形态一段时间,例如几秒钟。“捏紧”手势是一种静态手势,其中人手在相同的位置以相同的取向和相同的手指形态保持“捏紧”手形态一段时间,例如几秒钟。图3示出了呈“撑开”手形态31和呈“捏紧”手形态30的人手35(以下简称手35)。在“撑开”手形态31中,手35的拇指21的尖端和食指22的尖端分开,不接触。在“捏紧”手形态30中,手35的拇指21的尖端和食指22的尖端接触(即,不分开)。
在本发明中,“动态手势”为手35执行的手势,在此期间,手35改变其在空间中的位置、手35改变其在空间中的取向或手35的手指改变其在空间中的形态一段时间。“动态手势”的一个示例为拖动手势。拖动手势包括手35具有特定取向和形态(例如,撑开手形态31或捏紧手形态30),且手35在一段时间内相对于包含手35图像的视频帧800在空间中沿大致水平或大致竖直方向移动。
“动态手势”的另一示例为“捏合手势”。“捏合手势”可以是“捏紧手势”或“撑开手势”。图3示出了“捏紧手势”的示例。“捏紧手势”涉及手35在时间t0以撑开手形态31开始,手35的食指22和拇指21在Δt0期间朝向彼此移动,且食指22和拇指21在时间t1相互接触。手35在时间t1具有“捏紧手形态”30。图10示出了“撑开手势”38的示例。“撑开手势”包括手35在时间t1以“捏紧手形态”30开始,食指22和拇指21在Δt1期间远离彼此,且食指22和拇指21在时间t2分开且不相互接触。在时间t2处,手35呈撑开手形态31。
动态手势还可以包括拖动手势后跟捏合手势、捏合手势后跟拖动手势或多个捏合手势。
在本发明中,“离散控制手势”可以是任何类型的静态或动态手势。当UI控制元件的拖动模式被激活时,识别“离散控制手势”会使显示在手势控制设备的显示器上的UI控制元件的可拖动元件在显示器上调整(例如,移动)离散距离,如下文进一步详细描述。
在本发明中,“方向设置手势”可以是任何类型的静态或动态手势。当手势控制设备识别方向设置手势时,手势控制设备控制UI控制元件的可拖动元件(例如,小部件)的移动方向。
在本发明中,“拖动模式”为用于UI控制元件的用户输入模式,以使得能够与UI控制元件的可拖动元件交互和对其进行操控。
在本发明中,滑块60的滑块元件64为UI控制元件的可拖动元件(例如,小部件)的示例。当滑块元件64沿着滑块60的轨道62移动时,所述滑块元件被“拖动”。例如,在识别动态离散控制手势后,滑块元件64沿着轨道移动离散量,如下文进一步详细描述。在本发明中,旋转刻度盘的旋转元件82为UI控制元件的可拖动元件(例如,小部件)的另一示例。在识别动态离散控制手势,手势控制设备100的组件,例如UI控制模块230使旋转元件82沿顺时针或逆时针方向绕轴线从第一径向位置旋转到第二径向位置。
参考图1,示出了用户10与手势控制设备100交互的示例。在此简化图中,手势控制设备100包括呈数字摄像头102形式的图像捕获设备,所述图像捕获设备捕获数字摄像头102的视场(field-of-view,FOV)20中的多个视频帧(图像)。FOV 20可以包括执行空中手势的用户10的至少一部分,尤其是用户10的面部和手,如下文进一步讨论。需要说明的是,在现实生活使用场景中(例如,在实验室环境之外),FOV 20通常不仅包括用户10。例如,FOV20还可以包括其他物件、背景场面或可能存在的其他人。手势控制设备100可以执行指令,所述指令指示数字摄像头102捕获用户的手35的视频帧800,以捕获并处理空中手势,如下所述。例如,可将数字摄像头102转向用户的手35、放大用户的手35,或者可以裁剪数字摄像头102捕获的视频帧800以得到用户的手35的捕获的视频帧800。代替或除了数字摄像头102,手势控制设备100还可以包括能够感测用户10执行的空中手势的另一传感器,例如任何图像捕获设备/传感器(例如,红外图像传感器)。此外,手势控制设备100包括硬件和软件组件的组合,所述组合处理捕获的视频帧以识别用户10执行的不同空中手势。手势控制设备100还包括显示设备104(以下称为显示器104)以用于在其上显示视觉信息,例如视频和包括可拖动UI元件的用户界面。下面参考图2描述示出手势控制设备100的组件的更详细的框图。
参考图2,示出了手势控制设备100的框图。尽管下文示出和论述手势控制设备100的一个示例性实施例,但其他实施例也可以用于实现本文公开的示例,可以包括与所示的组件不同的组件。虽然图2示出了手势控制设备100的每个组件的单个实例,但示出的每个组件可以有多个实例。
手势控制设备100包括一个或多个处理器202,例如中央处理单元、微处理器、专用集成电路(application-specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)、专用逻辑电路系统、张量处理单元、神经处理单元、专用人工智能处理单元或其组合。手势控制设备100还包括一个或多个输入/输出(input/output,I/O)接口204,所述接口介接如数字摄像头102的输入设备与如显示器104的输出设备。手势控制设备100可以包括其他输入设备(例如,按钮、麦克风、触摸屏、键盘等)和其他输出设备(例如,扬声器、振动单元等)。数字摄像头102(或其他输入设备)可以具有捕获实时手势输入作为视频帧序列的能力。捕获的视频帧可以由I/O接口204缓冲,并提供给处理器202,以实时或近实时(例如,在100ms内)处理。
手势控制设备100可以包括一个或多个可选的网络接口206,以用于与网络(例如,内联网、互联网、对等(peer-to-peer,P2P)网络、广域网(wide area network,WAN)和/或局域网(local area network,LAN))或其他节点进行有线或无线通信。网络接口206可以包括用于进行网内通信和/或网间通信的有线链路(例如,以太网线)和/或无线链路(例如,一个或多个天线)。
手势控制设备100包括一个或多个存储器208,所述存储器可以包括易失性或非易失性存储器(例如,闪存、随机存取存储器(random access memory,RAM)和/或只读存储器(read-only memory,ROM))。非瞬时性存储器208可以存储供处理器202执行例如以执行本发明中描述的示例的指令。存储器208可以包括其他软件指令,例如用于实现操作系统和其他应用/功能。手势识别系统220为驻留在存储器208中的软件模块、组件或系统,并用于获得数字摄像头捕获的视频的帧,并使用图像处理和识别方法处理所获得的视频帧,以识别其中多种预定义类型的空中手势。例如,手势识别系统220可以实现训练后的机器学习模型,所述模型接收数字摄像头102捕获的视频的帧,并处理视频的帧以识别其中的空中手势。使用训练数据集、监督学习算法和损失函数训练机器学习模型,以学习机器学习模型的参数。训练数据集包括多个标记的训练样本,其中每个标记的训练样本为输入输出对,所述输入输出对包括含有用户执行的空中手势的帧(即数字视频)和标识用户执行的空中手势类型的正确标记。在一些实施例中,机器学习模型可以是训练后的神经网络模型,例如训练后的卷积神经网络(convolutional neural network,CNN)模型,其用于在数字摄像头102捕获的视频的多个帧中识别用户执行的空中手势。近似于训练后的机器学习模型的训练后的卷积神经网络(convolutional neural network,CNN)通常被称为训练后的CNN模型。训练后的CNN模型包括在训练CNN期间学习的权重和偏差。
手势识别系统220耦合到UI控制模块230,并向UI控制模块230提供识别的手势。UI控制模块230在从手势识别系统220接收到手势后,通过移动UI控制元件的可拖动元件(例如,可拖动小部件)来配置UI控制元件,如下文进一步详细描述。虽然在图2所示的示例中,手势识别系统220和UI控制模块230被示为单独的组件,但在其他示例中,它们可以集成在单个模块中。
在一些示例中,手势控制设备100还可以包括一个或多个电子存储单元(未示出),例如固态硬盘、硬盘驱动器、磁盘驱动器和/或光盘驱动器。在一些示例中,一个或多个数据集和/或模块可以由外部存储器(例如,与手势控制设备100进行有线或无线通信的外置驱动器)提供,也可以由瞬时性或非瞬时性计算机可读介质提供。非瞬时性计算机可读介质的示例包括RAM、ROM、可擦除可编程ROM(erasable programmable ROM,EPROM)、电可擦除可编程ROM(electrically erasable programmable ROM,EEPROM)、闪存、CD-ROM或其他便携式存储器。例如,手势控制设备100的组件可以通过总线彼此通信。
在一些实施例中,分布式系统可以包括多个手势控制设备100,以及可选的一个或多个额外组件。分布式系统可以包括通过网络彼此通信的多个手势控制设备100。在一些实施例中,分布式系统为增强现实系统,其包括单个手势控制设备100、多个数字摄像头(例如,位于物理空间周围的数字摄像头阵列)和单个头戴式显示器。在本实施例中,单个手势控制设备100用于处理分布式系统的多个数字摄像头捕获的视频的帧,以识别手势控制设备100的用户执行的空中手势。手势控制设备100基于识别的空中手势离散地控制(例如,移动)头戴式显示器显示的可拖动UI元件,如下文进一步详细描述。应当理解,这些分布式系统作为示例提供,并且其他分布式系统也是可能的。
应当理解,代替或除了数字摄像头102和显示器104,不同的实施例还可以包括输入和输出设备的不同组合。可以通过使用头戴式显示器显示可拖动UI控制元件的移动向此类VR或AR系统的用户提供反馈信息。
在一些实施例中,分布式系统可以是包括多个数字摄像头102的VR或AR系统,所述数字摄像头捕获含有执行空中手势的不同用户的帧(即,数字图像)的视频。例如,VR或AR系统可以包括安装在每个用户的头戴装置或其他VR或AR设备上的单独数字摄像头,其中每个用户相应的数字摄像头用于捕获含有相应用户执行空中手势的帧的视频。多个用户彼此远离的VR或AR系统可以使用每个用户本地的数字摄像头捕获所述用户的身体和环境,以便捕获所述用户执行空中手势的视频。在此类示例性多摄像头实施例中,本文描述的方法和系统可用于通过组合每个数字摄像头捕获的帧来检测、跟踪和识别每个用户的空中手势。从多个数字摄像头接收到的多个帧可以在一些实施例中在时间上组合(例如,按顺序处理每个帧以用于手势识别),在一些实施例中在空间上组合(例如,创建涵盖来自每个数字摄像头的当前帧的复合视频帧,并处理复合帧以用于手势识别),或者通过一些其他方法组合来自多个数字摄像头的帧。
现在参考图3,示出了具有显示器104的手势控制设备100,在所述显示器上显示媒体应用的用户界面50的至少一部分。用户界面50的所述部分包括作为滑块60的UI控制元件。滑块60用于在手势控制设备100运行媒体应用时控制系统参数,例如显示器104的音频音量、亮度或对比度。通过沿着滑块60的轨道62移动滑块60的滑块元件64,UI控制模块230调整(例如,移动)与滑块60相关联的系统参数。当滑块元件64位于轨道62的左端61时,系统参数被设置为其最小可能值。当滑块元件64位于轨道62的右端69时,与滑块60相关联的系统参数被设置为其最大可能值。
在手势控制设备100激活滑块60的拖动模式后,启用与滑块60相关联的系统参数的离散调整。在一些实施例中,当手势识别系统220在手势控制设备100的数字摄像头102捕获的视频的帧800内识别动态拖动模式激活手势时,UI控制模块230激活滑块60的拖动模式。在图3所示的实施例中,每个帧800具有边界810,所述边界包括左边缘815、顶部边缘820、右边缘825和底部边缘830。在示例性实施例中,拖动模式激活手势为动态捏紧手势34。在所描绘的实施例中,当在t0检测到手35的初始撑开手形态31,随后在时间t1检测到手35的捏紧手形态30时,手势识别系统220识别动态捏紧手势34。在捏紧手势34期间,手势控制设备100的用户的手35的两个手指,例如拇指21和食指22朝向彼此移动,直到它们各自的尖端接触。如图3所示,手35在初始时间t0以虚线示出为呈撑开手形态31。在经过时间Δt0之后,用户的手35以实线示出为呈捏紧手形态30。当手势识别系统220识别拖动模式激活手势(例如,动态捏紧手势34)时,手势识别系统220将拖动模式激活手势提供给UI控制模块230,所述UI控制模块激活滑块60的拖动模式。在UI控制模块230激活滑块60的拖动模式后,手势识别系统220确定手35上的点与捕获的帧800的最后一帧800中的参照点之间的距离。例如,在所描绘的实施例中,手势识别系统220确定帧800的最后一帧800的左边缘815与手35的拇指21与食指22之间的接触点25之间的距离。此距离标记用户的手35的初始位置,表示为初始水平距离X0
在一些实施例中,拖动模式激活手势还包括动态撑开手势。在这些实施例中,当用户的手35在呈捏紧手形态30之后返回到撑开手形态31时,手势识别系统220识别拖动模式激活手势。在其他实施例中,时间Δt0大于或等于激活持续时间TA
在其他实施例中,激活UI控制元件,例如滑块60的拖动模式的拖动模式激活手势可以是手势识别系统220可识别的任何合适的动态手势。在一些实施例中,手势识别系统220测量用户的手35相对于帧800的最后一帧800的右边缘825或相对于帧800的最后一帧800中的任何其他合适的参照点的初始位置,将其表示为初始水平距离X0
在其他实施例中,激活UI控制元件,例如滑块60的拖动模式的拖动模式激活手势可以是手势识别系统220可识别的任何合适的静态手势。当在帧800中识别用户的手35的撑开手形态30持续激活持续时间(表示为TA)时,手势识别系统220可以识别静态手势,例如静态撑开手势。或者,当在帧800中识别用户的手35的捏紧手形态31持续激活持续时间(表示为TA)时,手势识别系统220可以识别静态捏紧手势。
在UI控制模块230激活UI控制元件(例如,滑块60)的拖动模式之后,UI控制模块230可以针对UI控制元件(例如,滑块60)的可拖动元件(例如,滑块元件)配置默认拖动方向。UI控制元件的默认拖动方向为UI控制元件(例如,滑块60)的拖动元件(例如,滑块元件64)在识别动态离散控制手势后以离散步长移动的方向。在一些示例性实施例中,当手势识别系统220识别动态拖动手势时,设置默认拖动方向(见图4-7)。例如,参考图4,示出了用户执行的将默认拖动方向设置为向右的动态拖动手势32(a)。以虚线示出的用户的手35处于由距离帧800的左边缘815的距离X0限定的初始位置。然后,用户通过在大致水平方向上向右移动他们的手35来执行动态拖动手势32(a)。手势识别系统220在识别到拖动手势32(a)后,将拖动手势32(a)提供到UI控制模块230,所述UI控制模块将默认拖动方向设置为向右,如图4所示。当用户执行动态拖动手势32(a)时,手35最初呈捏紧手形态30。然后,用户向右70拖动他们的手35,直到他们的手35处于由距离帧800的左边缘815的后续水平距离X1限定的后续位置,如图4所示。在第二位置中,用户的手35以实线示出。当用户执行动态拖动空中手势32(a)时,手势识别系统220接收数字摄像头102捕获的视频的帧800。手势识别系统220处理帧800,识别到用户在帧800中执行了动态拖动空中手势32(a),并确定用户的手35在动态拖动手势32(a)期间已向右移动。例如,手势识别系统220比较初始水平距离X0与后续水平距离X1。在图4所示的实施例中,X1大于X0,这指示用户的手35在动态拖动手势32(a)期间已向右移动。在手势识别系统220识别动态拖动手势32(a)并确定动态拖动手势32(a)的方向之后,手势识别系统220将识别的动态拖动手势32(a)和动态拖动手势32(a)的方向提供到UI控制模块230。UI控制模块230将UI控制元件(例如,滑块60)的默认拖动方向设置为向右(或向前)70。如果初始位置与后续位置之间的差值低于特定阈值,则不设置默认拖动方向。图4中所示的滑块60为水平滑块。在一些实施例中,滑块60为相对于显示器104的竖直滑块。在此类实施例中,当后续距离X1大于初始距离X0时,手势识别系统220可以确定动态拖动手势32(a)的方向为向上。
默认拖动方向也可以设置为向左(或向后)74。参考图5,示出了用户执行的将默认拖动方向设置为向左的动态拖动手势32(b)。以虚线示出的用户的手35处于由距离帧800的左边缘815的距离X0限定的初始位置。然后,用户通过在大致水平的方向上向左移动他们的手35来执行动态拖动手势32(b)。手势识别系统220在识别到拖动手势32(b)后,将拖动手势32(b)提供到UI控制模块230,所述UI控制模块将默认拖动方向设置为向左,如图5所示。当用户执行动态拖动手势32(b)时,手35最初呈捏紧手形态30。然后,用户向左74拖动他们的手35,直到他们的手35处于由距离帧800的左边缘815的后续水平距离X1限定的后续位置,如图5所示。在第二位置中,用户的手35以实线示出。当用户执行动态拖动空中手势32(b)时,手势识别系统220接收数字摄像头102捕获的视频的帧800。手势识别系统220处理帧800,识别到用户在帧800中执行了动态拖动空中手势32(b),并确定用户的手35在动态拖动手势32(b)期间已向左移动。例如,手势识别系统220比较初始水平距离X0与后续水平距离X1。在图5所示的实施例中,X0大于X1,这指示用户的手35在动态拖动手势32(b)期间已向左移动。在手势识别系统220识别动态拖动手势32(b)并确定动态拖动手势32(a)的方向之后,手势识别系统220将识别的动态拖动手势32(b)和动态拖动手势32(b)的方向提供到UI控制模块230。UI控制模块230将UI控制元件(例如,滑块60)的默认拖动方向设置为向左(或向后)74。如果初始位置与后续位置之间的差值低于特定阈值,则不设置默认拖动方向。图5中所示的滑块60为水平滑块。在一些实施例中,滑块60为相对于显示器104的竖直滑块。在此类实施例中,当后续距离X1小于初始距离X0时,手势识别系统220可以确定动态拖动手势32的方向为向下。
处于本发明的目的,术语“向上”、“向下”、“向左”和“向右”在此用于关于如图4-6所示的手势控制设备100的数字摄像头102捕获的视频的帧800。
考虑用于设置UI控制元件的默认拖动方向的其他实施例。例如,参考图6和7,UI控制元件(例如,滑块60)的默认拖动方向可以通过在UI控制元件(例如,滑块60)的拖动模式已激活之后在大致竖直方向上执行的动态拖动手势32(c)、32(d)来设置。例如,参考图6,示出了用户执行的将默认拖动方向设置为向右的动态拖动手势32(c)。以虚线示出的用户的手35处于由距离帧800的底部边缘830的竖直距离(高度)h0限定的初始位置。然后,用户通过相对于帧800中的参照点,例如底部边缘830,在大致竖直向上的方向72上移动他们的手35来执行动态拖动手势32(c)。手势识别系统220在识别到拖动手势32(c)后,将拖动手势32(c)提供到UI控制模块230,所述UI控制模块将默认拖动方向设置为向右。当用户执行动态拖动手势32(c)时,手35最初呈捏紧手形态30。然后,用户在向上方向72上拖动他们的手35,直到他们的手35处于由距离帧800的底部边缘830的后续高度h1限定的后续位置,如图6所示。在第二位置中,用户的手35以实线示出。当用户执行动态拖动空中手势32(c)时,手势识别系统220接收数字摄像头102捕获的视频的帧800。手势识别系统220处理帧800,识别到用户在帧800中执行了动态拖动空中手势32(c),并确定用户的手35在动态拖动手势32(c)期间已向上移动。例如,手势识别系统220比较初始高度h0与后续高度h1。在图6所示的实施例中,h1大于h0,这指示用户的手35在动态拖动手势32(c)期间已向上移动。在手势识别系统220识别动态拖动手势32(c)并确定动态拖动手势32(c)的方向之后,手势识别系统220将识别的动态拖动手势32(c)和动态拖动手势32(c)的方向提供到UI控制模块230。在这种情况下,UI控制模块230用于在识别的动态拖动手势在向上方向上的情况下将默认拖动方向设置为向右。相应地,UI控制模块230将UI控制元件(例如,滑块60)的默认拖动方向设置为向右(或向前)70。如果初始位置与后续位置之间的差值低于特定阈值,则不设置默认拖动方向。图6中所示的滑块60为水平滑块。在一些实施例中,滑块60为相对于显示器104的竖直滑块。在此类实施例中,当后续高度h1大于初始高度h0时,手势识别系统220可以确定动态拖动手势32(c)的方向为向上。
参考图7,示出了用户执行的将默认拖动方向设置为向右的动态拖动手势32(d)。以虚线示出的用户的手35处于由距离帧800的底部边缘830的竖直距离(高度)h0限定的初始位置。然后,用户通过相对于帧800中的参照点,例如底部边缘830,在大致竖直向下的方向76上移动他们的手35来执行动态拖动手势32(d)。手势识别系统220在识别到拖动手势32(d)后,将拖动手势32(d)提供到UI控制模块230,所述UI控制模块将默认拖动方向设置为向左。当用户执行动态拖动手势32(d)时,手35最初呈捏紧手形态30。然后,用户在向下方向76上拖动他们的手35,直到他们的手35处于由距离帧800的底部边缘830的后续高度h1限定的后续位置,如图7所示。在第二位置中,用户的手35以实线示出。当用户执行动态拖动空中手势32(d)时,手势识别系统220接收数字摄像头102捕获的视频的帧800。手势识别系统220处理帧800,识别到用户在帧800中执行了动态拖动空中手势32(d),并确定用户的手35在动态拖动手势32(d)期间已向下移动。例如,手势识别系统220比较初始高度h0与后续高度h1。在图7所示的实施例中,h1小于h0,这指示用户的手35在动态拖动手势32(d)期间已相对于帧800向下移动。在手势识别系统220识别动态拖动手势32(d)并确定动态拖动手势32(d)的方向之后,手势识别系统220将识别的动态拖动手势32(d)和动态拖动手势32(d)的方向提供到UI控制模块230。在这种情况下,UI控制模块230用于在识别的动态拖动手势相对于帧800在向下方向上的情况下将默认拖动方向设置为向左。相应地,UI控制模块230将UI控制元件(例如,滑块60)的默认拖动方向设置为向左(或向后)70。如果初始位置与后续位置之间的差值低于特定阈值,则不设置默认拖动方向。图7中所示的滑块60为水平滑块。在一些实施例中,滑块60为相对于显示器104的竖直滑块。在此类实施例中,当后续高度h1小于初始高度h0时,手势识别系统220可以确定动态拖动手势32(d)的方向为相对于帧800向上。
一旦UI控制模块230设置了用于移动UI控制元件(例如,滑块60)的可拖动元件(例如,滑块元件64)的默认拖动方向,手势识别系统220就可以识别动态离散控制手势,并将识别的动态离散控制手势提供到UI控制模块230。UI控制模块230可以触发UI控制元件(例如,滑块)的可拖动元件(例如,滑块元件64)在默认拖动方向上的离散移动。例如,参考图8-10,从t0到t2描绘了动态离散控制空中手势38。在图8中,动态离散控制手势为捏合手势34A,包括捏紧手势34(如上所述)后跟捏紧手形态30保持一小段时间。具体地,动态捏合空中手势34A在t0以撑开手形态31开始。用户手35的食指和拇指在t0与t1之间的一小段时间Δt0期间朝向彼此移动,并且在t1达到捏紧手形态30,就像前文描述的捏紧手势34的情况。随后在t1与t2之间的另一小段时间Δt1内保持呈捏紧手形态30。手势识别系统220处理包括呈动态捏合空中手势34A形式的动态离散控制手势的帧800,并且在识别动态捏合手势34A后向UI控制模块230提供动态捏合手势34。UI控制模块230在接收到呈动态捏合手势34A形式的动态离散控制手势后,通过在默认拖动方向上移动可拖动UI元件(例如,滑块元件64)离散距离(d)来控制所述可拖动UI元件。离散距离(d)可以如下所述进行配置。例如,参考图8,当UI控制元件(例如,滑块60)已激活UI控制元件(例如,滑块)的拖动模式时,UI模块230在接收到诸如动态捏合手势34A的动态离散控制手势后将UI控制元件(例如,滑块60)的可拖动元件(例如,滑块元件64)的默认拖动方向设置为向右70。UI控制模块230从手势识别系统220接收识别的动态捏合手势34A,并将滑块60的滑块元件64从虚线所示的初始位置向右移动离散距离(d)到实线所示的最终位置。
参考图9,已使用上述默认拖动方向设置方法中的任何一种将默认拖动方向设置为向左74。UI控制模块230在从手势识别系统220接收到呈动态捏合手势34A形式的识别的动态离散控制手势后,将滑块元件64从虚线所示的第一位置向左移动离散距离(d)到实线所示的第二位置。
在另一实施例中,动态离散控制手势呈动态捏合和释放手势39的形式,如图10所示。动态捏合和释放手势39包括捏紧手势34后跟撑开手势38。捏紧手势34和撑开手势38已在上文中描述了。手35开始于在t0与t1之间的一小段时间Δt0内保持呈撑开手形态31,然后是在非常短的时间(未示出)内保持呈捏紧手形态30,以及在t1与t2之间的一小段时间Δt1内保持呈另一撑开手形态31。在本实施例中,当用户执行离散控制手势以识别用户执行的动态离散手势,例如动态捏合和释放手势39时,手势识别系统220处理数字摄像头102捕获的视频的帧800。当手势识别系统220确定用户的手35在时间t2呈撑开手形态31时,手势识别系统220识别动态捏合和释放手势39。手势识别系统220向UI控制模块230提供识别的动态离散手势,例如动态捏合和释放手势39。已激活滑块60的拖动模式的UI控制模块230将滑块元件64沿着滑块60的轨道62向右移动离散量(d)。UI控制模块230还可以控制系统参数以将系统参数调整离散量。
多个动态离散控制手势可用于将UI控制元件(例如,滑块)的可拖动元件(例如,滑块元件64)在默认拖动方向上移动多个离散距离(d)。例如,多个动态捏合空中手势可用于将滑块元件64在如图11所示的默认方向上移动对应数量的离散距离(d)。在图11中,UI模块230已将滑块60的默认拖动方向设置为向右70。UI控制元件(例如,滑块60)的可拖动元件(例如,滑块元件64)以虚线示出,指示其初始(第一)和中间(第二)位置。示出了用户的手35执行呈两个动态捏合和释放手势39a和39b形式的两个动态离散控制手势。呈第一捏合和释放手势39a形式的第一动态离散控制手势在时间t0以手35呈撑开手形态31开始。拇指和食指在持续时间Δt0期间朝向彼此移动,使得手35在时间t1呈捏紧手形态30。拇指和食指在持续时间Δt1期间开始远离彼此,使得手35在时间t2回到撑开手形态31。第一动态捏合手势39A由手势识别系统220识别并提供到UI控制模块230。作为响应,UI控制模块230使滑块元件64向右拖动(移动)离散距离(d)到新(第二)位置,以虚线示出为滑块元件64'。从时间t2开始,第二动态离散控制手势39B以手35呈撑开形态31开始。拇指和食指在持续时间Δt2期间开始朝向彼此移动,使得手35在时间t3呈捏紧手形态30。然后,拇指和食指在持续时间Δt2期间开始远离彼此,使得手35在时间t4呈捏紧手形态30,从而完成捏合和释放手势39B,所述手势为第二离散控制手势。手势感测系统检测呈第二捏合和释放手势39形式的第二离散控制手势,并将捏合和释放手势39提供到UI控制模块230。作为响应,UI控制模块230使呈滑块元件(示出为滑块元件64')形式的可拖动元件进一步向右拖动离散距离(d)到新(第三)位置,示出为滑块元件64”。在其第三位置,滑块元件64示出为滑块元件64",其与其初始(第一)位置(示出为滑块元件64)相隔距离(2d)。因此,多个动态离散控制手势使滑块元件64在默认拖动方向上拖动对应多个离散距离(d)。
虽然图8-11中用于移动可拖动元件,例如滑块元件64的动态离散控制手势已示出为动态捏合手势34A或动态捏合和释放手势39,但其他动态手势也是可能的。例如,还考虑任何动态手势,其中用户的手35在第一持续时间内保持呈第一手形态,后跟用户的手35在第二持续时间内保持呈第二手形态。
设置默认拖动方向并不限于使用动态拖动手势。例如,参考图12和13,示出了静态方向设置空中手势,其中用户的副手36的拇指21保持指向所需的默认拖动方向。参考图12,用户的副手36为其中拇指21指向右侧的静态向右手势37A。在一些实施例中,在UI控制模块230激活UI控制元件(例如,滑块60)的拖动模式之后,用户执行静态方向设置空中手势,同时主手35执行动态离散控制手势,例如动态捏合手势34。在其他实施例中,静态方向设置空中手势由用户在用他们的主手35执行拖动模式激活手势时执行,并且拖动方向根据静态定向手势设置,并在动态离散控制手势期间保持。在图12中所描绘的实施例中,在识别到拇指21指向右侧70的静态向右手势37A后,手势识别系统220将默认拖动方向设置为向右(或向前)70。动态离散控制手势,例如所示的动态捏合和释放手势39由手势识别系统220识别,并提供到UI控制模块230。UI控制模块230将滑块元件64向右推进离散距离(d),如前所述。图13描绘了其中拇指21指向左侧的静态向左手势37B。在这种情况下,手势识别系统220将默认拖动方向设置为向左74。动态离散控制手势,例如所示的动态捏合和释放手势39使滑块元件64向左移动离散距离(d),如前所述。
在一些实施例中,由副手36作出的定向手势可以在连续的动态离散控制手势,例如动态捏合手势34A或捏合和释放手势39之间改变。在一个示例中,在副手36正在执行其中拇指21指向右侧的静态向右手势37A时,主手35执行多个动态离散控制手势。因此,滑块元件64被向右70拖动(移动)对应多个离散距离(d)。此时,用户可能会认为滑块元件64已向右拖得太远。用户可以将副手36换成其中拇指21指向左侧的静态向左手势37B,然后继续执行动态离散控制手势,以将滑块元件64向左拖动对应数量的离散距离(d)。
图14描绘了旋转UI控制元件80,所述旋转UI控制元件包括可绕轴线旋转的旋转元件82。围绕旋转元件82周向显示多个值86。旋转元件82具有值指针84,所述值指针指向多个值86中的系统参数的当前选定值86。例如,如果显示器104采用触摸屏机构,则用户将触摸旋转元件82并沿顺时针或逆时针方向周向拖动所述旋转元件以调整对应的系统参数。在另一示例中,用户将使用鼠标指向旋转元件82上的位置,单击鼠标按键,然后沿顺时针或逆时针方向周向移动鼠标,以使旋转元件82沿顺时针或逆时针方向旋转。在新位置中,旋转元件82将对应于与旋转控件80对应的系统参数的新值,如值指针84所指示。
参考图14,示出了使用动态离散控制手势控制拖动旋转控件80的旋转元件82的示例。在所描绘的实施例中,已使用上述方法之一将默认拖动方向设置为顺时针方向。具体地,手势识别系统220检测方向设置手势,并确定拖动方向是顺时针还是逆时针。例如,参考图4,如果X1大于X0,则手势识别系统220确定,对于旋转控件80等旋转对象,默认拖动方向为顺时针方向。相反,参考图5,如果X1小于X0,则手势识别系统220确定默认拖动方向为逆时针方向。手势感测系统将默认拖动方向提供到UI控制模块230。回到图14,手势感测系统识别动态离散控制手势,所述动态离散控制手势为上述动态捏合和释放手势39。手势识别系统220向UI控制模块230提供识别的手势,这使得旋转元件82沿手势识别系统220提供到UI控制模块230的默认拖动方向从第一圆周位置周向移动到第二圆周位置。在所描述的示例中,默认方向设置为顺时针方向。最初,旋转元件82处于第一位置,其中呈标记在旋转元件82上的黑色三角形形式的值指针84指向多个值86中的值“0”。旋转控件80以虚线示出,并表示其在时间t0处的状态。手势识别系统220识别呈动态捏合和释放手势39形式的动态离散控制手势。手势识别系统220将动态捏合和释放手势发送到UI控制模块230,这使得旋转元件82沿顺时针方向移动离散周向距离“L”在t2到达以实线示出的第二位置。在第二位置,值指针84'指向与旋转控件80相关联的系统参数的多个值86中的值“1”。因此,可以通过使用离散控制手势来控制旋转控件80,并且可以在识别离散控制手势后调整对应系统参数的值。
为了停用拖动模式,用户可以在停用持续时间TD内执行静态拖动模式停用手势。例如,参考图15,手势识别系统220识别静态停用手势,所述静态停用手势由保持从时间t0到时间t1的持续时间Δt0的撑开手形态31组成。手势识别系统220向UI控制模块230提供停用手势,所述UI控制模块转而停用并退出拖动模式。应当注意,动态捏合手势(34、39)应呈撑开手形态31持续一段时间,所述持续时间小于TD,以避免在动态捏合手势34期间无意中脱离拖动模式。
将参考图16-18描述手势识别系统220和UI控制模块230执行以实施上述实施例的方法。
图16为示出本发明实施例的对显示在手势控制设备100上的UI控制元件的可拖动元件(例如,可拖动小部件)的离散控制的方法300的流程图。当软件的指令由手势控制设备100的处理器202执行时,方法300可由软件(例如,手势识别系统220和UI控制模块230)执行。
方法从步骤302开始。在步骤302处,手势识别系统220获得数字摄像头102捕获的视频的帧800。然后,方法300进行到步骤303。在步骤303处,处理接收到的帧800以检测用户的手35。然后,方法300进行到步骤304。在步骤304处,处理接收到的帧以识别手35的取向和形态。在这个示例中,在步骤304处识别的手35的形态被视为在当前帧中执行的当前手形态。然后,方法300进行到步骤305。在步骤305处,将当前手形态添加到存储在例如存储器208中的手形态队列中。然后,方法300进行到步骤306。在步骤306处,存储在手形态队列中的手形态用于识别当前动态手势,即手35在多帧过程中的移动。
在步骤307处,手势识别系统220确定UI控制元件的拖动模式是否已激活。如果UI控制元件的拖动模式尚未激活,则在步骤308处,手势识别系统220确定识别的动态手势是否为拖动模式激活手势。在步骤308处,如果识别的手势不是拖动模式激活手势,则识别的手势不被视为拖动模式手势,并且在步骤332处将其处理为另一种手势。在步骤332之后,控制通过结点(junction)‘A’返回到步骤302,以从图像捕获设备,例如数字摄像头102接收另一帧。在步骤308处,如果手势识别系统220确定识别的手势为拖动模式激活手势,则手势识别系统向UI控制模块230提供指示检测到拖动模式激活手势的指示。在步骤312处,UI控制模块230激活拖动模式。此外,手势识别模块220在拖动模式激活时保存手35的初始位置。在本实施例中,手势识别系统通过相对于含有手势的帧800上的参照点测量的距离X0确定初始手位置,如关于图3所讨论。在步骤312之后,控制通过结点‘A’返回到步骤302以接收另一帧。
在步骤307处,如果手势识别系统220确定拖动模式已激活,则控制进入步骤310。在步骤310处,如果手势识别系统220确定识别的手势为拖动模式停用手势,则手势识别系统220向UI控制模块230提供检测到拖动模式停用手势的指示。控制然后进入步骤314。在步骤314处,UI控制模块停用拖动模式,并且控制通过结点‘A’返回到步骤302。在步骤310处,如果手势识别系统220确定检测到的手势不是拖动模式停用手势,则控制进入步骤316。
在步骤316处,如果手势识别系统220确定识别的手势不是离散控制手势,则识别的手势为方向设置空中手势。在本实施例中,方向设置空中手势为动态的大致水平方向设置空中手势32,如图4和5中所描绘。为了确定默认拖动方向,手势识别系统220在步骤322将手相对于捕获的帧800上的参照点的当前位置确定为距离X1。在步骤324处,手势识别系统220确定距离X1指示的当前位置与距离X0指示的初始位置(在步骤312保存)之间的差值的大小被确定。如果由|X1–X0|确定的差值的大小不超过特定阈值,则手势识别系统220确定手35在大致水平方向上的移动不足以指示拖动方向。用户的手35很可能只是在颤抖或不稳定。在这种情况下,控制通过结点‘A’返回到步骤302。另一方面,在324处,如果手势识别系统220确定距离X1表示的当前位置与距离X0表示的初始位置之间的差值的大小大于预定义阈值,则控制进入步骤326。在步骤326处,手势识别系统220确定所需拖动方向。在步骤326处,如果X1大于X0,则在步骤328处,手势识别系统220将拖动方向设置为向右或向前。此外,手势识别系统220将距离X0表示的初始位置更新为新距离X1的值。因此,如果手势识别系统220检测到新的方向设置空中手势,则距离X0表示的初始位置正确地设置。例如,可以在下一捕获的帧中识别新的动态大致水平方向设置空中手势32。新方向可能与当前设置的拖动方向相反。因此,新距离X1将小于当前距离X0,依此类推。在手势识别系统220设置拖动方向之后,控制通过结点‘A’返回到步骤302。另一方面,在步骤326处,如果手势识别系统220确定X1小于X0,则在步骤330处,手势识别系统220将拖动方向设置为向左或向后,将初始距离X0设置为X1,并且控制通过结点‘A’返回到步骤302。
在步骤316处,如果手势识别系统220确定检测到的手势为动态离散控制手势,则控制进入步骤318。在步骤318处,手势识别系统220向UI控制模块230指示动态离散控制手势已被检测到,并包括其方向。UI控制模块230转而使滑块元件64在默认拖动方向上拖动(移动)预定义距离(d)。如果在识别任何拖动方向设置手势之前识别到离散控制手势,则UI控制模块使滑块元件64在默认方向上移动。例如,UI控制模块230可配置成使得默认方向为向前(或向右)。在UI控制模块230使滑块元件64移动(拖动)预定义距离(d)到新的离散位置之后,控制通过结点‘A’返回到步骤302。
在一些实施例中,UI控制模块230使滑块元件64移动的距离(d)可由系统菜单或任何其他配置设置构件配置。在其他实施例中,距离(d)取决于初始距离X0与后续距离X1之间的差值。例如,当手势识别系统220确定拖动方向时,将其连同初始距离X0和后续距离X1一起提供给UI控制模块230。UI控制模块230使用X0与X1之间的差值来确定UI控制模块230使UI控制元件的可拖动元件移动的离散距离(d)。换句话说,手35在大致水平方向上从其初始位置移动了多远决定了滑块元件64响应于单个离散控制手势而移动的离散距离(d)。距离差的大小用|X1–X0|表示。此差值大小可乘以校准因子,以确定UI控件230使UI控制元件的可拖动元件移动的距离(d)。
如上所述,在另一示例性实施例中,拖动方向可响应于改变手35相对于显示器104的高度而设置。参考图17,描述了本发明实施例的使用手势对用户界面控件进行离散控制的方法400。方法400的许多步骤类似于图16的方法300中的对应步骤,并具有与其相同的附图标记。因此,这些步骤将不再描述。参考图17,在步骤412处,手势识别系统220激活了拖动模式,并保存了手35上的点与帧800上的参照点之间的初始高度h0限定的初始位置。初始高度h0可相对于帧800的底部边缘830或帧800上的另一个参照点测量。在步骤422处,手势识别系统220确定手35与帧800的参照点之间的后续手高度h1限定的后续手位置。在步骤424处,手势识别系统220确定手35在动态的大致竖直方向设置空中手势33的末端处的后续高度h1限定的后续位置与初始高度h0限定的初始位置之间的差值的大小。手势识别系统220将所确定的差值的大小与特定阈值比较。如果差值的大小小于特定阈值,则在步骤422处,控制通过结点‘A’返回到步骤302,以接收新的帧,并且手势识别系统220不设置拖动方向。另一方面,如果后续高度h1限定的后续位置与初始高度h0限定的初始位置之间的差值的大小大于特定阈值,则控制进入步骤426。在步骤426处,如果h1大于h0,则控制进入步骤428。在步骤428处,手势识别系统220将方向设置为向右或向前,且将初始高度h0设置为等于后续(当前)高度h1。在步骤428处,如果后续高度h1小于初始高度h0,则控制进入步骤430。在步骤430处,手势识别系统220将拖动方向设置为向左或向后,且将初始高度h0设置为后续高度h1。步骤428和430都通过结点‘A’将控制转移回步骤302。
在又一个实施例中,如参考图11和12所讨论,提供了一种用于使用手势对UI控制元件(例如,滑块60)的可拖动元件(例如,滑块元件64)进行离散控制的方法500,该方法如图18中所示。图18中的方法步骤与方法300和400中的对应方法步骤具有相同的附图标记,执行相同的功能。方法500表示在动态离散控制手势,例如动态捏合手势34或动态捏合和释放手势39期间设置拖动方向的实施例。例如,方法500不含有用于确定拖动方向的显式步骤。在步骤308处,如果手势识别系统220识别拖动模式激活手势,则控制进入步骤512。在步骤512处,手势识别系统激活拖动模式,并且控制通过结点‘A’返回到步骤302。在步骤316处,当手势识别系统220检测到离散控制手势时,控制进入步骤518。在步骤518处,如果手势识别系统220没有识别静态定向手势(右37A或左37B),则手势识别系统220忽略动态离散控制手势,并且控制通过结点‘A’返回到步骤302,以接收和处理另一帧。在步骤518处,如果手势识别系统220使用静态定向手势(37A、37B)识别指示拖动方向的副手36,则手势识别系统220向UI控制模块230提供拖动方向的指示。手势识别系统220还将在步骤316处检测到的离散控制手势提供到UI控制模块230。控制随后进入步骤520。在步骤520处,UI控制模块230使滑块元件64在副手36确定的拖动方向上移动距离(d)。
在方法500的另一示例中,副手36的缺失将导致滑块元件64仅在默认方向上拖动。
图19示出了手势识别系统220执行的用于控制显示在手势控制设备100的显示器104上的用户界面控制元件的方法700。该方法以获取手势控制设备的图像捕获设备捕获的视频的第一多个视频帧的步骤710开始。在步骤720处,在第一多个视频帧中识别手势控制设备的用户执行的拖动模式激活空中手势后,激活用户界面控制元件的拖动模式。在步骤730处,获取手势控制设备的图像捕获设备捕获的视频的第二多个视频帧。在步骤740处,在第二多个视频帧中识别手势控制设备的用户执行的动态离散控制空中手势后,使用户界面控制元件的可拖动图形小部件在默认拖动方向上移动离散距离。
虽然上述一些实施例讨论滑块60,但也考虑修改系统参数值的其他类型的控件。例如,离散控制手势可用于向上或向下滚动显示器的内容。动态定向手势可用于确定滚动方向。作为另一示例,离散控制手势可用于放大和缩小显示器的内容。在本示例中,动态方向设置空中手势可用于确定是放大还是缩小显示器。
虽然上述一些实施例描述了用于控制系统参数,例如音频音量、对比度或亮度的旋转控件,但旋转控件也可涉及例如移动时钟的手柄以调整时间。
可对所描述的实施例进行某些调整和修改。因此,上述实施例被认为是说明性的,而非限制性的。

Claims (21)

1.一种用于控制显示在手势控制设备的显示器上的用户界面控制元件的方法,其特征在于,所述方法包括:
获取所述手势控制设备的图像捕获设备捕获的视频的第一多个视频帧;
在所述第一多个视频帧中识别所述手势控制设备的用户执行的拖动模式激活空中手势后,激活所述用户界面控制元件的拖动模式;
获取所述手势控制设备的所述图像捕获设备捕获的所述视频的第二多个视频帧;
在所述第二多个视频帧中识别所述手势控制设备的所述用户执行的动态离散控制空中手势后,使所述用户界面控制元件的可拖动图形小部件在默认拖动方向上移动离散距离。
2.根据权利要求1所述的方法,其特征在于,还包括将与所述用户界面控制元件相关联的系统参数调整离散量。
3.根据权利要求1或2所述的方法,其特征在于,还包括在所述第二多个视频帧中识别所述手势控制设备的所述用户执行的拖动模式停用手势后,停用所述用户界面控制元件的所述拖动模式。
4.根据权利要求1至3中任一项所述的方法,其特征在于,还包括在识别方向设置空中手势后,针对所述用户界面控制元件的所述可拖动图形小部件设置所述默认拖动方向。
5.根据权利要求4所述的方法,其特征在于,识别所述方向设置空中手势包括在所述视频的第三多个视频帧中识别主手的动态方向设置空中手势。
6.根据权利要求5所述的方法,其特征在于,识别所述动态方向设置空中手势包括确定所述用户的所述主手在所述第一多个视频帧内的初始位置;
识别所述动态方向设置空中手势包括确定所述主手在所述第三多个视频帧内已从所述初始位置移动到后续位置。
7.根据权利要求6所述的方法,其特征在于:
所述初始位置确定在所述主手上的点与所述第一多个视频帧内的参照点之间;
所述后续位置确定在所述主手上的点与所述第三多个视频帧内的参照点之间。
8.根据权利要求6所述的方法,其特征在于,设置所述默认拖动方向还包括:
比较所述初始位置与所述后续位置;
确定所述初始位置与所述后续位置之间的差值是否大于特定阈值。
9.根据权利要求8所述的方法,其特征在于,所述离散距离基于所述初始位置与所述后续位置之间的所述差值。
10.根据权利要求7所述的方法,其特征在于:
所述初始位置由所述主手上的所述点与所述第一多个视频帧内的所述参照点之间的初始水平距离确定;
所述后续位置由所述主手上的所述点与所述第三多个视频帧内的所述参照点之间的后续水平距离确定。
11.根据权利要求7所述的方法,其特征在于:
所述初始位置由所述主手上的所述点与所述第一多个视频帧内的所述参照点之间的初始高度确定;
所述后续位置由所述主手上的所述点与所述第三多个视频帧内的所述参照点之间的后续高度确定。
12.根据权利要求4至10中任一项所述的方法,其特征在于,识别所述方向设置空中手势包括在所述第二多个视频帧中识别副手的方向设置空中手势。
13.根据权利要求1至12中任一项所述的方法,其特征在于,所述动态离散控制空中手势包括动态捏合空中手势。
14.根据权利要求13所述的方法,其特征在于,所述动态捏合空中手势包括撑开手势后跟捏紧手势。
15.根据权利要求1至14中任一项所述的方法,其特征在于:
所述用户界面控制元件包括滑块控件;
移动所述用户界面控制元件的所述可拖动图形小部件包括沿着所述滑块控件的轨道拖动滑块元件。
16.一种手势控制设备,其特征在于,包括:
图像捕获设备;
处理器;
存储器,耦合到所述处理器,所述存储器存储机器可执行指令,所述机器可执行指令在由所述处理器执行时使所述手势控制设备:
处理所述图像捕获设备捕获的视频的第一多个视频帧,以识别所述手势控制设备的用户执行的手势;
在所述第一多个视频帧中识别拖动模式激活空中手势后,激活用于控制用户界面控制元件的拖动模式;
处理所述图像捕获设备捕获的所述视频的第二多个视频帧,以识别所述手势控制设备的所述用户执行的手势;
在所述第二多个视频帧中识别所述用户执行的动态离散控制空中手势后,使所述用户界面控制元件的可拖动图形小部件在默认拖动方向上移动离散距离。
17.根据权利要求16所述的手势控制设备,其特征在于,所述机器可执行指令还使所述手势控制设备在所述第二多个视频帧中识别所述手势控制设备的所述用户执行的拖动模式停用手势后,停用所述用户界面控制元件的所述拖动模式。
18.根据权利要求16或17所述的手势控制设备,其特征在于,所述机器可执行指令还使所述手势控制设备在识别方向设置空中手势后,针对所述用户界面控制元件的所述可拖动图形小部件设置所述默认拖动方向。
19.根据权利要求18所述的手势控制设备,其特征在于,所述识别所述方向设置空中手势包括在所述视频的第三多个视频帧中识别主手的动态方向设置空中手势。
20.一种其上存储有机器可执行指令的计算机可读介质,其特征在于,所述机器可执行指令在由手势控制设备的处理器执行时使所述手势控制设备执行根据权利要求1至15中任一项所述的方法。
21.一种包括指令的计算机程序,其特征在于,所述指令在所述程序由计算机执行时使所述计算机执行根据权利要求1至15中任一项所述的方法。
CN202180085735.7A 2020-12-17 2021-11-16 用于手势控制设备的用户界面控制元件的多精度离散控制的方法和系统 Pending CN116670626A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/125,462 US11921931B2 (en) 2020-12-17 2020-12-17 Methods and systems for multi-precision discrete control of a user interface control element of a gesture-controlled device
US17/125,462 2020-12-17
PCT/CN2021/130997 WO2022127478A1 (en) 2020-12-17 2021-11-16 Methods and systems for multi-precision discrete control of user interface control element of gesture-controlled device

Publications (1)

Publication Number Publication Date
CN116670626A true CN116670626A (zh) 2023-08-29

Family

ID=82023054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180085735.7A Pending CN116670626A (zh) 2020-12-17 2021-11-16 用于手势控制设备的用户界面控制元件的多精度离散控制的方法和系统

Country Status (4)

Country Link
US (1) US11921931B2 (zh)
EP (1) EP4244706A4 (zh)
CN (1) CN116670626A (zh)
WO (1) WO2022127478A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114482833A (zh) * 2022-01-24 2022-05-13 西安建筑科技大学 一种基于手势识别的智能遮阳百叶控制系统及方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8681104B2 (en) * 2007-06-13 2014-03-25 Apple Inc. Pinch-throw and translation gestures
US20110221666A1 (en) * 2009-11-24 2011-09-15 Not Yet Assigned Methods and Apparatus For Gesture Recognition Mode Control
US20110314427A1 (en) * 2010-06-18 2011-12-22 Samsung Electronics Co., Ltd. Personalization using custom gestures
US20130088429A1 (en) * 2011-10-05 2013-04-11 Pantech Co., Ltd. Apparatus and method for recognizing user input
US20130211843A1 (en) * 2012-02-13 2013-08-15 Qualcomm Incorporated Engagement-dependent gesture recognition
US9459697B2 (en) * 2013-01-15 2016-10-04 Leap Motion, Inc. Dynamic, free-space user interactions for machine control
US10042510B2 (en) * 2013-01-15 2018-08-07 Leap Motion, Inc. Dynamic user interactions for display control and measuring degree of completeness of user gestures
US10852913B2 (en) * 2016-06-21 2020-12-01 Samsung Electronics Co., Ltd. Remote hover touch system and method
US11073980B2 (en) * 2016-09-29 2021-07-27 Microsoft Technology Licensing, Llc User interfaces for bi-manual control
CN107918481B (zh) * 2016-10-08 2022-11-11 深圳巧牛科技有限公司 基于手势识别的人机交互方法与系统
CN107918482B (zh) * 2016-10-08 2023-12-12 深圳思蓝智创科技有限公司 沉浸式vr系统中避免过度刺激的方法与系统
US10261595B1 (en) * 2017-05-19 2019-04-16 Facebook Technologies, Llc High resolution tracking and response to hand gestures through three dimensions
US20190073040A1 (en) * 2017-09-05 2019-03-07 Future Mobility Corporation Limited Gesture and motion based control of user interfaces
CN110045825B (zh) * 2018-03-27 2022-05-13 杭州凌感科技有限公司 用于车辆交互控制的手势识别系统
US10890983B2 (en) * 2019-06-07 2021-01-12 Facebook Technologies, Llc Artificial reality system having a sliding menu

Also Published As

Publication number Publication date
US11921931B2 (en) 2024-03-05
US20220197392A1 (en) 2022-06-23
EP4244706A1 (en) 2023-09-20
EP4244706A4 (en) 2024-05-15
WO2022127478A1 (en) 2022-06-23

Similar Documents

Publication Publication Date Title
US10542205B2 (en) Movable user interface shutter button for camera
US10782847B2 (en) Dynamic user interactions for display control and scaling responsiveness of display objects
EP2891950B1 (en) Human-to-computer natural three-dimensional hand gesture based navigation method
WO2021218486A1 (en) Method and device for adjusting the control-display gain of a gesture controlled electronic device
WO2018040906A1 (zh) 一种云台控制方法和装置、计算机存储介质
WO2014113507A1 (en) Dynamic user interactions for display control and customized gesture interpretation
US20130285904A1 (en) Computer vision based control of an icon on a display
US10754446B2 (en) Information processing apparatus and information processing method
US11693482B2 (en) Systems and methods for controlling virtual widgets in a gesture-controlled device
US10444831B2 (en) User-input apparatus, method and program for user-input
CN116670626A (zh) 用于手势控制设备的用户界面控制元件的多精度离散控制的方法和系统
US11693483B2 (en) Methods and systems of display edge interactions in a gesture-controlled device
US11693551B2 (en) Methods and systems for providing feedback for multi-precision mid-air gestures on a gesture-controlled device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination