首页> 中国专利> 一种控件识别的方法、相关装置、设备及存储介质

一种控件识别的方法、相关装置、设备及存储介质

摘要

本申请公开了一种基于人工智能的控件识别方法、相关装置、设备及存储介质,包括:获取待识别图像;从待识别图像中获取原始控件图像;对原始控件图像进行缩放处理,得到控件图像集合;将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值;根据N个置信度分值确定目标控件图像;若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果。本申请不但避免了预先训练深度学习模型的过程,节省训练成本,而且能够削弱模板匹配算法对尺寸的敏感度,从而有效地提升识别准确率。

著录项

  • 公开/公告号CN112162930A

    专利类型发明专利

  • 公开/公告日2021-01-01

    原文格式PDF

  • 申请/专利权人 腾讯科技(深圳)有限公司;

    申请/专利号CN202011131542.4

  • 发明设计人 任旭华;张昊若;李廷天;孙子荀;

    申请日2020-10-21

  • 分类号G06F11/36(20060101);A63F13/52(20140101);G06K9/46(20060101);

  • 代理机构44285 深圳市深佳知识产权代理事务所(普通合伙);

  • 代理人陈松浩

  • 地址 518064 广东省深圳市南山区高新区科技中一路腾讯大厦35层

  • 入库时间 2023-06-19 09:24:30

说明书

技术领域

本申请涉及计算机视觉技术领域,尤其涉一种控件识别的方法、相关装置、设备及存储介质。

背景技术

计算机视觉(Computer Vision,CV)技术在现实世界的应用相对比较成功,如日常生活中的人脸识别、车牌识别、指纹比对、电子稳像以及车辆跟踪等。如今,CV技术也广泛地应用于游戏测试场景,比如,在游戏场景中对游戏控件的位置和类型进行检测。

目前,在视频理解平台中可以实现对人脸、文本和关键物体进行识别。具体地,将视频输入至视频理解平台,通过视频理解平台进行智能识别,由此输出识别结果,例如,识别结果包括“交警服”,“交警服”在视频中出现的位置以及匹配相似度等。

然而,现有方案中往往采用深度学习算法,需要预先标注大量的图像来进行训练,造成训练成本较高。如果待识别对象是未经过训练的,那么基于深度学习的识别方法可能会识别出不准确的结果,导致识别准确度较低。

发明内容

本申请实施例提供了一种控件识别的方法、相关装置、设备及存储介质,采用模板匹配算法即可实现对控件图像的匹配,由此避免了预先训练深度学习模型的过程,达到节省训练成本的目的。此外,本申请将原始控件图像缩放为多个尺度的控件图像后进行匹配,还能够削弱模板匹配算法对尺寸的敏感度,从而有效地提升识别准确率。

有鉴于此,本申请一方面提供一种控件识别的方法,包括:

获取待识别图像;

从待识别图像中获取原始控件图像,其中,原始控件图像为原始尺寸大小;

对原始控件图像进行缩放处理,得到控件图像集合,其中,控件图像集合包括N个控件图像,N个控件图像中的每个控件图像对应一个尺寸,且N个控件图像中的每个控件图像所对应的尺寸不相等,N为大于1的整数;

将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,其中,N个置信度分值中的每个置信度分值与每个控件图像具有一一对应的关系;

根据N个置信度分值,从控件图像集合中确定目标控件图像,其中,目标控件图像所对应的置信度分值为N个置信度分值中的最大值;

若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果,其中,控件识别结果包括原始控件图像在待识别图像中的位置信息。

本申请另一方面提供一种控件识别装置,包括:

获取模块,用于获取待识别图像;

获取模块,还用于从待识别图像中获取原始控件图像,其中,原始控件图像为原始尺寸大小;

处理模块,用于对原始控件图像进行缩放处理,得到控件图像集合,其中,控件图像集合包括N个控件图像,N个控件图像中的每个控件图像对应一个尺寸,且N个控件图像中的每个控件图像所对应的尺寸不相等,N为大于1的整数;

匹配模块,用于将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,其中,N个置信度分值中的每个置信度分值与每个控件图像具有一一对应的关系;

确定模块,用于根据N个置信度分值,从控件图像集合中确定目标控件图像,其中,目标控件图像所对应的置信度分值为N个置信度分值中的最大值;

生成模块,用于若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果,其中,控件识别结果包括原始控件图像在待识别图像中的位置信息。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

匹配模块,具体用于启动第一进程和第二进程,其中,第一进程和第二进程均属于N个进程;

当通过第一进程对第一控件图像与控件模板图像进行匹配时,通过第二进程对第二控件图像与控件模板图像进行匹配,其中,第一控件图像与第二控件图像均属于控件图像集合;

根据控件图像集合中每个控件图像与控件模板图像的匹配结果,获取N个置信度分值,其中,N个置信度分值至少包括第一控件图像所对应的置信度分值,以及第二控件图像所对应的置信度分值。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

获取模块,还用于获取待识别图像之后,根据待识别图像获取概率图以及阈值图;

获取模块,还用于根据所述概率图以及所述阈值图获取二值化图像;

获取模块,还用于根据二值化图像获取检测结果,其中,所述检测结果包括文本区域;

获取模块,还用于基于文本区域,通过文本识别模型获取文本识别结果。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

确定模块,还用于基于文本区域,通过文本识别模型获取文本识别结果之后,若文本识别结果与控件模板图像所对应的文本一致,则确定原始控件图像满足控件图像输出条件;

确定模块,还用于若文本识别结果与控件模板图像所对应的文本不一致,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

获取模块,还用于从待识别图像中获取P个控件图像,其中,P为大于或等于1的整数,P个控件图像包括原始控件图像;

确定模块,还用于根据P个控件图像确定待识别图像所对应的目标场景;

确定模块,还用于若原始控件图像与目标场景匹配成功,则确定原始控件图像满足控件图像输出条件;

确定模块,还用于若原始控件图像与目标场景匹配失败,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

生成模块,还用于根据原始控件图像生成第一待处理控件图像,其中,第一待处理控件图像属于色调亮度HSV图像,HSV图像包括亮度通道;

获取模块,还用于根据第一待处理控件图像,获取亮度通道所对应的目标亮度值;

确定模块,还用于若目标亮度值大于或等于亮度值阈值,则确定原始控件图像满足控件图像输出条件;

确定模块,还用于若目标亮度值小于亮度值阈值,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

确定模块,还用于根据原始控件图像以及控件模板图像确定颜色直方图相似度;

确定模块,还用于根据原始控件图像以及控件模板图像确定哈希相似度;

确定模块,还用于根据原始控件图像以及控件模板图像确定结构相似度;

确定模块,还用于若颜色直方图相似度大于或等于颜色直方图相似度阈值,哈希相似度大于或等于哈希相似度阈值,且结构相似度大于或等于结构相似度阈值,则确定原始控件图像满足控件图像输出条件;

确定模块,还用于若颜色直方图相似度小于颜色直方图相似度阈值,或,哈希相似度小于哈希相似度阈值,或,结构相似度小于结构相似度阈值,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

确定模块,具体用于根据原始控件图像生成第一直方图数据,其中,第一直方图数据包括K个颜色等级,K为大于1的整数;

根据控件模板图像生成第二直方图数据,其中,第二直方图数据包括K个颜色等级;

基于K个颜色等级中的每个颜色等级,确定颜色直方图相似度。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

确定模块,具体用于将原始控件图像缩放至预设尺寸,得到第一缩放图像;

将控件模板图像缩放至预设尺寸,得到第二缩放图像;

根据第一缩放图像,生成第一灰度图;

根据第二缩放图像,生成第二灰度图;

根据第一灰度图计算得到第一灰度平均值;

根据第二灰度图计算得到第二灰度平均值;

基于第一缩放图像中的每个像素点,根据第一灰度平均值确定第一缩放图像所对应的指纹;

基于第二缩放图像中的每个像素点,根据第二灰度平均值确定第二缩放图像所对应的指纹;

根据第一缩放图像所对应的指纹以及第二缩放图像所对应的指纹,确定哈希相似度。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

确定模块,具体用于获取原始控件图像所对应的第一平均值和第一标准差;

获取控件模板图像所对应的第二平均值和第二标准差;

获取原始控件图像与控件模板图像的协方差;

根据第一平均值、第一标准差、第二平均值、第二标准差和协方差,确定结构相似度。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,

获取模块,还用于从待识别图像中获取M个控件图像,其中,M为大于或等于1的整数,M个控件图像包括原始控件图像,且M个控件图像中的每个控件图像对应于一个置信度分值;

确定模块,还用于根据M个控件图像中每个控件图像所对应的置信度分值,确定置信度最大值;

获取模块,还用于若置信度最大值所对应的控件图像为原始控件图像,则获取(M-1)个控件图像中每个控件图像与原始控件图像的重合度;

处理模块,还用于若(M-1)个控件图像中存在至少一个控件图像与原始控件图像的重合度大于或等于重合度阈值,则滤除至少一个控件图像。

在一种可能的设计中,在本申请实施例的另一方面的另一种实现方式中,控件识别装置还包括发送模块;

获取模块,具体用于接收终端设备发送的待识别图像;

发送模块,还用于根据原始控件图像生成控件识别结果之后,向终端设备发送控件识别结果,以使终端设备根据控件识别结果,显示原始控件图像,并在待识别图像上突出展示原始控件图像。

本申请的另一方面提供了一种计算机设备,存储器、收发器、处理器以及总线系统;

其中,存储器用于存储程序;

处理器用于执行存储器中的程序,处理器用于根据程序代码中的指令执行上述各方面所提供的控件识别方法;

总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。

本申请的另一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的控件识别方法。

本申请的另一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方面所提供的方法。

从以上技术方案可以看出,本申请实施例具有以下优点:

本申请实施例中,提供了一种控件识别的方法,首先获取待识别图像,然后从待识别图像中获取原始控件图像,再对原始控件图像进行缩放处理,得到控件图像集合,将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,接下来根据N个置信度分值,从控件图像集合中确定目标控件图像,若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果。通过上述方式,采用模板匹配算法即可实现对控件图像的匹配,由此避免了预先训练深度学习模型的过程,达到节省训练成本的目的。由于控件模板图像的尺寸和原始控件图像的尺寸存在着较大的差异,而模板匹配算法对尺寸非常敏感,因此,本申请将原始控件图像缩放为多个尺度的控件图像后进行匹配,还能够削弱模板匹配算法对尺寸的敏感度,从而有效地提升识别准确率。

附图说明

图1为本申请实施例中控件识别系统的一个架构示意图;

图2为本申请实施例中控件识别方法的一个流程示意图;

图3为本申请实施例中控件识别的方法一个实施例示意图;

图4为本申请实施例中多尺度模板匹配算法的一个示意图;

图5为本申请实施例中并行实现多尺度模板匹配算法的一个示意图;

图6为本申请实施例中通过光学字符识别模型输出二值化图像的一个示意图;

图7为本申请实施例中通过循环卷积神经网络输出文本识别结果的一个示意图;

图8为本申请实施例中基于待识别图像确定目标场景的一个示意图;

图9为本申请实施例中基于图像生成颜色直方图的一个示意图;

图10为本申请实施例中基于非极大值抑制方法输出控件图像的一个示意图;

图11为本申请实施例中渲染得到控件识别结果的一个界面示意图;

图12为本申请实施例中后台查看控件识别结果的一个界面示意图;

图13为本申请实施例中控件识别装置的一个实施例示意图;

图14为本申请实施例中服务器的一个结构示意图;

图15为本申请实施例中终端设备的一个结构示意图。

具体实施方式

本申请实施例提供了一种控件识别的方法、相关装置、设备及存储介质,采用模板匹配算法即可实现对控件图像的匹配,由此避免了预先训练深度学习模型的过程,达到节省训练成本的目的。此外,本申请将原始控件图像缩放为多个尺度的控件图像后进行匹配,还能够削弱模板匹配算法对尺寸的敏感度,从而有效地提升识别准确率。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

在自动化测试、人机对战以及模型训练等场景中,基于人工智能(ArtificialIntelligence)算法的自动化操作离不开对用户界面(User Interface,UI)的检测和识别,例如,在游戏、应用程序或者小程序等UI中检测出图标、按钮和文本等控件。在实际情况下,游戏画面中的控件更加多样,例如,目标过小,纹理过于简单,特定目标可标注样本少等,然而测试中对于控件的识别准确度有着极高的要求,错误的识别结果可能会影响后续的AI决策。基于此,本申请提供了一种快速且高效的控件识别方法,能够直观地展示的前端反馈结果和后端反馈结果,可以有效解决关键元素定位不准的问题,且成本较低,适合工业生产环境。应理解,控件识别方法在游戏中有如下几类应用。

一、确定游戏状态;

每个游戏UI称为一个游戏状态。游戏可被认为由很多不同的UI组成。首先建立UI的样本库,当实时获取一张游戏画面时,比对当前图像和样本图像,即可判断出当前的游戏状态。

二、检测场景覆盖率;

首先加载核心场景的模板图像,AI在运行过程中会采集大量的游戏运行中的游戏截图。基于这些游戏截图形成的测试数据集,遍历每一张测试数据集,匹配核心场景图像和测试图像,最终筛选出匹配结果,过滤得到匹配到的核心场景的图像。通过匹配到的核心场景的图像和数目,推测AI运行过程中的场景覆盖情况。

三、识别游戏中的控件;

在游戏主界面中,英雄的技能、装备和操作键等这些按钮一般都是在固定位置。提取按键为可用状态时的按钮图标作为模板,实时获取的游戏界面检测到模板,检测到就说明当前这个按钮可用。游戏AI获取这些按键的信息后,即可采取相应的策略,如释放技能,购买装备等。

本申请提供的控件识别可应用于控件识别系统,请参阅图1,图1为本申请实施例中控件识别系统的一个架构示意图,如图所示,终端设备通过传输控制协议(TransmissionControl Protocol,TCP)或者超文本传输协议(Hyper Text Transfer Protocol,HTTP)等,将图像数据流传输至算法服务器,由算法服务器对图像上关键控件进行检测和识别,再将识别结果反馈至终端设备。其中,如果用户需要可视化识别结果,则可以将可视化的结果用前端服务器进行渲染,并发送到终端设备进行展示,使得用户所见即所得,直观的看出来检测到的元素类型和位置。如果用户需要了解控件的位置信息,则需要通过终端设备向后端服务器发起请求,由后端服务器向终端设备反馈相应的位置信息。

需要理解的是,本申请涉及的算法服务器、前端服务器和后端服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、掌上电脑、个人电脑、智能电视、智能手表等,但并不局限于此。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。服务器和终端设备的数量也不做限制。

由此,用户只需要将图片发送到对应的服务器上,服务器会自动启动一整套解决方案,无需人工干预,且基于AI中的CV技术识别出准确的结果。其中,AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,AI是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。AI也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

AI技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。AI基础技术一般包括如传感器、专用AI芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。AI软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

CV技术是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的AI系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(Optical CharacterRecognition,OCR)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。其中,OCR是指对文本资料的图像文件进行分析识别处理,获取文字及版面信息的过程。

为了便于理解,请参阅图2,图2为本申请实施例中控件识别方法的一个流程示意图,如图所示,具体地:

在步骤S1中,当用户正在使用算法服务时,可通过终端设备将图像数据流提交到服务器中;

在步骤S2中,对于服务器而言,需要等待终端设备传输的图像数据流,如果还未等待到图像数据流,则继续等待,如果已经接收到图像数据流,则基于图像数据流中的一帧待识别图像进行后续处理;

在步骤S3中,服务器开始自动将待识别图像输入至算法服务,可使用多尺度模板匹配和OCR文字识别服务并行对待识别图像进行处理,多尺度模板匹配得到的信息也用于对图像场景进行识别;

在步骤S4中,接下来使用阈值滤波、明暗滤波、场景匹配、文字匹配以及高维测度滤波中的至少一种方式,对待识别图像中的控件图像进行并行汇总;

在步骤S5中,利用非极大值抑制进行后处理,删除重合率大于阈值的边界框;

在步骤S6中,将处理后的识别结果反馈给终端设备,并且将相关结果可视化信息通过前端渲染模块进行展示。

基于此,由于系统的模块很多,且较为复杂,合理使用并发设计才能减小单张图像的识别耗时。结合上述介绍,本申请实施例提供的方案涉及AI的CV等技术,下面将对本申请中控件识别的方法进行介绍,请参阅图3,本申请实施例中控件识别的方法一个实施例包括:

101、获取待识别图像;

本实施例中,控件识别装置获取待识别图像,其中,该待识别图像可以是游戏图像,也可以是应用程序的界面图或者小程序的界面图等,且在实际检测中,控件识别装置可接收图像数据流(包括至少一张图像),这里的待识别图像属于图像数据流中的一张图像,本申请以游戏图像为例进行介绍。

需要说明的是,控件识别装置可部署于服务器,也可以部署于终端设备,本申请以应用于服务器为例进行介绍,然而这不应理解为对本申请的限定。

102、从待识别图像中获取原始控件图像,其中,原始控件图像为原始尺寸大小;

本实施例中,控件识别装置可采用模板匹配方法从待识别图像中获取原始控件图像。

具体地,首先从待识别图像的左上角开始,从左至右,从上至下,以步长为1,采用滑动窗口的方式依次去计算控件模板图像和窗口子图像的相似度。将相似结果存放在结果矩阵中,最后在结果矩阵中查找最佳匹配值,如果越相似,则匹配值越大,那么结果矩阵中最亮的部分即为最佳匹配,由此截取出原始控件图像。原始控件图像即为具有控件的图像,控件是指对数据和方法的封装,例如,启动游戏的按钮,在游戏中释放技能的按钮等,都属于游戏中的控件。

可以理解的是,控件识别装置可调用openCV中提供的接口函数cv2.matchTemplate(src,tmpl,method)来进行模板匹配,其中,src表示待匹配的控件图像,tmp表示用于匹配的控件模板图像,method表示匹配方法的选择。openCV是一个基于伯克利软件套件(Berkeley Software Distribution,BSD)许可(开源)发行的跨平台计算机视觉库。

103、对原始控件图像进行缩放处理,得到控件图像集合,其中,控件图像集合包括N个控件图像,N个控件图像中的每个控件图像对应一个尺寸,且N个控件图像中的每个控件图像所对应的尺寸不相等,N为大于1的整数;

本实施例中,控件识别装置在识别出原始控件图像智慧,需要对该原始控件图像进行缩放处理,通常可以在一个较大的范围内对原始控件图像进行缩放。例如,按照比例0.80至1.20的范围采样N个尺寸来组成控件图像集合,假设比例为0.80,0.84,0.88,0.92,0.96,1.00,1.04,1.08,1.12,1.16和1.20,原始控件图像的原始尺寸为100×100像素,那么在0.80比例下的控件图像尺寸为80×80像素,0.84比例下的控件图像尺寸为84×84像素,以此类推。

为了便于说明,请参阅图1,图1为控件图像集合与缩放比例的一个示意。

表1

由此可见,最后分别得到缩放后的11个控件图像,且每个控件图像对应于一个尺寸,这11个控件图像构成尺度池。

104、将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,其中,N个置信度分值中的每个置信度分值与每个控件图像具有一一对应的关系;

本实施例中,控件识别装置将控件图像集合中的每个控件图像与控件模板图像进行匹配,每个控件图像具有一个置信度分值,因此,N个控件图像即可得到N个置信度分值,这N个置信度分值组成了置信度池。

其中,置信度分值也可称为置信水平或者置信系数,置信度分值用于表示控件图像与控件模板图像之间的相似程度,相似程度越高,置信度分值越大。

105、根据N个置信度分值,从控件图像集合中确定目标控件图像,其中,目标控件图像所对应的置信度分值为N个置信度分值中的最大值;

本实施例中,控件识别装置从N个置信度分值中选择最大的一个置信度分值,将该置信度分值所对应的控件图像确定为目标控件图像。

具体地,为了便于理解,请参阅图4,图4为本申请实施例中多尺度模板匹配算法的一个示意图,如图所示,以控件图像集合中具有N个尺寸的控件图像为例,分别将每个控件图像与控件模板图像进行匹配,由此得到N个置信度分值,从N个置信度分值中选择最大值,并回溯到该最大值对应的控件图像,即确定目标控件图像。

106、若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果,其中,控件识别结果包括原始控件图像在待识别图像中的位置信息。

本实施例中,控件识别装置需要判断目标控件图像对应的置信度分值(即N个置信度分值中的最大值)是否大于或等于置信度阈值,如果目标控件图像所对应的置信度分值小于置信度阈值,则滤除原始控件图像,达到阈值滤波的目的。如果目标控件图像所对应的置信度分值大于或等于置信度阈值,但是原始控件图像未满足控件图像输出条件,同样也会滤除该原始控件图像。仅在同时满足目标控件图像所对应的置信度分值大于或等于置信度阈值,以及原始控件图像满足控件图像输出条件的情况,生成原始控件图像的控件识别结果,其中,控件识别结果包括原始控件图像在待识别图像中的位置信息,还可以包括原始控件图像的类型等。

可以理解的是,控件图像输出条件可包括对原始控件图像中的各个像素点进行计算,基于像素点的计算能够得到更精确的判定结果。具体地,以红绿蓝(red green blue,RGB)图像为例,分别获取原始控件图像中每个像素点在三个通道像素点值,并基于控件模板图像计算每个像素点的置信度分值,若每个像素点的置信度分值均大于或等于人工设定的阈值,则确定满足控件图像输出条件。反之,若存在至少一个像素点的置信度分值小于人工设定的阈值,则确定不满足控件图像输出条件,于是滤除该原始控件图像。

需要说明的是,控件图像输出条件还可以包括其他的内容,在后续实施例中将进行具体介绍。

本申请实施例中,提供了一种控件识别的方法,首先获取待识别图像,然后从待识别图像中获取原始控件图像,再对原始控件图像进行缩放处理,得到控件图像集合,将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,接下来根据N个置信度分值,从控件图像集合中确定目标控件图像,若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果。通过上述方式,采用模板匹配算法即可实现对控件图像的匹配,由此避免了预先训练深度学习模型的过程,达到节省训练成本的目的。由于控件模板图像的尺寸和原始控件图像的尺寸存在着较大的差异,而模板匹配算法对尺寸非常敏感,因此,本申请将原始控件图像缩放为多个尺度的控件图像后进行匹配,还能够削弱模板匹配算法对尺寸的敏感度,从而有效地提升识别准确率。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,具体包括如下步骤:

启动第一进程和第二进程,其中,第一进程和第二进程均属于N个进程;

当通过第一进程对第一控件图像与控件模板图像进行匹配时,通过第二进程对第二控件图像与控件模板图像进行匹配,其中,第一控件图像与第二控件图像均属于控件图像集合;

根据控件图像集合中每个控件图像与控件模板图像的匹配结果,获取N个置信度分值,其中,N个置信度分值至少包括第一控件图像所对应的置信度分值,以及第二控件图像所对应的置信度分值。

本实施例中,介绍了一种基于多尺度模板匹配算法执行多进程并行处理的方式。在实际应用中,控件识别装置可并列执行多个进程,假设可并行执行N个进程,为了便于说明,以N个进程中的任意两个进程为例进行介绍。

具体地,控件识别装置启动第一进程和第二进程,在第一进程中对第一控件图像与控件模板图像进行匹配,得到第一控件图像的置信度分值。与此同时,在第二进程中对第二控件图像与控件模板图像进行匹配,得到第二控件图像的置信度分值。直至得到N个控件图像的置信度分值(即得到N个置信度分值)。

为了便于理解,请参阅图5,图5为本申请实施例中并行实现多尺度模板匹配算法的一个示意图,如图所示,N个进程中每个进程分别对一个控件图像与控件模板图像进行匹配,并输出相应的置信度分值。

其次,本申请实施例中,提供了一种基于多尺度模板匹配算法执行多进程并行处理的方式,通过上述方式,对于不同尺寸的控件图像,分别使用一个单进程进行处理,也就是每个尺度独立进行匹配运算,避免了串行处理,而且还可以基于多个进程同时进行模板匹配,以此达到较高的匹配效率,使得匹配速度在资源足够时可保持不变。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,获取待识别图像之后,还包括如下步骤:

根据待识别图像获取概率图以及阈值图;

根据概率图以及阈值图获取二值化图像;

根据二值化图像获取检测结果,其中,检测结果包括文本区域;

基于文本区域,通过文本识别模型获取文本识别结果。

本实施例中,介绍了一种基于图像语义匹配实现控件图像滤波的方式。控件识别装置将待识别图像输入OCR模型,通过OCR模型输出文本识别结果。OCR模型主要包括两个部分,第一个部分是基于可微的二值化(Differentiable Binarization,DB)的神经网络模型,第二部分是文本识别模型。其中,OCR模型采用深度学习技术使得识别精度在特定的场景下面有了一定的保障,但模型大小和速度问题现在依然是一大难题。目前,大部分的后台OCR模型通常几十兆或者上百兆,而图形处理器(Graphics Processing Unit,GPU)成本昂贵,难以提供大量的GPU进行游戏视频的线上服务,OCR模型过大也会造成下载失败率高,等待时间长,流量消耗大等问题。此外,很多OCR模型在云端GPU上运行尚且需要几十毫秒到上百毫秒,如果在中央处理器(central processing unit,CPU)上保持较高的运行效率是一个极大的挑战。

基于此,本申请采用开放式神经网络交换运行时间(Open Neural NetworkExchange Runtime,ONNX Runtime)推理引擎,对于多个平台和硬件都具有很高的性能。借助ONNX Runtime,可以跨多个平台和硬件(在CPU和GPU上均为Windows、Linux和Mac)有效地进行推理,采用的OCR模型相比于使用纯的Pytorch代码的延迟减少了3.5倍。

具体地,为了便于理解,请参阅图6,图6为本申请实施例中通过光学字符识别模型输出二值化图像的一个示意图,如图所示,将待识别图像输入至金字塔结构的神经网络模型,金字塔结构的神经网络模型能够提取待识别图像在不同尺度上的特征,基于此,需要通过上采样的方式将特征金字塔的输出变换为同一尺寸,并级联产生特征图,然后基于特征图预测概率图和阈值图,基于可微分二值化(Differentiable Binarization,DB)检测算法,根据概率图和阈值图生成近似的二值化图像。最后,基于二值化图像得到检测结果,在检测结果中通过边界框圈出包括文本内容的文本区域。

其中,概率图表示待识别图像中属于文本区域的概率,例如,属于文本区域的概率越大,则概率图中对应的区域会显示更深的颜色。阈值图表示基于通过固定的阈值对概率图进行划分后得到图像,在阈值图中会突出文本边界区域。

上述过程包含二值化的处理过程,二值化的过程非常关键,常规二值化操作通过设定固定的阈值,然而固定的阈值难以适应复杂多变的检测场景,而DB检测算提出了一种可微分的二值化操作,通过将二值化操作插入到分割网络中进行组合优化,从而实现阈值在概率图各处的自适应。基于此,可采用如下函数近似二值化过程,即:

其中,B

针对于文本区域,通过文本识别模型获取文本识别结果,其中,文本识别模型可以为卷积神经网络(Convolutional Neural Network,CNN)模型、循环卷积神经网络(Convolutional Recurrent Neural Network,CRNN)模型或者其他网络模型等,本申请以CRNN模型作为文本识别模型为例进行说明。

为了便于理解,请参阅图7,图7为本申请实施例中通过循环卷积神经网络输出文本识别结果的一个示意图,如图所示,将文本区域(即包括文本的图像区域)输入至CRNN模型中的卷积层,卷积层从输入图像中得到一组特征图,再以特征图的形式输出。基于特征图生成特征序列,将特征序列作为循环层的输入。循环层中采用深度双向长短期记忆网络(Long Short-Term Memory,LSTM)模型,LSTM可以将误差差别反向传播到卷积层,从而实现在同一网络中对CNN和RNN的共同训练,此外,RNN可以在任意长度的序列上进行学习,优于CNN模型的固定维度。转录层是将预测的序列结果转换成预测的文本识别结果。

其次,本申请实施例中,提供了一种基于图像语义匹配实现控件图像滤波的方式,通过上述方式,采用DB检测算法将二值化操作插入到分割网络中进行组合优化,来简化分割后处理步骤,并且可以设定自适应阈值来提升网络性能。以CRNN模型作为文本识别模型,既提取了鲁棒特征,又通过序列识别避免了传统算法中难度极高的单字符切分与单字符识别,同时序列化识别也嵌入时序依赖,由此提升文本检测的准确度。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,基于文本区域,通过文本识别模型获取文本识别结果之后,还包括如下步骤:

若文本识别结果与控件模板图像所对应的文本一致,则确定原始控件图像满足控件图像输出条件;

若文本识别结果与控件模板图像所对应的文本不一致,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

本实施例中,介绍了一种基于文本匹配实现控件图像滤除的方式。在得到文本识别结果之后,可以进一步判断该文本识别结果与控件模板图像所对应的文本是否一致,如果匹配一致,则确定原始控件图像满足控件图像输出条件,反之,如果匹配不一致,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

具体地,例如,文本识别结果为“强化”,而控件模板图像所对应的文本为“试炼”,则文本识别结果与控件模板图像所对应的文本不一致。又例如,文本识别结果为“试炼”,而控件模板图像所对应的文本也为“试炼”,则文本识别结果与控件模板图像所对应的文本一致。

再次,本申请实施例中,提供了一种基于文本匹配实现控件图像滤除的方式,通过上述方式,传统的图像匹配技术,仅仅是依靠基于像素的相似度来对图像进行相似度匹配,然而游戏图像的元素控件不仅仅有像素粒度的相似度度量,高维度语义信息对控件图像识别同样至关重要。因此,采用基于OCR模型可以准确且实时的获取游戏控件图像上的文字信息,如果和控件模板图像上的文本不一致,则予以滤除,从而在高语义维度上对控件图像进行筛选。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,还包括如下步骤:

从待识别图像中获取P个控件图像,其中,P为大于或等于1的整数,P个控件图像包括原始控件图像;

根据P个控件图像确定待识别图像所对应的目标场景;

若原始控件图像与目标场景匹配成功,则确定原始控件图像满足控件图像输出条件;

若原始控件图像与目标场景匹配失败,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

本实施例中,介绍一种基于场景匹配实现控件图像滤除的方式。首先从待识别图像中获取已经识别到的P个控件图像,这里的P个控件图像包括原始控件图像。然后,根据识别到的P个控件图像匹配对应的目标场景。再判断控件图像是否符合目标场景。以原始控件图像为例,如果原始控件图像与目标场景匹配成功,则确定原始控件图像满足控件图像输出条件,反之,则滤除原始控件图像。

为了便于理解,请参阅图8,图8为本申请实施例中基于待识别图像确定目标场景的一个示意图,如图所示,假设从待识别图像中识别出9个控件图像,即P等于9,基于此,针对这9个控件图像可知当前的目标场景是“出游”场景。可以理解的是,不同的场景下有些控件图像是不会出现的,例如,在“出游”场景中,不会出现“食材”这类控件图像,也就是可以根据强先验的规则,滤除不应该出现的控件图像。

其次,本申请实施例中,提供一种基于场景匹配实现控件图像滤除的方式。需要说明的是,在现有的图像分类任务中,在很大程度上是依靠监督学习实现的,即每个样本都有其对应的标签,通过深度神经网络来不断学习每个标签所对应的特征,并最终实现分类。高质量数据集自然会带来标注的困难,通常情况下,标记单张图像中的单个物体类别大约需要2秒到3秒的时间,但实际应用中的数据集往往包含上千上万张图片,整个标注过程就会变得格外漫长。而基于本申请提供的方法,采用无监督场景聚类算法,根据计算经过多尺度模板匹配后图像上控件的类型和数量,从而得到相关控件出现的数量,由此,即可快速判别当前处于哪个目标场景,从而能够快速高效地对图像进行分类。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,还包括如下步骤:

根据原始控件图像生成第一待处理控件图像,其中,第一待处理控件图像属于色调亮度HSV图像,HSV图像包括亮度通道;

根据第一待处理控件图像,获取亮度通道所对应的目标亮度值;

若目标亮度值大于或等于亮度值阈值,则确定原始控件图像满足控件图像输出条件;

若目标亮度值小于亮度值阈值,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

本实施例中,介绍一种基于明暗滤波实现控件图像滤除的方式。在获取到原始控件图像之后,还可以对该原始控件图像进行明暗滤波处理,假设原始控件图像为RGB图像,那么需要先将原始控件图像转换为第一待处理控件图像,第一待处理控件图像为色调饱和度亮度(hue saturation value,HSV)图像。其中,色调可将颜色用0°到360°表示,例如0°表示红色,60°表示黄色,120°表示绿色等。饱和度表示色彩的纯度,饱和度越低色彩越暗淡,饱和度为大于或等于0,且小于或等于1的值。亮度表示颜色的明亮程度,数值越高越接近于白色,数值越低越接近于黑色,亮度为大于或等于0,且小于或等于1的值。本申请主要针对亮度值进行滤波。

具体地,在得到第一待处理控件图像之后,基于该第一待处理控件图像,提取亮度通道下的值,即得到目标亮度值。然后判断该目标亮度值是否大于或等于亮度值阈值,如果目标亮度值大于或等于亮度值阈值,则确定原始控件图像满足控件图像输出条件。反之,如果目标亮度值小于亮度值阈值,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

其次,本申请实施例中,提供一种基于明暗滤波实现控件图像滤除的方式,通过上述方式,将控件图像转换为HSV图像之后,滤除亮度值较低的控件图像,由此提升图像检测的准确性。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,还包括如下步骤:

根据原始控件图像以及控件模板图像确定颜色直方图相似度;

根据原始控件图像以及控件模板图像确定哈希相似度;

根据原始控件图像以及控件模板图像确定结构相似度;

若颜色直方图相似度大于或等于颜色直方图相似度阈值,哈希相似度大于或等于哈希相似度阈值,且结构相似度大于或等于结构相似度阈值,则确定原始控件图像满足控件图像输出条件;

若颜色直方图相似度小于颜色直方图相似度阈值,或,哈希相似度小于哈希相似度阈值,或,结构相似度小于结构相似度阈值,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

本实施例中,介绍一种基于高维特征筛选实现控件图像滤波的方式。以原始控件图像为例,根据原始控件图像与控件模板图像,可分别计算得到颜色直方图相似度、哈希相似度以及结构相似度。其中,颜色直方图相似度首先对控件模板图像与要筛选的原始控件图像进行直方图数据采集,对采集的各自图像直方图进行归一化再使用巴氏系数算法对直方图数据进行计算,最终得出颜色直方图相似度。哈希相似度是图像特征被用于生成独特的指纹,而这些指纹是可比较的。结构相似性是一种衡量两幅图像相似度的指标,二者的结构相似性可以看成是失真图像的影像品质衡量指标。

具体地,如果颜色直方图相似度大于或等于颜色直方图相似度阈值,并且哈希相似度大于或等于哈希相似度阈值,并且结构相似度大于或等于结构相似度阈值,则确定原始控件图像满足控件图像输出条件。当出现颜色直方图相似度小于颜色直方图相似度阈值,或,哈希相似度小于哈希相似度阈值,或,结构相似度小于结构相似度阈值的情况时,确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

其次,本申请实施例中,提供了一种基于高维特征筛选实现控件图像滤波的方式,通过上述方式,相比于传统的匹配算法中,仅以单一的目标函数对两者相似度进行匹配,本申请采用多种有效的测度,包括直方图测度评估、哈希相似度评估和结构相似度测度评估,通过多个角度对置信度较低的控件进行滤除,从而有效提升匹配算法的准确率,而且这几个测度可以并行计算,可以在很短时间完成所有测度的计算。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,根据原始控件图像以及控件模板图像确定颜色直方图相似度,具体包括如下步骤:

根据原始控件图像生成第一直方图数据,其中,第一直方图数据包括K个颜色等级,K为大于1的整数;

根据控件模板图像生成第二直方图数据,其中,第二直方图数据包括K个颜色等级;

基于K个颜色等级中的每个颜色等级,确定颜色直方图相似度。

本实施例中,介绍了一种基于颜色直方图相似度实现控件图像滤除的方式。首先需要分别获取原始控件图像所对应的第一直方图数据,以及控件模板图像所对应的第二直方图数据,然后使用第一直方图数据和第二直方图数据,运算巴氏系数算法对直方图数据进行计算,最终得出颜色直方图相似度。颜色直方图相似度又称为“巴氏系数因子值”,可采用如下方式计算颜色直方图相似度:

其中,S表示第一直方图数据,G表示第二直方图数据,E(G,S)表颜色直方图相似度,g(i)表示控件模板图像所对应的第i个颜色等级,s(i)表示原始控件图像所对应的第i个颜色等级,K表示颜色等级总数。

为了便于理解,请参阅图9,图9为本申请实施例中基于图像生成颜色直方图的一个示意图,如图9的(A)图所示,假设该图像为原始控件图像,由此可见,原始控件图像具有三种颜色,基于此,颜色等级的数量为3。根据原始控件图像中每个颜色的占比,生成第一直方图数据,图9中(B)图示出的即为第一直方图数据,其中,黑色部分占据50%,白色部分和阴影部分分别占据25%。

再次,本申请实施例中,提供了一种基于颜色直方图相似度实现控件图像滤除的方式,通过上述方式,利用颜色直方图相似度对控件图像进行滤除过程较为渐变,对控件图像的旋转和平移不敏感,并且对控件图像的局部加扰不敏感,对于相似类型图像的召回率和准确率较高。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,根据原始控件图像以及控件模板图像确定哈希相似度,具体包括如下步骤:

将原始控件图像缩放至预设尺寸,得到第一缩放图像;

将控件模板图像缩放至预设尺寸,得到第二缩放图像;

根据第一缩放图像,生成第一灰度图;

根据第二缩放图像,生成第二灰度图;

根据第一灰度图计算得到第一灰度平均值;

根据第二灰度图计算得到第二灰度平均值;

基于第一缩放图像中的每个像素点,根据第一灰度平均值确定第一缩放图像所对应的指纹;

基于第二缩放图像中的每个像素点,根据第二灰度平均值确定第二缩放图像所对应的指纹;

根据第一缩放图像所对应的指纹以及第二缩放图像所对应的指纹,确定哈希相似度。

本实施例中,介绍了一种基于哈希相似度实现控件图像滤除的方式。下面将以原始控件图像和控件模板图像的处理方式为例进行说明,可以理解的是,其他的控件图像也可采用类似地方式进行处理,此处不做赘述。哈希算法具体可以包括平均哈希算法、感知哈希算法以及差异哈希算法,基于此,哈希相似度可以是平均哈希相似度、感知哈希相似度或者差异哈希相似度中的任意一种,下面将分别进行介绍。

一、平均哈希算法;

具体地,首先分别将原始控件图像和控件模板图像缩放至预设尺寸,假设预设尺寸为8×8个像素,那么将原始控件图像缩放之后,得到8×8个像素的第一缩放图像,类似地,将控件模板图像缩放之后,得到8×8个像素的第二缩放图像。缩放的目的在于去除图像的细节,只保留结构和明暗等基本信息,摒弃不同尺寸带来的图像差异。接下来,分别根据第一缩放图像,生成第一灰度图,并且根据第二缩放图像,生成第二灰度图。将缩小后的第一缩放图像和第二缩放图像分别转换为64级灰度,即所有像素点总共只有64种颜色。

需要说明的是,输入的缩放图像可能是单通道灰度图、RGB三通道彩色图或者RGBA四通道彩色图。为了统一下一步输入标准,将非单通道图片都转为单通道灰度图,其中,RGB三通道转单通道算法有下面几种:

第一种为浮点算法,即,Gray=R*0.3+G*0.59+B*0.11。

第二种为整数方法,即Gray=(R*30+G*59+B*11)/100。

第三种为移位方法,即Gray=(R*76+G*151+B*28)>>8。

第四种为平均值法,即Gray=(R+G+B)/3。

第五种为仅取绿色,即Gray=G。

基于转换后的第一灰度图和第二灰度图,还可以计算平均值,即计算64个像素的灰度平均值,得到第一灰度图所对应的第一灰度平均值,以及第二灰度图所对应的第二灰度平均值。接下来,需要比较像素的灰度,也就是将每个像素的灰度与平均值进行比较,大于或等于平均值记为1,小于平均值记为0。最后将比较结果组合在一起,就构成了一个64位的整数,这就是这张图像的指纹。即,分别比较第一缩放图像中的每个像素点与第一灰度平均值之间的大小,将比较结果组合在一起后得到第一缩放图像所对应的指纹。类似地,分别比较第二缩放图像中的每个像素点与第二灰度平均值之间的大小,将比较结果组合在一起后得到第二缩放图像所对应的指纹。最后,对比第一缩放图像所对应的指纹以及第二缩放图像所对应的指纹之间有多少位是不一样的。两个等长字符串之间的汉明距离是两个字符串对应位置的不同字符的个数,因此,两个等长字符串之间相同的字符个数即为平均哈希相似度。如果平均哈希相似度大于或等于哈希相似度阈值(例如,55),即表示两张图像很相似。反之,则说明两者属于不同的图像。

二、感知哈希算法;

具体地,首先分别将原始控件图像和控件模板图像缩放至预设尺寸,假设预设尺寸为32×32个像素,那么将原始控件图像缩放之后,得到32×32个像素的第一缩放图像,类似地,将控件模板图像缩放之后,得到32×32个像素的第二缩放图像。接下来,分别根据第一缩放图像,生成第一灰度图,并且根据第二缩放图像,生成第二灰度图。然后根据第一灰度图获取32×32数据矩阵经过离散余弦变换(Discrete Cosine Transform,DCT)之后对应的32×32数据矩阵,以及根据第二灰度图获取32×32数据矩阵经过DCT之后对应的32×32数据矩阵。基于此,取原始控件图像对应的32×32数据矩阵左上角的8×8子矩阵,以及取控件模板图像对应的32×32数据矩阵左上角的8×8子矩阵。通过原始控件图像中8×8子矩阵的整数矩阵计算该矩阵中所有元素的平均值,得到第一灰度平均值。类似地,通过控件模板图像中8×8子矩阵的整数矩阵计算该矩阵中所有元素的平均值,得到第二灰度平均值。

接下来,需要比较像素的灰度,也就是从左到右一行一行地遍历8×8子矩阵中的每个像素,如果第i行j列元素G(i,j)大于或等于灰度平均值,则记为1,小于灰度平均值,则记为0,最后将比较结果组合在一起,就构成了这张图像的指纹。基于指纹比对图像相似度的方式与前述实施例类似,此处不做赘述。

三、差异哈希算法;

具体地,首先分别将原始控件图像和控件模板图像缩放至预设尺寸,假设预设尺寸为9×8个像素,那么将原始控件图像缩放之后,得到9×8个像素的第一缩放图像,类似地,将控件模板图像缩放之后,得到9×8个像素的第二缩放图像。接下来,分别根据第一缩放图像,生成第一灰度图,并且根据第二缩放图像,生成第二灰度图。然后以当前行像素值减去前一行像素值进行计算,从第二行到第九行共8行,又因为矩阵有8列,所以得到一个8×8差分矩阵。基于此,得到原始控件图像对应的8×8差分矩阵,以及取控件模板图像对应的8×8差分矩阵。通过原始控件图像中8×8差分矩阵计算该矩阵中所有元素的平均值,得到第一灰度平均值。类似地,通过控件模板图像中8×8差分矩阵计算该矩阵中所有元素的平均值,得到第二灰度平均值。

接下来,需要比较像素的灰度,也就是从左到右一行一行地遍历8×8差分矩阵中的每个像素,如果第i行j列元素G(i,j)大于或等于灰度平均值,则记为1,小于灰度平均值,则记为0,最后将比较结果组合在一起,就构成了这张图像的指纹。基于指纹比对图像相似度的方式与前述实施例类似,此处不做赘述。

需要说明的是,在实际应用中,哈希算法的类型包含但不仅限于平均哈希算法、感知哈希算法以及差异哈希算法。

再次,本申请实施例中,提供了一种基于哈希相似度实现控件图像滤除的方式,通过上述方式,哈希相似度的作用是对每张图像生成一个指纹字符串,然后比较不同图像的指纹。结果越接近,就说明图片越相似,从而有效地提升了图像比对的准确性。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,根据原始控件图像以及控件模板图像确定结构相似度,具体包括如下步骤:

获取原始控件图像所对应的第一平均值和第一标准差;

获取控件模板图像所对应的第二平均值和第二标准差;

获取原始控件图像与控件模板图像的协方差;

根据第一平均值、第一标准差、第二平均值、第二标准差和协方差,确定结构相似度。

本实施例中,介绍了一种基于结构相似度(structural similarity,SSIM)实现控件图像滤除的方式。首先,获取原始控件图像所对应的第一平均值和第一标准差,以及获取控件模板图像所对应的第二平均值和第二标准差,还需要获取原始控件图像与控件模板图像的协方差,然后,基于第一平均值、第一标准差、第二平均值、第二标准差和协方差,计算得到原始控件图像与控件模板图像之间的SSIM。

具体地,为了便于理解,请参阅如下公式:

其中,X表示原始控件图像,Y表示控件模板图像,L(X,Y)表示原始控件图像与控件模板图像的亮度比较,C(X,Y)表示原始控件图像与控件模板图像的对比度比较,S(X,Y)表示原始控件图像与控件模板图像的结构比较,μ

基于此,可将SSIM简化为如下公式:

由此可见,根据第一平均值、第一标准差、第二平均值、第二标准差、协方差以及相关常数,即可计算得到SSIM。

再次,本申请实施例中,提供了一种基于SSIM实现控件图像滤除的方式,通过上述方式,SSIM使用的两张图像中,一张为未经压缩的无失真图像,另一张为失真后的图像。也是视频质量评价的一种优秀算法。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,还包括如下步骤:

从待识别图像中获取M个控件图像,其中,M为大于或等于1的整数,M个控件图像包括原始控件图像,且M个控件图像中的每个控件图像对应于一个置信度分值;

根据M个控件图像中每个控件图像所对应的置信度分值,确定置信度最大值;

若置信度最大值所对应的控件图像为原始控件图像,则获取(M-1)个控件图像中每个控件图像与原始控件图像的重合度;

若(M-1)个控件图像中存在至少一个控件图像与原始控件图像的重合度大于或等于重合度阈值,则滤除至少一个控件图像。

本实施例中,介绍了一种基于非极大值抑制(Non-maximum suppression,NMS)算法滤除控件图像的方式。具体地,首先根据M个控件图像中每个控件图像所对应的置信度分值进行排序,然后,选择置信度分值最高的边界框添加到最终输出列表中,并且将其从边界框列表中删除,再计算所有边界框的面积,计算置信度分值最高的边界框与其它候选框的重合率,删除重合率大于阈值的边界框,重复上述过程。

为了便于介绍,请参阅图10,图10为本申请实施例中基于非极大值抑制方法输出控件图像的一个示意图,如图所示,假设从待识别图像中获取3个控件图像,即M等于3,每个控件图像具有一个置信度分值,且每个控件图像都采用边界框标注出来,即分别为控件图像A对应的边界框A、控件图像B对应的边界框B和控件图像C对应的边界框C。假设这控件图像A为原始控件图像,且置信度分值从大到小排列依次为控件图像A、控件图像B和控件图像C。

基于此,判断边界框B与边界框A的重合度是否大于或等于重合度阈值,若是,则滤除边界框B,即滤除控件图像B,反之,则保留该控件图像B。类似地,判断边界框C与边界框A的重合度是否大于或等于重合度阈值,若是,则滤除边界框C,即滤除控件图像C,反之,则保留该控件图像C。经过重复处理,即可找到所有被保留下来的控件图像。

其次,本申请实施例中,提供了一种基于非极大值抑制算法滤除控件图像的方式,通过上述方式,对于目标具体位置定位过程可能会产生较多的候选区域。实际看到的情形就是好多区域的交叉重叠,难以满足实际的应用,因此,采用非极大值抑制算法能够找出更加准确的控件图像。

可选地,在上述图3对应的各个实施例的基础上,本申请实施例提供的另一个可选实施例中,获取待识别图像,具体包括如下步骤:

服务器接收终端设备发送的待识别图像;

服务器根据原始控件图像生成控件识别结果之后,还包括如下步骤:

服务器向终端设备发送控件识别结果,以使终端设备根据控件识别结果,显示原始控件图像,并在待识别图像上突出展示原始控件图像。

本实施例中,介绍了两种服务器向终端设备反馈控件识别结果。用户可通过终端设备向服务器上传图像数据流,以图像数据流中的一帧图像为例,即该帧图像为待识别图像。

具体地,为了便于理解,请参阅图11,图11为本申请实施例中渲染得到控件识别结果的一个界面示意图,如图所示,图中左侧显示的为待识别图像,且该待识别图像为游戏UI中的一个抽奖界面,由服务器对该待识别图像进行识别,识别的方式如前述实施例所述,故此处不做赘述。服务器将控件识别结果反馈给终端设备,再由终端设备根据控件识别结果,显示已识别的控件图像(包括原始控件图像),并且在待识别图像上突出展示已识别的控件图像(包括原始控件图像)。例如,图中右侧显示的“永久战斗套装”,“×”,“普通抽奖”,“高级抽奖”以及“今日任务”。

可以理解的是,在实际应用中,还可以进一步显示已识别控件图像的置信度分值,以及待处理图像的场景名称等,图11仅为一个示意,不应理解为对本申请的限定。

此外,用户还可以请求查看具体的控件识别结果,即通过终端设备调用服务器的接口,通过接口返回控件识别结果,该控件识别结果包含但不仅限于控件图像的位置信息、控件图像的名称以及待识别图像的名称。

为了便于理解,请参阅图12,图12为本申请实施例中后台查看控件识别结果的一个界面示意图,如图所示,以竞速类的飞车小游戏为例,终端设备调用服务器的接口后,可获取控件识别结果,并显示在终端设备上,其中,“test.png”表示待识别图像的文件名,“label_name”表示控件图像的名称,例如,“object_1”或者“object_2”。“x_min”是控件图像左上角的横坐标,“y_min”是控件图像左上角的纵坐标,“x_max”是控件图像右下角的横坐标,“y_max”是控件图像右下角的纵坐标,

可以理解的是,在实际应用中,还可以进一步显示已控件图像的置信度分值,以及待处理图像的场景名称等,图12仅为一个示意,不应理解为对本申请的限定。

进一步地,本申请实施例中,提供了两种服务器向终端设备反馈控件识别结果,通过上述方式,用户不但可以从前端得到图像的可视化效果,还可以从后端得到图像上控件的位置信息和类别信息等,由此提升方案的灵活性和实用性。

下面对本申请中的控件识别装置进行详细描述,请参阅图13,图13为本申请实施例中控件识别装置的一个实施例示意图,控件识别装置20包括:

获取模块201,用于获取待识别图像;

获取模块201,还用于从待识别图像中获取原始控件图像,其中,原始控件图像为原始尺寸大小;

处理模块202,用于对原始控件图像进行缩放处理,得到控件图像集合,其中,控件图像集合包括N个控件图像,N个控件图像中的每个控件图像对应一个尺寸,且N个控件图像中的每个控件图像所对应的尺寸不相等,N为大于1的整数;

匹配模块203,用于将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,其中,N个置信度分值中的每个置信度分值与每个控件图像具有一一对应的关系;

确定模块204,用于根据N个置信度分值,从控件图像集合中确定目标控件图像,其中,目标控件图像所对应的置信度分值为N个置信度分值中的最大值;

生成模块205,用于若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果,其中,控件识别结果包括原始控件图像在待识别图像中的位置信息。

本申请实施例中,提供了一种控件识别装置,采用上述装置,使用模板匹配算法即可实现对控件图像的匹配,由此避免了预先训练深度学习模型的过程,达到节省训练成本的目的。由于控件模板图像的尺寸和原始控件图像的尺寸存在着较大的差异,而模板匹配算法对尺寸非常敏感,因此,本申请将原始控件图像缩放为多个尺度的控件图像后进行匹配,还能够削弱模板匹配算法对尺寸的敏感度,从而有效地提升识别准确率。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

匹配模块203,具体用于启动第一进程和第二进程,其中,第一进程和第二进程均属于N个进程;

当通过第一进程对第一控件图像与控件模板图像进行匹配时,通过第二进程对第二控件图像与控件模板图像进行匹配,其中,第一控件图像与第二控件图像均属于控件图像集合;

根据控件图像集合中每个控件图像与控件模板图像的匹配结果,获取N个置信度分值,其中,N个置信度分值至少包括第一控件图像所对应的置信度分值,以及第二控件图像所对应的置信度分值。

本申请实施例中,提供了一种控件识别装置,采用上述装置,对于不同尺寸的控件图像,分别使用一个单进程进行处理,也就是每个尺度独立进行匹配运算,避免了串行处理,而且还可以基于多个进程同时进行模板匹配,以此达到较高的匹配效率,使得匹配速度在资源足够时可保持不变。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

获取模块201,还用于获取待识别图像之后,根据待识别图像获取概率图以及阈值图;

获取模块201,还用于根据所述概率图以及所述阈值图获取二值化图像;

获取模块201,还用于根据二值化图像获取检测结果,其中,所述检测结果包括文本区域;

获取模块201,还用于基于文本区域,通过文本识别模型获取文本识别结果。

本申请实施例中,提供了一种控件识别装置,采用上述装置,采用DB检测算法将二值化操作插入到分割网络中进行组合优化,来简化分割后处理步骤,并且可以设定自适应阈值来提升网络性能。以CRNN模型作为文本识别模型,既提取了鲁棒特征,又通过序列识别避免了传统算法中难度极高的单字符切分与单字符识别,同时序列化识别也嵌入时序依赖,由此提升文本检测的准确度。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

确定模块204,还用于基于文本区域,通过文本识别模型获取文本识别结果之后,若文本识别结果与控件模板图像所对应的文本一致,则确定原始控件图像满足控件图像输出条件;

确定模块204,还用于若文本识别结果与控件模板图像所对应的文本不一致,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

本申请实施例中,提供了一种控件识别装置,采用上述装置,传统的图像匹配技术,仅仅是依靠基于像素的相似度来对图像进行相似度匹配,然而游戏图像的元素控件不仅仅有像素粒度的相似度度量,高维度语义信息对控件图像识别同样至关重要。因此,采用基于OCR模型可以准确且实时的获取游戏控件图像上的文字信息,如果和控件模板图像上的文本不一致,则予以滤除,从而在高语义维度上对控件图像进行筛选。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

获取模块201,还用于从待识别图像中获取P个控件图像,其中,P为大于或等于1的整数,P个控件图像包括原始控件图像;

确定模块204,还用于根据P个控件图像确定待识别图像所对应的目标场景;

确定模块204,还用于若原始控件图像与目标场景匹配成功,则确定原始控件图像满足控件图像输出条件;

确定模块204,还用于若原始控件图像与目标场景匹配失败,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

本申请实施例中,提供了一种控件识别装置,采用上述装置,基于无监督场景聚类算法,根据计算经过多尺度模板匹配后图像上控件的类型和数量,从而得到相关控件出现的数量,由此,即可快速判别当前处于哪个目标场景,从而能够快速高效地对图像进行分类。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

生成模块205,还用于根据原始控件图像生成第一待处理控件图像,其中,第一待处理控件图像属于色调亮度HSV图像,HSV图像包括亮度通道;

获取模块201,还用于根据第一待处理控件图像,获取亮度通道所对应的目标亮度值;

确定模块204,还用于若目标亮度值大于或等于亮度值阈值,则确定原始控件图像满足控件图像输出条件;

确定模块204,还用于若目标亮度值小于亮度值阈值,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

本申请实施例中,提供了一种控件识别装置,采用上述装置,将控件图像转换为HSV图像之后,滤除亮度值较低的控件图像,由此提升图像检测的准确性。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

确定模块204,还用于根据原始控件图像以及控件模板图像确定颜色直方图相似度;

确定模块204,还用于根据原始控件图像以及控件模板图像确定哈希相似度;

确定模块204,还用于根据原始控件图像以及控件模板图像确定结构相似度;

确定模块204,还用于若颜色直方图相似度大于或等于颜色直方图相似度阈值,哈希相似度大于或等于哈希相似度阈值,且结构相似度大于或等于结构相似度阈值,则确定原始控件图像满足控件图像输出条件;

确定模块204,还用于若颜色直方图相似度小于颜色直方图相似度阈值,或,哈希相似度小于哈希相似度阈值,或,结构相似度小于结构相似度阈值,则确定原始控件图像不满足控件图像输出条件,并滤除原始控件图像。

本申请实施例中,提供了一种控件识别装置,采用上述装置,相比于传统的匹配算法中,仅以单一的目标函数对两者相似度进行匹配,本申请采用多种有效的测度,包括直方图测度评估、哈希相似度评估和结构相似度测度评估,通过多个角度对置信度较低的控件进行滤除,从而有效提升匹配算法的准确率,而且这几个测度可以并行计算,可以在很短时间完成所有测度的计算。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

确定模块204,具体用于根据原始控件图像生成第一直方图数据,其中,第一直方图数据包括K个颜色等级,K为大于1的整数;

根据控件模板图像生成第二直方图数据,其中,第二直方图数据包括K个颜色等级;

基于K个颜色等级中的每个颜色等级,确定颜色直方图相似度。

本申请实施例中,提供了一种控件识别装置,采用上述装置,利用颜色直方图相似度对控件图像进行滤除过程较为渐变,对控件图像的旋转和平移不敏感,并且对控件图像的局部加扰不敏感,对于相似类型图像的召回率和准确率较高。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

确定模块204,具体用于将原始控件图像缩放至预设尺寸,得到第一缩放图像;

将控件模板图像缩放至预设尺寸,得到第二缩放图像;

根据第一缩放图像,生成第一灰度图;

根据第二缩放图像,生成第二灰度图;

根据第一灰度图计算得到第一灰度平均值;

根据第二灰度图计算得到第二灰度平均值;

基于第一缩放图像中的每个像素点,根据第一灰度平均值确定第一缩放图像所对应的指纹;

基于第二缩放图像中的每个像素点,根据第二灰度平均值确定第二缩放图像所对应的指纹;

根据第一缩放图像所对应的指纹以及第二缩放图像所对应的指纹,确定哈希相似度。

本申请实施例中,提供了一种控件识别装置,采用上述装置,哈希相似度的作用是对每张图像生成一个指纹字符串,然后比较不同图像的指纹。结果越接近,就说明图片越相似,从而有效地提升了图像比对的准确性。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

确定模块204,具体用于获取原始控件图像所对应的第一平均值和第一标准差;

获取控件模板图像所对应的第二平均值和第二标准差;

获取原始控件图像与控件模板图像的协方差;

根据第一平均值、第一标准差、第二平均值、第二标准差和协方差,确定结构相似度。

本申请实施例中,提供了一种控件识别装置,采用上述装置,SSIM使用的两张图像中,一张为未经压缩的无失真图像,另一张为失真后的图像。也是视频质量评价的一种优秀算法。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,

获取模块201,还用于从待识别图像中获取M个控件图像,其中,M为大于或等于1的整数,M个控件图像包括原始控件图像,且M个控件图像中的每个控件图像对应于一个置信度分值;

确定模块204,还用于根据M个控件图像中每个控件图像所对应的置信度分值,确定置信度最大值;

获取模块201,还用于若置信度最大值所对应的控件图像为原始控件图像,则获取(M-1)个控件图像中每个控件图像与原始控件图像的重合度;

处理模块202,还用于若(M-1)个控件图像中存在至少一个控件图像与原始控件图像的重合度大于或等于重合度阈值,则滤除至少一个控件图像。

本申请实施例中,提供了一种控件识别装置,采用上述装置,对于目标具体位置定位过程可能会产生较多的候选区域。实际看到的情形就是好多区域的交叉重叠,难以满足实际的应用,因此,采用非极大值抑制算法能够找出更加准确的控件图像。

可选地,在上述图13所对应的实施例的基础上,本申请实施例提供的控件识别装置20的另一实施例中,控件识别装置20还包括发送模块206;

获取模块201,具体用于接收终端设备发送的待识别图像;

发送模块206,还用于生成模块205根据原始控件图像生成控件识别结果之后,向终端设备发送控件识别结果,以使终端设备根据控件识别结果,显示原始控件图像,并在待识别图像上突出展示原始控件图像。

本申请实施例中,提供了一种控件识别装置,采用上述装置,用户不但可以从前端得到图像的可视化效果,还可以从后端得到图像上控件的位置信息和类别信息等,由此提升方案的灵活性和实用性。

本申请提供了一种控件识别装置,可部署于服务器,请参阅图14,图14是本申请实施例提供的一种服务器结构示意图,该服务器300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在服务器300上执行存储介质330中的一系列指令操作。

服务器300还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341,例如Windows Server

在本申请实施例中,该服务器所包括的CPU 322还具有以下功能:

获取待识别图像;

从待识别图像中获取原始控件图像,其中,原始控件图像为原始尺寸大小;

对原始控件图像进行缩放处理,得到控件图像集合,其中,控件图像集合包括N个控件图像,N个控件图像中的每个控件图像对应一个尺寸,且N个控件图像中的每个控件图像所对应的尺寸不相等,N为大于1的整数;

将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,其中,N个置信度分值中的每个置信度分值与每个控件图像具有一一对应的关系;

根据N个置信度分值,从控件图像集合中确定目标控件图像,其中,目标控件图像所对应的置信度分值为N个置信度分值中的最大值;

若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果,其中,控件识别结果包括原始控件图像在待识别图像中的位置信息。

上述实施例中由服务器所执行的步骤可以基于该图14所示的服务器结构。

本申请提供了一种控件识别装置,可部署于服务器,请参阅图15,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端设备可以为包括手机、平板电脑、个人数字助理(Personal DigitalAssistant,PDA)、销售终端设备(Point of Sales,POS)、车载电脑等任意终端设备,以终端设备为手机为例:

图15示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图15,手机包括:射频(Radio Frequency,RF)电路410、存储器420、输入单元430、显示单元440、传感器450、音频电路460、无线保真(wireless fidelity,WiFi)模块470、处理器480、以及电源490等部件。本领域技术人员可以理解,图15中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图15对手机的各个构成部件进行具体的介绍:

RF电路410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将设计上行的数据发送给基站。通常,RF电路410包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路410还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。

存储器420可用于存储软件程序以及模块,处理器480通过运行存储在存储器420的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元430可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元430可包括触控面板431以及其他输入设备432。触控面板431,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板431上或在触控面板431附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板431可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器480,并能接收处理器480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板431。除了触控面板431,输入单元430还可以包括其他输入设备432。具体地,其他输入设备432可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元440可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元440可包括显示面板441,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板441。进一步的,触控面板431可覆盖显示面板441,当触控面板431检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板441上提供相应的视觉输出。虽然在图15中,触控面板431与显示面板441是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板431与显示面板441集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度,接近传感器可在手机移动到耳边时,关闭显示面板441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路460、扬声器461,传声器462可提供用户与手机之间的音频接口。音频电路460可将接收到的音频数据转换后的电信号,传输到扬声器461,由扬声器461转换为声音信号输出;另一方面,传声器462将收集的声音信号转换为电信号,由音频电路460接收后转换为音频数据,再将音频数据输出处理器480处理后,经RF电路410以发送给比如另一手机,或者将音频数据输出至存储器420以便进一步处理。

WiFi属于短距离无线传输技术,手机通过WiFi模块470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图15示出了WiFi模块470,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器480是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器480可包括一个或多个处理单元;可选的,处理器480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器480中。

手机还包括给各个部件供电的电源490(比如电池),可选的,电源可以通过电源管理系统与处理器480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。

在本申请实施例中,该终端设备所包括的处理器480还具有以下功能:

获取待识别图像;

从待识别图像中获取原始控件图像,其中,原始控件图像为原始尺寸大小;

对原始控件图像进行缩放处理,得到控件图像集合,其中,控件图像集合包括N个控件图像,N个控件图像中的每个控件图像对应一个尺寸,且N个控件图像中的每个控件图像所对应的尺寸不相等,N为大于1的整数;

将控件图像集合中的每个控件图像与控件模板图像进行匹配,得到N个置信度分值,其中,N个置信度分值中的每个置信度分值与每个控件图像具有一一对应的关系;

根据N个置信度分值,从控件图像集合中确定目标控件图像,其中,目标控件图像所对应的置信度分值为N个置信度分值中的最大值;

若目标控件图像所对应的置信度分值大于或等于置信度阈值,且,原始控件图像满足控件图像输出条件,则根据原始控件图像生成控件识别结果,其中,控件识别结果包括原始控件图像在待识别图像中的位置信息。

上述实施例中由终端设备所执行的步骤可以基于该图15所示的终端设备结构。

本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如前述各个实施例描述的方法。

本申请实施例中还提供一种包括程序的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例描述的方法。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号