图标位置识别方法、装置及终端设备与流程

文档序号:12721256阅读:241来源:国知局
图标位置识别方法、装置及终端设备与流程

本发明涉及图像识别领域,具体而言,涉及一种图标位置识别方法、装置及终端设备。



背景技术:

网络游戏上线时,对上线效率具有较高的要求,为了提高网络游戏上线的效率,目前采用的做法是实行免审自动上线。但是,这样做的弊端在于,部分网络游戏图标存在logo(商标)角标的情况或者截图出现水印的情况,如何准确的判断这些logo角标和水印的位置并加以去除成为亟待解决的难题。业界当前处理方案是使用OpenCV(基于开源许可发行的跨平台计算机视觉库)组件训练logo及样本图片进行物体识别,但是这种方案对于图片的像素清晰度要求高,且算法太过复杂,需要大量的logo样本图片进行训练,识别效率低,使用复杂。



技术实现要素:

有鉴于此,本发明的目的在于提供一种图标位置识别方法、装置及终端设备,以改善上述的问题。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种图标位置识别方法,用于对图片中的图标位置进行识别,该方法包括以下步骤:选取样本图标;提取所述图片和所述样本图标各自的图像特征点;将所述图片的图像特征点与所述样本图标的图像特征点进行匹配,得到相互匹配的特征点组合;计算每一个特征点组合中两个图像特征点之间的距离值,得到参考距离值;当所述特征点组合中两个图像特征点之间的距离值小于所述参考距离值时,将所述图像特征点组合作为一最佳特征点组合;当所述最佳特征点组合的个数超过阈值时,计算所有所述最佳特征点组合中所述图片中的图像特征点的平均坐标值;将所述平均坐标值对应于所述图片中的坐标作为所述图片中图标的坐标。

第二方面,本发明实施例提供了一种图标位置识别装置,用于对图片中的图标位置进行识别,所述装置包括:

选取模块,用于选取样本图标;

提取模块,用于提取所述图片和所述样本图标各自的图像特征点;

匹配模块,用于将所述图片的图像特征点与所述样本图标的图像特征点进行匹配,得到相互匹配的特征点组合;

计算模块,用于计算每一个特征点组合中两个图像特征点之间的距离值,得到参考距离值;

筛选模块,用于将所述特征点组合中两个图像特征点之间的距离值小于所述参考距离值的图像特征点组合作为一最佳特征点组合;

所述计算模块还用于当所述最佳特征点组合的个数超过阈值时,计算所有所述最佳特征点组合中所述图片中的图像特征点的平均坐标值;

定位模块,用于将所述平均坐标值对应于所述图片中的坐标作为所述图片中图标的坐标。

第三方面,本发明实施例提供了一种终端设备,包括:

处理器;

存储器;以及

图标位置识别装置,所述图标位置识别装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模块,所述图标位置识别装置包括:

选取模块,用于选取样本图标;

提取模块,用于提取所述图片和所述样本图标各自的图像特征点;

匹配模块,用于将所述图片的图像特征点与所述样本图标的图像特征点进行匹配,得到相互匹配的特征点组合;

计算模块,用于计算每一个特征点组合中两个图像特征点之间的距离值,得到参考距离值;

筛选模块,用于将所述特征点组合中两个图像特征点之间的距离值小于所述参考距离值的图像特征点组合作为一最佳特征点组合;

所述计算模块还用于当所述最佳特征点组合的个数超过阈值时,计算所有所述最佳特征点组合中所述图片中的图像特征点的平均坐标值;

定位模块,用于将所述平均坐标值对应于所述图片中的坐标作为所述图片中图标的坐标。

本发明提供的图标位置识别方法、装置及终端设备,通过提取样本图标与图片的图像特征点,获取样本图标与图片中相互匹配的特征点组合,并在特征点组合中筛选出最佳的特征点组合,在最佳的特征点组合满足要求时,计算所有最佳特征点组合中图片中的图像特征点的平均坐标值,以此平均坐标值作为图片中图标的位置坐标。相较于现有技术,本发明在获取图标位置时不需要初始化和训练特征点,且对图片的像素清晰度要求不高,识别速度快,准确率高,可复用性强。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本发明实施例提供的终端设备的方框示意图。

图2是本发明实施例提供的图标位置识别装置的功能模块架构示意图。

图3是本发明实施例提供的图标位置识别方法的流程图。

图标:100-终端设备;110-图标位置识别装置;111-选取模块;112-提取模块;113-匹配模块;114-计算模块;115-筛选模块;116-定位模块;120-存储器;130-处理器。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

本发明实施例提供的图标位置识别方法及装置应用于终端设备。该终端设备可以是,但不限于,个人电脑(personal computer,PC)、智能手机、平板电脑、个人数字助理(personal digital assistant,PDA)、移动上网设备(mobile Internet device,MID)等。

请参照图1,是该终端设备100的方框示意图。该终端设备100包括图标位置识别装置110、存储器120和处理器130。

存储器120、处理器130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。图标位置识别装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器120中或固化在终端设备100的操作系统(operating system,OS)中的软件功能模块。处理器130用于执行所述存储器120中存储的可执行模块,例如图标位置识别装置110所包括的软件功能模块及计算机程序等。

其中,存储器120可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器120用于存储程序,处理器130在接收到执行指令后,执行该程序。

请参照图2,是图标位置识别装置110的功能模块架构示意图。该图标位置识别装置110用于快速识别图片中的图标及其位置。该图标位置识别装置110包括选取模块111、提取模块112、匹配模块113、计算模块114、筛选模块115和定位模块116。

其中,选取模块111用于选取样本图标。在终端设备100中存储有样本图标库,样本图标库中包括多个样本图标,该多个样本图标为各种常见的logo(商标)、水印。在本实施例中,选取模块111随机地选取样本图标库中的一个样本图标。

提取模块112用于提取图片和样本图标各自的图像特征点。图像特征点指图像中具有鲜明特性并能够有效反映图像本质特征且能够标识图像中目标物体的点。图像特征点的获取可以通过多种视觉算法实现,比如SIFT(Scale-invariant feature transform,尺度不变特征变换)算法、SURF(Speeded Up Robust Feature,加速的具有鲁棒性的特征)算法等,在本实施例中,图标为logo,采用SIFT算法进行图片和样本图标的图像特征点提取。

匹配模块113用于将图片的图像特征点与样本图标的图像特征点进行匹配,得到相互匹配的特征点组合。由于图片和样本图标均包括多个图像特征点,图片中的某些图像特征点和样本图标中的某些图像特征点匹配,即具有相同的图像特征点。匹配模块113通过图片与样本图标相互匹配的图像特征点得到相互匹配的特征点组合,例如,图片中存在一图像特征点P1,样本图标中存在一图像特征点P2,P1和P2相互匹配,则得到特征点组合(P1,P2)。对于特征点的匹配可以根据多种匹配算法实现,在本实施例中,采用OpenCV中的FLANN-BASED算法进行匹配。

特征点组合的数量依实际情况而定,匹配模块113得到特征点组合后,计算模块114用于计算每一个特征点组合中两个图像特征点之间的距离值,得到参考距离值。比如特征点组合为(P1,P2)时,计算P1和P2之间的距离。按照上述方式得到每一个特征组合点的距离值后,计算模块114对得到的每一个距离值进行排序,得到最小的距离值,排序挑选最小的距离值的方式更加快速准确。得到最小的距离值后,计算模块114通过该最小的距离值得到参考距离值,在本实施例中,参考距离值的计算方法为:

L=α×Dmin

其中,L为所需求得的参考距离值,α为预设系数,Dmin为最小的距离值。α的取值依据实际应用场景设置,比如在logo去除中可以设置α的值为3。

计算模块114计算得到参考距离值后,筛选模块115将每一个特征点组合中两个图像特征点之间的距离值与该参考距离值进行比较,如果两个图像特征点之间的距离值小于参考距离值,则筛选模块115将该特征点组合作为一最佳特征点组合,获取最佳特征点组合的目的在于对特征点组合进行选择,得到更加精确的结果,参考距离值可以理解为一线性函数,在该线性函数以下的距离值更加的贴近,数值差距不是很大,更便于精确定位图标的位置。例如,最小的距离值为1,预设的系数为3,则参考距离值为1×3=3,最佳特征点组合的集合中,包括距离值为1.5、1.7、1.9、5.5、7.8对应的特征点组合,则距离值为1.5、1.7、1.9对应的特征点组合被作为最佳特征点组合。

最佳特征点组合确定之后,当最佳特征点组合的个数超过阈值时,计算模块114计算所有最佳特征点组合中图片中的图像特征点的平均坐标值。该阈值的值根据实际应用场景设定,本实施例对此不做限定。图像特征点的平均坐标值计算方法可以采用将最佳特征点组合中图片中的图像特征点的横坐标值和竖坐标值分别求平均值的方式得到,例如,最佳特征点组合的个数为6个,阈值为3,6>3,符合要求,假定6个最佳特征点组合中图片的图像特征点的坐标分别为(2,5)、(4,7)、(6,9)、(9,6)、(11,13)、(16,14),则平均的坐标值为:

最终计算得到平均坐标值为(8,9)。

计算模块114计算得到平均坐标值后,定位模块116用于将平均坐标值对应于图片中的坐标作为图片中图标的坐标。例如按照上述的示例,在图片中,坐标值为(8,9)的坐标则是图片中图标存在的位置。

当匹配模块113没有匹配到相互匹配的图像特征点或者筛选模块115筛选得到的最佳特征点组合的数量小于阈值时,则表明图片中没有图标。选取模块111则进行下一轮的选取,从图标库中选取另一个样本图标重新进行识别。

通过本发明实施例提供的图标位置识别装置110,可以对图片中的图标进行快速识别定位,省去了传统识别方式中需要初始化和训练特征点的步骤,且本发明应用时对图片的像素清晰度要求不高,识别速度快,准确率高,可复用性强。

本发明实施例还提供了一种图标位置识别方法,请参照图3,该图标位置识别方法包括以下步骤:

步骤S201,选取样本图标。

在本发明实施例中,该步骤S201可以通过选取模块111执行。

步骤S202,提取图片和样本图标各自的图像特征点。

在本实施例中,该步骤S202可以通过提取模块112执行。

步骤S203,将图片的图像特征点与样本图标的图像特征点进行匹配,得到相互匹配的特征点组合。

在本实施例中,该步骤S203可以通过匹配模块113执行。

步骤S204,计算每一个特征点组合中两个图像特征点之间的距离值,得到参考距离值。优选地,该步骤S204包括:计算每一个特征点组合中两个图像特征点之间的距离值,得到最小的距离值,通过所述最小的距离值得到参考距离值。其中,通过将每一个距离值进行排序,得到最小的距离值,将最小的距离值乘以预设系数得到参考距离值。

在本实施例中,该步骤S204可以通过计算模块114执行。

步骤S205,判断特征点组合中两个图像特征点之间的距离值是否小于参考距离值。如果是,则执行步骤S206,如果否,则执行步骤S201以选取另一样本图标进行识别。

步骤S206,将该图像特征点组合作为一最佳特征点组合。

在本实施例中,步骤S205和步骤S206可以通过筛选模块115执行。

步骤S207,判断最佳特征点组合的个数是否超过阈值。如果是,则执行步骤S208,如果否,则执行步骤S201以选取另一样本图标进行识别。

步骤S208,计算所有最佳特征点组合中图片中的图像特征点的平均坐标值。

在本实施例中,步骤S208可以通过计算模块114执行。

步骤S209,将平均坐标值对应于图片中的坐标作为图片中图标的坐标。

在本实施例中,步骤S209可以通过定位模块116执行。

由于该图标位置识别方法中的各个步骤均可通过图标位置识别装置110中的各个功能模块执行,其原理已在前述实施例中进行说明,此处不再赘述。

综上所述,本发明实施例提供了一种图标位置识别方法、装置及终端设备。通过提取样本图标与图片的图像特征点,获取样本图标与图片中相互匹配的特征点组合,并在特征点组合中筛选出最佳的特征点组合,在最佳的特征点组合满足要求时,计算所有最佳特征点组合中图片中的图像特征点的平均坐标值,以此平均坐标值作为图片中图标的位置坐标。相较于现有技术,本发明在获取图标位置时不需要初始化和训练特征点,且对图片的像素清晰度要求不高,识别速度快,准确率高,可复用性强。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1