CN116909391A - 手势交互方法、电子设备、存储介质及计算机程序产品 - Google Patents
手势交互方法、电子设备、存储介质及计算机程序产品 Download PDFInfo
- Publication number
- CN116909391A CN116909391A CN202310776642.XA CN202310776642A CN116909391A CN 116909391 A CN116909391 A CN 116909391A CN 202310776642 A CN202310776642 A CN 202310776642A CN 116909391 A CN116909391 A CN 116909391A
- Authority
- CN
- China
- Prior art keywords
- finger
- determining
- interaction
- gesture type
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000003993 interaction Effects 0.000 title claims abstract description 196
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000004590 computer program Methods 0.000 title claims abstract description 29
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000005096 rolling process Methods 0.000 claims abstract description 9
- 238000000926 separation method Methods 0.000 claims description 13
- 230000002452 interceptive effect Effects 0.000 abstract description 14
- 230000001976 improved effect Effects 0.000 abstract description 2
- 238000013507 mapping Methods 0.000 abstract description 2
- 210000003811 finger Anatomy 0.000 description 372
- 210000003813 thumb Anatomy 0.000 description 56
- 230000008569 process Effects 0.000 description 12
- 230000009471 action Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 210000004247 hand Anatomy 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 210000001015 abdomen Anatomy 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 238000004898 kneading Methods 0.000 description 3
- 230000008093 supporting effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 210000004932 little finger Anatomy 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 244000060701 Kaempferia pandurata Species 0.000 description 1
- 235000016390 Uvaria chamae Nutrition 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001212 derivatisation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 210000001145 finger joint Anatomy 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 210000002478 hand joint Anatomy 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/04815—Interaction 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例提供了一种手势交互方法、电子设备、存储介质及计算机程序产品。所述方法包括:根据第一手指与第二手指之间的相对运动信息,确定当前手势类型;确定所述当前手势类型对应的交互指令;执行所述当前手势类型对应的交互指令。从而可以替代控制手柄,实现的操控光标移动、选中、移动和页面滚动操作等交互指令,可以在不依赖控制手柄的情况下,依靠用户裸手实现XR设备的操控。同时,由于手势交互是人最自然的交互方式,其学习成本最低,可以较大程度上减少用户使用控制手柄时的学习成本。同时在虚拟空间中,可以将真实的双手映射重建,极大的提高操控的成功率,避免了控制手柄按键点选不到或点选错误的问题。
Description
本申请要求在2022年10月19日提交中国专利局、申请号为202211282635.6、发明名称为“手势交互方法、电子设备、存储介质及计算机程序产品”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明实施例涉及信息处理领域,尤其涉及一种手势交互方法、电子设备、存储介质及计算机程序产品。
背景技术
随着科技的发展,人机交互方式逐渐由2D交互向更具效率的3D交互转变。3D视觉交互系统则取决于虚拟现实(VR)、增强现实(AR)和混合现实(MR)的发展,这些技术统称为扩展现实(XR),进而,XR是指通过计算机技术和可穿戴设备产生的一个虚拟和现实组合、可人机交互的环境。XR作为VR、AR、MR的总称,包含了它们所有的特点,这是因为随着这三种技术的发展,各自的技术特征都可能发生衍生和交集。
当前XR设备主要依靠使用控制手柄来实现在三维空间内操控光标移动、选中、移动和页面滚动等操作。依靠控制手柄存在以下几个缺陷:1、在XR设备的使用过程中几乎不可脱离手柄,没有手柄时想要操控XR设备只能依靠设备上自带的按键,且只能实现返回主菜单、开关机等较少操作;2、手柄本身具有一定的重量,传统的控制手柄操作需要大范围的移动手柄,并不断的点击按键和板机,长时间使用用户会出现疲劳感;3、利用控制手柄实现指向和旋转、滚动操作时,需要用户手持手柄,通过发射的虚拟光束指向特定交互目标,通过按动手柄上的板机按键来选中,滚动操作则需要板动手柄上的摇杆来实现,操作复杂度高。手柄上按键较多,一般多达十几个,用户使用时的学习成本高、难度大;4、在实际操作时,如果用户穿戴XR设备(例如:VR眼镜),此时无法看到自己的双手,很容易误触手柄上的按键或无法选中对应的按键使得操控失败。
由此可见,目前亟需一种更加简单方便的交互方法。
发明内容
本发明实施例提供一种手势交互方法、电子设备、存储介质及计算机程序产品,以简单方便的实现人机交互。
本发明实施例第一方面提供了一种手势交互方法,所述方法包括:
根据手部图像,确定第一手指与第二手指之间的相对运动信息;
根据所述相对运动信息,确定当前手势类型;
根据手势类型与交互指令之间的对应关系,确定所述当前手势类型对应的当前交互指令;
执行所述当前交互指令对应的操作。
本发明实施例第二方面提供了一种手势交互装置,所述装置包括:
相对运动信息确定模块,用于根据手部图像,确定第一手指与第二手指之间的相对运动信息;
手势类型确定模块,用于根据所述相对运动信息,确定当前手势类型;
交互指令确定模块,用于根据手势类型与交互指令之间的对应关系,确定所述当前手势类型对应的当前交互指令;
执行模块,用于执行所述当前交互指令对应的操作。
本发明实施例第三方面提供一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现如本发明第一方面所述的手势交互方法。
本发明实施例第四方面提供一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现如本发明第一方面所述的手势交互方法。
本发明实施例第五方面提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现本发明第一方面所述的手势交互方法。
本发明实施例中,根据用户手部的第一手指与第二手指之间的相对运动信息,确定当前微动手势,从而可以通过双指之间的微动手势确定相对应的交互指令(例如:操控光标移动、选中、移动和页面滚动操作)并执行。从而可以替代控制手柄,实现的操控光标移动、选中、移动和页面滚动操作等交互指令,可以在不依赖控制手柄的情况下,依靠用户裸手实现XR设备的操控。同时,由于手势交互是人最自然的交互方式,其学习成本最低,可以较大程度上减少用户使用控制手柄时的学习成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种手势交互方法的流程图;
图2是本发明实施例的另一种手势交互方法的流程图;
图3是本发明实施例的另一种手势交互方法的流程图;
图4是本发明实施例的另一种手势交互方法的流程图;
图5是本发明实施例的一种手势交互装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
为了解决目前XR设备使用依赖特定的手柄配件的学习成本高、操控复杂、交互成功率低的问题,本发明提出发明构思:通过手指微动手势实现对XR设备控制,本发明实施例中,用户可以通过手指之间的微小动作,来实现操控光标移动、选中和页面滚动,以及移动操控对象实现拖拽和移动等。
具体的,本发明实施例提出了一种手势交互方法,参照图1,示出了本发明实施例的一种手势交互方法的流程图,所述方法包括以下步骤:
S101,根据手部图像,确定第一手指与第二手指之间的相对运动信息。
本发明实施例中,可以通过视觉传感器获取用户手指的图像信息,并对用户的手指信息进行跟踪,进行确定手指之间的相对运行信息,确定出动态的手势类型。
具体的,本发明实施例中,视觉传感器可以连续获取手指的图像信息,对手指进行定位、分析,以实现对用户手指在三维空间内的准确定位和跟踪,并对双指的动作进行识别和理解。
其中,所述视觉传感器可以集成在XR设备上,也可以是独立与XR设备的手势交互专用视觉传感器。
本发明实施例中,手势又可以称为:微手势、微动手势、动态手势,是指,通过对用户手指进行定位跟踪,得到的动态变化的用户手势。
示例地,本发明实施例中,第一手指可以为拇指,第二手指可以为食指或中指。第一手指还可以是食指、无名指、小指,第二手指还可以是中指、无名指、小指,通常第二手指为某一根手指,也可以为两根、三根手指或者四根手指。优选地,第一手指为拇指,第二手指为食指或中指为优选方案,以符合用户操作习惯,方便用户操作。通常,第一手指和第二手指是同一只手的手指,例如右手或左手上的手指,也可以是不同手上的两个手指。优选地,第一手指和第二手指是同一只手的手指,以符合用户操作习惯,方便用户操作。
从而,本发明实施例中,可以通过用户手指之间的微小变化,确定对应的手势类型。
S102,根据所述相对运动信息,确定当前手势类型。
本发明实施例中,在检测到手指之间的相对运动信息之后,可以根据第一手指与第二手指之间的相对运动信息识别出对应的手势类型。其中,相对运动信息用于描述第一手指与第二手指之间的相对运动的过程,在相对运动的过程中,两个手指可能只接触一次,也可能接触一次后分离,也可能接触一次后分离后再接触。具体的,相对运动信息可以是第一手指与第二手指之间相对运动的状态(例如接触状态、分离状态)、运动方向、运动速率、运动持续时长、运动距离等。
具体的,本发明实施例中,在确定当前手势类型时,可以分多个步骤进行分析判断,例如:先确定与第一手指发生相对运动的第二手指的标识;再判断第一手指与第二手指之间的接触信息和/或接触位置,其中,接触信息反映了相对运动过程中,第一手指和第二手指之间的接触状态、接触次数、接触持续时间、接触移动方向、接触期间手指的移动速率等。例如:是两指相触后分离,还是两指相触后不分离、保持相触状态;如果是两指相触后分离,可以进一步判断是否在短时间内发生第二次相触;如果是保持相触状态可以进一步判断持续相触时间内,两指是否发生相对位移;如果持续相触时间内两指没有发生相对位移,则可以进一步判断是否发生整手位移;如果持续相触时间内两指发生相对位移,可以进一步判断发生相对位移的运动速率是否大于目标速率。进而,本发明实施例中,可以根据第一手指与第二手指之间的相对运动信息,判断出多种手势类型。
在一种可选地实施方式中,也可以先获得相对运动的接触信息和/或接触位置,再判断发生相对运动的第一手指和第二手指是哪两根手指。
本发明实施例中,确定当前手势类型时,还可以考虑第一手指和第二手指的接触位置。第一手指和第二手指的接触位置可以包括:指尖、目标指节或目标指关节。
具体的,可以根据第一手指在所述第二手指上做出相对运动的接触位置结合第二手指的标识、接触信息,确定对应的手势类型。
本发明实施例中,可以沿手指的纵向方向确定接触位置,还可以沿手指的周向方向确定接触位置,例如是指腹、指背、指腹和指背交界的指侧面。
其中,目标指节可以是远端指节(指尖所在的指节)、中端指节、近端指节,目标指关节可以是远端指关节(靠近指尖的指关节)、近端指关节。
S103,根据手势类型与交互指令之间的对应关系,确定所述当前手势类型对应的当前交互指令。
本发明实施例中,可以提前在设置多个手势类型及其交互指令的对应关系。例如:通过拇指在食指的第二指节上缓慢且持续的前后左右移动来实现对光标在二维空间上的控制;根据双指的点击来实现确定和选中操作;根据双指的滑动来实现页面的上下和左右滚动。
本发明实施例中,识别出手势类型之后,即可与提前设置的对应关系进行匹配确定对应的交互指令。进一步的,本发明实施例中,还可以对动态的手势类型进行进一步分析,以确定更加细致具体的交互指令,例如:在通过拇指在食指的第二指节上缓慢且持续的前后左右移动来实现对光标在二维空间上的控制的情况下,可以通过为动态手势中包括的运动方向和运动距离还确定具体光标在二维空间中的移动方向和移动距离。
S104,执行所述当前交互指令对应的操作。
本发明实施例中,用户可以通过XR设备对某一具体的应用程序进行操作,也可以对XR设备对应的操作系统进行操作。
本发明实施例中,操作所针对的对象可以是各种类型的用户界面对象或物体,例如:界面本身以及界面上的菜单项、可选控件、可选内容项、滑块、按钮等。其中,各种类型的用户界面对象可以是支持XR操作的电子设备上安装的某一应用程序的界面,或,XR设备对应的操作系统主界面。
具体的,本发明实施例中,XR设备可以为支持XR操作的电子设备,从而用户可以对支持XR操作的电子设备上安装的某一应用程序进行操作,XR设备可以通过用户当前手势类型确定针对该应用程序的交互指令,从而可以在该应用程序的操作界面上对该应用程序进行操作,例如:滑动页面操作、打开菜单操作、确定操作、返回上一级操作等。
具体的,本发明实施例中,也可以对XR设备对应的操作系统主界面进行操作,例如:打开菜单操作、滑动页面操作、确定操作、返回上一级操作等。
本发明实施例中,XR设备在对动态手势进行识别分析后,即可确定对应的交互指令,并对该交互指令进行执行。
具体地,在本发明一种可选的实施方式中,提供了另一种手势交互方法的流程图,如图2所示,所述方法包括以下步骤:
S201,根据手部图像,确定第一手指与第二手指之间的相对运动信息。
具体的,步骤S201可以包括以下子步骤:
S2011,对多个手部图像进行识别,确定所述第一手指与所述第二手指各自的至少一个关键点。
本发明实施例中,所述关键点表征手指上的各个关键点,例如:指尖、第一指节、第二指节、指根等。
S2012,根据所述第一手指与所述第二手指各自的至少一个关键点,确定第一手指与第二手指之间的相对运动信息。
本发明实施例中,可以采集多帧手部图像,以对第一手指和第二手指之间的相对运动信息进行分析。根据多帧手部图像至少可以确定第一手指和第二手指之间的接触信息(例如:接触次数、接触持续时间、方向、接触期间手指的运动速率等)和接触位置。
S202,根据所述相对运动信息,确定所述第一手指与所述第二手指在第一目标时间段内的接触信息。
本发明实施例中,第一目标时间段可以由技术人员提前设定,例如:可以为5秒,从而,第一手指和第二手指之间在第一目标时间段内的接触信息可以为:单击(即第一手指与第二手指在接触一次后进入分离状态)、双击(即第一手指与第二手指在第一目标时间段内接触两次)、捏合(第一手指与第二手指在接触一次或者多次后保持持续接触)。
S203,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型。
S204,根据手势类型与交互指令之间的对应关系,确定所述当前手势类型对应的当前交互指令。
本发明实施例中,第一手指可以固定不变,以简化手势识别的过程,同时考虑到人体手指的灵活性,可以将第一手指固定为拇指。第二手指可以为食指或者中指,从而XR设备首先可以根据第二手指的标识确定发生相对运动的是哪两个手指。即使是同样的接触信息,如果第二手指的标识不同,对应的手势类型也可能不同,例如:拇指单击食指和拇指单击中指可以对应不同的手势类型,进而对应不同的交互指令。
可选地,本发明实施例中,所述步骤S203包括:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指在接触一次后进入分离状态的情况下,确定所述当前手势类型为第一单击手势类型。
在确定当前手势类型为第一单击手势的情况下,所述步骤S204包括:
确定与所述第一单击手势类型对应的交互指令为确定指令,所述确定指令用于指示执行确定操作。
本发明实施例中,确定指令可以对应常规应用中单击鼠标左键可以实现的任意指令,例如:确定选中一个交互目标(如图图标、选项框、物体等)、确定缩小或关闭交互界面(网页、对话框、文件夹、文档等)等。
可选地,本发明实施例中,所述步骤S203包括:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指处于持续接触的情况下,确定所述当前手势类型为捏合手势类型。
在确定当前手势类型为捏合手势类型的情况下,所述步骤S204包括:
确定交互目标,所述交互目标为:在所述第一手指接触到所述第二手指的时刻,光标位置所指向的目标;确定与所述捏合手势类型对应的交互指令为选中交互目标的指令,所述选中交互目标指令用于指示执行选中所述交互目标的操作。
具体的,执行所述捏合手势类型对应的交互指令时,交互目标被选中。所述交互目标指的是在第一手指和第二手指接触的时刻,操作界面上的光标所在位置所指向的交互目标,具体可以为:图标、窗口、网页、物体等,光标位置可以在确定为捏合手势之前,跟随手的移动确定所指向的位置。
其中,需要说明的是,本发明实施例中,判断第一手指与第二手指是否处于持续接触所依据的第一接触时间阈值,一般大于判断第一手指与第二手指是否接触一次后进入分离状态的第二接触时间阈值。
可选地,本发明实施例中,在前一次确定出的交互指令为所述选中交互目标的指令的情况下,所述步骤S203包括:
在所述第二手指的标识为第一标识,且所述接触信息为:在所述第一手指与所述第二手指处于持续接触期间,存在整手持续移动的情况下,确定所述当前手势类型为拖拽手势类型。
本发明实施例中,在第一目标时间段内,确定当前手势类型为捏合手势后,且根据捏合手势类型确定定出的交互指令为所述选中交互目标的指令的情况下,如果第一手指和第二手指持续捏合,且在持续捏合期间发生整手移动,则确定当前手势类型为拖拽手势类型。
在确定所述当前手势类型为拖拽手势类型的情况下,所述步骤S204包括:
确定与所述拖拽手势类型对应的交互指令为移动交互目标指令,所述移动交互目标指令用于指示执行按照整手的移动方向移动所述交互目标的操作。
具体的,本发明实施例中,拖拽手势类型针对的是:在进入持续接触的时刻、光标位置所指向的交互目标。该交互目标可以是:应用程序、文档、图片、图标、窗口、网页、物体等。从而,本发明实施例中,可以在当前操作界面上,对交互目标进行拖拽。
可选地,本发明实施例中,所述步骤S203包括:
在所述第二手指的标识为第二标识,且所述接触信息为所述第一手指与所述第二手指在接触一次后进入分离状态的情况下,确定所述当前手势类型为第二单击手势类型。
本发明实施例中,可以为中指设置第二标识,则第二单击手势可以是拇指单击中指,可以是单击中指的指腹、也可以是单击中指的指节侧面。
在确定所述当前手势类型为第二单击手势类型的情况下,所述步骤S204包括:
确定与所述第二单击手势类型对应的交互指令为打开菜单指令,所述打开菜单指令用于指示执行打开菜单操作。
本发明实施例中,还可以结合接触位置确定第二单击手势,接触位置可以是所述第二手指的指尖、远端指节(指尖所在的指节)或远端指关节(靠近指尖的指关节)或中端指节。
示例地,第一手指点击第二手指(可以是第二手指的指尖、指节或指关节,具体可以为远端指节、中端指节、或远端指关节)的动作且短时间内只有一次,则打开菜单。
可选地,本发明实施例中,所述步骤S203包括:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指在接触两次后进入分离状态的情况下,确定所述当前手势类型为第一双击手势类型,其中,所述接触两次为在第一次接触后的第一时长内再次接触。
在确定所述当前手势类型为第一双击手势类型的情况下,所述步骤S204包括:
确定交互目标,所述交互目标为:在所述第一手指接触到所述第二手指的时刻,光标位置所指向的目标;
确定与所述第一双击手势对应的交互指令为触发目标交互的指令,所述触发目标交互的指令为触发进入选择模式指令、缩放指令或保存指令,所述触发进入选择模式指令用于指示执行针对所述交互目标触发进入选择模式的操作,所述缩放指令用于指示执行缩放所述交互目标的操作,所述保持指令用于指示执行保存所述交互目标的操作。
触发进入选择模式指令是通过该指令进入选择模式,根据用户的后续操作(例如选择手势、选择操纵键等),对交互目标进行一项、多项或区域性的选择。
缩放指令是指对交互目标如图片、文档、对话框等进行缩小或放大。
保存指令是指对交互目标如图片、文档、对话框等进行保存。
可选地,在前一次确定出的交互指令为触发进入选择模式指令的情况下,所述步骤S203包括:
在所述第二手指的标识为第一标识,且所述接触信息为:在所述第一手指与所述第二手指处于持续接触期间,存在整手持续移动的情况下,确定当前手势类型为选择手势类型。
其中,需要说明的是,本发明实施例中,在判断第一手指与第二手指处于持续接触的判断依据中,持续接触期间的接触时间一般大于上述确定第一双击手势类型时采用的第一时长。
其中,需要说明的是,本发明实施例中,判断第一手指与第二手指是否处于持续接触所依据的第一接触时间阈值,一般大于上述确定第一双击手势类型时采用的第一时长。
在确定所述当前手势类型为选择手势类型的情况下,所述步骤S204包括:
确定与所述选择手势类型对应的交互指令为目标选择指令,所述目标选择指令用于指示执行根据选择范围进行目标选择的操作,所述选择范围是根据所述整手的移动范围确定的。
在一些实施例中,所述选择范围的确定步骤包括:将所述整手的移动范围,确定为选择范围;或对所述整手的移动范围进行等比例缩放,将等比例缩放后的范围确定为选择范围。
具体的,在将整手的移动范围,确定为选择范围的情况下,用户整手移动的范围与目标选择的范围相同。此种情景适用于对尺寸适中的目标进行选择。
具体的,在对整手的移动范围进行等比例缩放,将等比例缩放后的范围确定为选择范围,此种情景适用于对尺寸较大或较小的目标进行选择。例如针对小尺寸的对象,用户整手移动较大的范围,则控制目标选择的范围较小,以对小尺寸的对象细节进行操作;针对大尺寸的对象,用户整手移动较小的范围,则控制目标选择的范围较大,以对大尺寸对象整体进行操作。
具体的,本发明实施例中,拇指双击食指之后,若是在第二次接触之后,两个手指没有分离、而是处于持续接触,并且,在持续接触期间发生了整手移动,则可以确定当前手势为选择手势类型。
其中,整手移动可以是三维平面内任意方向的移动,对应的交互指令为:根据整手的移动范围选择目标的指令,示例的,可以是框选当前页面内的多个图片、图标等,也可以是选择当前页面内的文字段落等。
其中,确定在当前手势为选择手势的时刻,如果当前操作界面上光标位置指向的是虚拟物体,则对应的交互指令为触发进入选择模式指令,并且可以结合整手的移动范围实现对虚拟物体的多选。
可选地,本发明实施例中,所述步骤S203包括:
在所述第二手指的标识为第二标识,且所述接触信息为所述第一手指与所述第二手指在接触两次后进入分离状态的情况下,确定所述当前手势类型为第二双击手势类型,其中,所述接触两次为在第一次接触后的第一时长内再次接触。
在确定所述当前手势类型为第二双击手势类型的情况下,所述步骤S204包括:
确定与所述第二双击手势对应的交互指令为返回上一级指令,所述返回上一级指令用于指示执行返回上一级的操作。
可选地,所述步骤S203包括:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指处于持续接触期间,所述第一手指相对于所述第二手指的移动速率不小于目标速率情况下,确定当前手势类型为滑动手势类型。
本发明实施例中,还可以根据相对运动信息中包括的相对运动速率,对当前手势类型进行区分。
在确定所述当前手势类型为滑动手势类型的情况下,所述步骤S204包括:
确定所述第一手指的滑动方向,所述滑动方向为所述第一手指的指腹相对于所述第二手指的指节侧部横向运动或纵向运动的方向;
确定与所述滑动手势类型对应的交互指令为页面控制指令,所述页面控制指令用于指示执行按照所述第一手指的滑动方向进行页面滚动操作或翻页操作。。
其中,横向运动指的是:第一手指的指腹相对于所述第二手指的中端指节平行方向移动,纵向运动指的是:第一手指的指腹相对于所述第二手指的中端指节垂直方向移动。
具体地,可以参照以下方法确定运动方向:
可选地,将第二手指的指尖到第一指关节或第二指关节的方向,或者中端指节、近端指节延伸的方向,作为平行方向;将第二手指的手心侧到手背侧的方向,作为垂直方向。
可选地,将与第一手指延伸的方向相垂直的作为平行方向;将与第一手指延伸的方向相同的方向作为垂直方向。
本发明实施例中,关于方向的确定均可以微调扩展到某一小角度范围,以实现更加灵敏的方向控制。
具体地,所述滑动手势类型包括以下至少一者:
首次滑动手势类型,所述首次滑动手势类型的手指滑动起点为所述第二手指上与所述第一手指相接触的接触点;
再次滑动手势类型,所述再次手指滑动类型的手指滑动起点是根据所述第一手指上一次滑动的滑动方向确定的。
本发明实施例中,用户可以进行单次滑动操作,也可以进行连续滑动操作,相应的,单次滑动手势类型的手指滑动起点为所述第二手指上与所述第一手指相接触的接触点,连续滑动操作中再次滑动手势类型的手指滑动起点是根据所述第一手指上一次滑动的滑动方向确定的。
本发明实施例中,滑动手势类型进一步可以分为左滑手势、右滑手势、上滑、下滑手势。其中,左滑手势指的是第一手指的移动方向为横向向左,右滑手势指的是第一手指的移动方向为横向向右,上滑手势指的是第一手指的移动方向为纵向向前,下滑手势指的是第一手指的移动方向为纵向向后。
本发明实施例中,首次滑动起点为接触点,再次滑动根据前次滑动方向确定,以右手手势为例,假设在前次滑动的滑动方向向左的情况下,再次滑动的滑动起点为中端指节右端点。假设在前次滑动的滑动方向向右的情况下,再次滑动的滑动起点为手指指尖。假设在前次滑动的滑动方向向上的情况下,再次滑动的滑动起点为中端指节手心侧边中点。假设在前次滑动的滑动方向向下的情况下,再次滑动的滑动起点为中端指节手被侧边中点。
可选地,本发明实施例中,所述步骤S203包括:
在所述第二手指的标识为第一标识,且所述接触信息为:所述第一手指与所述第二手指处于持续接触期间,所述第一手指相对于所述第二手指的移动速率小于目标速率情况下,确定当前手势类型为移动手势类型。
本发明实施例中,第一手指与第二手指在第二目标时间段内连续接触的过程中发生相对运动的移动速率较大时,确定对应的手势类型为滑动手势类型,第一手指与第二手指在第二目标时间段内连续接触的过程中发生相对运动的移动速率较小时,确定对应的手势类型为移动手势类型。
在确定所述当前手势类型为移动手势类型的情况下,所述步骤S204包括:
确定所述第一手指的移动方向,所述移动方向为所述第一手指相对于所述第二手指上的参考点移动的方向;
确定与所述移动手势类型对应的交互指令为光标移动指令,所述光标移动指令用于指示执行按照所述移动方向和/或所述移动速率进行光标移动的操作。
S205,执行所述当前交互指令对应的操作。
本发明实施例中,所述步骤S205与前述步骤S104类似,在此不再赘述。
在其他实施例中,当前手势类型与交互指令的对应关系可以调整,或者手势类型可以对应其他本领域可以想到的交互指令,例如与所述第一单击手势类型对应的交互指令为打开菜单指令,与所述第二单击手势对应的交互指令为确定指令。
具体地,在本发明一种可选的实施方式中,提供了另一种手势交互方法的流程图,如图3所示,所述方法包括以下步骤:
S301,检测所述第一手指与所述第二手指之间是否产生触发手势。
S302,在所述第一手指与所述第二手指之间产生触发手势的情况下,进入微手势模式。
本发明实施例中,可以设置一个启动手势,例如可以为:第一手指与第二手指相接触,在识别到该启动手势后,XR设备进入微手势模式,进而对第一手指与第二手指之间的相对运动进行跟踪、识别。可以避免XR设备始终处于微手势模式,造成误识别、误操作。
本发明实施例中,还可以结合接触位置对启动手势进行识别,以将所述启动手势和所述第一单击手势相区分。
相应的,本发明实施例中,还可以设置一个关闭手势,例如可以为:第一手指与第二手指持续接触超过第三目标时间段。
本发明实施例中,当用户完成一系列的手势控制之后,还可以通过关闭手势,对微手势模式进行关闭,以避免XR设备始终处于微手势模式,造成误识别、误操作。
S303,在微手势模式下,根据手部图像,确定第一手指与第二手指之间的相对运动信息。
本发明实施例中,进入微手势模式后,XR设备可以连续采集用户手部的图像信息,对用户手指进行定位、跟踪、分析,以获取第一手指与所述第二手指之间的相对运动信息。
本发明实施例中,在微手势模式下,还可以在虚拟空间中,对用户真实的双手映射重建,具体包括:按照用户手部关节信息,在虚拟空间中对应映射重建该用户真实的双手,并根据采集到的所述第一手指与所述第二手指之间的相对运动信息,在虚拟空间中映射重建变化后的手势信息,从而用户可以在XR设备的微手势模式下看到自己的双手以及动态变化的手势,进而极大的提高操控的成功率,避免了控制手柄按键点选不到或点选错误的问题。
S304,根据所述相对运动信息,确定所述第一手指与所述第二手指在第一目标时间段内的接触信息。
S305,根据所述相对运动信息,确定所述第一手指在所述第二手指上做出相对运动的接触位置,所述接触位置为所述第二手指的指尖、目标指节或目标指关节。
优选地,接触位置可以是第二手指的远端指节(指尖所在的指节)或远端指关节(靠近指尖的指关节)或中端指节,以符合用户操作习惯,方便用户操作。
S306,根据所述第二手指的标识、所述接触信息和所述接触位置,确定所述当前手势类型。
本发明实施例中,还可以分析第一手指在第二手指上作出相对运动的接触位置,不同的接触位置可以对应不同的手势类型,从而可以进一步丰富细化手势类型。
S307,根据手势类型与交互指令之间的对应关系,确定所述当前手势类型对应的当前交互指令。
S308,执行所述当前交互指令对应的操作。
本发明实施例中,可以根据第一手指与第二手指各自的至少一个关键点,确定出第一手指在所述第二手指上做出相对运动的接触位置。并设置不同的接触位置对应不同的手势类型。从而可以结合所述第二手指的标识、所述接触信息和所述接触位置,确定所述当前手势类型。
以下,结合图4对本发明实施例提出的手势交互方法进行示例性的说明,如图4所示,本发明实施例提供的手势交互方法,具体可以包括以下步骤:
步骤S1:拇指自然平放在食指上,进入微手势模式。
示例地,本发明实施例中,可以提前将“拇指自然平方在食指上”这一微手势作为进行微手势模式的启动手势,当XR设备上集成的视觉传感器检测到这一微手势,即可确定当前系统进行微手势模式。
本发明实施例中,设置这一启动手势,在检测到这一启动手势之后,XR设备方进行微手势模式,可以避免用户误操作。同时,XR设备还可以配置其他操作模式(例如:手柄控制操作模式),在用户没有启动微手势操作状态的情况下,用户可以通过其他操作状态对XR设备进行操作。
步骤S2:进入微手势类型判断。
本发明实施例中,在微手势模式下,即可获取所述第一手指与所述第二手指之间的相对运动信息,进入微手势类型判断。
本发明实施例中,在检测到启动手指之后,XR设备即可开始对用户手指之间的相对运行信息进行持续检测、以及分析判断,确定对应的微手势。
本发明实施例中,示例性地,将大拇指作为第一手指,食指作为具有第一标识的第二手指,中指作为具有第二标识的第二手指,通过第一手指和第二手指之间的相对运动信息确定对应的手势类型。
步骤S3:在S1状态下,如大拇指出现点击食指(可以是第一指节、第一指关节)的动作且短时间内只有一次,则继续判断其是否处于持续捏合状态,如果是持续捏合,则进入选中状态,此时整手移动即可实现拖拽;如果只是一次点击动作而非持续捏合,则进入确定状态。
本发明实施例中,将大拇指出现点击食指作为第一单击手势,将大拇指点击食指后持续捏合作为捏合手势,将捏合手势配合整手移动作为拖拽手势。
可以理解,在人机交互的过程中,最基础的交互操作即为点击,基于点击操作可以生成确定指令。示例地,本发明实施例中,将大拇指单击食指指节这一微手势识别为点击操作。
本发明实施例中,还设置了如果大拇指点击食指之后,两个手指处于持续捏合状态,则确定其为捏合手势类型,对应的交互指令为选中交互目标的指令,检测到该手势类型,则当前操作界面进入选中状态,选中某个对象,例如:可以选中某个桌面图标,或者选中某个文件等,进入选中状态后,用户还可以通过整手的移动实现,对该选中对象的拖拽,例如:将选中的图标拖拽到桌面其他位置,或者将选中的文件移动到其他文件夹等。
步骤S4:在S1状态下,如大拇指在较短时间内出现两次点击食指的动作,确定该手势为第一双击手势类型,继续判断此时指向位置是否有特定交互目标,如否则不做操作;如是则触发特定交互,确定与该手势类型对应的交互指令为触发目标交互的指令,如:指向位置是浏览器页面,则进入文字选择状态,此时拇指和食指在适当的位置开始持续捏合,配合整手移动可实现文字的连续选择,直到拇指和食指松开不再捏合则选择文字结束;如指向位置为虚拟物体,则触发多选;如指向位置为图片,则触发放大或保存操作。
本发明实施例中,在进入微手势状态判断后,如果检测到大拇指在较短时间内连续点击了食指两次,则可以将其识别为拇指双击食指的操作。示例的,较短时间可以为5秒内。
示例地,用户可以通过XR设备对应用程序(例如:浏览器、文档编辑程序、即时通信程序、视频播放器等)进行操作,在XR设备识别到拇指双击食指的情况下,则可以触发常规的鼠标左键双击的相关操作(包括:启动应用程序、放大图片、触发多选等),例如:当前指向位置为某一应用程序,则可以触发该应用程序的启动。又例如:当前指向位置是浏览器页面,可以触发对浏览器页面上显示的文字的选择状态,此时,如果配合整手移动,则可以实现文字的连续框选,直到拇指和食指松开不再捏合则选择文字结束。
步骤S5:在S1状态下,如大拇指出现点击中指(可以是中指的指节或指关节,优选为第一指节)的动作且短时间内只有一次,则打开菜单。
本发明实施例中,将大拇指点击中指设置为第二单击手势,其对应的交互指令可以类似于单击鼠标右键,相应的,XR设备在检测到该微手势时可以触发右键菜单。
步骤S6:在S1状态下,如大拇指在较短时间内出现两次点击中指的动作,则返回上一级。
示例地,本发明实施例可以将大拇指双击中指的微手势设置为返回上一级。
本发明实施例中,可以将大拇指双击中指,作为第二双击手势,对应的交互指令为:返回上一级。
步骤S7:在S1状态下,如大拇指和食指捏合时,出现拇指从食指指尖方向向第二指节方向横向滑动动作且短时间内只有一次,则执行一次右滑,触发页面滚动;首次滑动起点为捏合点,后续滑动起点优选为食指指尖;横向滑动动作是指拇指向与拇指垂直的方向移动。
步骤S8:在S1状态下,如大拇指在食指捏合时,出现拇指从第二指节方向向食指指尖方向横向滑动动作且短时间内只有一次,则执行一次左滑;首次滑动起点为捏合点,后续滑动起点优选为食指第一指节;横向滑动动作是指拇指向与拇指垂直的方向移动。
步骤S9:在S1状态下,如大拇指在食指捏合时,出现大拇指相对食指的前向运动且短时间内只有一次,则执行一次上滑。
步骤S10:在S1状态下,如大拇指在食指捏合时,出现大拇指相对食指的后向运动且短时间内只有一次,则执行一次下滑。
示例地,本发明实施例中,将大拇指和食指捏合时出现的短时间内只有一次的滑动作为滑动手势类型。
在大拇指和食指捏合的状态下,可以通过大拇指相对于食指在短时间内有且只有一次的滑动,以及对应的滑动方向,确定相应的左滑操作、右滑操作、上滑操作或者下滑操作。
步骤S11:在S1状态下,大拇指和食指处于捏合状态且大拇指相对食指持续缓慢运动,此时,如拇指相对食指横向移动,则可控制光标在X轴方向对应移动;如拇指相对食指纵向移动,则可控制光标在Y轴方向对应移动。
示例地,本发明实施例中,将大拇指和食指处于捏合状态且大拇指相对食指持续缓慢运动作为移动手势类型,如果大拇指和食指处于捏合状态且大拇指相对食指持续缓慢运动,则可以识别为光标移动操作,相应的,可以根据大拇指和相对食指的移动方向和移动距离控制光标的移动方向和移动距离。
基于同一发明构思,本发明实施例提供一种手势交互装置。参考图5,图5是本发明实施例提供的手势交互装置的示意图。如图5所示,该装置包括:
相对运动信息确定模块501,用于根据手部图像,确定第一手指与第二手指之间的相对运动信息;
手势类型确定模块502,用于根据所述相对运动信息,确定当前手势类型;
交互指令确定模块503,用于根据手势类型与交互指令之间的对应关系,确定所述当前手势类型对应的当前交互指令;
执行模块504,用于执行所述当前交互指令对应的操作。
可选地,所述手势类型确定模块502,包括:
接触信息确定子模块,用于根据所述相对运动信息,确定所述第一手指与所述第二手指在第一目标时间段内的接触信息;
手势类型确定子模块,用于根据所述第二手指的标识和所述接触信息,确定所述当前手势类型。
可选地,所述装置还包括:
接触位置确定模块,用于根据所述相对运动信息,确定所述第一手指在所述第二手指上做出相对运动的接触位置,所述接触位置为所述第二手指的指尖、目标指节或目标指关节;
所述手势类型确定子模块,具体用于:
根据所述第二手指的标识、所述接触信息和所述接触位置,确定所述当前手势类型。
可选地,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指在接触一次后进入分离状态的情况下,确定所述当前手势类型为第一单击手势类型;
所述交互指令确定模块,具体用于:
确定与所述第一单击手势类型对应的交互指令为确定指令,所述确定指令用于指示执行确定操作。
可选地,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指处于持续接触的情况下,确定所述当前手势类型为捏合手势类型;
所述交互指令确定模块,具体用于:
确定交互目标,所述交互目标为:在所述第一手指接触到所述第二手指的时刻,光标位置所指向的目标;
确定与所述捏合手势类型对应的交互指令为选中交互目标的指令,所述选中交互目标指令用于指示执行选中所述交互目标的操作。
可选地,在前一次确定出的交互指令为所述选中交互目标的指令的情况下,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第一标识,且所述接触信息为:在所述第一手指与所述第二手指处于持续接触期间,存在整手持续移动的情况下,确定所述当前手势类型为拖拽手势类型;
所述交互指令确定模块,具体用于:
确定与所述拖拽手势类型对应的交互指令为移动交互目标指令,所述移动交互目标指令用于指示执行按照整手的移动方向移动所述交互目标的操作。
可选地,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第二标识,且所述接触信息为所述第一手指与所述第二手指在接触一次后进入分离状态的情况下,确定所述当前手势类型为第二单击手势类型;
所述交互指令确定模块,具体用于:
确定与所述第二单击手势类型对应的交互指令为打开菜单指令,所述打开菜单指令用于指示执行打开菜单操作。
可选地,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指在接触两次后进入分离状态的情况下,确定所述当前手势类型为第一双击手势类型,其中,所述接触两次为在第一次接触后的第一时长内再次接触;
所述交互指令确定模块,具体用于:
确定交互目标,所述交互目标为:在所述第一手指接触到所述第二手指的时刻,光标位置所指向的目标;
确定与所述第一双击手势对应的交互指令为触发目标交互的指令,所述触发目标交互的指令为触发进入选择模式指令、缩放指令或保存指令,所述触发进入选择模式指令用于指示执行针对所述交互目标触发进入选择模式的操作,所述缩放指令用于指示执行缩放所述交互目标的操作,所述保持指令用于指示执行保存所述交互目标的操作。
可选地,在前一次确定出的交互指令为触发进入选择模式指令的情况下,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第一标识,且所述接触信息为:在所述第一手指与所述第二手指处于持续接触期间,存在整手持续移动的情况下,确定当前手势类型为选择手势类型;
所述交互指令确定模块,具体用于:
确定与所述选择手势类型对应的交互指令为目标选择指令,所述目标选择指令用于指示执行根据选择范围进行目标选择的操作,所述选择范围是根据所述整手的移动范围确定的。
可选地,所述装置还包括:
范围确定模块,用于将所述整手的移动范围,确定为选择范围;或
对所述整手的移动范围进行等比例缩放,将等比例缩放后的范围确定为选择范围。
可选地,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第二标识,且所述接触信息为所述第一手指与所述第二手指在接触两次后进入分离状态的情况下,确定所述当前手势类型为第二双击手势类型,其中,所述接触两次为在第一次接触后的第一时长内再次接触;
所述交互指令确定模块,具体用于:
确定与所述第二双击手势对应的交互指令为返回上一级指令,所述返回上一级指令用于指示执行返回上一级的操作。
可选地,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指处于持续接触期间,所述第一手指相对于所述第二手指的移动速率不小于目标速率情况下,确定当前手势类型为滑动手势类型;
所述交互指令确定模块,具体用于:
确定所述第一手指的滑动方向,所述滑动方向为所述第一手指的指腹相对于所述第二手指的指节侧部横向运动或纵向运动的方向;
确定与所述滑动手势类型对应的交互指令为页面控制指令,所述页面控制指令用于指示执行按照所述第一手指的滑动方向进行页面滚动操作或翻页操作。
可选地,所述滑动手势类型包括以下至少一者:
首次滑动手势类型,所述首次滑动手势类型的手指滑动起点为所述第二手指上与所述第一手指相接触的接触点;
再次滑动手势类型,所述再次手指滑动类型的手指滑动起点是根据所述第一手指上一次滑动的滑动方向确定的。
可选地,所述手势类型确定子模块,具体用于:
在所述第二手指的标识为第一标识,且所述接触信息为:所述第一手指与所述第二手指处于持续接触期间,所述第一手指相对于所述第二手指的移动速率小于目标速率情况下,确定当前手势类型为移动手势类型;
所述交互指令确定模块,具体用于:
确定所述第一手指的移动方向,所述移动方向为所述第一手指相对于所述第二手指上的参考点移动的方向;
确定与所述移动手势类型对应的交互指令为光标移动指令,所述光标移动指令用于指示执行按照所述移动方向和/或所述移动速率进行光标移动的操作。
可选地,所述装置还包括:
触发手势检测模块,用于检测所述第一手指与所述第二手指之间是否产生触发手势;
触发模块,用于在所述第一手指与所述第二手指之间产生触发手势的情况下,进入微手势模式;
相对运动信息确定模块,具体用于在微手势模式下,根据手部图像,确定第一手指与第二手指之间的相对运动信息。
可选地,相对运动信息确定模块,具体用于:对多个手部图像进行识别,确定所述第一手指与所述第二手指各自的至少一个关键点;
根据所述第一手指与所述第二手指各自的至少一个关键点,确定第一手指与第二手指之间的相对运动信息。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行时实现上述任一实施例所述的手势交互方法中的步骤。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现上述任一实施例所述的手势交互方法中的步骤。
本发明实施例还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述任一实施例所述的手势交互方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种手势交互方法、电子设备、存储介质及计算机程序产品,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (19)
1.一种手势交互方法,其特征在于,所述方法包括:
根据手部图像,确定第一手指与第二手指之间的相对运动信息;
根据所述相对运动信息,确定当前手势类型;
根据手势类型与交互指令之间的对应关系,确定所述当前手势类型对应的当前交互指令;
执行所述当前交互指令对应的操作。
2.根据权利要求1所述的方法,其特征在于,根据所述相对运动信息,确定当前手势类型,包括:
根据所述相对运动信息,确定所述第一手指与所述第二手指在第一目标时间段内的接触信息;
根据所述第二手指的标识和所述接触信息,确定所述当前手势类型。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
根据所述相对运动信息,确定所述第一手指在所述第二手指上做出相对运动的接触位置,所述接触位置为所述第二手指的指尖、目标指节或目标指关节;
根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
根据所述第二手指的标识、所述接触信息和所述接触位置,确定所述当前手势类型。
4.根据权利要求2所述的方法,其特征在于,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指在接触一次后进入分离状态的情况下,确定所述当前手势类型为第一单击手势类型;
确定所述当前手势类型对应的当前交互指令,包括:
确定与所述第一单击手势类型对应的交互指令为确定指令,所述确定指令用于指示执行确定操作。
5.根据权利要求2所述的方法,其特征在于,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指处于持续接触的情况下,确定所述当前手势类型为捏合手势类型;
确定所述当前手势类型对应的当前交互指令,包括:
确定交互目标,所述交互目标为:在所述第一手指接触到所述第二手指的时刻,光标位置所指向的目标;
确定与所述捏合手势类型对应的交互指令为选中交互目标的指令,所述选中交互目标指令用于指示执行选中所述交互目标的操作。
6.根据权利要求5所述的方法,其特征在于,在前一次确定出的交互指令为所述选中交互目标的指令的情况下,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第一标识,且所述接触信息为:在所述第一手指与所述第二手指处于持续接触期间,存在整手持续移动的情况下,确定所述当前手势类型为拖拽手势类型;
确定所述当前手势类型对应的当前交互指令,包括:
确定与所述拖拽手势类型对应的交互指令为移动交互目标指令,所述移动交互目标指令用于指示执行按照整手的移动方向移动所述交互目标的操作。
7.根据权利要求2所述的方法,其特征在于,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第二标识,且所述接触信息为所述第一手指与所述第二手指在接触一次后进入分离状态的情况下,确定所述当前手势类型为第二单击手势类型;
确定所述当前手势类型对应的当前交互指令,包括:
确定与所述第二单击手势类型对应的交互指令为打开菜单指令,所述打开菜单指令用于指示执行打开菜单操作。
8.根据权利要求2所述的方法,其特征在于,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指在接触两次后进入分离状态的情况下,确定所述当前手势类型为第一双击手势类型,其中,所述接触两次为在第一次接触后的第一时长内再次接触;
确定所述当前手势类型对应的当前交互指令,包括:
确定交互目标,所述交互目标为:在所述第一手指接触到所述第二手指的时刻,光标位置所指向的目标;
确定与所述第一双击手势对应的交互指令为触发目标交互的指令,所述触发目标交互的指令为触发进入选择模式指令、缩放指令或保存指令,所述触发进入选择模式指令用于指示执行针对所述交互目标触发进入选择模式的操作,所述缩放指令用于指示执行缩放所述交互目标的操作,所述保持指令用于指示执行保存所述交互目标的操作。
9.根据权利要求8所述的方法,其特征在于,在前一次确定出的交互指令为触发进入选择模式指令的情况下,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第一标识,且所述接触信息为:在所述第一手指与所述第二手指处于持续接触期间,存在整手持续移动的情况下,确定当前手势类型为选择手势类型;
确定所述当前手势类型对应的当前交互指令,包括:
确定与所述选择手势类型对应的交互指令为目标选择指令,所述目标选择指令用于指示执行根据选择范围进行目标选择的操作,所述选择范围是根据所述整手的移动范围确定的。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
将所述整手的移动范围,确定为选择范围;或
对所述整手的移动范围进行等比例缩放,将等比例缩放后的范围确定为选择范围。
11.根据权利要求2所述的方法,其特征在于,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第二标识,且所述接触信息为所述第一手指与所述第二手指在接触两次后进入分离状态的情况下,确定所述当前手势类型为第二双击手势类型,其中,所述接触两次为在第一次接触后的第一时长内再次接触;
确定所述当前手势类型对应的当前交互指令,包括:
确定与所述第二双击手势对应的交互指令为返回上一级指令,所述返回上一级指令用于指示执行返回上一级的操作。
12.根据权利要求2所述的方法,其特征在于,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第一标识,且所述接触信息为所述第一手指与所述第二手指处于持续接触期间,所述第一手指相对于所述第二手指的移动速率不小于目标速率情况下,确定当前手势类型为滑动手势类型;
确定所述当前手势类型对应的当前交互指令,包括:
确定所述第一手指的滑动方向,所述滑动方向为所述第一手指的指腹相对于所述第二手指的指节侧部横向运动或纵向运动的方向;
确定与所述滑动手势类型对应的交互指令为页面控制指令,所述页面控制指令用于指示执行按照所述第一手指的滑动方向进行页面滚动操作或翻页操作。
13.根据权利要求12所述的方法,其特征在于,所述滑动手势类型包括以下至少一者:
首次滑动手势类型,所述首次滑动手势类型的手指滑动起点为:在所述第一手指接触到所述第二手指的时刻,所述第一手指上与所述第二手指相接触的接触点;
再次滑动手势类型,所述再次手指滑动类型的手指滑动起点是根据所述第一手指上一次滑动的滑动方向确定的。
14.根据权利要求2所述的方法,其特征在于,根据所述第二手指的标识和所述接触信息,确定所述当前手势类型,包括:
在所述第二手指的标识为第一标识,且所述接触信息为:所述第一手指与所述第二手指处于持续接触期间,所述第一手指相对于所述第二手指的移动速率小于目标速率情况下,确定当前手势类型为移动手势类型;
确定所述当前手势类型对应的当前交互指令,包括:
确定所述第一手指的移动方向,所述移动方向为所述第一手指相对于所述第二手指上的参考点移动的方向;
确定与所述移动手势类型对应的交互指令为光标移动指令,所述光标移动指令用于指示执行按照所述移动方向和/或所述移动速率进行光标移动的操作。
15.根据权利要求1-14任一所述的方法,其特征在于,所述方法还包括:
检测所述第一手指与所述第二手指之间是否产生触发手势;
在所述第一手指与所述第二手指之间产生触发手势的情况下,进入微手势模式;
根据手部图像,确定第一手指与第二手指之间的相对运动信息,包括:
在微手势模式下,根据手部图像,确定第一手指与第二手指之间的相对运动信息。
16.根据权利要求1-15任一所述的方法,其特征在于,根据手部图像,确定第一手指与第二手指之间的相对运动信息,包括:
对多个手部图像进行识别,确定所述第一手指与所述第二手指各自的至少一个关键点;
根据所述第一手指与所述第二手指各自的至少一个关键点,确定第一手指与第二手指之间的相对运动信息。
17.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-16任一项所述的手势交互方法。
18.一种计算机可读存储介质,其上存储有计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1-16任一项所述的手势交互方法。
19.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1-16任一项所述的手势交互方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211282635 | 2022-10-19 | ||
CN2022112826356 | 2022-10-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116909391A true CN116909391A (zh) | 2023-10-20 |
Family
ID=88361075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310776642.XA Pending CN116909391A (zh) | 2022-10-19 | 2023-06-28 | 手势交互方法、电子设备、存储介质及计算机程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116909391A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118170259A (zh) * | 2024-05-13 | 2024-06-11 | 中国科学院苏州生物医学工程技术研究所 | 基于手势操控的屏幕交互方法及装置、电子设备、介质 |
-
2023
- 2023-06-28 CN CN202310776642.XA patent/CN116909391A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118170259A (zh) * | 2024-05-13 | 2024-06-11 | 中国科学院苏州生物医学工程技术研究所 | 基于手势操控的屏幕交互方法及装置、电子设备、介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3007039B1 (en) | Method and system for human-to-computer gesture based simultaneous interactions using singular points of interest on a hand | |
US8866781B2 (en) | Contactless gesture-based control method and apparatus | |
US7907117B2 (en) | Virtual controller for visual displays | |
KR100832355B1 (ko) | 3차원 포인팅 방법, 3차원 표시제어방법, 3차원 포인팅장치, 3차원 표시 제어장치, 3차원 포인팅 프로그램, 및3차원 표시제어 프로그램 | |
CN107077288A (zh) | 键盘输入的消歧 | |
CN105980965A (zh) | 用于非接触式打字的系统、设备和方法 | |
Farhadi-Niaki et al. | Design and usability analysis of gesture-based control for common desktop tasks | |
CN116909391A (zh) | 手势交互方法、电子设备、存储介质及计算机程序产品 | |
Yang et al. | Mobile augmented reality authoring tool | |
CN110475021A (zh) | 移动终端的控制方法、移动终端及计算机存储介质 | |
Ullerich et al. | ThumbPitch: Enriching thumb interaction on mobile touchscreens using deep learning | |
Sainadh et al. | A Real-Time Human Computer Interaction Using Hand Gestures in OpenCV | |
Le et al. | Imprint-based input techniques for touch-based mobile devices | |
Chen | Universal motion-based control and motion recognition | |
Appert | From Direct manipulation to Gestures | |
Lu et al. | Realizing multi-touch-like gestures in 3d space | |
Ramadan et al. | A Novel Control System for a Laptop with Gestures Recognition | |
Petit et al. | Unifying gestures and direct manipulation in touchscreen interfaces | |
Breuninger | Suitability of Touch Gestures and Virtual Physics in Touch Screen User Interfaces for Critical Tasks | |
PRAMODH et al. | VIRTUAL MOUSE USING HAND GESTURES RECOGNITION | |
Osman | Virtual Keyboard-Mouse in Real-Time using Hand Gesture and Voice Assistant | |
Pastoor et al. | 15 3-D Display and Interaction Technologies for Desktop Computing | |
Aeini | Natural Interaction with Projected Screen on Surfaces using Infrared Depth Camera | |
HANI | Detection of Midair Finger Tapping Gestures and Their Applications | |
CHOI | iFinger-Study of Gesture Recognition Technologies & Its Applications (Volume II of II) |
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 |