一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种手势交互方法及终端设备与流程

2021-10-24 05:37:00 来源:中国专利 TAG:终端设备 终端 手势 交互 智能


1.本技术涉及智能终端技术领域,尤其涉及一种手势交互方法及终端设备。


背景技术:

2.手机、平板电脑等智能终端可接收用户输入的交互指令,并响应于交互指令,执行与交互指令相关的操作。例如,可以通过“电源键”和“音量 (或

)键”的组合键输入用于截屏功能的交互指令。智能终端在监测到用户输入该交互指令后,可以对当前显示的画面执行截屏操作,将当前显示的画面保存为图片文件。
3.由于组合键操作不便于用户记忆,并且不利于用户输入。例如,当“电源键”和“音量 (或音量

)键”不是同时按下时,会在显示画面中出现音量调节画面或者直接关闭屏幕,不便于完成截屏操作。因此,对于具有触摸屏的智能终端,还可以通过手势交互操作输入交互指令。手势交互操作是通过输入不同的触摸手势动作,控制智能终端执行不同的操作。
4.例如,可以通过三指同时下滑的触摸手势输入截屏指令,控制智能终端将当前显示的画面保存为图片文件。但是,简单的触摸手势动作相近,在执行触摸操作时容易误触发或不触发相应的功能,而复杂的手势操作又不便于用户记忆,且不符合用户的操作习惯,导致手势交互方法的应用范围受限。


技术实现要素:

5.本技术实施例提供一种手势交互方法及终端设备,以解决传统手势交互操作容易误触发的问题。
6.第一方面,本技术实施例提供一种手势交互方法,所述手势交互方法可应用于支持触摸交互功能的终端设备,从而实现终端设备诸如截屏、文件保存、快速删除等功能控制。该手势交互方法包括:
7.终端设备接收于触摸屏上的手势交互动作,检测所述手势交互动作中的动作参数。其中,所述动作参数包括触摸点数量、触摸时差、触摸点间距、手势变化距离。
8.在检测出动作参数后,终端设备可以针对检测出的动作参数进行判断,以确定检测出的动作参数是否满足预先设置的判断条件,即检测用户输入的手势交互动作是否符合操作规范。当所述动作参数满足判断条件时,触发终端设备执行所述手势交互动作对应的功能。其中,所述判断条件包括所述触摸点数量等于设定个数、所述触摸时差小于时差阈值、所述触摸点间距大于间距阈值、所述手势变化距离大于变化阈值。
9.判断条件所包含的判断项目需要与动作参数中提取的参数类型相匹配。例如,所述动作参数同时包括触摸点数量、触摸时差、触摸点间距以及手势变化距离四项内容时,判断条件也应同时包括触摸点数量是否等于设定个数、触摸时差是否小于时差阈值、触摸点间距是否大于间距阈值、手势变化距离是否大于变化阈值四个判断项目。当所有动作参数均满足判断条件时,则触发终端设备执行手势交互动作对应的操作。而当任意一个或多个动作参数不满足判断条件时,则不触发终端设备执行手势交互动作对应的操作,以实现对
多项动作参数执行检测、判断,降低误操作的可能性。
10.上述动作参数的检测和判断过程可以同时进行,也可以按照顺序进行。即终端设备可以在监测到触摸事件后,先判断触摸时差是否小于时差阈值,如果触摸时差小于时差阈值,则再判断触摸点数量是否等于设定个数。并在确定触摸点数量等于设定个数后,计算触摸点间距,并判断触摸点间距是否大于间距阈值。最后,当触摸点间距大于间距阈值时,再计算手势变化距离,并判断手势变化距离是否大于变化阈值,从而在判断手势变化距离大于变化阈值后,触发终端设备执行手势交互动作对应的功能。按照上述顺序依次对动作参数执行判断,当任一个动作参数不满足对应的判断条件时,则停止后续判断,直接不触发对应的功能。因此,依次判断的方式,能够在先判断的动作参数不符合判断条件时,及时停止后判断动作参数的计算,减少终端设备的数据处理量。
11.由以上技术方案可知,本技术实施例第一方面提供的手势交互方法,可以使终端设备在用户输入手势交互动作后,对手势交互动作中的动作参数进行检测,以确定用户的输入动作是否符合动作规范。通过对动作参数中触摸点数量、触摸时差、触摸点间距、手势变化距离中的一种或多种数据进行判断,可以实现对多指手势的生效条件进行更严格的定义和计算,减少用户误触发。并且,所述手势交互方法还能够保留简单的手势动作方式,使手势交互动作更符合用户的操作习惯。
12.可选的,获取手势交互动作还包括:终端设备监听所述手势交互动作中的触摸事件,并在按压事件中提取触摸点位置和触摸时间。再根据各个触摸点的触摸时间顺序,对手势交互动作中的多个触摸点进行排序,从而记录排序结果中每相邻两个触摸点间的触摸时差。其中,当用户触碰到触摸屏上时,可以触发触控模块产生电压信号,即形成按压事件。终端设备可以实时监听用户在触控模块上输入的手指动作。根据监听的触摸事件,可以获得触摸动作的输入位置和输入时间,即提取触摸点位置和触摸时间。
13.为了检测用户输入的手势交互动作是否为多指触控动作,终端设备可以按照提取的触摸时间顺序,对触控点进行排序,以依次计算出在输入时间上相邻的两个触摸点间的触摸时差。终端设备再通过对比所述触摸时差与时差阈值,确定多个触摸点是否为同时输入。如果所有所述触摸时差均小于所述时差阈值,即多个触摸点在较短的时间内完成输入,则确定所述动作参数满足判断条件,因此可以控制执行所述手势交互动作对应的功能或者继续进行其他动作参数的判断。如果任一所述触摸时差大于或等于所述时差阈值,即用户多指触控没有在规定的时间内完成输入,用户的触控动作可能不是多指触控,因此确定所述动作参数不满足判断条件,即手势交互动作不符合规范,不执行手势交互动作对应的功能。
14.通过对触摸事件的监测,可以在用户触控动作中提取触摸点位置和触摸时间,并通过触摸时差对用户的触摸动作是否为多指触控进行准确的判断,以缓解用户常规操作被误判为多指触控,减少用户误触发对应操作的可能性。
15.可选的,终端设备还可以遍历触摸事件中的触摸点数量;并对触摸点数量是否等于设定的手指个数进行判断,如果所述触摸点数量等于设定个数,则确定用户输入的多指触控动作中触摸点数量满足判断条件,因此可以触发终端设备执行手势交互动作对应的功能,或者继续对其他动作参数执行判断。如果触摸点数量不等于设定个数,则可以确定用户未通过指定的多指动作完成输入,因此可以不触发执行手势交互动作对应的功能,并停止
对后续动作参数的判断。
16.通过对触摸点数量进行判断,可以对用户手势交互动作对应的手指个数是否符合触控手指数量要求进行检查,从而在手指个数等于设定个数时,执行后续检测动作,实现精准判定。而在手指个数不符合设定个数时,判定整个手势识别失效,缓解误触发的可能性。
17.可选的,为了能够将手势交互动作与常规的操作动作进行有效区分,可以设定手势交互动作的动作初始状态为伸张的多指触摸形式,因此,为了准确判断该触摸动作,所述触摸点间距包括横向间距和纵向间距。终端设备在检测所述手势交互动作中的动作参数时,可以解析所述手势交互动作中多个触摸点的位置坐标,再提取所述位置坐标中的坐标极值,从而根据坐标极值计算横向间距和纵向间距。
18.其中,所述坐标极值包括在横坐标极大值、横坐标极小值、纵坐标极大值以及纵坐标极小值。因此,可以通过计算所述横坐标极大值与所述横坐标极小值的差,以生成所述横向间距,以及,通过计算所述纵坐标极大值与所述纵坐标极小值的差,以生成所述纵向间距。
19.通过对比触摸点位置坐标,终端设备可以检测出手势交互动作中的坐标极值,进而计算出横向间距和纵向间距,以便用于对触摸点间距进行判断,确定用户是否通过伸开的多指触摸形式输入手势交互动作。
20.因此,所述间距阈值包括横向间距阈值和纵向间距阈值,终端设备在检测所述手势交互动作中的动作参数后,还需要对比所述触摸点间距与所述间距阈值。如果所述横向间距大于所述横向间距阈值,且所述纵向间距大于所述纵向间距阈值,则检测到用户输入的手势动作符合多指触控规范,即所述动作参数满足判断条件,可以触发终端设备执行所述手势交互动作对应的功能,或者继续对后续动作参数执行判断。如果所述横向间距小于或等于所述横向间距阈值,和/或所述纵向间距小于或等于所述纵向间距阈值,则检测到用户输入的手势动作不符合多指触控规范,即确定所述动作参数不满足判断条件,不会触发终端设备执行所述手势交互动作对应的功能,并停止对后续动作参数的计算和判断。
21.终端设备在判断动作参数是否满足判断条件时,可以通过设置横向间距阈值和纵向间距阈值,对用户是否正确输入指定的手势动作进行准确判断,从而在横向间距和纵向间距均大于设定的阈值时,确定用户正确输入了指定的手势交互动作,以触发执行对应的功能,降低用户误触发操作的可能性。
22.为了能够与点击、滑动等通用的触控交互动作进行区分,手势交互动作可以通过一个持续的多指滑动动作完成输入,即所述手势交互动作可以包括起始阶段和终止阶段。基于此,终端设备在检测所述手势交互动作中的动作参数时,可以分别计算在所述手势交互动作起始阶段和终止阶段的横向间距和纵向间距。同理,在对比所述触摸点间距与所述间距阈值时,可以分别对比在所述手势交互动作起始阶段和终止阶段的横向间距和横向间距阈值,以及纵向间距与和纵向间距阈值。
23.其中,起始阶段是指用户手指开始触碰到触摸屏的阶段;终止阶段是指用户手指离开触摸屏的阶段。通过分别设置起始阶段的横向间距阈值和纵向间距阈值,以及设置终止阶段的横向间距阈值和纵向间距阈值,可以对开始触摸和离开触摸屏时的手势动作分别进行判断,从而在起始阶段和终止阶段均大于设定的距离判断阈值时,才确定用户输入了符合规范的手势交互动作,即确定动作参数满足判断条件,触发终端设备执行相应的操作。
24.通过对起始阶段和终止阶段分别进行触摸点间距的判断,可以使终端设备对手势交互动作的整个过程进行检测,从而判断手势交互动作对应的整个动作是否均符合设定的动作规范。当任一阶段的触摸点间距小于或等于对应的间距阈值时,则确定手势交互动作不是指定的多指滑动动作,即不会触发执行相应的操作,从而降低用户误触发的可能性。
25.可选的,为了检测动作参数是否满足判断条件,终端设备还可以对手势交互动作中的手势变化距离进行检测,即所述横向间距包括在起始阶段计算的第一横向间距和在终止阶段计算的第二横向间距;所述纵向间距包括在起始阶段计算的第一纵向间距和在终止阶段计算的第二纵向间距;所述手势变化距离包括横向变化距离和纵向变化距离。终端设备可以通过计算所述第一横向间距和第二横向间距的差值,确定横向变化距离;同时通过计算所述第一纵向间距和第二纵向间距的差值,确定纵向变化距离。
26.计算获得横向变化距离和纵向变化距离同样可以与变化阈值进行对比。所述变化阈值包括横向变化阈值和纵向变化阈值,用于确定动作参数是否满足判断条件。即终端设备在检测所述手势交互动作中的动作参数后还可以对比所述手势变化距离和变化阈值。如果所述成横向变化距离大于所述横向变化阈值,且所述纵向变化距离大于所述纵向变化阈值,则确定所述动作参数满足判断条件,触发执行对应的功能。如果所述成横向变化距离小于所述横向变化阈值,和/或所述纵向变化距离小于所述纵向变化阈值,确定所述动作参数不满足判断条件,即不触发执行对应的功能。
27.通过对手势变化距离进行检测,可以按照手势的变化范围,对手势动作在滑动过程中的动作变化进行检测,使终端设备能够在用户输入规范手势时,触发执行对应的功能。而在手指滑动距离过小时,不触发执行对应的功能,从而将多指滑动动作与多指长按、多指触摸等动作进行区分,降低用户误触发的可能性。
28.可选的,终端设备在触发执行所述手势交互动作对应的功能时,还可以检测当前运行场景,并按照当前运行场景执行不同的操作。其中,所述运行场景包括常规场景和非常规场景手势交互动作对应的功能可以包括全局操作和场景特有的应用操作。如果所述运行场景为常规场景,触发执行所述手势交互动作对应的全局操作,例如,在系统ui界面或未定义多指向内抓取动作的应用界面上,用户输入多指向内抓取的触摸手势时,可以触发终端设备执行截屏操作,使终端设备截取当前显示内容保存为截屏图片文件。
29.如果所述运行场景为非常规场景,触发显示功能选择界面,以供用户选择当前手势交互动作所触发执行的操作。其中,所述功能选择界面包括所述手势交互动作对应的全局操作功能选项和应用功能选项,如截屏和保存。
30.在触发终端设备显示功能选择界面以后,终端设备还可以接收用户通过所述功能选择界面完成输入的选择动作。当用户在功能选择界面中选择全局操作功能选项,则触发执行所述手势交互动作对应的全局操作,如截屏操作。如果所述选择动作为选择应用功能选项,触发执行所述手势交互动作对应的应用操作,如保存操作。
31.可见,通过功能选择界面可以在特定的运行场景下,使用户能够选择要触发的操作。即缓解了全局手势与应用设定交互方式之间的冲突,又能够使用户可以按照需要选择实现的功能,以满足不同场景的交互需求。
32.第二方面,本技术实施例还提供一种终端设备,包括触摸屏和控制器,所述触摸屏被配置为显示交互界面以及检测手势交互动作,所述控制器被配置为执行上述手势交互方
法,即控制器被配置为执行以下程序步骤:
33.响应于手势交互动作,检测所述手势交互动作中的动作参数;所述手势交互动作由终端设备检测用户手指在触摸屏上的划动动作生成;所述动作参数包括触摸点数量、触摸时差、触摸点间距、手势变化距离中的一种或多种的组合;
34.当所述动作参数满足判断条件时,触发执行所述手势交互动作对应的功能;所述判断条件包括所述触摸点数量等于设定个数、所述触摸时差小于时差阈值、所述触摸点间距大于间距阈值、所述手势变化距离大于变化阈值中的一种或多种的组合。
35.由以上技术方案可知,本技术实施例第二方面提供的终端设备包括触摸屏和控制器,终端设备可以通过触摸屏检测用户输入的手势交互动作,并在用户输入手势交互动作后,通过控制器执行上述手势交互方法,检测手势交互动作中的动作参数。并且在动作参数满足判断条件时触发执行手势交互动作对应的功能。所述终端设备可以通过对手势交互动作中的多种动作参数分别进行检测、判断,可以有效防止用户误触发。
附图说明
36.图1为本技术实施例中多指抓取手势示意图;
37.图2为本技术实施例中多指张开手势示意图;
38.图3为本技术实施例中多指收拢动作示意图;
39.图4为本技术实施例中触摸点示意图;
40.图5为本技术实施例中触摸时间示意图;
41.图6为本技术实施例中触摸点位置变化示意图;
42.图7为本技术实施例中初始阶段触摸点距离示意图;
43.图8为本技术实施例中终止阶段触摸点距离示意图;
44.图9为本技术实施例中同时判断动作参数的流程示意图;
45.图10为本技术实施例中依次判断动作参数的流程示意图;
46.图11为本技术实施例中显示执行结果的界面示意图;
47.图12为本技术实施例中根据手势交互动作显示执行结果的界面示意图;
48.图13为本技术实施例中非常规场景示意图;
49.图14为本技术实施例中功能选择界面示意图;
50.图15为本技术实施例中选中全局操作选项示意图;
51.图16为本技术实施例中全局操作结果示意图;
52.图17为本技术实施例中选中应用操作选项示意图;
53.图18为本技术实施例中应用操作结果示意图。
具体实施方式
54.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚地描述。显然,所描述的实施例是本技术的一部分实施例,而不是全部实施例。基于本技术的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的其他实施例,都属于本技术的保护范围。
55.本技术实施例中所提供的手势交互方法可以应用于终端设备。所述终端设备能够
支持触控交互操作,包括但不限于智能手机、平板电脑、智能电视、智慧显示屏、智能可穿戴设备等。终端设备可以基于触控交互策略接收用户输入的各种交互动作,并响应于用户输入的交互动作,执行交互动作对应的功能,以实现各种功能。例如,用户可以向终端设备输入截屏动作,则终端设备在接收到用户输入的截屏动作后,响应于截屏动作对当前显示的界面实施屏幕截取操作,以将当前显示的界面保存为图片文件。
56.为了支持触控交互,终端设备至少包括触摸显示屏和控制器。其中,触摸显示屏,简称触摸屏,包括显示屏幕和设置在显示屏幕上的触控组件。触控组件可以实时检测用户的触摸动作,并产生触控信号。再将产生的触控信号发送给控制器,以供控制器处理、判断以及执行对应的功能。
57.控制器通过运行终端设备操作系统中的交互相关程序,对触控组件发送的触控信号进行分析处理,判断触控信号对应的手势动作。即通过触控组件产生的触控信号,能够获得触控交互中的触摸点位置、触摸点数量以及触控操作的持续时间。再根据触摸点位置、触摸点数量以及触控操作的持续时间的组合关系,可以检测出具体的手势动作。
58.例如,触控组件可以在用户触摸时在触摸位置上产生高电平信号,则通过检测高电平信号产生的位置可以确定触摸位置。同时,在用户持续触摸触控组件时,触控组件将持续输出在触摸位置处的高电平信号,因此,可以通过记录触控组件中高电平信号的持续时间,即获得触控操作的持续时间。
59.通过将触摸位置和触控操作的持续时间进行组合,可以确定出多种手势操作形式,包括单击、双击、多次点击、长按、滑动等。每种手势操作可以对应有不同的判断条件,当触控信号中的触摸位置和持续时间均满足判断条件时,则可以确定用户输入的具体手势操作形式。例如,当检测到的触控信号中触摸点位置不变,而持续时间超过预设时间阈值时,确定当前手势操作为长按操作。
60.为了增加触控交互操作的输入类型,触控组件还可以支持多点触控,即用户可以在触控组件上的多个位置实施触摸动作。在触控组件支持多点触控交互操作时,则根据触控信号可以确定更多形式的手势操作,包括:多指触摸、多指长按、多指同向滑动、抓取、张开、旋转等手势交互动作。
61.例如,当触控组件检测到多个触摸位置,并且多个触摸点位置呈连续变化,则可以确定当前触控交互手势为多指的滑动动作。再通过检测多个触摸位置的变化规律,当多个触摸位置之间的距离逐渐相互靠近时,可确定手势交互动作为抓取动作;当多个触摸位置之间的距离逐渐相互远离时,可确定手势交互动作为张开动作。
62.不同类型的触控交互操作可以用于触发终端设备执行不同功能的操作。其中,单击、双击、长按、滑动等简单手势,可以用于触发使用频率较高的操作。例如,单击应用图标可以打开应用;双击快捷栏图标用于跳转至图标对应的设置界面;滑动用于翻页等。而多指同向滑动、抓取、张开、旋转等复杂手势,则可以用于触发使用频率较低的操作。例如,抓取动作用于截屏;张开动作用于临时放大等。
63.为了实现不同的交互功能,手势交互操作的检测过程应有利于区分各种不同的手势,以减少误触发或不触发执行预想功能的可能性。触发执行截屏操作为例,截屏操作为使用频率相对较低的功能。当采用多指同向滑动、抓取、张开等交互动作时,由于这些手势与用户的正常操作相近,容易引发误触发截屏操作的问题。
64.例如,通过三指同时下滑的触摸手势输入截屏动作,控制智能终端将当前显示的画面保存为图片文件时,由于三指同时下滑操作与用户翻页浏览过程中的下滑操作相近,容易在用户想要翻页浏览时误触发执行了截屏操作。而如果设置过于复杂的手势,则不便于用户记忆。
65.因此,使用便于用户记忆的手势触发执行频率相对较低的功能,在本技术的部分实施例提供一种手势交互方法,包括以下步骤:
66.s100:终端设备接收于触摸屏上的手势交互动作,检测所述手势交互动作中的动作参数。
67.其中,所述手势交互动作由终端设备检测用户手指在触摸屏上的点击、长按、划动动作生成。例如,如图1、图2、图3所示,可以设置通过多个手指向内收拢或者向外张开的动作,触发终端设备执行截屏操作。则在用户输入多个手指向内收拢动作的手势交互动作后,终端设备可以响应于手势交互动作,对触控信号进行检测,以从手势交互动作检测到多个手指向内收拢相关的具体动作参数。
68.通过动作参数可以对用户输入的手势交互动作进行更加准确的检测,以确定手势交互动作对应的触控动作是否符合动作规范。因此,所述动作参数可以包括触摸点数量、触摸时差、触摸点间距、手势变化距离。
69.触摸点数量可以通过检测触控信号中产生的高电平位置的数量进行检测。由于用户触控操作通常是通过手指触摸操作完成,而手指触摸到触控组件上时,将会在触控组件上形成一个接触区域。因此,可以通过接触区域的中点作为触摸点。显然,每一个连续的接触区域内可以对应识别出一个触摸点。如图4所示,当用户通过四指触摸终端设备的触摸屏时,可以在触摸屏上识别出四个连续的接触区域,每个接触区域可呈圆形或椭圆形。因此,可以将每个接触区域的中间点,即圆心点或者椭圆长轴和短轴的交点,作为触摸点。即四指触摸时会产生p1、p2、p3、p4四个触摸点。
70.触摸时差则可以通过记录触控组件上不同位置依次产生触控信号的时间进行记录获得。当用户在多指触摸终端设备的触摸屏时,会由于手型手势和多个手指之间的长度差异,导致多个手指可能不在同一时刻触摸到触控组件。
71.例如,如图5所示,用户在执行手势交互操作时,触碰到触控组件的手指依次为:中指、食指、无名指、小指、拇指,则可以分别记录多个手指触摸到触控组件的时间,即中指t1、食指t2、无名指t3、小指t4、拇指t5。记录的触摸时间可用于计算触摸时差,以确定多个触摸点是由多指触控手势形成还是由同一时刻的多个触摸操作形成。
72.触摸点间距可以通过对触摸点位置计算获得。触控组件在检测触控操作的过程中,可以对触摸点位置进行检测,并按照屏幕像素点排列方式生成触摸点位置坐标。再根据生成的触摸点位置坐标,计算各触摸点之间的间隔距离。为了便于对手势操作的姿态进行精确计算,触摸点间距可以是位置相邻的两个触摸点之间的间隔距离,也可以是所有触摸点之间的最大距离。当使用触摸点之间的最大距离作为触摸点间距时,可以分别计算横坐标上的最大距离和纵坐标上的最大距离。如图6所示,触控组件通过检测用户输入的触控动作,可以获得四个触摸点的位置坐标,分别为p1(x1,y1)、p2(x2,y2)、p3(x3,y3)、p4(x4,y4)。则根据触摸点位置坐标可以计算出横坐标上的最大距离为:max(x1,x2,x3,x4)

min(x1,x2,x3,x4)=w1;纵坐标上的最大距离为:max(y1,y2,y3,y4)

min(y1,y2,y3,y4)=h1。
73.如果用户输入的手势交互动作为多指的滑动动作,则可以在输入滑动动作手势的过程中实时计算触摸点间距,即手势交互动作对应的输入动作可以包括起始阶段和终止阶段,其中,起始阶段是指用户手指接触触控组件时的阶段,即接触触控组件但未进行滑动的阶段,终端设备可以通过检测是否存在触摸事件,确定是否处于起始阶段;终止阶段是指用户手指停止滑动时的阶段,终端设备可以通过检测触摸点位置不再变化,或者通过检测用户手指离开触控组件确定是否处于终止阶段。
74.终端设备可以在起始阶段和终止阶段分别计算触摸点间距,即如图7所示,在初始阶段的触摸点间距分别为:w1=max(x1,x2,x3,x4)

min(x1,x2,x3,x4);h1=max(y1,y2,y3,y4)

min(y1,y2,y3,y4)。同理,如图8所示,在终止阶段的触摸点间距分别为:w2=max(x1’,x2’,x3’,x4’)

min(x1’,x2’,x3’,x4’);h2=max(y1’,y2’,y3’,y4’)

min(y1’,y2’,y3’,y4’)。计算获得的触摸点间距,可以用于判断在初始阶段和终止阶段用户的手势操作中,触摸点间距是否均符合规范。
75.手势变化距离可以通过对各触摸点的位置变化轨迹进行测量、计算获得,也可以通过触摸点间距的变化计算获得。例如,在计算出初始阶段和终止阶段的触摸点间距w1、w2、h1、h2后,可以根据计算的触摸点间距计算触摸点间距变化,即横向距离变化δw=w1

w2;纵向距离变化δh=h1

h2。手势变化距离用于表征用户输入的手势交互动作是否拥有特定的行程距离,从而确定用户输入的手势是否符合规范。
76.需要说明的是,通过手势交互动作检测出的动作参数并不仅仅局限于上述四种参数。基于上述检测出的参数形式,本领域技术人员还可以通过设置其他检测方式,以根据手势交互动作检测出其他形式的动作参数。例如,终端设备可以根据手势交互动作对应的触摸点位置变化规律,检测出用户输入的滑动轨迹形状,用于在不同的滑动轨迹形状下实现不同的功能;终端设备也可以根据起始阶段和终止阶段触摸点位置,检测手势交互动作的具体开始位置和结束位置,用于实现边缘触控等手势的检测。
77.s200:当所述动作参数满足判断条件时,触发终端设备执行所述手势交互动作对应的功能。
78.在检测出手势交互动作中的动作参数后,终端设备可以根据检测出的动作参数分别执行判断,以确定动作参数是否满足判断条件。其中,所述判断条件包括触摸点数量等于设定个数、触摸时差小于时差阈值、触摸点间距大于间距阈值、手势变化距离大于变化阈值。
79.具体的,在检测出触摸点数量这一动作参数后,终端设备可以将触摸点数量与设定个数进行对比,以确定用户是否通过指定数量的多指动作输入手势交互动作。例如,终端设备的操作系统设置截屏操作为五指抓取动作,则设定个数为5。在检测出手势交互动作对应触控动作的手指数量为3个时,通过对比触摸点数量3不等于设定个数5,则确定动作参数不满足判断条件。而在检测出手势交互动作对应的触摸点数量为5时,通过对比触摸点数量5等于设定个数5,则确定动作参数满足判断条件。
80.同理,终端设备可以按照上述判断方式,对触摸时差、触摸点间距以及手势变化距离也进行判断,从而在触摸时差小于时差阈值、触摸点间距大于间距阈值、手势变化距离大于变化阈值时,确定动作参数满足判断条件。
81.例如,终端设备操作系统设置时差阈值为0.1s,即在0.1s之内接触触控组件的手
指被认定为同一触摸操作。则根据记录的触摸时间,可以分别计算时间上相邻的两个触摸点的触摸时差依次为t5

t4,t4

t3,t3

t2,t2

t1。依次将计算获得的触摸时差与时差阈值进行对比,如果触摸时差均小于时差阈值,t5

t4<0.1s,t4

t3<0.1s,t3

t2<0.1s,t2

t1<0.1s则确定多个触摸点属于同一触摸操作,即确定动作参数满足判断条件。如果任一触摸时差大于或等于时差阈值,如t5

t4≥0.1s,t4

t3<0.1s,t3

t2<0.1s,t2

t1<0.1s则确定触摸时差较大的两个触摸点中,至少有一个触摸点,即t5对应的触摸点,与其他触摸点不属于同一触摸操作,因此确定动作参数不满足判断条件。
82.根据上述判断过程,当判断动作参数满足判断条件时,可以触发终端设备执行手势交互动作对应的功能。例如,通过检测确定触摸时差小于时差阈值、触摸点间距大于间距阈值、手势变化距离大于变化阈值时,则可以确定用户的触控交互动作符合截屏动作规范,因此可以触发终端设备执行截屏操作,将当前显示的界面保存为图片文件。可见,通过对手势交互动作中多个类型的动作参数进行检测和判断,可以通过更严格的定义和计算,对手势交互动作是否符合截屏操作的规范进行判断,以缓解用户误触发操作。
83.需要说明的是,还可以根据终端设备的类型和应用领域对判断条件中所包含的项目进行选择。例如,对于可穿戴设备,由于其使用截屏操作的频率相对于手机等终端设备更低,因此为了防止误触发操作,可以使判断条件包含的判断项目数量较多,可以在判断条件包括上述触摸点数量是否等于设定个数、触摸时差是否小于时差阈值、触摸点间距是否大于间距阈值、手势变化距离是否大于变化阈值四个判断项目的基础上,增加其他判断项目。而对于智能电视设备,由于用户执行触摸交互的频率较小,使得其在使用中截屏操作相对于其他操作的使用频率较高,因此可以适当减少判断条件中的判断项目。如不必判断势变化距离是否大于变化阈值,以便于用户完成触控操作。
84.判断条件所包含的判断项目需要与动作参数中提取的参数类型相匹配。例如,所述动作参数同时包括触摸点数量、触摸时差、触摸点间距以及手势变化距离四项内容时,判断条件也应同时判断判断条件包括触摸点数量是否等于设定个数、触摸时差是否小于时差阈值、触摸点间距是否大于间距阈值、手势变化距离是否大于变化阈值四个判断项目。当所有动作参数均满足判断条件时,触发终端设备执行手势交互动作对应的功能。而当任意一个或多个动作参数不满足判断条件时,则不触发终端设备执行手势交互动作对应的功能,以降低误操作的可能性。
85.如图9所示,上述动作参数的检测和判断过程可以同时进行,即在获取用户输入的手势交互动作后,从手势交互动作中提取全部动作参数,并分别对动作参数执行判断,以在所有动作参数均满足各自的判断条件时,触发终端设备执行手势交互动作对应的功能。
86.如图10所示,上述动作参数的检测和判断过程也可以按照顺序依次进行。例如,终端设备可以在获取触摸事件后,先判断触摸时差是否小于时差阈值,如果触摸时差小于时差阈值,则再判断触摸点数量是否等于设定个数。并在确定触摸点数量等于设定个数后,计算触摸点间距,并判断触摸点间距是否大于间距阈值。最后,当触摸点间距大于间距阈值时,再计算手势变化距离并判断手势变化距离是否大于变化阈值,从而在判断手势变化距离大于变化阈值后,触发终端设备执行手势交互动作对应的功能。按照上述顺序依次对动作参数执行判断可以在提取出的动作参数不满足判断条件时,及时将停止其余数据的计算,减少终端设备的数据处理量。
87.因此,在一种可行的实施方式中,终端设备在获取手势交互动作后,可以先对触摸点数量和触摸时差进行检测,即终端设备可以监听手势交互动作中的触摸事件。例如,终端设备可以在操作系统提供的全局手势管理模块中注册手势监听功能单元,手势监听功能单元可以依次处理手指触摸事件,如基于andriod平台的motion event。
88.在监听到触摸事件以后,终端设备可以提取触摸事件中的触摸点位置和触摸时间,并根据触摸时间的顺序,对手势交互动作中的多个触摸点进行排序。例如,终端设备可以根据触摸事件提取手势交互动作对应的触摸点位置分别为p1(x1,y1)、p2(x2,y2)、p3(x3,y3)、p4(x4,y4),对应的触摸时间分别为t1、t2、t3、t4,当触摸时间的先后顺序分别为t1

t4

t2

t3时,可以对多个触摸点进行排序,得到排序结果为p1(x1,y1)、p4(x4,y4)、p2(x2,y2)、p3(x3,y3)。
89.终端设备再根据排序结果,计算排序结果中每相邻两个触摸点间的触摸时差。例如,由于按照触摸时间顺序排列触摸点为p1、p4、p2、p3,则每相邻两个触摸点分别为(p1,p4)、(p4,p2)、(p2,p3),因此计算获得的触摸时差为t4

t1,t2

t4,t3

t2。
90.在计算获得触摸时差以后,终端设备再通过对比触摸时差与时差阈值,以确定动作参数是否满足判断条件。当所有触摸时差均小于时差阈值时,确定动作参数满足判断条件;而当任一触摸时差大于或等于时差阈值,确定动作参数不满足判断条件。
91.由于触摸时差可以直接从触摸事件中进行提取,因此终端设备可以在监听到触摸事件后,先对触摸时差进行判断,如果触摸时差满足判断条件,即用户输入手势交互动作时是通过多个手指同时输出,因此可以确定用户想要通过多指触控动作进行交互。根据触摸时差确定用户为多指交互动作以后,终端设备可以遍历触摸事件中的触摸点数量。如果触摸点数量等于设定个数,确定动作参数满足所述判断条件,终端设备可以触发执行手势交互动作对应的功能,或者继续判断其他动作参数是否满足判断条件。
92.例如,截屏操作为四指抓取动作时,在判断触摸时差均小于时差阈值后,终端设备可以根据触摸点数量进一步检测手势交互动作。即触摸点数量为4等于截屏操作指定个数,因此可以对后续抓取动作进行判断。而触摸点数量为3时,触摸点数量不等于截屏操作指定个数,因此即使相邻触摸点之间的触摸时差均小于时差阈值,也不会继续后续判断,即不会执行截屏操作。
93.显然,当终端设备设定的判断条件仅为触摸点数量和触摸时差时,如果判断触摸时差小于时差阈值,且触摸点数量等于设定个数,则可执行手势动作对应的功能。而当终端设备设定的判断条件中还包括其他判断项目,则在确定触摸时差小于时差阈值,且触摸点数量等于设定个数后,执行其他项目的判断。即在一种可行的实施方式中,终端设备还可以在确定触摸点数量等于设定个数后,判断触摸点间距是否大于间距阈值。
94.其中,所述触摸点间距可以包括横向间距和纵向间距。则终端设备可以解析手势交互动作中多个触摸点的位置坐标。终端设备在解析出手势交互动作的多个触摸点的位置坐标后,可以对多个触摸点的位置坐标进行对比,以提取位置坐标中的坐标极值。坐标极值包括在横坐标极大值xmax、横坐标极小值xmin、纵坐标极大值ymax以及纵坐标极小值ymin。例如,当手势交互动作中的触摸点数量为4个时,xmax=max(x1,x2,x3,x4)。
95.如图7所示,在提取位置坐标中的坐标极值后,终端设备可以计算横坐标极大值与横坐标极小值的差,以生成横向间距,即w1=xmax

xmin。同时,终端设备还可以计算纵坐标
极大值与纵坐标极小值的差,以生成纵向间距,即h1=ymax

ymin。
96.在计算出触摸点间距以后,终端设备还可以对触摸点间距与间距阈值进行比较。由于触摸点间距包括横向间距和纵向间距,因此间距阈值也应包括横向间距阈值和纵向间距阈值。则在对比触摸点间距与间距阈值时,可以分别对横向间距与横向间距阈值进行对比,同时对纵向间距与纵向间距阈值进行对比。如果横向间距大于横向间距阈值,且纵向间距大于纵向间距阈值,确定动作参数满足判断条件。例如,终端设备中可以预先设定横向间距阈值w0和纵向间距阈值h0。通过计算获得横向间距w1、纵向间距h1后,如果w1>w0,并且h1>h0,则确定动作参数满足判断条件,终端设备可以执行截屏操作,或者执行其他动作参数的判断,例如对手势变化距离是否大于变化距离阈值进行判断。
97.同理,如果横向间距小于或等于横向间距阈值,和/或纵向间距小于或等于纵向间距阈值,确定动作参数不满足判断条件。例如,通过计算获得横向间距w1、纵向间距h1后,如果w1≤w0,或者h1≤h0,则确定动作参数满足判断条件,终端设备可以确定用户输入的手势交互动作不符合规范,则不再执行截屏操作。
98.在一种可行的实施方式中,在对手势交互动作为多指滑动、抓取、张开等持续动作时,终端设备还可以对持续动作中的多个阶段进行分别检测,以确定每个阶段中的触摸点间距是否均大于间距阈值。例如,终端设备可以分别对手势交互动作中的起始阶段和终止阶段进行检测,并分别计算在手势交互动作起始阶段和终止阶段的横向间距和纵向间距。即如图7所示,在起始阶段:横向间距为w1,纵向间距为h1;如图8所示,在终止阶段:横向间距为w2,纵向间距为h2。
99.根据计算获得的各阶段的触摸点间距,终端设备可以在对比触摸点间距与间距阈值时,分别对比在手势交互动作起始阶段和终止阶段的横向间距和纵向间距与横向间距阈值和纵向间距阈值。为了便于描述,本实施例中,将起始阶段计算的横向间距称为第一横向间距,即w1,讲终止阶段计算的横向间距称为第二横向间距,即w2;将起始阶段计算的纵向间距称为第一纵向间距,即h1,将终止阶段计算的纵向间距称为第二纵向间距,即h2。
100.因此,终端设备中关于触摸点间距的判断过程需要分别设置多个间距阈值,包括起始阶段的横向间距阈值w0、纵向间距阈值h0,以及在终止阶段的横向间距阈值w0’和纵向间距阈值h0’。在对比触摸点间距与间距阈值时,终端设备需要分别对比第一横向间距w1与起始阶段的横向间距阈值w0,h1与h0,w2与w0’,h2与h0’。如果w1>w0、h1>h0,同时w2>w0’,h2>h0’,则确定触摸点间距大于间距阈值,即动作参数满足判断条件。
101.在确定触摸点间距均大于间距阈值后,终端设备还可以进一步检测手势交互动作中的手势变化距离是否大于距离变化阈值,即在一种可行的实施方式中,手势变化距离包括横向变化距离和纵向变化距离,终端设备在确定触摸点间距均大于间距阈值后,还可以计算第一横向间距w1和第二横向间距w2的差值,以生成横向变化距离δw,即δw=w1

w2。同时,计算第一纵向间距h1和第二纵向间距h2的差值,以生成纵向变化距离δh,即δh=h1

h2。
102.计算手势变化距离后,终端设备再对比手势变化距离和变化阈值,显然,变化阈值也可以包括横向变化阈值w和纵向变化阈值h。终端设备可以分别对横向变化距离δw与横向变化阈值w,以及纵向变化距离δh与纵向变化阈值h。如果成横向变化距离δw大于横向变化阈值w,且纵向变化距离δh大于纵向变化阈值h,确定动作参数满足判断条件,则可以
触发终端设备执行手势交互动作对应的功能。反之,如果成横向变化距离δw小于横向变化阈值w,和/或纵向变化距离δh小于纵向变化阈值h,确定动作参数不满足判断条件,不会触发终端设备执行手势交互动作对应的功能。
103.基于上述实施方式,本技术提供的手势交互方法可以在用户输入手势交互动作后,按照从手势交互动作中提取动作参数的难易程度依次对手势交互动作中的各项动作参数执行判断,这样的判断过程即能够满足对手势交互动作维持较严格的手势生效条件,而且能够在任一判断项目不满足判断条件时,直接停止对该手势的后续判断。从而使终端设备无需去计算后续判断过程的动作参数,减少数据计算量。
104.当动作参数均满足判断条件时,可触发终端设备执行手势交互动作对应的功能。对于部分操作,终端设备还可以通过显示特定的界面或窗口,提示用户操作执行结果。例如,对于截屏操作,终端设备在执行截屏操作后,会通过预览窗口对截屏获得的图片进行预览,如图11所示。在一种可行的实施方式中,当触发终端设备执行手势交互动作对应的功能后,终端设备还可以根据手势交互动作显示操作执行结果。
105.为了能够根据手势交互动作显示操作执行结果,终端设备可以在判断手势交互动作输入完成后,记录手势交互动作中的各触摸点位置,再根据触摸点位置划定触摸区域。触摸区域可以是以触摸点为顶点或边界的多边形结构。因此,操作执行结果对应的画面可以多边形为基准进行显示。
106.例如,如图12所示,当截屏操作对应的交互动作为多指抓取动作时,可以在终端设备执行截屏操作的同时,记录位于最边缘位置上的四个触摸点。再分别以这四个触摸点为边界,确定一个矩形区域,矩形区域的每个边可以穿过一个触摸点。再根据划定的矩形结构,获取矩形的重心点坐标,并以此重心点坐标为基准,使截屏获得的图片中心与重心点坐标重合,从而实现对截屏结果的预览显示。
107.需要说明的是,操作执行结果对应的画面以多边形为基准进行显示的过程中,执行结果画面可以按照多边形区域的顶点、中心、重心等特征点为基准点进行显示,也可以根据多边形区域的形状调整执行结果画面的显示内容。并且,为了能够完整的显示执行结果画面,在确定多边形结构的基准点以后,终端设备还可以对执行结果画面的边界与显示屏边界进行对比,当执行结果画面边界超出显示屏边界时,对执行结果画面进行平移,以使执行结果画面边界不再超出显示屏边界。
108.上述实施例中,用户输入的手势交互动作可以是一种全局动作,即用户在任何场景下使用终端设备时输入都可以触发终端设备执行手势交互动作对应的功能。但由于手机、平板电脑等终端设备上还可以安装多种应用程序,这些应用程序可以具有单独的触控交互方式。因此,应用程序单独的触控交互方式可能与终端设备中的交互方式存在冲突,导致终端设备运行该应用程序时,用户输入的部分手势交互动作无法准确触发对应的功能。
109.例如,对于文本编辑类应用程序,可以内置抓取手势为快速保存文本。而终端设备的交互逻辑中抓取手势为截屏操作,则在终端设备运行该文本编辑类应用程序,并输入抓取手势时,终端设备不能确定是触发执行保存操作还是触发执行截屏操作。
110.为了改善上述手势冲突的问题,在一种可行的实施方式中,终端设备在触发执行手势交互动作对应的功能时还可以对当前运行场景进行检测,以确定终端设备是否运行了具有手势冲突的应用程序。其中,运行场景可以包括常规场景和非常规场景。常规场景是指
终端设备未运行具有手势冲突的应用程序;非常规场景是指终端设备运行了具有手势冲突的应用程序。
111.对于常规场景,终端设备可以在用户输入手势交互动作,并判断手势交互动作中的动作参数满足判断条件时,直接触发手势交互动作对应的全局操作。例如,在终端设备未运行文本编辑类应用程序时,若用户输入的多指抓取动作符合判断条件,则直接触发执行截屏操作。
112.而对于非常规场景,终端设备可以在用户输入手势交互动作,并判断手势交互动作中的动作参数满足判断条件时,触发显示功能选择界面。功能选择界面可用于用户选择本次手势交互动作所指代的功能,因此,所述功能选择界面包括手势交互动作对应的全局操作功能选项和应用功能选项。
113.例如,如图13所示,在终端设备运行文本编辑类应用程序时,若用户输入的多指抓取动作符合判断条件,则在触发执行操作前,终端设备可以在当前界面上层显示功能选择界面,如图14所示。功能选择界面中可以包括全局操作“截屏”和应用操作“保存”两个选项,以供用户选择。
114.在触发终端设备显示功能选择界面以后,用户可以根据功能选择界面中提供的选项,选择一种操作响应方式。即用户可以通过功能选择界面输入选择动作,终端设备再获取选择动作,并根据选择动作对应的功能选项,触发执行对应的功能。即,如果选择动作为选择全局操作功能选项,触发执行手势交互动作对应的全局操作;如果选择动作为选择应用功能选项,触发执行手势交互动作对应的应用操作。
115.例如,如图15所示,当用户在功能选择界面中选中“截屏”选项时,则代表用户向终端设备输入的选择动作为选择全局操作功能选项,因此终端设备可以响应于该选择动作,触发执行全局操作,即对当前应用界面执行截屏操作,如图16所示。
116.如图17所示,当用户在功能选择界面中选中“保存”选项时,则代表用户向终端设备输入的选择动作为选择应用功能选项。因此,终端设备可以不响应全局操作,而是响应当前文本编辑应用内部的交互策略,即对当前编辑的文本执行保存操作,如图18所示。
117.由以上技术方案可知,可以在终端设备的全局操作与应用操作存在冲突时,通过显示功能选择界面让用户可以选择本次手势交互操作所对应要触发的操作,既能够克服全局操作与应用操作之间的功能冲突,又能够满足用户在非常规场景下的需求。
118.需要说明的是,上述实施例以触发终端设备执行截屏操作为例,对终端设备的手势交互方法进行阐述。基于上述截屏操作示例,本领域技术人员还可以联想到其他基于手势交互动作的操作,包括但不限于录屏、投屏、删除、新建等。
119.基于上述手势交互方法,在本技术的部分实施例中还提供一种终端设备,该终端设备包括触摸屏和控制器。其中,所述触摸屏被配置为显示交互界面以及检测手势交互动作,所述控制器被配置为执行以下程序步骤:
120.s100:终端设备响应于手势交互动作,检测所述手势交互动作中的动作参数;
121.s200:当动作参数满足判断条件时,触发终端设备执行所述手势交互动作对应的功能。
122.其中,所述手势交互动作由终端设备检测用户手指在触摸屏上的划动动作生成;所述动作参数包括触摸点数量、触摸时差、触摸点间距、手势变化距离中的一种或多种的组
合;所述判断条件包括所述触摸点数量等于设定个数、所述触摸时差小于时差阈值、所述触摸点间距大于间距阈值、所述手势变化距离大于变化阈值中的一种或多种的组合。
123.上述终端设备可以通过为控制器配置手势交互方法,实现对手势交互动作的生效条件进行更严格的定义和计算。即所述终端设备在用户输入手势交互动作后,可以对手势交互动作中的动作参数进行检测,以确定用户的输入动作是否符合动作规范。通过对动作参数中触摸点数量、触摸时差、触摸点间距、手势变化距离中的一种或多种数据进行判断,可以实现对多指手势的生效条件进行更严格的定义和计算,防止用户误触发。并且,保留简单的手势动作方式,使手势交互动作更符合用户的操作习惯。
124.对于上述实施例中手势交互方法的其他可行的实施方式,可以通过对终端设备的控制器进一步进行配置,以使其能够实施该手势交互方法所对应的功能。例如,终端设备的控制器可以被进一步配置为执行以下程序步骤:监听所述手势交互动作中的触摸事件;提取所述触摸事件中的触摸点位置和触摸时间;根据所述触摸时间的顺序,对所述手势交互动作中的多个触摸点进行排序;记录排序结果中每相邻两个触摸点间的触摸时差。
125.终端设备可以通过对控制器执行上述配置,实现从手势交互动作中检测触摸时差这一动作参数,以便用于判断动作参数是否满足判断条件时,判断触摸时差是否均小于时差阈值,以确定手势交互动作是否为多指输入动作。
126.对于上述实施例中提供的其他具体实施方式,也同样采用与上述对控制器相同的配置方式,为控制器配置程序步骤,以达到上述实施例中相同的技术效果,对于其他具体的实施方式,此处不再赘述。
127.本实施中,所述控制器可以是中央处理器(central processing unit,cpu),网络处理器(network processor,np)或者cpu和np的组合。控制器也可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application

specific integrated circuit,asic),可编程逻辑器件(programmable logic device,pld)或其组合。
128.另外,终端设备还可以包括存储器,存储器可以用于存储上述实施方式中手势交互方法的具体控制程序,以供控制器调用。存储器可以包括易失性存储器,例如随机存取存储器(random

access memory,ram);存储器也可以包括非易失性存储器,例如只读存储器(read

only memory,rom),快闪存储器,硬盘或固态硬盘;存储器也可以包括上述种类的存储器的组合。
129.本技术提供的实施例之间的相似部分相互参见即可,以上提供的具体实施方式只是本技术总的构思下的几个示例,并不构成本技术保护范围的限定。对于本领域的技术人员而言,在不付出创造性劳动的前提下依据本技术方案所扩展出的任何其他实施方式都属于本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜