CN117492632A - 触控响应方法、装置及设备 - Google Patents

触控响应方法、装置及设备 Download PDF

Info

Publication number
CN117492632A
CN117492632A CN202311455233.6A CN202311455233A CN117492632A CN 117492632 A CN117492632 A CN 117492632A CN 202311455233 A CN202311455233 A CN 202311455233A CN 117492632 A CN117492632 A CN 117492632A
Authority
CN
China
Prior art keywords
touch
scene
filtering parameter
parameter value
filtering
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
CN202311455233.6A
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.)
Realme Mobile Telecommunications Shenzhen Co Ltd
Original Assignee
Realme Mobile Telecommunications Shenzhen 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 Realme Mobile Telecommunications Shenzhen Co Ltd filed Critical Realme Mobile Telecommunications Shenzhen Co Ltd
Priority to CN202311455233.6A priority Critical patent/CN117492632A/zh
Publication of CN117492632A publication Critical patent/CN117492632A/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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment

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

本申请提供了一种触控响应方法、装置及设备,属于触控响应领域。方法包括:当检测到第一触控操作时,识别第一触控操作所对应的触控场景;获取触控场景对应的触控滤波参数值,触控滤波参数值包括触点滤波参数值和轨迹滤波参数值中的至少一项;基于触控滤波参数值对第一触控操作进行滤波处理,得到第二触控操作;响应第二触控操作。通过设置不同的触控场景对应不同的触控滤波参数值,从而能够获取到适配于当前触控场景的触控滤波参数值,也即获取到的触控滤波参数值更为合理,这样就可以提高基于该触控滤波参数值对第一触控操作进行滤波处理的效果,进而提高了响应得到的第二触控操作的效果。

Description

触控响应方法、装置及设备
技术领域
本申请涉及触摸屏技术领域,特别涉及一种触控响应方法、装置及设备。
背景技术
目前,手机、智能手表或者平板电脑等终端都具有触摸屏,用户可以在触摸屏上进行触控操作,以向终端触发指令,而终端通过响应用户的触控操作,以响应用户触发的指令。例如,用户使用手机浏览短视频时,用户通过在触摸屏上进行滑动操作,以向手机触发切换指令;而终端基于用户触发的滑动操作,切换用户当前浏览的短视频。
发明内容
本申请实施例提供了一种触控响应方法、装置及设备,能够提高响应触控操作的效果。所述技术方案如下:
一方面,提供了一种触控响应方法,所述方法包括:
当检测到第一触控操作时,识别所述第一触控操作所对应的触控场景;
获取所述触控场景对应的触控滤波参数值,所述触控滤波参数值包括触点滤波参数值和轨迹滤波参数值中的至少一项,所述触点滤波参数值用于对所述第一触控操作的触点进行滤波,所述轨迹滤波参数值用于对所述第一触控操作的轨迹进行滤波;
基于所述触控滤波参数值对所述第一触控操作进行滤波处理,得到第二触控操作;
响应所述第二触控操作。
另一方面,提供了一种触控响应装置,所述装置包括:
识别模块,用于当检测到第一触控操作时,识别所述第一触控操作所对应的触控场景;
第一获取模块,用于获取所述触控场景对应的触控滤波参数值,所述触控滤波参数值包括触点滤波参数值和轨迹滤波参数值中的至少一项,所述触点滤波参数值用于对所述第一触控操作的触点进行滤波,所述轨迹滤波参数值用于对所述第一触控操作的轨迹进行滤波;
滤波模块,用于基于所述触控滤波参数值对所述第一触控操作进行滤波处理,得到第二触控操作;
响应模块,用于响应所述第二触控操作。
另一方面,提供了一种终端,所述终端包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述至少一条程序代码由所述一个或多个处理器加载并执行,以实现如上述所述的触控响应方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现上述所述的触控响应方法。
另一方面,提供了一种计算机程序产品,所述计算机程序产品存储有至少一条程序代码,所述至少一条程序代码用于被处理器执行,以实现上述所述的触控响应方法。
在本申请实施例中,通过设置不同的触控场景对应不同的触控滤波参数值,从而能够获取到适配于当前触控场景的触控滤波参数值,也即获取到的触控滤波参数值更为合理,这样就可以提高基于该触控滤波参数值对第一触控操作进行滤波处理的效果,进而提高了响应得到的第二触控操作的效果。
附图说明
图1示出了本申请一个示例性实施例示出的触控响应方法的流程图;
图2示出了本申请一个示例性实施例示出的触控响应方法的流程图;
图3示出了本申请一个示例性实施例示出的相关技术中的触控响应方法的流程图;
图4示出了本申请一个示例性实施例示出的触控响应方法的流程图;
图5示出了本申请一个示例性实施例示出的触控响应方法的流程图;
图6示出了本申请一个示例性实施例示出的触控响应方法的流程图;
图7示出了本申请一个示例性实施例示出的触控响应方法的流程图;
图8示出了本申请一个示例性实施例示出的触控响应装置的框图;
图9示出了本申请一个示例性实施例示出的终端的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的触控场景、第一触控操作、触控指令、第一历史触控数据、第二历史触控数据、触控滤波参数值、场景图像和滑动距离阈值等都是在充分授权时获取的。
请参考图1,其示出了本申请一个示例性实施例示出的触控响应方法的流程图。该方法的执行主体为终端,该方法包括:
步骤101:当检测到第一触控操作时,识别第一触控操作所对应的触控场景。
第一触控操作可以为任一作用于终端触摸屏的触控操作;例如,第一触控操作可以为点击操作或者滑动操作。触控场景可以为游戏场景和日常场景,游戏场景是指当前前台运行的应用程序为游戏应用程序的场景;日常场景为除游戏场景以外的其他场景。日常场景又分为全面屏手势场景和非全面屏手势场景,非全面屏手势场景是指通过点击虚拟按键向终端触发指令的场景,也即非全面屏手势场景中的第一触控操作往往是点击操作;全面屏手势场景是指通过触控操作向终端触发指令的场景,也即全面屏手势场景中的第一触控操作可以是点击操作,也可以是滑动操作。
在一些实施例中,终端通过前台运行的应用程序来识别第一触控操作所对应的触控场景;该过程可以为:在当前前台运行的应用程序为游戏应用程序的情况下,终端确定第一触控操作所对应的触控场景为游戏场景;在当前前台运行的应用程序为非游戏应用程序的情况下,终端确定第一触控操作所对应的触控场景为日常场景。另外,日常场景还分为全面屏手势场景和非全面屏手势场景;相应的,终端确定出第一触控操作所对应的触控场景为日常场景之后,确定终端是否开启全面屏手势;在终端已开启全面屏手势的情况下,确定日常场景为全面屏手势场景,也即第一触控操作所对应的触控场景为全面屏手势场景;在终端未开启全面屏手势的情况下,确定日常场景为非全面屏手势场景,也即第一触控操作所对应的触控场景为非全面屏手势场景,该过程可以参考图2。
在本申请实施例中,通过以上识别当前前台运行的应用程序来识别第一触控操作所对应的触控场景,操作简单,从而能够提高识别触控场景的效率。
在另一些实施例中,终端还可以通过场景识别模型来识别第一触控操作所对应的触控场景;该过程可以为:对当前显示界面进行截图得到界面截图,将界面截图输入场景识别模型中输出第一触控操作所对应的触控场景。由于场景识别模型是基于大量样本数据训练得到的,因此,场景识别模型具有较高的识别准确性,也即通过场景识别模型识别第一触控操作所对应的触控场景能够提高识别触控场景的准确性。
在一些实施例中,当检测到第一触控操作时,终端当场识别第一触控操作所对应的触控场景;在另一些实施例中,终端每检测到界面发生变化时,就识别当前界面所对应的触控场景,然后更新已存储的当前界面所对应的触控场景;相应的,在本步骤中当检测到第一触控操作时,终端获取已存储的当前界面所对应的触控场景。
步骤102:获取触控场景对应的触控滤波参数值,触控滤波参数值包括触点滤波参数值和轨迹滤波参数值中的至少一项,触点滤波参数值用于对第一触控操作的触点进行滤波,轨迹滤波参数值用于对第一触控操作的轨迹进行滤波。
触点滤波参数值表示触点距离阈值;在第一触控操作的边缘触点与中心触点之间的距离大于触点滤波参数值表示的触点距离阈值的情况下,第一触控操作即为滑动操作,在第一触控操作的边缘触点与中心触点之间的距离不大于触点滤波参数值表示的触点距离阈值的情况下,第一触控操作即为点击操作,也即触点滤波参数值用于衡量一个触控操作是一个点操作(单击操作)还是线操作(滑动操作)。另外,触点滤波参数值也可以被称为锁点参数值。轨迹滤波参数值可以为平滑处理参数值,且轨迹滤波参数值用于对滑动操作的滑动轨迹进行平滑滤波处理。另外,轨迹滤波参数值也可以被称为跟手性参数值或者直接被称为滤波参数值。
在本申请实施例中,不同的触控场景对应不同值的触控滤波参数值。通过设置不同的触控场景对应不同的触控滤波参数值,从而能够获取到适配于当前的触控场景的触控滤波参数值,提高了获取到的触控滤波参数值的准确性。
另外,不同的触控场景还可以对应不同的触控滤波参数;例如,触控场景为游戏场景时,由于游戏场景不仅有点击操作还有滑动操作;例如,用户可以通过点击操作选择装备,用户可以通过滑动操作控制虚拟对象移动;因此,游戏场景对应的触控滤波参数包括触点滤波参数和轨迹滤波参数。触控场景为非全面屏手势场景时,由于非全面屏手势场景下用户往往通过点击虚拟按键以向终端触发指令,也即非全面屏手势场景涉及到的触控操作为点击操作,则非全面屏手势场景对应的触控滤波参数为触点滤波参数。触控场景为全面屏手势场景时,由于全面屏手势场景下不仅有点击操作还有滑动操作;例如,用户在全面屏手势场景下浏览短视频,可以通过点击操作进行点赞操作,用户可以通过滑动操作切换当前浏览的短视频;因此,全面屏手势场景对应的触控滤波参数包括触点滤波参数和轨迹滤波参数。
步骤103:基于触控滤波参数值对第一触控操作进行滤波处理,得到第二触控操作。
在一些实施例中,触控滤波参数值包括触点滤波参数值;在第一触控操作的边缘触点与中心触点之间的距离小于触点滤波参数值表示的触点距离阈值的情况下,对第一触控操作进行滤波处理得到的第二触控操作为点击操作;在第一触控操作的边缘触点与中心触点之间的距离不小于触点滤波参数值表示的触点距离阈值的情况下,对第一触控操作进行滤波处理得到的第二触控操作为滑动操作。另外,在对第一触控操作进行滤波处理之前,终端先对第一触控操作进行跟踪,在确定第一触控操作的触点被抬起(也即手指抬起)时,此时获取到完整的第一触控操作,然后对第一触控操作进行滤波处理得到第二触控操作。
在另一些实施例中,触控滤波参数值包括轨迹滤波参数值,轨迹滤波参数值为平滑处理参数值;基于轨迹滤波参数值(平滑处理参数值)对第一触控操作的滑动轨迹进行平滑处理得到第二触控操作。
在本申请实施例中,对于点击操作,通过触点滤波参数值对点击触控操作进行滤波处理能够准确识别点击操作;对于滑动操作,通过轨迹滤波参数值对滑动触控操作进行滤波能够提高滑动轨迹的平滑度。
步骤104:响应第二触控操作。
在一些实施例中,第二触控操作为点击操作,基于触控场景和点击操作的触点位置,确定点击操作对应的第一触控指令,执行第一触控指令以响应第二触控操作;例如,第二触控操作为点击返回按键,则执行返回指令。在另一些实施例中,第二触控操作为滑动操作,基于触控场景确定滑动操作对应的第二触控指令,执行第二触控指令以响应第二触控操作;例如,触控场景为全面屏手势场景且用户正在浏览短视频,用户触发的第二触控操作以向终端触发切换指令,则终端基于切换指令切换当前播放的短视频。
请参考图3,在相关技术并不区分场景,也即游戏应用端设定固定的触点滤波参数(锁点参数)和轨迹滤波参数(跟手性参数),将触点滤波参数和轨迹滤波参数通过系统框架和驱动端传输至触控服务,由触控服务基于触点滤波参数和轨迹滤波参数对第一触控操作进行滤波处理。
在本申请实施例中,通过设置不同的触控场景对应不同的触控滤波参数值,从而能够获取到适配于当前触控场景的触控滤波参数值,也即获取到的触控滤波参数值更为合理,这样就可以提高基于该触控滤波参数值对第一触控操作进行滤波处理的效果,进而提高了响应得到的第二触控操作的效果。
请参考图4,其示出了本申请一个示例性实施例示出的触控响应方法的流程图。该方法包括:
步骤401:对于预设的多个触控场景中的任一触控场景,终端获取当前登录账号在该触控场景下的第一历史触控数据。
多个触控场景可以包括游戏场景和日常场景;日常场景又可以分为非全面屏手势场景和全面屏手势场景;因此,多个触控场景可以包括游戏场景、非全面屏手势场景和全面屏手势场景。在一些实施例中,终端可以获取当前登录账号在该触控场景下的所有第一历史触控数据,从而丰富了获取到的第一历史触控数据。在另一些实施例中,终端并不获取所有第一历史触控数据,而是获取最新产生的第一历史触控数据,也即终端获取当前登录账号在该触控场景下离当前时间最近的预设时长内产生的第一触控数据,从而获取到的第一历史触控数据能够反映用户最近的喜好。
在一些实施例中,在当前登录账号没有第一历史触控数据时,并不执行步骤401-403,而是从服务器中获取场景标识和触控滤波参数值的对应关系。对于第一种实现方式,终端从服务器中获取的取场景标识和触控滤波参数值的对应关系可以是通用的对应关系,也即所有用户都是用这个场景标识和触控滤波参数值的对应关系。对于第二种实现方式,终端从服务器中获取的场景标识和触控滤波参数值的对应关系是适配于该用户的,相应的,终端从服务器中获取场景标识和触控滤波参数值的对应关系的步骤可以为:终端向服务器发送获取请求,该获取请求携带当前登录账号;服务器接收该获取请求,基于该当前登录账号的账号信息,从多个账号信息中确定与该账号信息匹配的目标账号信息,获取目标账号信息对应的场景标识和触控滤波参数值的对应关系,向终端发送目标账号信息对应的场景标识和触控滤波参数值的对应关系;终端接收服务器发送的场景标识和触控滤波参数值的对应关系,然后执行步骤404,目标账号信息对应的场景标识和触控滤波参数值的对应关系为基于目标账号的历史触控数据确定出的场景标识和触控滤波参数值的对应关系。
在本申请实施例中,即时当前登录账号冷启动(没有历史触控数据)的情况下,也可以从服务器中获取适配于该当前登录账号的场景标识和触控滤波参数值的对应关系,丰富了应用场景。
步骤402:终端基于第一历史触控数据,确定当前登录账号在该触控场景下的触控滤波参数值。
在一些实施例中,终端基于第一历史触控数据中的点击操作对应的触控数据确定触控滤波参数值中的触点滤波参数值,基于第一历史触控数据中的滑动操作对应的触控数据确定触控滤波参数值中的轨迹滤波参数值。
第一历史触控数据中包括多个点击操作对应的触控数据,对于任一点击操作,该点击操作对应的触控数据包括触控区域的位置坐标,终端基于该点击操作对应的触控区域的位置坐标确定触控区域的中心触点到边缘触点之间的距离,基于多个点击操作对应的中心触点到边缘触点之间的距离,确定平均距离,基于平均距离确定触点滤波参数值;例如,终端将平均距离作为触点滤波参数值;或者终端将平均距离上下浮动第一预设距离得到触点滤波参数值,第一预设距离可以根据需要进行设置并更改,在本申请实施例中,对第一预设距离不作具体限定。
第一历史触控数据中包括多个滑动操作对应的触控数据,对于任一滑动操作,该滑动操作对应的触控数据包括滑动轨迹,终端确定该滑动操作的滑动轨迹的平滑度,确定多个滑动操作对应的平滑度的平均平滑度,基于平均平滑度确定轨迹滤波参数值;例如,终端确定预设平滑度与该平均平滑度的比值得到轨迹滤波参数值。
例如,请继续参考图2,终端的微控制单元(Microcontroller Unit,MCU)用于对用户的每一次触控的触控数据进行记录,也即MCU中存储有第一历史触控数据,终端从MCU中获取第一历史触控数据,通过触控数据算法库,基于第一历史触控数据确定当前登录账号在该触控场景下的触控滤波参数值。终端中包括触控坐标计算模块,该触控坐标计算模块用于计算触控操作的位置坐标和对触控操作的滤波处理等,终端确定出该对应关系后,将该对应关系存储至或者更新至触控坐标计算模块中。终端中还包括驱动端(kernel input)和系统框架(android input),触控坐标计算模块通过驱动层和系统层,将该对应关系传输至非全面屏手势场景的应用端和全面屏手势场景的应用端;例如,终端将触点滤波参数传输至非全面屏手势场景的应用端,将触点滤波参数和轨迹滤波参数传输至全面屏手势场景的应用端。
在本申请实施例中,在日常场景下,能够在用户的日常使用终端时候触摸屏幕的时候,触控采集到原始数据,对此进行分析记录,然后调试触点滤波参数(锁点参数)以及轨迹滤波参数(滤波参数),从而让用户达到最佳的点击(基于锁点参数进行滤波)和跟手性体验(基于轨迹滤波参数进行滤波)。
步骤403:终端将触控场景的场景标识和触控滤波参数值关联存储在场景标识和触控滤波参数值的对应关系中。
终端基于以上方法确定出多个触控场景对应的触控滤波参数值,将多个触控场景的场景标识和对应的触控滤波参数值关联存储在场景标识和触控滤波参数值的对应关系中。
在一些实施例中,步骤401-403可以仅执行一次,后续当检测到第一触控操作时,直接404-407即可。在另一些实施例中,终端每隔预设周期执行一次步骤401-403,从而实现及时更新触控滤波参数值,使得触控滤波参数值能够保持最新,提高了触控滤波参数值的准确性。
步骤404:当检测到第一触控操作时,终端识别第一触控操作所对应的触控场景。
在一些实施例中,本步骤与步骤101相同,在此不再赘述。
步骤405:终端基于触控场景的场景标识,从已存储的场景标识和触控滤波参数值的对应关系中获取触控场景对应的触控滤波参数值。
例如,请继续参见图2,在当前的触控场景为日常场景的情况下,非全面屏手势场景的应用端或者全面屏手势场景的应用端,基于触控场景的场景标识,才能够已存储的场景标识和触控滤波参数值的对应关系中获取触控场景对应的触控滤波参数值。
步骤406:终端基于触控滤波参数值对第一触控操作进行滤波处理,得到第二触控操作。
在一些实施例中,本步骤与步骤103相同,在此不再赘述。
步骤407:终端响应第二触控操作。
在一些实施例中,本步骤与步骤104相同,在此不再赘述。
例如,请继续参考图2,当检测到第一触控操作时,终端通过触控坐标计算模块计算出第一触控操作的位置坐标,将该位置坐标传输至非全面屏手势场景的应用端或者全面屏手势场景的应用端,由非全面屏手势场景的应用端或者全面屏手势场景的应用端基于该位置坐标和触控滤波参数,对第一触控操作进行滤波处理得到第二触控操作,然后响应第二触控操作。
在另一些实施例中,触控坐标计算模块并不向非全面屏手势场景的应用端或者全面屏手势场景的应用端,同步触控场景的场景标识和触控滤波参数值的对应关系;当接收到第一触控操作时,触控坐标计算模块基于触控场景的场景标识,从该对应关系中确定该触控场景对应的触控滤波参数值,基于触控滤波参数值对第一触控操作进行滤波处理得到第二触控操作。
在本申请实施例中,终端事先基于用户的历史触控数据确定出用户在多个触控场景下的触控滤波参数值,这样确定出的触控滤波参数值更适配于用户,从而基于第一触控操作所对应的触控场景,获取到的触控滤波参数值不仅适配于当前触控场景,还适配于用户,提高了获取到的触控滤波参数值的准确性,从而提高基于该触控滤波参数值对第一触控操作进行滤波处理的效果,进而提高了响应得到的第二触控操作的效果。
请参考图5,其示出了本申请一个示例性实施例示出的触控响应方法的流程图。该方法包括:
步骤501:对于游戏场景下预设的多个区域类型中的任一区域类型,终端获取当前登录账号在该区域类型对应区域触发触控操作的第二历史触控数据。
终端中记录用户历史触发的触控操作的历史触控数据,并且历史触控数据中包括用户触发的触控区域的区域类型;对于任一区域类型,终端获取当前登录账号在该区域类型对应区域触发操作的第二历史触控数据。
步骤502:终端基于第二历史触控数据,确定当前登录账号在区域类型对应区域触发触控操作的触控滤波参数值。
在一些实施例中,终端基于第二历史触控数据中的点击操作对应的触控数据确定触控滤波参数值中的触点滤波参数值,基于第二历史触控数据中的滑动操作对应的触控数据确定触控滤波参数值中的轨迹滤波参数值。
第二历史触控数据中包括多个点击操作对应的触控数据,对于任一点击操作,该点击操作对应的触控数据包括触控区域的位置坐标,终端基于该点击操作对应的触控区域的位置坐标确定触控区域的中心触点到边缘触点之间的距离,基于多个点击操作对应的中心触点到边缘触点之间的距离,确定平均距离,基于平均距离确定触点滤波参数值;例如,终端将平均距离作为触点滤波参数值;或者终端将平均距离上下浮动第二预设距离得到触点滤波参数值,第二预设距离可以根据需要进行设置并更改,在本申请实施例中,对第二预设距离不作具体限定。
第二历史触控数据中包括多个滑动操作对应的触控数据,对于任一滑动操作,该滑动操作对应的触控数据包括滑动轨迹,终端确定该滑动操作的滑动轨迹的平滑度,确定多个滑动操作对应的平滑度的平均平滑度,基于平均平滑度确定轨迹滤波参数值;例如,终端确定预设平滑度与该平均平滑度的比值得到轨迹滤波参数值。
在本申请实施例中,在游戏场景下,终端根据图像识别当前用户的使用场景,这个时候是点击的场景、还是滑动的场景,从而调节我们的锁点和滤波参数,并对每个ID进行跟踪,从而解决用户的抬手抖动、点击不灵敏、滑动操作不跟手的体验问题。
步骤503:终端将游戏场景的场景标识、区域类型和触控滤波参数值关联存储在场景标识、区域类型和触控滤波参数值的对应关系中。
在一些实施例中,步骤501-503可以仅执行一次,后续当检测到第一触控操作时,直接504-507即可。在另一些实施例中,终端每隔预设周期执行一次步骤501-503,从而实现及时更新触控滤波参数值,使得触控滤波参数值能够保持最新,提高了触控滤波参数值的准确性。
步骤504:当检测到第一触控操作时,终端识别第一触控操作所对应的触控场景。
在一些实施例中,本步骤与步骤101相同,在此不再赘述。
步骤505:在触控场景为游戏场景的情况下,终端确定第一触控操作在游戏场景的触控区域的区域类型。
终端对游戏场景进行截图得到场景图像;通过图像识别模型,识别场景图像的核心图标;确定核心图标对应的区域类型。图像识别模型可以为目标检测模型,通过目标检测模型定位和识别核心图标从而确定出触控区域的区域类型。不同的核心图标对应不同的区域类型;例如,核心图标1对应区域类型1,核心图标2对应区域类型2。
步骤506:终端基于游戏场景的场景标识和区域类型,从已存储的场景标识、区域类型和触控滤波参数值的对应关系中获取游戏场景对应的触控滤波参数值。
例如,继续参考图2,终端识别出第一触控操作所对应的触控场景为游戏场景的情况下,对游戏截图进行场景识别,对场景进行区分,以识别是哪种类型的游戏场景,也即识别出游戏场景的区域类型。在一些实施例中,终端中的游戏应用端对游戏场景进行截图得到场景图像,将场景图像传输至游戏引擎,游戏引擎通过图像识别模型确定区域类型;游戏引擎将确定出的区域类型传输至驱动服务;驱动服务基于游戏场景的场景标识和区域类型,从已存储的场景标识、区域类型和触控滤波参数值的对应关系(触控算法库)中获取游戏场景对应的触控滤波参数值。其中,触控算法库负责触控操作的坐标计算和滤波处理;例如,当终端的MCU检测到第一触控操作时,触控算法库确定第一触控操作的位置坐标,将第一触控操作的位置坐标传输至驱动服务。
步骤507:终端基于触控滤波参数值对第一触控操作进行滤波处理,得到第二触控操作。
在一些实施例中,本步骤与步骤103相同,在此不再赘述。
步骤508:终端响应第二触控操作。
在一些实施例中,本步骤与步骤104相同,在此不再赘述。
例如,请参考图6,终端的游戏引擎进入游戏场景,然后对游戏场景进行截图得到场景图像,通过图像数据处理识别场景图像中的核心图标,基于核心图标对游戏场景的区域进行划分,从而实现设定划分区域,此时终端调用触控服务传入划分的区域,然后开启区域划分算法,通过区域划分算法识别核心图标,基于核心图标确定区域类型,当接收到第一触控操作(触控信号特效信息),对用户手指进行跟踪,基于该区域类型确定对应的触控滤波参数,当手指抬起时,基于触控滤波参数对第一触控操作进行滤波处理,然后响应得到的第二触控操作,结束。
在本申请实施例中,终端事先基于用户的历史触控数据确定出用户在游戏场景下不同区域类型对应的触控滤波参数值,这样确定出的触控滤波参数值更适配于用户以及当前的区域类型,从而基于第一触控操作所对应的游戏场景和触控区域的区域类型,获取到的触控滤波参数值不仅适配于用户,还适配于游戏场景下的区域类型,提高了获取到的触控滤波参数值的准确性,从而提高基于该触控滤波参数值对第一触控操作进行滤波处理的效果,进而提高了响应得到的第二触控操作的效果。
请参考图7,其示出了本申请一个示例性实施例示出的触控响应方法的流程图。该方法包括:
步骤701:终端获取当前登录账号在目标场景下的多个历史滑动操作。
目标场景可以为日常场景,日常场景为除游戏以外的其他场景;日常场景又可以分为全面屏手势场景和非全面屏手势场景,则目标场景可以为全面屏手势场景。例如,请继续参考图2,终端中存储UI滑动数据库,UI滑动数据库中存储当前登录账号在目标场景下的多个历史滑动操作,终端从UI滑动数据库中获取多个历史滑动操作。
步骤702:终端基于多个历史滑动操作的滑动距离,确定当前登录账号对应的滑动距离阈值。
终端基于多个历史滑动操作的滑动距离确定平均滑动距离,基于平均滑动距离确定滑动距离阈值;例如,终端将平均滑动距离作为滑动距离阈值;或者,终端将平均滑动距离上下浮动第三预设距离得到滑动距离阈值。第三预设距离可以根据需要进行设置并更改,在本申请实施例中,对第三预设距离不作具体限定。
在本申请实施例中,在全面屏手势场景下,终端记录用户的日常习惯的全面屏多任务的滑动距离,调试UI的适用在多任务的滑动距离,从而让每个用户都达到一个更好的跟手性体验。
步骤703:当检测到第一触控操作时,终端识别第一触控操作所对应的触控场景。
在一些实施例中,本步骤与步骤101相同,在此不再赘述。
步骤704:终端获取触控场景对应的触控滤波参数值,触控滤波参数值包括触点滤波参数值和轨迹滤波参数值中的至少一项,触点滤波参数值用于对第一触控操作的触点进行滤波,轨迹滤波参数值用于对第一触控操作的轨迹进行滤波。
在一些实施例中,本步骤与步骤102相同,在此不再赘述。或者,本步骤与步骤405相同,在此不再赘述。在另一些实施例中,终端识别出触控场景之后,确定触控场景为目标场景的情况下,才获取触控场景对应的触控滤波参数值。
步骤705:终端基于触控滤波参数值对第一触控操作进行滤波处理,得到第二触控操作。
在一些实施例中,本步骤与步骤102相同,在此不再赘述。
步骤706:在触控场景为目标场景且第二触控操作为滑动操作的情况下,终端获取当前登录账号对应的滑动距离阈值。
通过步骤701-702终端会获取到当前登录账号对应的滑动距离阈值,并存储当前登录账号对应的滑动距离阈值;在本步骤中终端直接获取已存储的当前登录账号对应的滑动距离阈值,然后执行步骤707。
步骤707:在滑动操作的滑动距离超过滑动距离阈值的情况下,终端响应滑动操作。
终端基于触控场景确定滑动操作对应的第二触控指令,执行第二触控指令以响应第二触控操作;例如,触控场景为全面屏手势场景且用户正在浏览短视频,用户触发的第二触控操作以向终端触发切换指令,则终端基于切换指令切换当前播放的短视频。
在一些实施例中,在滑动操作的滑动距离没有超过滑动距离阈值的情况下,终端不响应该滑动操作。另外,终端还可以显示提示信息,提示信息用于提示滑动距离阈值,以提示用户想要通过滑动操作向终端触发指令时,滑动距离要超过滑动距离阈值。
在本申请实施例中,终端不仅可以根据不同的用户设定触点滤波参数(锁点参数)和轨迹滤波参数(跟手性参数),还可以针对不同的场景进行识别调整全面屏情况下的滑动距离阈值,还可以识别到不同游戏的下的同一场景内根据不同的区域调节不同的定触点滤波参数(锁点参数)和轨迹滤波参数(跟手性参数),从而全面提升用户的触控体验。
请参考图8,其示出了本申请一个示例性实施例示出的触控响应装置的框图,该装置包括:
识别模块801,用于当检测到第一触控操作时,识别第一触控操作所对应的触控场景;
第一获取模块802,用于获取触控场景对应的触控滤波参数值,触控滤波参数值包括触点滤波参数值和轨迹滤波参数值中的至少一项,触点滤波参数值用于对第一触控操作的触点进行滤波,轨迹滤波参数值用于对第一触控操作的轨迹进行滤波;
滤波模块803,用于基于触控滤波参数值对第一触控操作进行滤波处理,得到第二触控操作;
响应模块804,用于响应第二触控操作。
在一些实施例中,第一获取模块802,用于基于触控场景的场景标识,从已存储的场景标识和触控滤波参数值的对应关系中获取触控场景对应的触控滤波参数值。
在一些实施例中,装置还包括:
第二获取模块,用于对于预设的多个触控场景中的任一触控场景,获取当前登录账号在触控场景下的第一历史触控数据;
第一确定模块,用于基于第一历史触控数据,确定当前登录账号在触控场景下的触控滤波参数值;
第一存储模块,用于将触控场景的场景标识和触控滤波参数值关联存储在场景标识和触控滤波参数值的对应关系中。
在一些实施例中,第一获取模块802,用于在触控场景为游戏场景的情况下,确定第一触控操作在游戏场景的触控区域的区域类型;基于游戏场景的场景标识和区域类型,从已存储的场景标识、区域类型和触控滤波参数值的对应关系中获取游戏场景对应的触控滤波参数值。
在一些实施例中,第一获取模块802,用于对游戏场景进行截图得到场景图像;通过图像识别模型,识别场景图像的核心图标;确定核心图标对应的区域类型。
在一些实施例中,装置还包括:
第三获取模块,用于对于游戏场景下预设的多个区域类型中的任一区域类型,获取当前登录账号在区域类型对应区域触发触控操作的第二历史触控数据;
第二确定模块,用于基于第二历史触控数据,确定当前登录账号在区域类型对应区域触发触控操作的触控滤波参数值;
第二存储模块,用于将游戏场景的场景标识、区域类型和触控滤波参数值关联存储在场景标识、区域类型和触控滤波参数值的对应关系中。
在一些实施例中,响应模块804,用于在触控场景为目标场景且第二触控操作为滑动操作的情况下,获取当前登录账号对应的滑动距离阈值;在滑动操作的滑动距离超过滑动距离阈值的情况下,响应滑动操作。
在一些实施例中,装置还包括:
第四获取模块,用于获取当前登录账号在目标场景下的多个历史滑动操作;
第三确定模块,用于基于多个历史滑动操作的滑动距离,确定当前登录账号对应的滑动距离阈值。
在一些实施例中,滤波模块803,用于触控滤波参数值包括触点滤波参数值;在第一触控操作的边缘触点与中心触点之间的距离小于触点滤波参数值表示的触点距离阈值的情况下,对第一触控操作进行滤波处理得到的第二触控操作为点击操作;在第一触控操作的边缘触点与中心触点之间的距离不小于触点滤波参数值表示的触点距离阈值的情况下,对第一触控操作进行滤波处理得到的第二触控操作为滑动操作。
在一些实施例中,滤波模块803,用于触控滤波参数值包括轨迹滤波参数值;基于轨迹滤波参数值对第一触控操作的滑动轨迹进行平滑处理得到第二触控操作。
在本申请实施例中,通过设置不同的触控场景对应不同的触控滤波参数值,从而能够获取到适配于当前触控场景的触控滤波参数值,也即获取到的触控滤波参数值更为合理,这样就可以提高基于该触控滤波参数值对第一触控操作进行滤波处理的效果,进而提高了响应得到的第二触控操作的效果。
需要说明的是,上述实施例提供的触控响应装置在进行触控响应时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的触控响应装置与触控响应方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图9,其示出了本申请一个示例性实施例示出的终端900的框图。本申请中的终端900包括一个或多个如下部件:处理器910、存储器920和显示屏930。
处理器910可以包括一个或者多个处理核心。处理器910利用各种接口和线路连接整个终端900内的各个部分,通过运行或执行存储在存储器920内的指令、程序、代码集或指令集,以及调用存储在存储器920内的数据,执行终端900的各种功能和处理数据。可选地,处理器910可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器910可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)、神经网络处理器(Neural-network Processing Unit,NPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏930所需要显示的内容的渲染和绘制;NPU用于实现人工智能(Artificial Intelligence,AI)功能;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器910中,单独通过一块芯片进行实现。
存储器920可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选地,该存储器920包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器920可用于存储指令、程序、代码、代码集或指令集。存储器920可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等;存储数据区可存储根据终端900的使用所创建的数据(比如音频数据、电话本)等。
显示屏930是用于显示用户界面的显示组件。可选的,该显示屏930为具有触控功能的显示屏,通过触控功能,用户可以使用手指、触摸笔等任何适合的物体在显示屏930上进行触控操作。
显示屏930通常设置在终端900的前面板。显示屏930可被设计成为全面屏、曲面屏、异型屏、双面屏或折叠屏。显示屏930还可被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合等,本实施例对此不加以限定。
除此之外,本领域技术人员可以理解,上述附图所示出的终端900的结构并不构成对终端900的限定,终端900可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,终端900中还包括音频采集器件、扬声器、射频电路、输入单元、传感器、音频电路、无线保真(Wireless Fidelity,Wi-Fi)模块、电源、蓝牙模块等部件,在此不再赘述。
本申请实施例还提供了一种计算机可读介质,该计算机可读介质存储有至少一条程序代码,该至少一条程序代码由该处理器加载并执行以实现如上各个实施例示出的触控响应方法。
本申请实施例还提供了一种计算机程序产品,该计算机程序产品存储有至少一条程序代码,该至少一条程序代码由该处理器加载并执行以实现如上各个实施例示出的触控响应方法。
在一些实施例中,本申请实施例所涉及的计算机程序产品可被部署在一个终端上执行,或者在位于一个地点的多个终端上执行,又或者,在分布在多个地点且通过通信网络互连的多个终端上执行,分布在多个地点且通过通信网络互连的多个终端可以组成区块链系统。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (12)

1.一种触控响应方法,其特征在于,所述方法包括:
当检测到第一触控操作时,识别所述第一触控操作所对应的触控场景;
获取所述触控场景对应的触控滤波参数值,所述触控滤波参数值包括触点滤波参数值和轨迹滤波参数值中的至少一项,所述触点滤波参数值用于对所述第一触控操作的触点进行滤波,所述轨迹滤波参数值用于对所述第一触控操作的轨迹进行滤波;
基于所述触控滤波参数值对所述第一触控操作进行滤波处理,得到第二触控操作;
响应所述第二触控操作。
2.根据权利要求1所述的方法,其特征在于,所述获取所述触控场景对应的触控滤波参数值,包括:
基于所述触控场景的场景标识,从已存储的场景标识和触控滤波参数值的对应关系中获取所述触控场景对应的触控滤波参数值。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
对于预设的多个触控场景中的任一触控场景,获取当前登录账号在所述触控场景下的第一历史触控数据;
基于所述第一历史触控数据,确定所述当前登录账号在所述触控场景下的触控滤波参数值;
将所述触控场景的场景标识和所述触控滤波参数值关联存储在所述场景标识和触控滤波参数值的对应关系中。
4.根据权利要求2所述的方法,其特征在于,所述基于所述触控场景的场景标识,从已存储的场景标识和触控滤波参数值的对应关系中获取所述触控场景对应的触控滤波参数值,包括:
在所述触控场景为游戏场景的情况下,确定所述第一触控操作在所述游戏场景的触控区域的区域类型;
基于所述游戏场景的场景标识和所述区域类型,从已存储的场景标识、区域类型和触控滤波参数值的对应关系中获取所述游戏场景对应的触控滤波参数值。
5.根据权利要求4所述的方法,其特征在于,所述确定所述第一触控操作在所述游戏场景的触控区域的区域类型,包括:
对所述游戏场景进行截图得到场景图像;
通过图像识别模型,识别所述场景图像的核心图标;
确定所述核心图标对应的区域类型。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
对于所述游戏场景下预设的多个区域类型中的任一区域类型,获取当前登录账号在所述区域类型对应区域触发触控操作的第二历史触控数据;
基于所述第二历史触控数据,确定所述当前登录账号在所述区域类型对应区域触发触控操作的触控滤波参数值;
将所述游戏场景的场景标识、所述区域类型和所述触控滤波参数值关联存储在所述场景标识、区域类型和触控滤波参数值的对应关系中。
7.根据权利要求1所述的方法,其特征在于,所述响应所述第二触控操作,包括:
在所述触控场景为目标场景且所述第二触控操作为滑动操作的情况下,获取当前登录账号对应的滑动距离阈值;
在所述滑动操作的滑动距离超过所述滑动距离阈值的情况下,响应所述滑动操作。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
获取所述当前登录账号在所述目标场景下的多个历史滑动操作;
基于所述多个历史滑动操作的滑动距离,确定所述当前登录账号对应的滑动距离阈值。
9.根据权利要求1所述的方法,其特征在于,所述基于所述触控滤波参数值对所述第一触控操作进行滤波处理,得到第二触控操作,包括:
所述触控滤波参数值包括触点滤波参数值;在所述第一触控操作的边缘触点与中心触点之间的距离小于所述触点滤波参数值表示的触点距离阈值的情况下,对所述第一触控操作进行滤波处理得到的第二触控操作为点击操作;
在所述第一触控操作的边缘触点与中心触点之间的距离不小于所述触点滤波参数值表示的触点距离阈值的情况下,对所述第一触控操作进行滤波处理得到的第二触控操作为滑动操作。
10.根据权利要求1或9所述的方法,其特征在于,所述基于所述触控滤波参数值对所述第一触控操作进行滤波处理,得到第二触控操作,包括:
所述触控滤波参数值包括轨迹滤波参数值;基于所述轨迹滤波参数值对所述第一触控操作的滑动轨迹进行平滑处理得到所述第二触控操作。
11.一种触控响应装置,其特征在于,所述装置包括:
识别模块,用于当检测到第一触控操作时,识别所述第一触控操作所对应的触控场景;
第一获取模块,用于获取所述触控场景对应的触控滤波参数值,所述触控滤波参数值包括触点滤波参数值和轨迹滤波参数值中的至少一项,所述触点滤波参数值用于对所述第一触控操作的触点进行滤波,所述轨迹滤波参数值用于对所述第一触控操作的轨迹进行滤波;
滤波模块,用于基于所述触控滤波参数值对所述第一触控操作进行滤波处理,得到第二触控操作;
响应模块,用于响应所述第二触控操作。
12.一种终端,其特征在于,所述终端包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述至少一条程序代码由所述一个或多个处理器加载并执行,以实现如权利要求1至10任一项所述的触控响应方法。
CN202311455233.6A 2023-11-02 2023-11-02 触控响应方法、装置及设备 Pending CN117492632A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311455233.6A CN117492632A (zh) 2023-11-02 2023-11-02 触控响应方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311455233.6A CN117492632A (zh) 2023-11-02 2023-11-02 触控响应方法、装置及设备

Publications (1)

Publication Number Publication Date
CN117492632A true CN117492632A (zh) 2024-02-02

Family

ID=89675818

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311455233.6A Pending CN117492632A (zh) 2023-11-02 2023-11-02 触控响应方法、装置及设备

Country Status (1)

Country Link
CN (1) CN117492632A (zh)

Similar Documents

Publication Publication Date Title
CN109062479B (zh) 分屏应用切换方法、装置、存储介质和电子设备
CN108363593B (zh) 应用程序预加载方法、装置、存储介质及终端
EP3575961B1 (en) Method and apparatus for updating application prediction model, storage medium, and terminal
CN110531920B (zh) 侧边工具栏的显示方法、装置、终端及存储介质
EP3570163A1 (en) Method for launching application, storage medium, and terminal
CN107741820B (zh) 一种输入法键盘显示方法及移动终端
CN111782332A (zh) 应用界面切换方法、装置、终端及存储介质
CN118113204A (zh) 长截屏方法、装置、终端及存储介质
CN108958503A (zh) 输入方法和装置
CN108984089B (zh) 触控操作方法、装置、存储介质及电子设备
EP3435215B1 (en) Method, device, storage medium and mobile terminal for recognizing an off-screen gesture
EP3584710A1 (en) Method and apparatus for controlling display of mobile terminal, storage medium, and electronic device
WO2022041606A1 (zh) 控件的显示位置调整方法及装置
CN111367457A (zh) 内容分享方法、装置以及电子设备
CN111831205A (zh) 设备控制方法、装置、存储介质及电子设备
CN111506245A (zh) 终端操控方法及装置
CN112083854A (zh) 应用程序的运行方法及装置
CN111813321A (zh) 手势控制方法及相关装置
CN110198421B (zh) 视频处理方法及相关产品
CN117909197A (zh) 操作监测方法、程序更新方法、终端、服务器及电子设备
CN113220209A (zh) 分屏显示方法及装置
CN117492632A (zh) 触控响应方法、装置及设备
CN110262864B (zh) 应用处理方法、装置、存储介质及终端
CN113923392A (zh) 视频录制方法、视频录制装置和电子设备
CN111930296A (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