CN112799530B - 一种触屏控制方法和装置、电子设备和存储介质 - Google Patents
一种触屏控制方法和装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN112799530B CN112799530B CN202011637981.2A CN202011637981A CN112799530B CN 112799530 B CN112799530 B CN 112799530B CN 202011637981 A CN202011637981 A CN 202011637981A CN 112799530 B CN112799530 B CN 112799530B
- Authority
- CN
- China
- Prior art keywords
- parameter
- touch screen
- user
- determining
- target
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 88
- 230000009471 action Effects 0.000 claims abstract description 40
- 238000012790 confirmation Methods 0.000 claims description 10
- 230000015654 memory Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 abstract description 18
- 239000013598 vector Substances 0.000 description 23
- 238000013528 artificial neural network Methods 0.000 description 14
- 238000012549 training Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 210000003813 thumb Anatomy 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 210000003811 finger Anatomy 0.000 description 4
- 238000003825 pressing Methods 0.000 description 4
- 230000005484 gravity Effects 0.000 description 3
- 210000004247 hand Anatomy 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000013016 learning Effects 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000004880 explosion Methods 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 230000007787 long-term memory Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 239000000725 suspension Substances 0.000 description 2
- 206010052804 Drug tolerance Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008033 biological extinction Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000026781 habituation Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual 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/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
- G06F3/04162—Control or interface arrangements specially adapted for digitisers for exchanging data with external devices, e.g. smart pens, via the digitiser sensing hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Abstract
本申请提供了一种触屏控制方法和装置、电子设备和存储介质。首先,获取用户对触控屏的第一操作并根据第一操作在触控屏上的第一位置确定第一参数,获取用户对电子设备的历史操作并根据历史操作确定第二参数,获取用户对电子设备的第二操作并根据第二操作确定第三参数。然后,根据这些参数确定触控屏上与第一位置不同的目标位置,并在目标位置执行预设动作。除第一操作和历史操作之外,目标位置的确定过程还受到用户第二操作的影响,从而提升与目标位置预测的准确度和效率。本申请的技术方案能够极大的提升大屏电子设备的屏幕远端操作体验。
Description
技术领域
本发明涉及触控技术领域,具体的,涉及一种触屏控制方法和装置、电子设备和存储介质。
背景技术
随着显示技术的发展,电子设备配备的屏幕越来越大,以为用户提供更加良好的视觉体验。便携式电子设备主要通过触控屏来实现用户和显示对象之间的交互,逐渐增加的屏幕尺寸给用户的控制操作带来了新的挑战。
以手机为例,目前主流触屏手机的屏幕尺寸大多在5.8至7英寸之间,即屏幕的对角线长度在14.7至17.8厘米之间,而成年人从掌心到拇指之间的长度大约为9厘米。这就意味着当用户单手握持手机时,屏幕上有接近三分之二的区域较难用拇指准确点击,同时有接近四分之一的区域无法用拇指点击。请参考图1。图1为大屏幕手机单手操作区域示意图,其中用不同的颜色示出了拇指可轻松点击的区域(“轻松”)、拇指点击较为困难的区域(“困难”)、以及无法用拇指点击的区域(“外星人区域”)。当用户需要点击位于“困难”和“外星人区域”中的显示对象(如图标或者按键)时,通常只能放弃单手操作方式,比如,用一只手握持手机的同时使用另一只手点击屏幕,或者双手握持手机以使双手拇指能更加灵活的覆盖整个屏幕。以上问题同样存在于其他具有触屏的电子设备中。对于尺寸较大的平板电脑以及电纸书设备,用户在使用时通常需要采用双手握持的方式,此时用拇指往往仅能覆盖屏幕边缘的小部分区域。在需要点击其他区域时,用户只能改变操作姿势,将一只手用于固定设备,或者为设备寻找其他物理支撑,这使得用户需要在操作速度和设备安全之间做出取舍。
由此可见,对触控屏上远端区域的操控极大的影响了目前大尺寸触控屏的便捷性。因此,如何提供一种有效的触屏控制方法,使得用户能够方便快捷的对触控屏的远端区域进行操作,成为了本领域技术人员亟待解决的问题。
发明内容
有鉴于此,本申请实施例提供了一种触屏控制方法和装置、电子设备和存储介质,从而使用户能够方便快捷的对大尺寸触控屏进行操作。
本申请实施例的一方面提供了一种触屏控制方法,应用于具有触控屏的电子设备。所述方法包括:获取用户对所述触控屏的第一操作;根据所述第一操作在所述触控屏上的第一位置,确定第一参数;获取所述用户在所述第一操作之前对所述电子设备的历史操作;根据所述历史操作,确定第二参数;获取所述用户对所述电子设备的第二操作;根据所述第二操作,确定第三参数;根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,其中,所述目标位置不同于所述第一操作在所述触控屏上的第一位置;以及,在所述目标位置执行预设动作。
在一个实施例中,所述第一参数包含所述第一位置至所述触控屏上显示的至少一个对象的距离。
在一个实施例中,根据所述第一操作在所述触控屏上的第一位置确定第一参数,包括:确定所述触控屏上包含所述第一位置的第一区域;确定所述触控屏上显示的多个对象中每个对象对应的第二区域;根据所述第一区域和各第二区域,从所述多个对象中选择所述至少一个对象;以及,根据所选择的至少一个对象的位置和所述第一位置,确定所述第一参数。
在一个实施例中,所述历史操作包含所述用户对所述触控屏上显示的至少一个对象的至少一个操作,而且,根据所述历史操作确定第二参数,包括:获得所述至少一个操作对所述至少一个对象的操作顺序;以及,根据所述操作顺序,确定所述第二参数。
在一个实施例中,所述第二操作为对所述电子设备的倾斜操作,且所述第三参数表征所述倾斜操作中所述电子设备的倾斜角度。
在一个实施例中,根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,包括:根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标对象,其中,所述目标对象显示于所述触控屏上的所述目标位置。
在一个实施例中,根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,包括:将输入参数输入预测模型,得到预估位置,其中,所述输入参数包括所述第一参数、所述第二参数和所述第三参数;以及,将所述预估位置确定为所述目标位置。
在一个实施例中,根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,包括:在获取所述第二操作之前,将输入参数输入预测模型,得到预估位置,其中,所述输入参数包括所述第一参数和所述第二参数;根据所述第三参数调整所述预估位置;以及,将调整后的所述预估位置确定为所述目标位置。
在一个实施例中,根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,包括:将输入参数输入预测模型,得到预估位置,其中,所述输入参数包括所述第一参数、所述第二参数和所述第三参数;获取所述用户对所述电子设备的第三操作;根据所述第三操作,确定第四参数;根据所述第四参数调整所述预估位置;以及,将调整后的所述预估位置确定为所述目标位置。
在一个实施例中,所述第二操作和所述第三操作为相同类型的操作。
在一个实施例中,所述输入参数还包括第五参数,且所述方法还包括:获取所述电子设备的应用场景信息;以及,根据所述应用场景信息,确定所述第五参数。
在一个实施例中,所述预测模型为已训练的神经网络模型,所述神经网络模型的训练样本包含所述预测模型在所述电子设备和/或其他同型号电子设备上运行时的历史输入和历史输出。
在一个实施例中,在将输入参数输入预测模型之前,所述方法还包括:使用门控循环单元层、长短时记忆层和循环神经网络层中的至少一个处理所述第二参数。
在一个实施例中,将输入参数输入预测模型,得到预估位置,包括:将所述输入参数输入所述预测模型,得到预估对象,其中,所述预估对象位于所述触控屏的所述预估位置。
在一个实施例中,所述方法还包括:在所述预估位置或所述目标位置显示指示标记。
在一个实施例中,所述方法还包括:在所述目标位置显示指示标记。
在一个实施例中,在所述目标位置执行预设动作,包括:响应于所述用户的确认操作,在所述目标位置执行第一动作;或,响应于所述用户的取消操作,在所述目标位置执行第二动作。
在一个实施例中,所述第一位置与参考位置之间的距离小于所述目标位置与参考位置之间的距离,且所述参考位置位于所述触控屏靠近所述用户一侧的边缘。
本申请实施例的另一方面提供了一种触屏控制装置,应用于具有触控屏的电子设备。所述装置包括:获取模块,用于获取用户对所述触控屏的第一操作,获取用户在所述第一操作之前对所述电子设备的历史操作,以及获取用户对所述电子设备的第二操作;参数确定模块,用于根据所述第一操作在所述触控屏上的第一位置确定第一参数,根据所述历史操作确定第二参数,以及根据所述第二操作确定第三参数;定位模块,用于根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,其中,所述目标位置不同于所述第一操作在所述触控屏上的第一位置;以及,动作模块,用于在所述目标位置执行预设动作。
本申请实施例的又一方面提供了一种电子设备,包括触控屏、处理器以及存储器,其中,所述存储器存储有指令,当所述指令被所述处理器运行时,所述电子设备执行前述任一触屏控制方法。
本申请实施例的又一方面提供了一种非暂态计算机可读存储介质,所述存储介质存储有指令,当所述指令被处理器运行时,执行前述任一触屏控制方法。
本申请实施例提供了触屏控制方法和触屏控制装置。首先,获取用户对触控屏的第一操作并根据第一操作在触控屏上的第一位置确定第一参数,获取用户对电子设备的历史操作并根据历史操作确定第二参数,获取用户对电子设备的第二操作并根据第二操作确定第三参数。然后,根据这些参数确定触控屏上与第一位置不同的目标位置,并在目标位置执行预设动作。因此,除第一操作和历史操作之外,目标位置的确定过程还受到用户第二操作的影响。第二操作能够为目标位置的预测提供进一步参考,或者对预测的目标位置进行进一步调整,从而提高预测的准确度。同时,采用神经网络架构的预测模型可以通过学习历史确定结果进一步提高确定目标位置的效率。本申请的技术方案能够极大的提升大屏电子设备的屏幕远端操作体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中大屏幕手机单手操作区域示意图;
图2为本申请实施例中一种触屏控制方法的流程示意图;
图3为本申请实施例中基于图2的另一种触屏控制方法的流程示意图;
图4为本申请实施例中基于图2的又一种触屏控制方法的流程示意图;
图5为本申请实施例中基于图2的又一种触屏控制方法的流程示意图;
图6为本申请实施例中基于图2的又一种触屏控制方法的流程示意图;
图7为本申请实施例中对预估位置进行调整的示意图;
图8为本申请实施例中基于图2的又一种触屏控制方法的流程示意图;
图9为本申请实施例中一种触屏控制方法的信息流示意图;
图10为本申请实施例中GRU层的逻辑示意图;
图11为本申请实施例中一种触屏控制装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
如背景技术中所述,大尺寸触控屏使得用户难以对屏幕远端显示的对象进行触控操作。可以理解,这里的“远端”是根据用户进行触控操作时其与触控屏之间的相对位置来定义的,即触控屏上远离用户操作体的一侧。与之相对,用户进行触控操作时触控屏上靠近用户操作体的一侧可被称为“近端”。当电子设备为手机或者平板电脑等设备时,操作体通常是用户的手指。
电子设备中通常可采用以下两种方式来解决上述问题。第一种方式为“下拉悬停”方案,即用户可采用预设的触控手势改变屏幕的显示区域。当检测到该手势时,当前屏幕的全部显示内容在尺寸上等比例缩小,并向屏幕近端收缩,使屏幕上的全部或者部分显示内容位于图1中所示的“轻松”区域。这样,用户可以在不改变握持姿势的前提下对原本处于“轻松”区域之外的显示对象进行操作。第二种方式为“悬浮球”方案,即用户可以预设一个可自由移动的悬浮显示对象,令其处于屏幕上的近端区域。当用户对悬浮球进行点击等预设操作时,可在“轻松”区域内展开一个悬浮显示层,用于显示原本位于远端区域的显示对象、或者显示这些显示对象的快捷方式,使得用户在不改变握持姿势的前提下对原本处于“轻松”之外的显示对象进行操作。
然而,以上两种方式具有明显的缺陷。“下拉悬停”方案压缩了屏幕显示对象的尺寸,浪费了大屏手机的空间优势,同时给精确操作特定显示对象带来了困难。尤其当用户需要对屏幕键盘按键等小尺寸对象进行操作时,误触率会大大提升,上述缺陷会变得格外明显。“悬浮球”方案虽然可以不改变显示对象的大小,但其所展示的悬浮层仅能够显示有限的对象,而且通常需要用户提前对显示内容和显示位置进行设定,因此其泛用性较差。
电子设备也可以基于用户的使用习惯来解决远端显示对象的操作问题。比如,电子设备可对用户使用触控屏的历史记录进行分析,来预测用户是否即将对位于“轻松”区域之外的某个或者某些显示对象进行操作。如果预测结果是肯定的,那么电子设备可将该显示对象显示在“轻松”区域内,以便于用户在不改变握持方式的前提下对其进行操作。然而,以上方案至少具有如下三个缺陷。首先,该方案本质上是对屏幕显示对象布局的动态调整,预测足够准确的基础往往是用户对该电子设备有足够多的操作时间,这样才能够形成足够丰富的历史记录。但用户在使用电子设备的过程中会逐渐对固定的显示对象布局形成依赖,频繁的布局调整反而会给用户操作带来障碍。尤其是对于屏幕输入键盘这种习惯性极强的按键布局,该方案会极大的降低用户的输入效率。其次,即便是根据用户使用习惯进行调整,也会面临用户在新应用场景下的操作需求,此时根据历史记录进行的调整反而有可能将用户并不需要的对象移动到近端区域,而将用户需要操作的对象移动到远端区域,反而给用户的操作带来了困难。第三,当新用户对该电子设备进行操作、或者用户对新的电子设备进行操作时,该方案缺乏可用于预测的历史记录,无法发挥其作用。
有鉴于此,本申请实施例的第一方面提供了一种触屏控制方法。在本实施例中,该触屏控制方法可应用于具有触控屏的电子设备,并通过硬件、软件、或两者的结合来实施。比如,该触屏控制方法可以通过电子设备中具有特定功能的硬件装置执行相应功能来实现,也可以通过指令控制相应的硬件装置来实现。这些指令可存在于由服务器和具有触控屏的终端设备所构成的硬件环境中,服务器和终端之间通过网络进行连接,该网络包括但不限于局域网、城域网或广域网。此时,触屏控制方法可通过运行在服务器和终端上的软件来实现,或者通过内嵌于服务器和终端上的硬件中的命令来实现。需要注意的是,这些指令也可以完全运行终端设备上,本实施例对此不做限制。
下面结合图2来进一步描述上述触屏控制方法。图2是本申请实施例中一种触屏控制方法的流程示意图。如图2所示,该触屏控制方法可包括步骤S101至步骤S108。
S101、获取用户对所述触控屏的第一操作。
电子设备通过其触控屏来检测用户的第一操作,从而获取该第一操作。可以理解,第一操作可以为用户在触控屏上进行的任何常见的操作,如点击、长按、按压、滑动操作等等。该第一操作也可以为常见操作的组合,如双击、三连击、按压后滑动等等。这里对第一操作的具体形式不做限制,只要电子设备可以通过触控屏识别第一操作即可。
S102、根据第一操作在触控屏上的第一位置,确定第一参数。
可以理解,电子设备可以通过触控屏来检测第一操作所发生的位置,并将其确定为第一位置。本领域技术人员可在现有技术中获得触控屏定位的常规方法,这里不进行详细描述。第一操作发生的位置可以体现为触控屏上的一个特定坐标,也可以体现为触控屏上的一个坐标范围,还可以体现为位于特定坐标的显示对象。在一些实施例中,当第一操作为点击时,第一位置可以为操作体接触触控屏位置的坐标;当第一操作为滑动时,第一位置可以为操作体开始滑动时接触触控屏的坐标,也可以为操作体停止滑动时接触触控屏的坐标,还可以为滑行轨迹多个坐标点的平均坐标。本申请实施例对第一位置的确定方法不做具体限制。
第一参数为根据第一位置得到的参数,可以具有多种形式,只要其包含了第一操作的位置信息即可。比如,可以直接将第一位置的坐标作为第一参数,或者可以将第一位置所在的一个区域的位置作为第一参数。第一参数还可以反映第一位置与屏幕上显示的对象之间的相对位置信息。在一个实施例中,第一参数可以包含第一位置至触控屏上显示的至少一个对象的距离。
请在图2的基础上参考图3。图3为本申请实施例中另一种触屏控制方法的流程示意图,展示了步骤S102的一种实施方法。如图3所示,步骤S102可包含步骤S1021至S1024。
S1021、确定触控屏上包含第一位置的第一区域。
第一区域可以根据实际需求来进行确定。比如,可以将以第一位置为中心的、具有固定长宽的矩形区域确定为第一区域,也可以将以第一位置为中心的、具有固定半径的圆形区域确定为第一区域,还可以将以第一位置为中心的其他规则形状的区域确定为第一区域。或者,第一区域也可以不以第一位置为中心,而结合屏幕尺寸或远端区域的实际大小来确定。比如,当屏幕为矩形时,以距离操作体最近的屏幕边角为坐标原点,可通过以下公式确定第一区域:
其中,S1表示第一区域,(x0,y0)表示第一位置在触控屏上的坐标,X和Y表示触控屏的在两个垂直方向上的尺寸。α、β均为经验参数,可根据具体的用户和电子设备来确定。
需要注意,第一区域的具体形式并不限于上述例子,触控屏范围内任何包含第一位置的区域均可作为第一区域。在一个实施例中,第一区域可包含整个屏幕区域。
S1022、确定触控屏上显示的多个对象中每个对象对应的第二区域。
这里触控屏上显示的多个对象可以为触控屏上显示的所有对象,也可以为触控屏上显示的部分对象。在确定各个对象对应的第二区域时,可以将该对象为中心的具有规则形状的区域确定为第二区域。比如,当屏幕为矩形时,以操作体最接近的屏幕边角为坐标原点,则可通过以下公式确定矩形的第二区域:
其中,S2,n表示位于(xn,yn)的对象所对应的第二区域,width和height分别表示矩形在坐标系内的宽度和高度。
需要注意,第二区域的具体形式并不限于上述例子。比如,第二区域还可以为圆形、六边形等规则形状,也可以为预设的其他形状。再比如,不同对象对应的第二区域可具有不同的大小和形状,且对象可位于相应第二区域内除中心之外的其他位置。
S1023、根据第一区域和各第二区域,从多个对象中确定至少一个对象。
从多个对象中确定至少一个对象,主要是为了寻找用户第一操作可能的目标,因此步骤S1023中所确定的对象也可被称作候选对象。在一些实施例中,用户的执行第一操作时会选择触控屏上离操作目标较近的位置,因此相应的,候选对象为多个对象中距离第一区域或者第一位置较近的对象。在一个实施例中,可通过对第一区域和各个第二区域的交叠程度来选择候选对象,即,当第二区域与第一区域的交叠面积大于预设阈值时,该第二区域对应的对象可确定为候选对象,该条件用公式可表示为:
S1YS2,n=Coveragen<Thd (4)
其中Thd为预设阈值,Coveragen表示位于(xn,yn)的对象所对应的第二区域与第一区域的交叠面积。所有满足候选条件的对象的集合可以记为C={c1,c2,...,cm},即,共有m个对象满足该条件.
在一些实施例中,也可以选择多个对象中交叠面积最大的固定数目的对象作为候选对象。当然,也可以通过其他的参数来选择与第一区域较近的候选对象。比如,可通过第一区域与第二区域的边缘距离、中心距离、或者中心到边缘的距离来选择候选对象。在一些实施例中,也可以不将距离位置最近作为选择条件,而是使用其他的位置关系。比如,可以选择多个对象中横坐标或者纵坐标与第一区域最接近的第二区域对应的对象作为候选对象,或者选择多个对象中与第一区域的距离位于特定区间内的第二区域对应的对象作为候选对象。
可以理解,上述步骤S1021至S1031主要是为了建立多个对象与第一操作之间的位置关系,并据此选择出用户可能的目标(即候选对象)。因此在实际应用中,也可以不使用第一区域或者第二区域,直接使用第一位置或者多个对象的位置来进行替代。比如,使用第一位置到各第二区域的距离、或者使用第一区域到各对象的距离、或者使用第一位置到各对象的距离,来确定候选对象。
S1024、根据所选对象的位置和第一位置,确定第一参数。
如前所述,第一参数可包含第一位置至候选对象的距离信息。比如,在确定候选对象之后,可以分别计算每个候选对象(ci,1≤i≤m)的位置与第一位置之间的距离。这些距离可以用含有m个元素的向量distance表示,每个元素distancei用于表示对象ci与第一位置之间的距离。第一参数可包含该向量distance。
进一步的,第一参数还可以包含集合C的信息。集合C中的每个候选对象均可以用预设的代码来表示,比如使用一位有效编码(one-hot编码)。此时,集合C也可以表示为包含m个元素的向量candidate,其中各元素candidatei用于标识对象ci的编码。第一参数可包含该向量candidate。通常情况下,candidate和distance中的元素具有一一对应的关系,即两个向量中相同位置的元素对应同一个候选对象。
可以理解,第一参数即可以包含单独的两个向量distance和candidate,也可以将两个向量中的元素融合,比如融合成(distance1,cadidate1,distance2,candidate2,…,distancem,candidatem)的形式,或者(distance1,distance2,…,distancem,cadidate1,candidate2,…,candidatem)的形式,只要能元素之间符合前述对应关系即可。在一种实施方式中,还可以将distance和candidate融合成“距离-候选对象”对的形式,即第一参数中包含(distance1,cadidate1)、(distance2,candidate2)、……、(distancem,candidatem)一共m个向量,此时,第一参数可以表现为矩阵形式。可以理解,采用矩阵形式有利于候选对象具有不同数量时统一各个对象的数据维度。
以上结合图3描述了一种确定第一参数的实施方式。第一参数还可以通过其他方法确定,本申请并不限于上述第一参数的具体确定步骤或者具体表现形式。
请继续参考图2,以下将对确定第二参数和第三参数的过程进行描述。
步骤S103、获取用户在第一操作之前对电子设备的历史操作。
这里的历史操作可以包含用户对电子设备所进行的任何一种操作,只要其能够被电子设备检测并记录即可。历史操作可以是对触控屏进行的操作,比如针对显示的对象或者触控屏特定的位置进行点击、按压或者滑动操作。历史操作也可以是对触控屏之外的其他组件进行操作,该其他组件例如电子设备上的物理按键、光学传感器、声音采集装置等,或者电子设备内部的重力传感器、加速度传感器、温度传感器等。可以理解,历史操作的具体形式对应于其作用的组件,比如当前述组件包含声音采集装置时,历史操作可以包含预设的声音输入,当前述组件包含重力传感器时,历史操作可以包含倾斜手机的操作。
在一个实施例中,历史操作包含用户对触控屏上显示的至少一个对象的至少一个操作。比如,当至少一个对象为一个或者多个虚拟按键时,该历史操作可以为按照特定的顺序点击这些按键,当至少一个对象为文档或者网页页面时,该历史操作可以为按照特定方向滚动这些页面。
需要注意,此处并不具体限定历史操作发生的具体时间。在实际应用中,历史操作可以为第一操作发生前预设长度时间段内的所有操作,也可以为第一操作发生前时间上与第一操作相邻的预设数量的操作,也可以为第一操作发生前预设长度时间段内时间上与第一操作相邻的预设数量的操作。电子设备可以通过多种方式记录历史操作。通常情况下,电子设备以代码(如按键编码)的形式将用户全部操作或者符合条件的部分操作按照顺序记录在缓存中。当电子设备检测到第一操作时,从缓存中按照上述时间和/或数量要求提取最近发生的操作代码,以获取历史操作。可以理解,该方式仅为电子设备获取历史操作的一种示例,本申请并不限定于此。比如,代码也可以存储在内存或者硬盘中。
步骤S104、根据历史操作确定第二参数。
由于第二参数是根据历史操作确定的,因此第二参数中将包含用户的历史行为信息,即在进行第一操作前用户进行过何种操作。这样,电子设备可以通过比照用户的习惯,从而根据用户的历史操作来预测用户当前的操作目标。当历史操作中包含多个操作时,比照的重点即可以在于操作的对象,也可以在于操作的顺序。比如,假设用户使用虚拟键盘在进行拼音输入时,同样是点击“i”和“n”,如果先点击“i”再点击“n”,那么按照输入习惯接下来的点击有很大概率会是“g”,而如果点击“n”在点击“i”,那么接下来的输入“g”的概率会显著下降。
因此,在一个实施例中,历史操作包含用户对触控屏上显示的至少一个对象的至少一个操作。此时步骤S102可以包含以下两个步骤:首先获得至少一个操作对至少一个对象的操作顺序,然后根据该操作顺序确定第二参数。依然以代码化的对象为例,假设屏幕上显示的k个对象(比如虚拟按键)的编码分别为i1至ik,且历史操作包含5个操作,顺序为依次点击第2、5、3、4、1个对象,那么根据该顺序,第二参数可包含向量history=(i2,i5,i3,i4,i1)。同时,电子设备也可以对操作类型进行编码。比如,将长按和点击分别编码为0和1,如历史操作顺序为点击第2个对象、长按第5个对象、点击第3个对象、点击第4个对象、长按第1个对象,那么第二参数中还可包含向量type=(1,0,1,1,0)。或者,第二参数可以包含融合后的history和type,其中每个对象的编码和相应的操作类型编码按照一定规则对应。
可以理解,上述示例并不构成对本申请实施例的限制,在实际应用中可按照需求使用其他形式的第二参数,只要其能够反映历史操作的特征即可。同时,如果历史操作中包含对触控屏之外的组件的操作,也可以按照预设的代码将相应的操作写入第二参数之中,具体的形式可从上述示例中类推获得,本申请实施例中不再赘述。
步骤S105、获取用户对电子设备的第二操作。
与历史操作类似,这里的第二操作可以包含用户对电子设备所进行的任何一种操作,只要其能够被电子设备检测并记录即可。与历史操作不同的是,第二操作可发生在第一操作的同时或者之后。第二操作可用于辅助历史操作与用户的习惯进行比照,或者可用于对电子设备判定的操作目标进行校准。第二操作使得电子设备可以使用除了历史记录和第一位置之外的其他信息来判断用户的操作目标,使得最终的触控结果更加准确。
通常情况下,为了不影响用户的操作效率,第二操作优选为不明显改变用户对电子设备握持姿势的操作。比如,第二操作可以为用户倾斜电子设备,也可以为用户在触屏近端区域的滑动操作,还可以为用户对电子设备当前握持部分的物理按键的操作,还可以为将声音信号(如语音)输入麦克风、或者将图像信号(如表情)输入图像采集装置的操作。
步骤S106、根据第二操作确定第三参数。
与上述步骤S102和S104类似,步骤S106的本质是对第二操作进行参数化,其参数化的过程可参考前述步骤。在一个实施例中,第二操作为用户倾斜电子设备,则第三参数可表征所述电子设备的倾斜角,比如,第三参数可以为通过重力感应器检测的电子设备的俯仰角、方位角和翻滚角的变化。在另一个实施例中,第二操作为用户在触屏近端区域的滑动操作,则第三参数可表征滑动操作中各操作点的位置和/或在各操作点滑动方向。在又一个实施例中,第二操作为用户对电子设备物理按键的操作,则第三参数可以表征为按键预设的代码。或者,第二操作为用户输入图像或者声音信号,则第三参数可以表征图像或声音提取的预设特征的强度。
如图2所示,在本申请实施例中,步骤S102在步骤S101之后执行,步骤S104在步骤S103之后执行,步骤S106在步骤S105之后执行。虽然从操作时间来看,历史操作发生在第一操作之前,第二操作发生在第一操作的同时或者之后,但本申请实施例中并不严格限定步骤S102、S104和S106之间的执行顺序,即这三个步骤中的任意两个可以同时执行,也可以按照一定的顺序执行。当这三个步骤均执行完毕之后,可执行步骤S107和步骤S108。
步骤S107、根据第一参数、第二参数和第三参数确定触控屏上的目标位置。
目标位置是用户设备通过第一参数、第二参数和第三参数判断的用户想要操作的目标所在的位置。在本申请实施例中,目标位置通常不同于第一位置。当触屏控制方法用于电子设备的远端操作时,第一位置通常位于触屏的近端,而第二目标位置位于触屏的远端。即,以触控屏靠近用户一侧的边缘上某个位置作为参考位置,第一位置与参考位置之间的距离小于目标位置和参考位置之间的距离。当然,本申请实施例中的触屏方法还可以应用于其他场景,此时第一位置和目标位置之间还可以具有其他位置关系。
在一些实施例中,触控屏会在对应的位置显示可用于交互的对象。此时,步骤S107包括:根据第一参数、第二参数和第三参数确定触控屏上的目标对象,且该目标对象位于触控屏上的目标位置。即,此时电子设备对目标位置的确定体现为对目标对象的确定。
在一些实施例中,步骤S107包含电子设备对目标位置的预测过程,即通过预测模型来处理现有的参数,并得到目标位置的预测结果。在一些实施例中,为了能够利用用户的习惯准确的对目标位置进行判断,该预测模型通常为神经网络(neural network,NN)模型,可以理解NN模型中包含至少一层NN层。
在一些实施例中,预测模型可以经过预先训练,以在实际应用中根据输入的参数尽可能准确的预测出目标位置。预测模型训练所使用的样本通常为相同或相似应用场景下的历史预测结果,样本的具体内容与预测模型所需的输入参数有关。比如,当预测模型的输入包含第一参数和第二参数时,那么其样本中至少包含历史第一操作、该历史第一操作对应的历史操作、以及该历史第一操作对应的用户确认的目标位置。类似的,当预测模型的输入包含第一参数、第二参数和第三参数时,那么其样本中至少包含历史第一操作、该历史第一操作对应的历史操作、该历史操作对应的第二操作、以及该历史第一操作对应的用户确认的目标位置。在实际应用中,每次得到用户确认的预测结果都可以作为新的训练样本,从而使得预测模型随着使用时间的增长而愈发准确。
在一些实施例中,预测模型训练所使用的样本部分或者全部来自于当前用户对当前电子设备的历史使用记录。在另一些实施例中,预测模型训练所使用的样本部分或者全部来自于当前用户对同类型或者相似类型电子设备的历史使用记录,比如,可以使用具有相同大小触屏的其他电子设备上该用户的使用记录。在又一些实施例中,预测模型训练所使用的样本部分或者全部来自于其他用户对当前电子设备的历史使用记录,比如,可以使用其他用户在使用同一个应用或者同一个交互界面时的使用记录。当然,预测模型训练所使用的样本还可以部分或者全部来自于其他用户对同类型或者相似类型电子设备的历史使用记录。当涉及使用其他电子设备中的使用记录时,电子设备可以通过网络或者云端获取相应的数据。可以理解,使用其他用户或者其他电子设备的使用记录可以增加训练预测模型的样本数量,增强预测模型的泛化能力。这里的历史使用记录可包含预测模型在相应电子设备上运行时的历史输入和历史输出,即,预测模型的历史输入数据和对应的历史输出数据。
同时,如步骤S104中所述,由于需要从历史操作的顺序信息中获得用户的习惯特征,第二参数包含了时序信息。在一些实施例中,第二参数在输入预测模型之前可以先通过循环网络神经(recurrent neural network,RNN)层进行处理,以获得时间序列中各操作之间的关联,为预测模型中的NN层的预测提供更深层次的信息。该RNN层可以视为预测模型中的一个部分或者独立于预测模型。在另一些实施例中,第二参数在输入预测模型之前可以通过长短时记忆(long short time memory,LSTM)层进行处理,以解决RNN层可能产生的梯度消失和梯度爆炸问题。在又一些实施例中,第二参数在输入预测模型之前可通过门控循环单元(gate recurrent unit,GRU)层进行处理,这样能够采用更加简单的结构来缓解梯度消失和梯度爆炸问题。
当第二操作用于辅助历史操作来对目标位置进行预测时,预测模型的输入参数中包含第一参数、第二参数和第三参数。请在图2的基础上参考图4。图4为本申请实施例中另一种触屏控制方法的流程示意图,展示了步骤S107的一种实施方式。如图4所示,步骤S107可包含步骤S1070和步骤S1071。
步骤S1070、将第一参数、第二参数和第三参数输入预测模型,得到预估位置。
在本实施例中,预测模型的输入参数包含第一参数、第二参数和第三参数。如前所述,第一参数包含了用户进行第一操作的位置信息和/或候选对象的信息,第二参数包含了用户进行历史操作的内容信息和/或顺序信息,第三参数包含了用于辅助确定用户操作目标的额外信息。预测模型的输出为预估位置,即电子设备预测的用户操作目标所在的位置。比如,当电子设备预测的用户的操作目标为多个候选对象中的一个时,预估位置为该候选对象所在的位置。可以理解,由于第三参数作为预测模型的输入,步骤S106需要在步骤S1070之前执行。
步骤S1071、将预估位置确定为目标位置。
在本实施例中,电子设备在获得预测模型输出的预估位置之后,直接将其作为目标位置。
当第二操作用于对电子设备预测的操作目标进行校准时,预测模型的输入参数中包含第一参数和第二参数。请在图2的基础上参考图5。图5为本申请实施例中又一种触屏控制方法的流程示意图,展示了步骤S107的另一种实施方式。如图5所示,步骤S107可包含步骤S1072至S1074。
步骤S1072、将第一参数和第二参数输入预测模型,得到预估位置。
在本实施例中,预测模型的输入参数包含第一参数和第二参数。步骤S1072与之前的步骤S1070基本相同,唯一的区别在于预测模型并不使用第三参数作为辅助确定目标位置的额外信息。
步骤S1073、根据第三参数调整预估位置。
如前所述,第三参数反映了第二操作的特征。在一些实施例中,在得到预估位置之后,电子设备会根据用户之前进行的第二操作对预估位置进行调整。在另一些实施例中,在得到预估位置之后,用户可以根据该预估位置进行第二操作,以对预估位置进行调整。此时,用户可以执行一次或多次第二操作,电子设备可根据每次第二操作对应的第三参数来实时的调整预估位置。这样,用户能够及时的对预测产生的偏差进行纠正,使得电子设备最终能够在用户所期望的位置上执行动作。可以理解,当预测模型包含NN层时,校准后的预估位置可以作为后续预测的样本,通过NN层的学习功能来进一步提升后续预测的准确程度。
图7为本申请实施例中对预估位置进行调整的示意图。图7展示了手机对用户右手单手操作全键盘输入时的应用场景,其中,按键“D”、“F”中间的较大的圆形标记表示预测模型目前确定的预估位置。以第二操作为倾斜手机为例,用户可以朝预设的方向倾斜手机,将预估位置调整到较小的圆形标记所在的位置上,即按键“A”所在的位置。调整过程的路径可以为一条曲线或者一条直线,具体取决于用户所执行的第二操作。这里“预设的方向”可在电子设备上自定义。比如,同样是将显示标记调整到左侧的位置,当用户习惯将预估位置的显示标记视为屏幕上显示的“重物”时,可将手机向左倾斜或者翻转,或者,当用户习惯将预估位置的显示标记视为屏幕上显示的“气泡”时,可将手机向右倾斜或者翻转。
可以理解,由于第三参数作为调整预估位置的依据,步骤S106需要在步骤S1073之前执行。同时,若该调整是实时的,则步骤S105和S106需要在步骤S1072之后执行。
步骤S1074、将调整后的预估位置作为目标位置。
当用户利用第二操作完全消除(或部分消除)预测的偏差之后,经过调整的预估位置即作为目标位置,作为步骤S107的执行结果,并用于执行步骤S108。
当电子设备既需要辅助历史操作进行预测的信息又需要对预测的操作目标进行校准的信息时,预测模型的输入参数中可包含第一参数、第二参数和第三参数。同时,可以引入第四参数来对预估位置进行调整。请在图2的基础上参考图6。图6为本申请实施例中又一种触屏控制方法的流程示意图,展示了步骤S107的又一种实施方法。如图6所示,步骤S107可包含步骤S1075至S1079。
步骤S1075、将第一参数、第二参数和第三参数输入预测模型,得到预估位置。
步骤S1075的细节参见前述步骤S1070,这里不再赘述。
步骤S1076、获取用户对电子设备的第三操作。
与第二操作类似,这里的第三操作可以包含用户对电子设备所进行的任何一种操作,只要其能够被电子设备检测并记录即可。第三操作的具体实现方式与步骤S105中的第二操作类似,具体内容可参见步骤S105,这里不再赘述。在一些实施例中,在得到预估位置之后,电子设备会根据用户之前进行的第三操作对预估位置进行调整。在另一些实施例中,在得到预估位置之后,用户可以根据该预估位置进行第三操作,以对预估位置进行调整。本步骤中的第三操作的细节与步骤S1073中的第二操作类似,具体内容可参见步骤S1073,此处不再赘述。
步骤S1077、根据第三操作确定第四参数。
步骤S1077的本质是对第三操作进行参数化。本步骤的细节可参见步骤S106中根据第二操作确定第三参数的过程,这里不再赘述。
可以理解,第三操作和第二操作可以为类型不同的操作,也可以为类型相同的操作。比如,第三操作和第二操作可以均为用户倾斜电子设备的操作或者均为用户在触屏近端区域的滑动操作。当两者类型相同时,第三参数和第四参数可以根据相同的参数化过程得到,也可以根据不同的参数化过程得到。比如,第三操作和第二操作可以均为用户倾斜电子设备的操作,第三参数可以为电子设备俯仰角、方位角和翻滚角的变化,而第四参数可以仅为电子设备翻滚角或者方位角的变化。
步骤S1078、根据第四参数调整预估位置。
步骤S1078的细节可参考前述步骤S1073根据第三参数调整预估位置的过程,这里不再赘述。
步骤S1079、将调整后的预估位置作为目标位置。
当用户利用第三操作完全消除(或部分消除)预测的偏差之后,经过调整的预估位置即作为目标位置,作为步骤S107的执行结果,并用于执行步骤S108。
在一些实施例中,电子设备还可以利用应用场景来确定预估位置或者目标位置。此时,预测模型的输入参数包括第五参数。对应的,触屏控制方法中还包含以下两个步骤。首先,获取电子设备的应用场景信息,然后,根据应用场景信息确定第五参数。相应的,在预测模型的训练样本中也会加入历史第一操作对应的应用场景信息。这里的应用场景信息可包括电子设备的环境信息,如温度、光照、噪声强度、定位、时间等等,也可以包括用户所设定的电子设备模式。由于用户的使用习惯往往与电子设备的应用场景信息相关(比如室内和室外的使用习惯不同、白天和夜晚的使用习惯不同等等),利用应用场景信息来训练预测模型可以进一步提升预测的准确性。
如前所述,在一些实施例中,触控屏会在对应的位置显示可用于交互的对象。此时,电子设备对预估位置的确定也可体现为对预估对象的确定,其中预估对象位于触控屏上的预估位置。即,电子设备可通过预测模型直接得出预估对象。相应的,预测模型的训练样本中的历史第一操作对应的目标位置也体现为其对应的目标对象。同时,将预估位置确定为目标位置的步骤(如步骤S1074和S1079)可体现为将预估对象确定为目标对象。
在一些实施例中,电子设备可通过在触控屏上显示指示标记来表示步骤S107中所确定的目标位置,以对用户进行提示。本申请实施例中不限定指示标记的具体形式,只要能够与触控屏上其他位置相区分即可。比如,指示标记可以为具有特定形状、特定颜色、或者特定亮度的游标。在一些具有无障碍模式的电子设备中,电子设备可以通过声音、振动等方式来提示用户步骤S107中所确定的目标位置。比如,根据目标位置的坐标发出不同的声音或者不同强度的振动。
在一些实施例中,在确定目标位置之前会执行调整预估位置的步骤,比如图5、图7中所示的实施例。此时,电子设备可通过在触控屏上显示指示标记来表示所确定的目标位置或者预估位置,以对用户进行提示。指示标记的具体形式参见前述举例,这里不再重复描述。可以理解,当使用指示标记表示预估位置时,指示标记的位置会随着对预估位置的调整而在屏幕上相应移动。
请继续参考图2,在步骤S107之后执行步骤S108。
步骤S108、在目标位置执行预设动作。
预设动作的具体形式可由第一操作、历史操作或者第二操作中的一个或多个来决定,也可以由用户自定义。在一些实施例中,预设动作可以根据用户在步骤S107之后执行的操作来确定。比如,电子设备可响应于用户的确认操作执行第一动作,或者响应于用于的取消操作执行第二动作。请在图2的基础上参考图8。图8为本申请实施例中又一种触屏控制方法的流程示意图,展示了步骤S108的一种实施方法。如图8所示,步骤S108可包含步骤S1081至S1084。
步骤S1081、检测用户的确认操作。
与历史操作类似,确认操作可以为用户对电子设备所进行的任何一种操作,只要其能够被电子设备检测并记录即可。确认操作用于表示用户认为当前目标位置是其想要执行第一动作的位置。确认操作的具体形式可参考步骤S103中对历史操作的描述,这里不再赘述。
步骤S1082、在目标位置执行第一动作。
第一动作的具体形式可以为点击动作(包括单击、双击等)、选中对象、激活对象等等,本申请实施例不限于此,可根据实际情况按需决定。
步骤S1083、检测用户的取消操作。
与历史操作类似,取消操作可以为用户对电子设备所进行的任何一种操作,只要其能够被电子设备检测并记录即可。取消操作用于表示用户认为当前目标位置不是其想要执行第一动作的位置,且用户不打算对目标位置进行调整。可以理解,用户在执行取消操作之后,可以再一次执行第一操作以重新开始整个触屏控制方法。取消操作的具体形式可参考步骤S103中对历史操作的描述,这里不再赘述。
步骤S1084、在目标位置执行第二动作。
第二动作的具体形式可以为停止显示指示标记等,本申请实施例不限于此,可根据实际情况按需决定。通常情况下,第一动作与第二动作不同。
可以理解,电子设备对确认操作和取消操作的响应可以是两个独立的过程。也就是说,在实际应用中,步骤S108可不包含S1081和S1082,也可以不包含S1083和S1084。
根据本申请实施例提供的触屏控制方法,获取用户对触控屏的第一操作并根据第一操作在触控屏上的第一位置确定第一参数,获取用户对电子设备的历史操作并根据历史操作确定第二参数,获取用户对电子设备的第二操作并根据第二操作确定第三参数。然后,根据这些参数确定触控屏上与第一位置不同的目标位置,并在目标位置执行预设动作。因此,除第一操作和历史操作之外,目标位置的确定过程还受到用户第二操作的影响。第二操作能够为目标位置的预测提供进一步参考,或者对预测的目标位置进行进一步调整,从而提高预测的准确度。同时,采用神经网络架构的预测模型可以通过学习历史确定结果进一步提高确定目标位置的效率。本申请的技术方案能够极大的提升大屏电子设备的屏幕远端操作体验。
为了使本申请实施例中的触屏控制方法更易于理解,接下来以图1所示的手机的远端操作为例进行具体说明,请参考图9。图9为本申请实施例中一种触屏控制方法的信息流示意图。在该实施例中,操作对象为手机屏幕上显示的虚拟输入键盘,键盘上至少有部分按键位于图1所示的“轻松”区域之外。
图9所示的流程通过用户通过长按手机屏幕(即第一操作)触发。当用户需要点击某个位于“轻松”区域之外的按键时,用户长按手机屏幕上“轻松”区域内距离该按键较近的一个位置。手机在检测到长按操作之后,可得到长按位置的坐标(x0,y0),并通过预设的范围参数获得该坐标所在的长按区域S0,然后根据S0确定n个候选按键c1到cn,计算c1到cn中各个按键到(x0,y0)的距离,并利用这些距离和各个按键的代码生成向量distance(即第一参数)。
在获得向量distance的过程中,手机同时根据缓存中记录的确定用户最近点击的m个按键,按照时序排列为d1到dm。然后,根据d1到dm的编码生成向量(即第二参数),并将向量/>中的每个元素按照该时序依次输入GRU层中,得到中间结果向量/>GRU层中包含多个子层,每个子层的逻辑结构可如图10所示。图10中以第t个子层为例,ut表示向量/>中第t个输入GRU层的元素,yt表示向量/>中第t个由GRU层输出的元素,at-1表示由第t-1个子层输入第t个子层的结果,at表示由第t个子层输入第t+1个子层的结果,Γr表示重置门的门值,Γu表示更新门的门值,/>表示将重置后的at-1与ut拼接后的激活结果。按照图10中的逻辑结构,可以得到如下公式:
其中,σ表示归一化指数函数(sigmoid function),σ'表示二分类函数(softmaxfunction)。
同时,手机根据获取第一操作时用户对手机的倾斜程度(即第二操作),并以手机水平放置作为参考姿态,获得手机的翻滚角θ1、方位角θ2和俯仰角θ3,并利用其生成向量angle(即第三参数)。此外,手机根据当前的用户模式、手机型号和环境光强,按照预设的编码规则生成向量scene(即第五参数)。
然后,向量distance、angle和scene经过级联运算,得到向量/>将向量/>输入已训练的NN层(即预测模型),经过线性运算和归一化指数运算得到各候选按键c1到cn对应的点击概率p1到pn组成的向量p。NN层中运算可以由如下公式表示:
其中,A和B为NN层经过训练之后得到的参数,训练样本来自所有用户在同型号手机上使用同一输入键盘的历史记录。
随后,确定向量p中最大的元素,即p1到pn中的最大值,并从c1到cn选择对应该最大值的按键cpre作为预估点击按键,预估点击按键的所在的位置即为本实施例中的预估位置。预估点击按键cpre通过高亮(即提高预估位置或者该按键处的显示亮度)来进行标记。用户可通过调整手机的倾斜程度(即第三操作)来调整实时该预估位置,具体的,可以根据手机相对水平放置姿态的翻滚角θ1和俯仰角θ3实时生成向量angle0(即第四参数),并通过angle0确定高亮的按键。比如,用户将手机向左翻转至一定角度,则高亮的按键变为当前高亮按键左侧的按键;用户将手机向右翻转至一定角度,则高亮的按键变为当前高亮按键右侧的按键;用户将手机向前翻转至一定角度,则高亮的按键变为当前高亮按键上方的按键;用户将手机向后翻转至一定角度,则高亮的按键变为当前高亮按键下方的按键。当用户每次完成调整时,当前高亮的按键ctar即为目标点击按键,目标点击按键的所在的位置即为本实施例中的目标位置。目标点击按键ctar继续通过高亮来进行标记。
此时,用户可对目标点击按键ctar进行确认。如用户抬起第一操作中按压在屏幕上的手指(即确认操作),则手机识别用户需要远端点击目标点击按键ctar,输入ctar对应的字符或者执行ctar对应的操作(即第一动作)。如用户滑动第一操作中按压在屏幕上的手指至一定距离(即取消操作),则手机识别用户需要取消本次远端点击,取消按键ctar的高亮(即第二动作),不输入ctar对应的字符,不执行ctar对应的操作。
这样,用户通过在触控屏近端进行长按,就可以完成对触控屏上远端显示区域中按键的准确操作,整个过程中不需要用户改变手机的握持姿势。
可以理解,上述实施例仅是本申请的一种实施方式,其目的在于更加清楚、直观的说明书本申请的技术方案,而非用于限定本申请。本申请实施例中还可以有其他的实施方式,比如,图9中的第四操作可替换为手指在“轻松”区域内的滑动操作,根据滑动的方向来调整预估点击按键。
与前述触屏控制方法相对应,本申请实施例的第二方面提供了一种触屏控制装置。在本实施例中,上述触屏控制装置应用于具有触控屏的电子设备中。
请参考图11。图11为本申请实施例中一种触屏控制装置的结构示意图。如图11所示,触屏控制装置1100包括获取模块1101、参数确定模块1102、定位模块1103和动作模块1104。
获取模块1101用于获取用户对触控屏的第一操作,获取用户在所述第一操作之前对电子设备的历史操作,以及获取用户对电子设备的第二操作。
参数确定模块1102用于根据第一操作在触控屏上的第一位置确定第一参数,根据历史操作确定第二参数,以及根据第二操作确定第三参数。
定位模块1103用于根据第一参数、第二参数和第三参数,确定触控屏上的目标位置,其中,目标位置不同于第一操作在所述触控屏上的第一位置。
动作模块1104用于在目标位置执行预设动作。
在一种实施方式中,第一参数包含第一位置至触控屏上显示的至少一个对象的距离。
在一种实施方式中,参数确定模块1102还用于:确定触控屏上包含第一位置的第一区域;确定触控屏上显示的多个对象中每个对象对应的第二区域;根据第一区域和各第二区域,从多个对象中选择至少一个对象;以及根据所选择的至少一个对象的位置和第一位置,确定第一参数。
在一种实施方式中,历史操作包含用户对触控屏上显示的至少一个对象的至少一个操作,而且参数确定模块1102还用于:获得至少一个操作对至少一个对象的操作顺序;以及根据操作顺序,确定第二参数。
在一种实施方式中,第二操作为对电子设备的倾斜操作,且第三参数表征倾斜操作中电子设备的倾斜角度。
在一种实施方式中,定位模块1103还用于:根据第一参数、第二参数和第三参数,确定触控屏上的目标对象,其中,目标对象显示于触控屏上的目标位置。
在一种实施方式中,定位模块1103还用于:将输入参数输入预测模型,得到预估位置,其中,输入参数包括第一参数、第二参数和第三参数;以及将预估位置确定为目标位置。
在一种实施方式中,定位模块1103还用于:在获取第二操作之前,将输入参数输入预测模型,得到预估位置,其中,输入参数包括第一参数和第二参数;根据第三参数调整预估位置;以及将调整后的预估位置确定为目标位置。
在一种实施方式中,定位模块1103还用于:将输入参数输入预测模型,得到预估位置,其中,输入参数包括第一参数、第二参数和第三参数;获取用户对电子设备的第三操作;根据第三操作,确定第四参数;根据第四参数调整预估位置;以及将调整后的预估位置确定为目标位置。
在一种实施方式中,第二操作和第三操作为相同类型的操作。
在一种实施方式中,输入参数还包括第五参数,而且,获取模块1101还用于获取所述电子设备的应用场景信息,参数获取模块1102还用于根据应用场景信息确定第五参数。
在一种实施方式中,预测模型为已训练的神经网络模型,而且神经网络模型的训练样本包含预测模型在电子设备和/或其他同型号电子设备上运行时的历史输入和历史输出。
在一种实施方式中,在将输入参数输入预测模型之前,定位模块1103还用于:使用门控循环单元层、长短时记忆层和循环神经网络层中的至少一个处理第二参数。
在一种实施方式中,触屏控制装置还包括显示模块,用于在预估位置或目标位置显示指示标记。
在一种实施方式中,定位模块1103还用于:将输入参数输入预测模型,得到预估对象,其中,预估对象位于触控屏的预估位置。
在一种实施方式中,动作模块1104还用于:响应于用户的确认操作,在目标位置执行第一动作;或响应于用户的取消操作,在目标位置执行第二动作。
在一种实施方式中,第一位置与参考位置之间的距离小于目标位置与参考位置之间的距离,且参考位置位于触控屏靠近用户一侧的边缘。
通过本申请实施例提供的触屏控制装置,可以获得与前述触屏控制方法类似的技术效果,具体请参考前述方法实施例,这里不再赘述。
本申请实施例的第三方面提供了一种电子设备,包括触控屏、处理器以及存储器。其中,存储器存储有指令,当指令被处理器运行时,电子设备执行前述实施例中的任一触屏控制方法。
本申请实施例的第四方面提供了一种非暂态计算机可读存储介质。该存储介质存储有指令,当指令被处理器运行时执行前述实施例中的任一触屏控制方法。
所述计算机可读存储介质包含程序命令、数据文件、数据结构等、或它们的组合。被记录在计算机可读存储介质中的程序可被设计或被配置以实现本发明的方法。计算机可读存储介质包括用于存储并执行程序命令的硬件系统。硬件系统的示例有磁介质(诸如硬盘、软盘、磁带)、光介质(诸如CD-ROM和DVD)、磁光介质(诸如软光盘、ROM、RAM、闪存等)。程序包括由编译器编译的汇编语言代码或机器代码和由解释器解释的更高级语言代码。硬件系统可利用至少一个软件模块来实施以符合本发明。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性的描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以针对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (14)
1.一种触屏控制方法,应用于具有触控屏的电子设备,其特征在于,所述方法包括:
获取用户对所述触控屏的第一操作;
根据所述第一操作在所述触控屏上的第一位置,确定第一参数;
获取所述用户在所述第一操作之前对所述电子设备的历史操作;
根据所述历史操作,确定第二参数;
获取所述用户对所述电子设备的第二操作;
根据所述第二操作,确定第三参数;
根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,其中,所述目标位置不同于所述第一操作在所述触控屏上的第一位置;以及
在所述目标位置执行预设动作;
其中,根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置的步骤包括:
将输入参数输入预测模型,得到预估位置,其中,所述输入参数包括所述第一参数、所述第二参数和所述第三参数;以及将所述预估位置直接确定为所述目标位置;或者,
将输入参数输入预测模型,得到预估位置,其中,所述输入参数至少包括所述第一参数和所述第二参数;以及对所述预估位置进行调整以作为所述目标位置。
2.根据权利要求1所述的触屏控制方法,其特征在于,所述第一参数包含所述第一位置至所述触控屏上显示的至少一个对象的距离。
3.根据权利要求2所述的触屏控制方法,其特征在于,根据所述第一操作在所述触控屏上的第一位置确定第一参数,包括:
确定所述触控屏上包含所述第一位置的第一区域;
确定所述触控屏上显示的多个对象中每个对象对应的第二区域;
根据所述第一区域和各第二区域,从所述多个对象中选择所述至少一个对象;以及
根据所选择的至少一个对象的位置和所述第一位置,确定所述第一参数。
4.根据权利要求1所述的触屏控制方法,其特征在于,所述历史操作包含所述用户对所述触控屏上显示的至少一个对象的至少一个操作,而且
根据所述历史操作确定第二参数,包括:
获得所述至少一个操作对所述至少一个对象的操作顺序;以及
根据所述操作顺序,确定所述第二参数。
5.根据权利要求1所述的触屏控制方法,其特征在于,所述第二操作为对所述电子设备的倾斜操作,且所述第三参数表征所述倾斜操作中所述电子设备的倾斜角度。
6.根据权利要求1所述的触屏控制方法,其特征在于,根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,包括:
根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标对象,其中,所述目标对象显示于所述触控屏上的所述目标位置。
7.根据权利要求1所述的触屏控制方法,其特征在于,根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,包括:
在获取所述第二操作之前,将所述输入参数输入预测模型,得到所述预估位置,其中,所述输入参数包括所述第一参数和所述第二参数;
根据所述第三参数调整所述预估位置;以及
将调整后的所述预估位置确定为所述目标位置。
8.根据权利要求1所述的触屏控制方法,其特征在于,根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,包括:
将所述输入参数输入预测模型,得到所述预估位置,其中,所述输入参数包括所述第一参数、所述第二参数和所述第三参数;
获取所述用户对所述电子设备的第三操作;
根据所述第三操作,确定第四参数;
根据所述第四参数调整所述预估位置;以及
将调整后的所述预估位置确定为所述目标位置。
9.根据权利要求7或8所述的触屏控制方法,其特征在于,所述输入参数还包括第五参数,且所述方法还包括:
获取所述电子设备的应用场景信息;以及
根据所述应用场景信息,确定所述第五参数。
10.根据权利要求1所述的触屏控制方法,其特征在于,在所述目标位置执行预设动作,包括:
响应于所述用户的确认操作,在所述目标位置执行第一动作;或,
响应于所述用户的取消操作,在所述目标位置执行第二动作。
11.根据权利要求1所述的触屏控制方法,其特征在于,所述第一位置与参考位置之间的距离小于所述目标位置与参考位置之间的距离,且所述参考位置位于所述触控屏靠近所述用户一侧的边缘。
12.一种触屏控制装置,应用于具有触控屏的电子设备,其特征在于,所述装置包括:
获取模块,用于获取用户对所述触控屏的第一操作,获取用户在所述第一操作之前对所述电子设备的历史操作,以及获取用户对所述电子设备的第二操作;
参数确定模块,用于根据所述第一操作在所述触控屏上的第一位置确定第一参数,根据所述历史操作确定第二参数,以及根据所述第二操作确定第三参数;
定位模块,用于根据所述第一参数、所述第二参数和所述第三参数,确定触控屏上的目标位置,其中,所述目标位置不同于所述第一操作在所述触控屏上的第一位置;以及
动作模块,用于在所述目标位置执行预设动作;
其中,所述定位模块用于:
将输入参数输入预测模型,得到预估位置,其中,所述输入参数包括所述第一参数、所述第二参数和所述第三参数;以及将所述预估位置直接确定为所述目标位置;或者,
将输入参数输入预测模型,得到预估位置,其中,所述输入参数至少包括所述第一参数和所述第二参数;以及对所述预估位置进行调整以作为所述目标位置。
13.一种电子设备,其特征在于,包括触控屏、处理器以及存储器,其中所述存储器存储有指令,当所述指令被所述处理器运行时,所述电子设备执行根据权利要求1至8、10至11中任一项所述的触屏控制方法。
14.一种非暂态计算机可读存储介质,其特征在于,所述存储介质存储有指令,当所述指令被处理器运行时,执行根据权利要求1至8、10至11中任一项所述的触屏控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011637981.2A CN112799530B (zh) | 2020-12-31 | 2020-12-31 | 一种触屏控制方法和装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011637981.2A CN112799530B (zh) | 2020-12-31 | 2020-12-31 | 一种触屏控制方法和装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112799530A CN112799530A (zh) | 2021-05-14 |
CN112799530B true CN112799530B (zh) | 2024-02-13 |
Family
ID=75808890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011637981.2A Active CN112799530B (zh) | 2020-12-31 | 2020-12-31 | 一种触屏控制方法和装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112799530B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113961132B (zh) * | 2021-09-23 | 2023-07-25 | 北京百度网讯科技有限公司 | 交互处理方法、装置、电子设备及存储介质 |
CN117795459A (zh) * | 2021-11-16 | 2024-03-29 | 华为技术有限公司 | 生成触觉输出的方法和用于使用该方法生成触觉输出的电子装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104007928A (zh) * | 2014-05-26 | 2014-08-27 | 联想(北京)有限公司 | 信息处理方法及电子设备 |
CN104750400A (zh) * | 2013-12-27 | 2015-07-01 | 华为技术有限公司 | 终端界面的优化操作方法和装置 |
CN107493389A (zh) * | 2017-08-29 | 2017-12-19 | 深圳市金立通信设备有限公司 | 单手模式实现方法、终端及计算机可读介质 |
CN108304126A (zh) * | 2017-12-20 | 2018-07-20 | 努比亚技术有限公司 | 一种消息通知显示方法、终端及计算机可读存储介质 |
CN109697010A (zh) * | 2018-11-22 | 2019-04-30 | 努比亚技术有限公司 | 一种悬浮窗位置控制方法、终端及计算机可读存储介质 |
CN109918167A (zh) * | 2019-03-15 | 2019-06-21 | Oppo广东移动通信有限公司 | 操作图标的放置方法、装置、终端设备、计算机可读存储介质 |
WO2019237955A1 (zh) * | 2018-06-12 | 2019-12-19 | 奇酷互联网络科技(深圳)有限公司 | 应用图标的显示方法、装置及触屏设备 |
CN110851048A (zh) * | 2019-09-30 | 2020-02-28 | 华为技术有限公司 | 一种调整控件的方法和电子设备 |
CN111338528A (zh) * | 2020-02-25 | 2020-06-26 | 维沃移动通信有限公司 | 一种操作响应方法及电子设备 |
CN112083843A (zh) * | 2020-09-02 | 2020-12-15 | 珠海格力电器股份有限公司 | 应用图标的控制方法及装置 |
-
2020
- 2020-12-31 CN CN202011637981.2A patent/CN112799530B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750400A (zh) * | 2013-12-27 | 2015-07-01 | 华为技术有限公司 | 终端界面的优化操作方法和装置 |
CN104007928A (zh) * | 2014-05-26 | 2014-08-27 | 联想(北京)有限公司 | 信息处理方法及电子设备 |
CN107493389A (zh) * | 2017-08-29 | 2017-12-19 | 深圳市金立通信设备有限公司 | 单手模式实现方法、终端及计算机可读介质 |
CN108304126A (zh) * | 2017-12-20 | 2018-07-20 | 努比亚技术有限公司 | 一种消息通知显示方法、终端及计算机可读存储介质 |
WO2019237955A1 (zh) * | 2018-06-12 | 2019-12-19 | 奇酷互联网络科技(深圳)有限公司 | 应用图标的显示方法、装置及触屏设备 |
CN109697010A (zh) * | 2018-11-22 | 2019-04-30 | 努比亚技术有限公司 | 一种悬浮窗位置控制方法、终端及计算机可读存储介质 |
CN109918167A (zh) * | 2019-03-15 | 2019-06-21 | Oppo广东移动通信有限公司 | 操作图标的放置方法、装置、终端设备、计算机可读存储介质 |
CN110851048A (zh) * | 2019-09-30 | 2020-02-28 | 华为技术有限公司 | 一种调整控件的方法和电子设备 |
CN111338528A (zh) * | 2020-02-25 | 2020-06-26 | 维沃移动通信有限公司 | 一种操作响应方法及电子设备 |
CN112083843A (zh) * | 2020-09-02 | 2020-12-15 | 珠海格力电器股份有限公司 | 应用图标的控制方法及装置 |
Non-Patent Citations (2)
Title |
---|
Design and Implementation for Tujia Brocade Cultural Coordinate Panorama Display System Based on Touch Screen;Zhao, G et al.;IEEE;全文 * |
面向大屏幕手机的单手目标选择方法;辛义忠;李洋;李岩;姜欣慧;;计算机辅助设计与图形学学报(10);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112799530A (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11416142B2 (en) | Dynamic soft keyboard | |
US10261685B2 (en) | Multi-task machine learning for predicted touch interpretations | |
US11181988B1 (en) | Incorporating user feedback into text prediction models via joint reward planning | |
JP5506375B2 (ja) | 情報処理装置及びその制御方法 | |
US8490013B2 (en) | Method and apparatus for single touch zoom using spiral rotation | |
US8570283B2 (en) | Information processing apparatus, information processing method, and program | |
US9965039B2 (en) | Device and method for displaying user interface of virtual input device based on motion recognition | |
CN112799530B (zh) | 一种触屏控制方法和装置、电子设备和存储介质 | |
US20090243998A1 (en) | Apparatus, method and computer program product for providing an input gesture indicator | |
US20100315266A1 (en) | Predictive interfaces with usability constraints | |
JP6252409B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
KR20160058117A (ko) | 미래 사용자 입력을 예측한 상태 변화에 관한 정보를 사용하는 사용자 입력에 대한 반응을 제공하는 시스템 및 방법 | |
CN107544684A (zh) | 一种候选词显示方法及装置 | |
US20140313153A1 (en) | Electronic device, operation control method and recording medium | |
CN103543825B (zh) | 摄像机光标系统 | |
CN115668117A (zh) | 用于查看和细化电子设备的当前位置的用户界面 | |
CN113961106A (zh) | 预测控制方法、输入系统及计算机可读取记录媒体 | |
US20140035876A1 (en) | Command of a Computing Device | |
CN111796980A (zh) | 数据处理方法、装置、电子设备和存储介质 | |
KR20210045354A (ko) | 터치스크린 상의 터치의 신뢰성을 향상시키기 위한 모바일 디바이스 및 방법 | |
JP2010211697A (ja) | タッチパネル入力方法、タッチパネル入力装置及びタッチパネル入力プログラム | |
KR101669077B1 (ko) | 터치 스크린을 갖는 이동 단말기에서 터치 처리 장치 및 방법 | |
JP6409948B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
WO2022127063A1 (zh) | 输入方法、装置和用于输入的装置 | |
CN110858120A (zh) | 输入键盘推荐方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |