模型的训练方法和装置、存储介质、电子装置与流程

文档序号:14849641发布日期:2018-07-03 21:01阅读:186来源:国知局
模型的训练方法和装置、存储介质、电子装置与流程

本发明涉及互联网领域,具体而言,涉及一种模型的训练方法和装置、存储介质、电子装置。



背景技术:

机器学习ml(machinelearning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能;它是人工智能的核心,是使计算机具有智能的一种途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。

影响机器学习的最重要的因素是环境向模型提供的信息,或者更具体地说是信息的质量,知识库里存放的是指导执行部分动作的一般原则,但环境向学习模型提供的信息却是各种各样的,如果信息的质量比较高,与一般原则的差别比较小,则学习部分比较容易处理;如果向学习模型提供的是杂乱无章的指导执行具体动作的具体信息,则学习模型需要在获得足够数据之后,删除不必要的细节,进行总结推广,形成指导动作的一般原则,放入知识库,这样学习部分的任务就比较繁重,设计起来也较为困难。

在相关技术中,往往采用纯人工的方式采模型学习的样本,而采集大量的样本需要花费大量的时间,从而影响模型学习或训练的效率。

针对相关技术中对模型进行训练的效率较低的技术问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种模型的训练方法和装置、存储介质、电子装置,以至少解决相关技术中对模型进行训练的效率较低的技术问题。

根据本发明实施例的一个方面,提供了一种模型的训练方法,包括:获取多张第一类图像;在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,其中,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的;使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,其中,第二模型用于识别目标图像中的字符。

根据本发明实施例的另一方面,还提供了一种模型的训练装置,包括:获取单元,用于获取多张第一类图像;图像处理单元,用于在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,其中,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的;训练单元,用于使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,其中,第二模型用于识别目标图像中的字符。

根据本发明实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的方法。

根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器通过计算机程序执行上述的方法。

在本发明实施例中,获取多张第一类图像;在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的;使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,第二模型用于识别目标图像中的字符,由于训练使用的多张第二类图像是自动生成的而非人工采集的,可以解决相关技术中对模型进行训练的效率较低的技术问题,进而达到了提高模型训练的效率的技术效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的模型的训练方法的硬件环境的示意图;

图2是根据本发明实施例的一种可选的模型的训练方法的流程图;

图3是根据本发明实施例的一种可选的模型的训练方法的流程图;

图4是根据本发明实施例的一种可选的游戏场景图片的示意图;

图5是根据本发明实施例的一种可选的掩码图的示意图;

图6是根据本发明实施例的一种可选的游戏场景图片的示意图;

图7是根据本发明实施例的一种可选的游戏场景图片的示意图;

图8是根据本发明实施例的一种可选的游戏场景图片的示意图;

图9是根据本发明实施例的一种可选的掩码图的示意图;

图10是根据本发明实施例的一种可选的模型的训练装置的示意图;以及

图11是根据本发明实施例的一种终端的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

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

首先,在对本发明实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:

cnn:全称为convolutionalneuralnetwork卷积神经网络。

iid:全称为independentandidenticallydistributed,独立同分布。

sample:样本。

opencv:opensourcecomputervisionlibrary,一种库文件。

computervision:即机器视觉。

alphablend函数,用来显示具有指定透明度的图像。

根据本发明实施例的一方面,提供了一种模型的训练方法的方法实施例。

可选地,在本实施例中,上述模型的训练方法可以应用于如图1所示的由服务器101所构成的硬件环境中。本发明实施例的模型的训练方法可以由服务器101来执行。

可选地,上述系统可仅包括服务器101,也可还包括用户终端103,此时,服务器101相当于为用户终端提供模型训练的服务,由用户终端提供少量的第一类图像和字符贴图,由服务器101为其生成大量的训练图像(即第二类图像)。

图2是根据本发明实施例的一种可选的模型的训练方法的流程图,如图2所示,该方法可以包括以下步骤:

步骤s202,获取多张第一类图像(记为第一图像集合)。

上述的第一类图像即原始图像,相对于第二类图像而言,即未携带有字符贴图的背景图像,第一类图像为对第三客户端的显示界面进行图像采集(如截屏)得到的;第三客户端用于显示虚拟场景(如虚拟的游戏场景)、多媒体信息(如电视、电影、短片)等。

步骤s204,在多张第一类图像中添加对应的字符贴图,得到多张第二类图像(记为第二图像集合),每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的。

需要说明的是,上述的字符贴图来自于第三图像集合,第三图像集合中保存有多张字符贴图,每张字符贴图中表示一个字符,如为文字或者数字的掩码图。上述的标签即用于表示字符贴图中正确字符的信息,如直接为“字符”本身,或字符的指示信息,如字符的编码等。

由于实际场景中,即采集到的目标图像中会存在背景等信息,换言之,进行字符识别时,至少存在背景这一干扰,故若直接使用字符贴图进行训练,会导致模型学习到的知识有限,可能导致不能从背景中准确识别出字符;为了克服该缺陷,可以将字符贴图添加至背景图像中,如同一字符贴图添加至不同的背景图像中,从而可以使得到的第二图像集合中训练图像的数量远多于第一图像集合中背景图像的数量,以对模型进行训练,不同于相关技术中手动采集各种背景下具有字符的第二类图像(即训练图像),本申请可以按照上述方式自动生成大量的训练图像。

可选地,字符贴图中的字符的字体与待识别的目标图像中的字体相同,换言之,需要识别什么样字体的字符,就选取具有相同字体的字符贴图添加到第一类图像中,将得到的第二类图像进行训练。

步骤s206,使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,第二模型用于识别目标图像中的字符。

本申请结合采集的小批量样本(即第一图像集合),使用数据增强的办法(即步骤s204所说的添加字符贴图到背景图像中),基于程序自动生成大量的带标签样本(即第二图像集合),从而满足机器学习所需要的数据样本规模,该方案可以节省大量的人工开销,同时能够覆盖足够多的场景,因为是与原始场景进行混合产生的新样本,因此新样本满足机器学习的独立同分布的样本假设。

通过上述步骤s202至步骤s206,获取多张第一类图像;在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的;使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,第二模型用于识别目标图像中的字符,由于训练使用的多张第二类图像是自动生成的而非人工采集的,可以解决相关技术中对模型进行训练的效率较低的技术问题,进而达到了提高模型训练的效率的技术效果。

下面结合图2所示的步骤进一步详述本申请的技术方案:

在步骤s202提供的技术方案中,获取多张第一类图像。

上述的第一类图像是对第三客户端进行图像采集到的,第三客户端、第一客户端以及第二客户端可以为同一类应用的客户端,如游戏应用的客户端,此举在于预先采集具有不同场景的背景图像,使得模型能够抗不同背景的干扰,在不同背景下均能识别出其中的字符。

类似地,在多张第一类图像中添加对应的字符贴图之前,还可以预先才几号字符贴图:获取第三类图像,即具有字符的图像,第三类图像为对第一客户端的显示界面进行截图得到的;从第三类图像中提取字符的掩码图为字符贴图。

可选地,为了提高从第三类图像中提取字符的效率,可以采用模板匹配方法进行提取。

在步骤s204提供的技术方案中,在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,其中,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的。

(1)每个字符存在一对多的关系,即一个字符可以得到多张训练图像(第二类图像)

上述的字符贴图为多张,在多张第一类图像中添加对应的字符贴图,得到多张第二类图像时,可按照如下步骤实现:

步骤s12,将多张字符贴图中的任意一张添加到第一图像集合的第一类图像中,此处的添加可以是将字符贴图分别添加至第一图像集合的每张第一类图像中,也即,字符贴图与每张第一类图像至少生成一张第二类图像。

步骤s14,在多张字符贴图中(即第三图像集合中)存在未被添加过的字符贴图(记为第一字符贴图)的情况下,从第三图像集合中获取一张第一字符贴图,第三图像集合中的至少两张字符贴图表示的字符不同、且每张字符贴图具有用于标识字符贴图所表示的字符的标签。

步骤s16,将获取的第一字符贴图添加至第一类图像中,得到第二类图像。

可选地,在步骤s12和步骤s16中,可将获取的字符贴图分别添加到第一图像集合的每张第一类图像中,其相当于字符贴图与第一图像集合的每张第一类图像相结合得到至少一张第二类图像。

重复上述步骤s14和s16,直至第三图像集合中不存在未被添加过的字符贴图。

(2)对字符贴图进行处理

在将获取的第一字符贴图添加至第一类图像中,得到多张第二类图像的过程中(在上述的步骤s12和步骤s16中),可以按照下述方式实现:

步骤s22,采用多种图像处理方式中的至少一种图像处理方式对第一字符贴图进行图像处理,得到多个第二字符贴图,其中,多个第二字符贴图中的任意两个第二字符贴图采用的图像处理方式不同。

采用多种图像处理方式中的至少一种图像处理方式对第一字符贴图进行图像处理包括以下至少之一:

对第一字符贴图进行图像拉伸处理,可以是x轴拉伸,也可是y轴拉伸,还可是x轴和y轴一起拉伸(拉伸的比例可相同或不相同),同一图片可以按照上述方式拉伸多次得到多个第二字符贴图;

对第一字符贴图进行图像旋转处理,同一第一字符贴图可以按照不同的旋转角度旋转多次得到多张第二字符贴图;

对第一字符贴图进行图像裁剪处理,同一第一字符贴图可以按照不同的裁剪量进行裁剪得到多张第二字符贴图;

将为第一字符贴图配置的在第一类图像中的添加位置由第一位置变更为第二位置,第一位置为原始默认配置的位置,同一第一字符贴图可以分配配置到多个不同的第二位置,相当于同一第一字符贴图可得到多张第二字符贴图。

需要说明的是,相同的第一字符贴图所经过的处理方式不同,应理解为所得到的第二字符贴图不同,在一轮处理中一个字符贴图a经过了拉伸处理,得到字符贴图b,在另一轮处理中字符贴图a经过了拉伸处理和旋转处理,得到字符贴图c,那么b和c应理解为不同的字符贴图。

步骤s24,将多个第二字符贴图分别添加至第一类图像中,得到多个第二类图像,其中,第二类图像为在一个第一类图像中添加一个第二字符贴图得到的、且任意两个第二类图像中添加的字符贴图不同,此处的不同应理解为字符本身不同,或相同字符但经过的处理方式不同。

若第一图像集合中的背景图像的数量为m,对于图像处理的组合方式至少包括()种,采用上述方式得到的第二图像集合中的训练图像的数量至少是m的15倍,且考虑到字符在背景图像中的位置可以是多个,以10个为例,其相当于第二图像集合中的训练图像的数量至少是m的150倍,其相当于每个字符可以得到至少150个训练图像。

(3)透明度的处理

可选地,在将获取的第一字符贴图添加至第一类图像中,得到第二类图像的过程中,如在上述的步骤s12和步骤s16中:将获取的字符贴图添加到第一类图像中时,设置字符贴图在第一类图像中的透明度,得到第二类图像。

可选地,上述的透明度可以进行配置,如10%、20%、30%等,假设有10个透明度等级供选择,那么每个字符贴图可以设置10个等级,此时第二图像集合中的训练图像的数量至少是m的150*10倍,相当于每个字符可以得到至少1500个训练图像。

(4)添加噪音

可选地,在将多个第二字符贴图分别添加至第一类图像中,得到多个第二类图像的过程中,如在上述的步骤s12和步骤s16中:将第二字符贴图添加至第一类图像中,并将图像噪声添加至第一类图像中,得到第二类图像。

上述的图像噪声包括但不局限于随机噪声和高斯白噪声,假设随机噪声和高斯白噪声均有10个参数可以选择,且随机噪声和高斯白噪声可以二选一或者均选择,那么第二图像集合中的训练图像的数量至少是m的1500*(2+1)*10*10倍,相当于每个字符可以得到至少450000个训练图像。

可见,通过本申请的上述技术方案,可以通过采集的少量背景图像生成大量的训练图像,且由于每个字符贴图均有已经校验过的标签,故可直接作为生成的训练图像的标签,从而减少人为的收集训练的过程。

在步骤s206提供的技术方案中,使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,其中,第二模型用于识别目标图像中的字符。

可选地,在使用多张第二类图像对第一模型进行训练,得到训练好的第二模型之后,运行第二模型的客户端接收到识别请求,识别请求用于请求对目标图像中的字符进行识别;响应于识别请求,通过第二模型识别出目标图像中的字符。

可选地,在通过第二模型识别出目标图像中的字符之后,将从目标图像中识别出的字符发送给虚拟场景中的目标对象,目标对象为第二客户端所显示的虚拟场景中的非玩家控制对象(如ai),目标图像为对第二客户端进行截图得到的。

上述内容仅以第三图像集合中存在一种字体的字符贴图为例进行说明,若待识别的字符可能为多种字体,则可以将其余字体重复上述方案进行训练即可。

作为一种可选的实施例,下面以游戏为例详述本申请的实施例:

使用深度增强学习来训练游戏的ai,往往要求能够获取游戏中的各种参数或者字符串含义,例如金币数、里程、击杀数、得分奖励等等。这些参数会作为深度增强学习的激励函数的参考,因为游戏内的字符会受到游戏内容的干扰,因此采用纯模板匹配的方式不能很好的识别这些字符。需要使用机器学习的方式对游戏的字符进行识别,机器学习的前提就是需要游戏内字符的样本,而且样本的数量要能够尽量覆盖足够多的场景,这样才能使得得到的机器学习的模型有足够的泛化能力。

相关技术中可通过纯人工的方式采集学习的样本,本申请的技术方案中还提供了基于图像模版匹配的方式自动采集学习的样本。但是这些方式存在如下缺陷:

1)由于通常样本的数量都会从几万到几十万不等(根据游戏的画面复杂程度变化),采用相关技术中使用纯人工的方式从游戏画面中采集字符的样本和打标签,因为需要覆盖足够多的游戏场景这种方式需要消耗大量的人力,而且速度和正确率也得不到保障。

2)基于图像模版匹配的方式采集字符样本的方法采集样本,因为模板匹配容易受到游戏渲染的干扰,容易使得匹配得到的样本标签出错,因此还是需要人工在后期去对比每个样本和其对应的标签是否正确,这同样需要耗费大量的人力资源,而且对场景的覆盖性也得不到保障。

本申请提出了一种样本采集和自动增强的方案,结合人工采集的小批量样本,使用数据增强的办法,基于程序自动生成游戏的带标签样本,从而满足机器学习所需要的数据样本规模。因为是与原始游戏场景进行混合产生的新样本,因此新样本满足机器学习的独立同分布的样本假设,使用该方案可以使得样本能够覆盖足够多的游戏场景,也能降低样本采集的人力开销。下面结合具体的实施方式进行详述。

(1)样本采集和增强的工作流程

如图3所示,游戏字符样本的生成流程如下所示:

步骤s302,通过程序采集游戏过程中的图像,即第一类图像,以尽量覆盖游戏中足够的游戏场景。

需要说明的是,上述的游戏可以是一个游戏或者多个游戏,如果是多个游戏,那么相当于训练一个游戏通用的字符识别模型。

步骤s304,基于图像模板匹配的方式采集少量的带标签样本。

即获取字符贴图的原始图像(图像中带有字符),通过图像模板匹配的方式识别出其中的字符,并将其标签设置为图像模板的标签。

在提取游戏的背景图片时,会采集大量的游戏场景图片,如图4所示的401部分的表现、距离等信息。

步骤s306,对已标签的样本进行审查和纠错,即查看原始图像中的字符是否为模板的字符。

步骤s308,将生成的小批量样本与游戏场景做混合生成新样本图片,对所有生成的样本图片应用拉伸、旋转、平移和图像噪声等进一步生成增强的字符样本。

将小批量样本中的字符贴图提取出来,如图5所示,提取出字符的掩码图(即字符贴图),通过字符掩码图将小批量样本中的字符提取出来,这步拿到的就是该字符没有背景的图片。

分别与步骤s302中采集到的游戏场景的图像进行混合,生成新样本图像(即第二类图像)。

将没有背景的样本图片(即字符贴图)与采集到的某个游戏场景图片混合生成新的带背景的字符样本,同时根据原始样本的标签给该样本标上机器学习需要的标签,图片的混合可以根据字符可能出现的位置而截取不同的背景区域与其混合。

例如,在酷跑类游戏中,如图6所示,数字(即601所示部分)始终显示于场景的上部,因此可截取游戏背景图片的上部与其混合,如果在多人在线战术竞技moba游戏中,如图7所示(701示出的为背景中的字符),因为游戏的场景是3d的,所以背景可以是整个游戏场景,因此我们生成的样本需要截取整个游戏场景,在酷跑的生成的样本图片中,新生成的字符样本带有新场景的蓝色背景。

使用不同的游戏场景截图重复上述步骤就可以自动生成大量的游戏样本。

可选地,在步骤s308中,还可进行样本与游戏场景的混合。

游戏中的字符与手写字符的区别在于,游戏字符通常形状规整,不会有过多种类的字体,但是因为游戏字符与游戏场景会混合渲染,这导致游戏字符识别会收到很大干扰,例如图6和图7中用黑框标出的数字,图6是酷跑的场景,图7是moba游戏的场景,可以看到这些数字都与背后的游戏场景进行了alphablend混合。因此数字的识别会收到场景本身的干扰。

还可以观察到,同一个游戏中不同场景之间,例如图8和图6中的数字字体、颜色基本一样,因此游戏的字符样本采集不需要像手写字符的采集方式,即其不需要采集不同的人手写的同一个字符(因为不同的人手写的字符其外观不一样),游戏字符样本的采集需要考虑的是同一个字体和颜色的字符在不同游戏场景下面的渲染效果,图6中字符区域601与图8中字符区域801背景颜色不同,分别用不同的填充(横线填充和竖线填充)来表示。

因此通过采集不同的游戏场景图片,然后使其和采集的小批量的样本进行alphablend混合从而大量的生成新的不同场景下的样本图片,因为进行混合时已经知道字符本身的标签,因此产生的新样本不需要再打标签,这可以节省大量的人工开销。

通过与游戏场景的混合可以得到大量的样本,但是这些样本可能并不能覆盖整个样本空间,这是因为:1)在游戏实际渲染中因为渲染算法的精度限制会导致实际渲染出来的字符有一定的噪声,这种噪声可以建模为随机噪声和高斯白噪声;2)在字符识别中还会有一定概率没有抓取完整的字符,例如图9所示的字符“2”就被裁剪了右边一部分;3)实际渲染中可能还会有字符的拉伸,旋转等情况出现。

因此根据以上问题,可以把已有的字符样本数据再做拉伸,旋转,平移以及引入随机噪声和高斯噪声(噪声的颜色可以随机或者固定选择某些颜色)等生成新的样本,这样可以增强样本的覆盖率,这一步因为使用的是已有的样本数据,因此也不需要人工标签。

通过本申请的技术方案,所产生的有益效果包括:1)样本采集的初始阶段只需要少量的获得小批量的带标签字符样本;2)因为是与原始游戏场景进行混合,新样本满足机器学习对样本的iid假设,对游戏场景图片的采集和混合操作都可以通过图像程序自动执行,而且样本的标签可以使用混合前原始样本的标签,这步可以产生大量的优质样本,同时不需要人工的介入;3)同时该方案还对样本进行了拉伸、平移、旋转以及随机噪声等加工,使得游戏的字符样本能够覆盖更多的渲染情况。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

根据本发明实施例的另一个方面,还提供了一种用于实施上述模型的训练方法的模型的训练装置。图10是根据本发明实施例的一种可选的模型的训练装置的示意图,如图10所示,该装置可以包括:获取单元1001、图像处理单元1003以及训练单元1005。

获取单元1001,用于获取多张第一类图像。

上述的第一类图像即原始图像,相对于第二类图像而言,即未携带有字符贴图的背景图像,第一类图像为对第三客户端的显示界面进行图像采集(如截屏)得到的;第三客户端用于显示虚拟场景(如虚拟的游戏场景)、多媒体信息(如电视、电影、短片)等。

图像处理单元1003,用于在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,其中,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的。

需要说明的是,上述的字符贴图来自于第三图像集合,第三图像集合中保存有多张字符贴图,每张字符贴图中表示一个字符,如为文字或者数字的掩码图。

由于实际场景中,即采集到的目标图像中会存在背景等信息,换言之,进行字符识别时,至少存在背景这一干扰,故若直接使用字符贴图进行训练,会导致模型学习到的知识有限,可能导致不能从背景中准确识别出字符;为了克服该缺陷,可以将字符贴图添加至背景图像中,如同一字符贴图添加至不同的背景图像中,从而可以使得到的第二图像集合中训练图像的数量远多于第一图像集合中背景图像的数量,以对模型进行训练,不同于相关技术中手动采集各种背景下具有字符的第二类图像(即训练图像),本申请可以按照上述方式自动生成大量的训练图像。

可选地,字符贴图中的字符的字体与待识别的目标图像中的字体相同,换言之,需要识别什么样字体的字符,就选取具有相同字体的字符贴图添加到第一类图像中,将得到的第二类图像进行训练。

训练单元1005,用于使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,其中,第二模型用于识别目标图像中的字符。

本申请结合采集的小批量样本(即第一图像集合),使用数据增强的办法,基于程序自动生成大量的带标签样本(即第二图像集合),从而满足机器学习所需要的数据样本规模,该方案可以节省大量的人工开销,同时能够覆盖足够多的场景,因为是与原始场景进行混合产生的新样本,因此新样本满足机器学习的独立同分布的样本假设。

需要说明的是,该实施例中的获取单元1001可以用于执行本申请实施例中的步骤s202,该实施例中的图像处理单元1003可以用于执行本申请实施例中的步骤s204,该实施例中的训练单元1005可以用于执行本申请实施例中的步骤s206。

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。

通过上述模块,获取多张第一类图像;在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的;使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,第二模型用于识别目标图像中的字符,由于训练使用的多张第二类图像是自动生成的而非人工采集的,可以解决相关技术中对模型进行训练的效率较低的技术问题,进而达到了提高模型训练的效率的技术效果。

上述的字符贴图为多张,图像处理单元可包括:获取模块,用于在多张字符贴图中存在未被添加过的第一字符贴图的情况下,从多张字符贴图中获取一张第一字符贴图,其中,多张字符贴图中的至少两张字符贴图表示的字符不同、且每张字符贴图具有用于标识字符贴图所表示的字符的标签;图像处理模块,用于将获取的第一字符贴图添加至第一类图像中,得到第二类图像。

可选地,上述图像处理模块还可用于:将获取的字符贴图添加到第一类图像中,并设置字符贴图在第一类图像中的透明度,得到第二类图像。

可选地,上述图像处理模块还可用于:将获取的字符贴图分别添加到多张第一类图像的每张第一类图像中,得到多张第二类图像,其中,多张第二类图像的张数多于多张第一类图像的张数。

可选地,上述图像处理模块可包括:处理子模块,用于采用多种图像处理方式中的至少一种图像处理方式对第一字符贴图进行图像处理,得到多个第二字符贴图,其中,多个第二字符贴图中的任意两个第二字符贴图采用的图像处理方式不同;添加子模块,用于将多个第二字符贴图分别添加至第一类图像中,得到多个第二类图像,其中,第二类图像为在一个第一类图像中添加一个第二字符贴图得到的。

可选地,上述处理子模块采用多种图像处理方式中的至少一种图像处理方式对第一字符贴图进行图像处理包括以下至少之一:

对第一字符贴图进行图像拉伸处理;

对第一字符贴图进行图像旋转处理;

对第一字符贴图进行图像裁剪处理;

将为第一字符贴图配置的在第一类图像中的添加位置由第一位置变更为第二位置。

可选地,添加子模块还用于将第二字符贴图添加至第一类图像中,并将图像噪声添加至第一类图像中,得到第二类图像。

可选地,本申请的装置还可包括:图像获取单元,用于在多张第一类图像中添加对应的字符贴图之前,获取第三类图像,其中,第三类图像为对第一客户端的显示界面进行截图得到的;提取单元,用于从第三类图像中提取字符的掩码图为字符贴图。

可选地,本申请的装置还可包括:接收单元,用于在使用多张第二类图像对第一模型进行训练,得到训练好的第二模型之后,接收到识别请求,其中,识别请求用于请求对目标图像中的字符进行识别;识别单元,用于响应于识别请求,通过第二模型识别出目标图像中的字符。

可选地,本申请的装置还可包括:发送单元,用于在通过第二模型识别出目标图像中的字符之后,将从目标图像中识别出的字符发送给目标对象,其中,目标对象为第二客户端所显示的虚拟场景中的非玩家控制对象,目标图像为对第二客户端进行截图得到的。

本申请提出了一种样本采集和自动增强的方案,结合人工采集的小批量样本,使用数据增强的办法,基于程序自动生成游戏的带标签样本,从而满足机器学习所需要的数据样本规模。因为是与原始游戏场景进行混合产生的新样本,因此新样本满足机器学习的独立同分布的样本假设,使用该方案可以使得样本能够覆盖足够多的游戏场景,也能降低样本采集的人力开销。

此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。

根据本发明实施例的另一个方面,还提供了一种用于实施上述模型的训练方法的服务器或终端。

图11是根据本发明实施例的一种终端的结构框图,如图11所示,该终端可以包括:一个或多个(图11中仅示出一个)处理器1101、存储器1103、以及传输装置1105(如上述实施例中的发送装置),如图11所示,该终端还可以包括输入输出设备1107。

其中,存储器1103可用于存储软件程序以及模块,如本发明实施例中的模型的训练方法和装置对应的程序指令/模块,处理器1101通过运行存储在存储器1103内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的模型的训练方法。存储器1103可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1103可进一步包括相对于处理器1101远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

上述的传输装置1105用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1105包括一个网络适配器(networkinterfacecontroller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1105为射频(radiofrequency,rf)模块,其用于通过无线方式与互联网进行通讯。

其中,具体地,存储器1103用于存储应用程序。

处理器1101可以通过传输装置1105调用存储器1103存储的应用程序,以执行下述步骤:

获取多张第一类图像;

在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,其中,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的;

使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,其中,第二模型用于识别目标图像中的字符。

处理器1101还用于执行下述步骤:

采用多种图像处理方式中的至少一种图像处理方式对第一字符贴图进行图像处理,得到多个第二字符贴图,其中,多个第二字符贴图中的任意两个第二字符贴图采用的图像处理方式不同;

将多个第二字符贴图分别添加至第一类图像中,得到多个第二类图像,其中,第二类图像为在一个第一类图像中添加一个第二字符贴图得到的。

采用本发明实施例,获取多张第一类图像;在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的;使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,第二模型用于识别目标图像中的字符,由于训练使用的多张第二类图像是自动生成的而非人工采集的,可以解决相关技术中对模型进行训练的效率较低的技术问题,进而达到了提高模型训练的效率的技术效果。

可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。

本领域普通技术人员可以理解,图11所示的结构仅为示意,终端可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobileinternetdevices,mid)、pad等终端设备。图11其并不对上述电子装置的结构造成限定。例如,终端还可包括比图11中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图11所示不同的配置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-onlymemory,rom)、随机存取器(randomaccessmemory,ram)、磁盘或光盘等。

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行模型的训练方法的程序代码。

可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

s32,获取多张第一类图像;

s34,在多张第一类图像中添加对应的字符贴图,得到多张第二类图像,其中,每张第二类图像为在一张第一类图像中添加字符贴图后得到的、且第二类图像的标签为所添加的字符贴图的标签,多张第一类图像中至少两张第一类图像中添加的字符贴图是不同的;

s36,使用多张第二类图像对第一模型进行训练,得到训练好的第二模型,其中,第二模型用于识别目标图像中的字符。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:

s42,采用多种图像处理方式中的至少一种图像处理方式对第一字符贴图进行图像处理,得到多个第二字符贴图,其中,多个第二字符贴图中的任意两个第二字符贴图采用的图像处理方式不同;

s44,将多个第二字符贴图分别添加至第一类图像中,得到多个第二类图像,其中,第二类图像为在一个第一类图像中添加一个第二字符贴图得到的。

可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

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

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

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

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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