包含文本的图像合成方法、装置、计算机设备和存储介质与流程

文档序号:32993675发布日期:2023-01-17 23:52阅读:37来源:国知局
包含文本的图像合成方法、装置、计算机设备和存储介质与流程

1.本技术涉及图像处理技术领域,尤其涉及一种包含文本的图像合成方法、装置、计算机设备和存储介质。


背景技术:

2.在涉及图像的文本检测、内容识别和内容分析等场景,通过训练好的文本检测算法可以对图像中的文本内容进行有效识别,节省人力物力。
3.为保证识别精度,前期需要采用大量的样本图像对文本检测算法进行训练,且需要每个字符在样本图像中都出现一定的数量,否则可能导致该文本检测算法在实际上线后存在文本检测精度较低的问题。
4.基于此,亟需一种可以模拟生成包含文本的图像素材的方法,以生成大量的样本图像,以满足包含文本的图像的文本检测算法的训练需求。


技术实现要素:

5.本技术实施例提供了一种包含文本的图像合成方法、装置、计算机设备和存储介质,能够基于模板图像的文本标注信息和文本填充参数,快速生成与模板图像同类型的多张合成图像。
6.第一方面,本技术提供了一种包含文本的图像合成方法,该方法包括:
7.基于模板图像的文本标注信息,预测模板图像的文本填充参数;文本标注信息用于指示模板图像包括的至少一个字段的原始文本和第一属性信息,文本填充参数用于指示模板图像中各字段的内容填充格式;
8.生成模板图像中各字段分别对应的合成文本;
9.根据第一属性信息和文本填充参数,在模板图像中依次采用各字段的合成文本替换对应的原始文本,得到多张合成图像。
10.第二方面,本技术提供了一种包含文本的图像合成装置,该装置包括:
11.参数预测模块,用于基于模板图像的文本标注信息,预测模板图像的文本填充参数;文本标注信息用于指示模板图像包括的至少一个字段的原始文本和第一属性信息,文本填充参数用于指示模板图像中各字段的内容填充格式;
12.文本生成模块,用于生成模板图像中各字段分别对应的合成文本;
13.内容替换模块,用于根据第一属性信息和文本填充参数,在模板图像中依次采用各字段的合成文本替换对应的原始文本,得到多张合成图像。
14.第三方面,本技术提供了一种计算机设备,该设备包括存储器和处理器,存储器存储有计算机程序,处理器执行该计算机程序时实现上述第一方面所示的包含文本的图像合成方法的步骤。
15.第四方面,本技术提供了一种计算机存储介质,该计算机存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述第一方面所示的包含文本的图像合成方法
的步骤。
16.第五方面,本技术提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现上述第一方面所示的包含文本的图像合成方法的步骤。
17.本技术实施例提供的技术方案至少可以达到以下有益效果:
18.本技术提供的包含文本的图像合成方法、装置、计算机设备和存储介质,基于模板图像的文本标注信息,预测模板图像的文本填充参数,以及生成模板图像中各字段分别对应的合成文本。其中,文本标注信息用于指示模板图像包括的至少一个字段的原始文本和第一属性信息,文本填充参数用于指示模板图像中各字段的内容填充格式。进而根据第一属性信息和文本填充参数,在模板图像中依次采用各字段的合成文本替换对应的原始文本,得到多张合成图像。在该方法中,首先,考虑到图像中的文本参数较为复杂,人工标注依赖于经验,且标注精度低,因此,对于任一模板图像,本技术只需对模板图像中的原始文本和第一属性信息进行简单标注,即可根据文本标注信息预测模板图像的文本填充参数。如此,通过预测模板图像的文本填充参数,而非人工在模板图像中标注文本填充参数,不仅可以提高文本填充参数的精度,还可以减少人工标注量,节省了大量的人力物力。其次,在确定模板图像的相关参数/信息后,通过各字段的合成文本替换模板图像中各字段的原始文本,即可生成与模板图像属于同类型的多张合成图像,提高了包含文本的图像合成效率,以在短时间内生成尽可能多的合成图像,满足算法训练的样本量需求。进一步地,由于多张图像均是基于模板图像的格式,通过替换文本内容得到的,因此,多张合成图像和模板图像所包含的字段数目相同,且除文本内容以外,多张合成图像和模板图像的第一属性信息和文本填充参数均相同。如此,合成图像与真实的模板图像之间的文本内容和格式等更加相似,从而提高了合成图像的真实性。
附图说明
19.图1是本技术一示例性实施例示出的一种包含文本的图像合成方法的流程示意图;
20.图2是本技术一示例性实施例示出的一种文本填充区域的区域偏移量示意图;
21.图3是本技术一示例性实施例示出的一种预测文本填充参数的流程示意图;
22.图4是本技术一示例性实施例示出的一种获取最优字段解的流程示意图;
23.图5是本技术一示例性实施例示出的一种字段相似度的计算流程示意图;
24.图6是本技术一示例性实施例示出的一种字段相似度的计算流程示意图;
25.图7是本技术一示例性实施例示出的一种个体变异处理流程示意图;
26.图8是本技术一示例性实施例示出的一种包含文本的图像合成装置的结构示意图;
27.图9是本技术一示例性实施例示出的一种计算机设备的结构示意图。
具体实施方式
28.为使本技术的目的、技术方案及优点更加清楚明白,下面将结合附图及实施例,对本技术的技术方案做进一步详细说明。
29.在对本技术实施例提供的包含文本的图像合成方法进行解释说明之前,先对本技术实施例的应用场景进行介绍。
30.针对图像进行文本检测时,为提高检测精度和检测速率,通常采用预先训练好的文本检测算法,或者具备文本检测功能的神经网络模型等,代替人工进行图像识别,从而获取图像中的文本信息。
31.然而,对于文本检测算法,其在上线应用前,需要采用大量的样本图像进行训练,以提高算法检测精度。
32.基于此,本技术提供了一种包含文本的图像合成方法,基于很小数目的真实图像,通过预先标注的模板图像的文本标注信息,预测模板图像的文本填充参数,进而针对模板图像,采用文本替换的方式,生成多张与模板图像类似的虚拟的合成图像,以满足图像的文本检测算法的训练样本量要求。
33.在一个示例性实施例中,本技术提供的包含文本的图像合成方法,可以应用在一个计算机设备中,也可以应用在至少两个计算机设备组成的系统中,以通过设备之间的信息交互来实现上述方法。
34.在一些实施例中,该计算机设备可以为终端或服务器。其中,终端可以但不限于为各种个人计算机、笔记本电脑、智能手机、平板电脑、便携式可穿戴设备等;服务器可以但不限于为至少一个独立服务器、分布式服务器、云服务器、服务器集群等。
35.需要说明的是,本技术实施例提供的一种包含文本的图像合成方法,其执行主体可以为任一计算机设备,也可以为包含文本的图像合成装置,该装置可以通过软件、硬件或者软硬件结合的方式实现成为计算机设备中处理器的部分或者全部。
36.接下来,将结合附图具体地对本技术实施例的技术方案,以及本技术实施例的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述;显然,所描述的实施例是本技术实施例一部分实施例,而不是全部的实施例。
37.在一个示例性实施例中,如图1所示,本技术实施例提供了一种包含文本的图像合成方法,应用于计算机设备中,该方法可以包括以下步骤:
38.步骤110:基于模板图像的文本标注信息,预测模板图像的文本填充参数;文本标注信息用于指示模板图像包括的至少一个字段的原始文本和第一属性信息,文本填充参数用于指示模板图像中各字段的内容填充格式。
39.应该理解的是,字段是与对象或类相关联的变量,用于描述该对象/类的某个特征。在本技术实施例中,一个模板图像中可以包括至少一个字段,且各字段的内容不同。
40.作为一个示例,模板图像包括“a”、“b”、“c”、“d”和“e”五个字段,每个字段对应不同的原始文本,以通过该原始文本来描述该字段的特征/内容。
41.示例性的,“a”字段的原始文本为“aa”,“b”字段的原始文本为“bb”,“c”字段的原始文本为“cc”,“d”字段的原始文本为“dd”,“e”字段的原始文本为“ee”。
42.可选地,对于一张模板图像而言,原始文本的识别可以通过光学文字识别(optical character recognition,ocr)技术来实现,其实现过程可参考相关的现有技术,在此不再赘述。
43.需要说明的是,上述仅以模板图像包括多个字段进行举例,在实际应用中,模板图
像中也可能只包括一个字段,本技术实施例对模板图像中所包括的字段数目不做限制。
44.在其中一些实施例中,对于模板图像而言,第一属性信息包括各字段的文本填充区域和字体颜色,文本填充参数包括各字段的字体类型、字体大小和区域偏移量。
45.其中,第一属性信息是人工预先标注好的信息,比如,采用虚线框标注各字段的文本填充区域,且各字段的字体颜色为黑色。
46.值得强调的是,文本填充区域为每个字段的最大可填充区域。对于同一个字段,不同的图像对应的字段信息中所包含的字符数是不同的,因此,原始文本在标注的文本填充区域中所占的文本真实区域是不同的。
47.基于此,需要进一步确定模板图像中各字段的原始文本所对应的文本真实区域。在一种可能的实现方式中,文本真实区域可以采用文本填充区域和区域偏移量来确定。
48.其中,区域偏移量用于描述一个字段的原始文本的文本真实区域相对于标注的文本填充区域的旋转角度、平移量、尺寸调整量等信息。
49.作为一个示例,参见图2,文本填充区域可以用rect表示,rect=(x,y,w,h),其中,x和y是文本填充区域的左上角的横纵坐标值,w和h是文本填充区域的宽度值和高度值。
50.则区域偏移量可以采用文本填充区域的四个边缘点的偏移尺度来表示。具体地,区域偏移量deviation={(tlx,tly),(trx,try),(dlx,dly),(drx,dry)};其中,(tlx,tly),(trx,try),(dlx,dly),(drx,dry)分别表示左上、右上、左下、右下四个点的偏移尺度。
51.其中,tlx是一个系数,实际偏移的像素点是tlx*w,tly实际偏移的像素点是tly*h,其他边缘点的像素点计算方式与此类似,不再赘述。
52.通过上述介绍,应该理解的是,对于一张模板图像,其中所包括的字段、字段的原始文本、字段填充区、字体颜色均是一些易于标注的信息,对人工经验要求不高,实际操作过程中易于实现。而模板图像中各字段的字体类型、字体大小和区域偏移量均有特定的格式要求,使得人工标注难度较高。
53.因此,本技术对于模板图像,只需简单标注各字段的原始文本、文本填充区域和字体颜色,得到文本标注信息。进而根据文本标注信息,采用相应的计算机算法来预测模板图像中较为复杂且难以直接标注的文本填充参数。
54.本技术预测文本填充参数的技术构思为:根据模板图像中各字段的原始文本,结合预设的多种字体类型、预设的多种字体颜色、预设的多种字体大小,以及预设的区域偏移量调整步长和调整量,生成与模板图像中各字段的原始文本相同的目标图像;同时,从模板图像中获取各字段的标准字段图像。进一步地,通过计算各字段的标准字段图像和多个目标图像之间的相似度,为模板图像中的每个字段确定其相似度最高的目标图像。最后,综合各字段对应的相似度最高的目标图像的参数,确定模板图像的文本填充参数。
55.基于该技术构思,本技术实施例提供了一种基于差分进化算法的自适应模板配置参数生成方法,以根据模板图像预先标注的文本标注信息,预测模板图像的文本填充参数。
56.接下来,对采用基于差分进化算法的自适应模板配置参数生成方法,获取文本填充参数的实现过程进行详细说明。
57.在本技术的示例性实施例中,如图3所示,上述步骤110的实现过程,可以包括以下步骤:
58.步骤410:生成模板图像对应的初始种群;初始种群包括多个初始个体,且每个初始个体对应模板图像的一个填充参数解,每个填充参数解包括模板图像中各字段分别对应的字段参数解。
59.其中,各字段的字段参数解用于指示该字段的内容填充格式。
60.在一种可能的实现方式中,上述步骤410的实现过程可以为:针对模板图像中所包括的至少一个字段的文本标注信息,基于预设的多种字体类型、预设的多种字体大小、预设的多种区域偏移量调整方式,随机生成该模板图像的多个填充参数解;根据随机生成的多个填充参数解,构建该模板图像的初始种群。
61.应该理解的是,一个模板图像对应一个初始种群,不同的模板图像对应的初始种群是不同的,需要根据各模板图像的文本标注信息,采用预设的随机解生成算法,实时生成各模板图像的初始种群。
62.理论上而言,若初始种群中随机生成的初始个体已穷尽所有的填充参数解,则可以直接基于该初始种群中的多个初始个体,从中确定一个最优个体解;从而根据最优个体解中各字段的字段参数解,确定模板图像的文本填充参数。
63.但考虑到初始个体生成量较大,以及获取最优字段参数解等过程中的相似度计算量较大等因素,本技术采用差分进化算法的思路,在生成初始种群时,无需基于预设的多种字体类型、预设的多种字体大小、预设的多种区域偏移量调整方式,生成所有的组合方式对应的初始个体,只需生成预设数目的初始个体。在后续过程中,若无法从初始种群中选择出模板图像中各字段的最优字段解,则对该初始种群进行进化处理,以生成更优的个体,从而在进化后的个体中选择各字段的最优字段解。
64.其中,初始种群中初始个体的数目可以为预先设置的任意数值,比如,10、100、200等,本技术实施例对此不做限制。
65.如此,采用进化的思想,不仅可以大大减少填充参数解的生成量,还可以加快最优字段解的获取速度,从而提高模板图像的文本填充参数的获取速率和参数精确度。
66.作为一个示例,以上述模板图像为例,初始个体对应的填充参数解包括:“a”字段的字段参数解、“b”字段的字段参数解、“c”字段的字段参数解、“d”字段的字段参数解、“e”字段的字段参数解。也即是,每个初始个体的填充参数解中包括5个字段参数解。
67.由于需要预测的文本填充参数包括字体类型、字体大小和区域偏移量三项数值,因此,每个字段参数解中包括3个参数值,即字体参数、字号参数和偏移量参数。
68.步骤420:从多个初始个体包含的字段参数解中,获取模板图像中各字段分别对应的最优字段解。
69.应该理解的是,若初始个体数目为10个,且以上述模板图像为例,每个初始个体对应的填充参数解中均包括5个字段参数解,则该步骤420的目的则在于从初始种群中的50个(即10*5)字段参数解中,获取模板图像中各字段(a、b、c、d、e分别对应的最优字段解。
70.在一种可能的实现方式中,如图4所示,步骤420的实现过程包括以下步骤:
71.步骤421:计算模板图像中各字段与多个初始个体包含的字段参数解之间的字段相似度,得到各字段对应的多个字段相似度。
72.其中,对于模板图像中的任一字段而言,其在每个初始个体中均存在一个对应的字段参数解,因此,步骤421中计算得到的各字段对应的字段相似度的数目,与初始种群中
初始个体的数目相同。
73.作为一个示例,若初始种群中存在10个初始个体,则对于模板图像中的一个字段,执行步骤421的操作后,即可得到该字段对应的10个字段相似度。
74.在其中一些实施例中,如图5所示,步骤421的实现过程可以包括以下步骤:
75.步骤4211:生成目标字段在多个初始个体中分别对应的字段参数解的目标图像。
76.其中,目标字段为模板图像中的任一个字段,目标字段在一个初始个体中对应一个字段参数解。
77.也即是,对于模板图像中所包括的每个字段,均需要执行步骤4211-步骤4213,以确定每个字段与多个初始个体中对应的字段参数解之间的字段相似度,得到各字段对应的多个字段相似度。
78.针对目标字段,其在每个初始个体中均对应一个字段参数解,且每个字段参数解包括字体参数、字号参数和偏移量参数。因此,对于目标字段而言,需要生成的目标图像数目与初始个体数目相同。
79.具体地,生成目标图像的实现过程可以为:根据目标字段在模板图像中的文本填充区域,生成各字段参数解对应的初始图像;根据各字段参数解中的字体参数和字号参数,在对应的初始图像上添加目标字段的原始文本,得到各字段参数解对应的中间图像;根据各字段参数解中的偏移量参数,对对应的中间图像进行投影变换,得到各字段参数解对应的目标图像。
80.需要说明的是,为便于对比相似度,原始文本在初始图像和中间图像中的像素值不同。
81.作为一个示例,可以根据文本填充区域,生成一个像素值全为0的图像,作为初始图像。然后,根据目标字段的原始文本、字体参数和字号参数,在初始图像上添加文本信息,且将文本的像素值设置为1,以与背景区分开,得到中间图像。
82.对于同一原始文本,由于字体参数和/或字号参数不同,其对应的文本真实区域是不同的,为保证文本信息可以完整填充至标注的文本填充区域中,避免像素点外溢,需要对中间图像进行投影变换,得到目标图像。
83.其中,投影变换是将一种地图投影点的坐标变换为另一种地图投影点的坐标的过程,其中可能涉及缩放处理、平移处理、旋转处理等,在此不再赘述。
84.步骤4212:从模板图像中获取目标字段的标准字段图像。
85.具体地,根据模板图像中人工标注的各字段的文本填充区域,从模板图像中截取各字段对应的标准字段图像。
86.也即是,对于一个模板图像,其对应的标准字段图像的数目与该模板图像所包含的字段数目相同。
87.以上述模板图像为例,若目标字段为“a”字段,则获取的标准字段图像为由“aa”对应的所有像素点组成的区域图像。
88.需要说明的是,步骤4211和步骤4212可以同时执行,也可以按顺序依次执行。按顺序执行时,可以先生成目标字段对应的多个目标图像,再获取目标字段的标准字段图像;也可以先获取目标字段的标准字段图像,再生成目标字段对应的多个目标图像,本技术实施例对此不做限制。
89.步骤4213:基于标准字段图像与各字段参数解的目标图像之间的重叠像素累加量,确定目标字段与对应的多个字段参数解之间的字段相似度。
90.在该步骤中,对于目标字段而言,其对应一个标准字段图像和多个目标图像,需要依次计算标准字段图像与每个目标图像之间的相似度。因此,经过相似度计算后,一个字段对应多个字段相似度。
91.需要说明的是,目标字段的原始文本可能包括至少一个字符,本技术在计算标准字段图像和某一个目标图像之间的字段相似度时,是通过计算目标字段中每个字符的重叠像素累加量,来确定目标字段与该目标图像对应的字段参数解之间的字段相似度。
92.同样以上述模板图像为例,若目标字段为“职业”字段,则如图6所示,标准字段图像为模板图像中“作家”这两个字符对应的所有像素点组成的区域图像。假设初始种群对应10个初始个体,则每个初始个体对应的填充参数解中均存在该“职业”字段的字段参数解,则根据“职业”字段的10个字段参数解,可以生成10张目标图像。
93.应该理解的是,这10张目标图像中,“作家”这两个字符的字体类型、字体大小和区域偏移量中存在至少一个参数不同。
94.继续参见图6,针对“作家”字段的标准字段图像与第一个目标图像,计算标准图像中字符“作”与该目标图像中字符“作”之间的第一字符重叠像素个数,同时,计算标准图像中字符“家”与该目标图像中字符“家”之间的第二字符重叠像素个数;进而对第一字符重叠像素个数和第二字符重叠像素个数进行求和,得到“职业”字段下标准字段图像与该目标图像之间的重叠像素累加量。
95.可选地,由于目标图像也是基于文本填充区域生成的,因此,标准字段图像和目标图像的图像大小是相同的,故可以将标准字段图像和目标图像进行图像叠加,进而在叠加图像中统计各字符的重叠像素个数,以得到标准字段图像和每个目标图像之间的重叠像素累加量。
96.其中,重叠像素累加量越大,标准字段图像和目标图像之间的字段相似度也越高。
97.因此,在计算得到重叠像素累加量之后,可以基于预设的像素量和相似度之间的转换关系,确定模板图像中每个字段与对应的多个字段参数解之间的字段相似度。
98.步骤422:根据各字段对应的多个字段相似度,从各字段在多个初始个体对应的字段参数解中获取各字段的候选字段解。
99.其中,模板图像中的每个字段均对应多个字段相似度,每个字段相似度对应一个字段参数解。
100.在本技术实施例中,对于任一个字段,根据该字段与多个字段参数解之间的字段相似度,对多个字段相似度按照从大到小的进行排序;进而根据相似度排在前边的预设数目个字段参数解,确定该字段的候选字段解。
101.作为一个示例,预设数目可以为1,则将初始种群中与各字段之间字段相似度最高的一个字段参数解,确定为各字段对应的候选字段解。
102.作为另一个示例,预设数目也可以为2、3、4等,即对于模板图像中的每个字段,从初始种群中确定与各字段之间相似度较高的至少两个字段参数解,进而从各字段对应的至少两个字段参数解中,确定候选字段解。
103.需要说明的是,若初始种群中的初始个体数目较多,已近乎列举了参数组合的所
有可能性;或者基于初始种群,确定的各字段的候选字段解已经可以很好地描述模板图像中各字段的真实参数,则直接将候选字段解确定最优字段解,无需执行下述步骤423和步骤424。
104.可选地,可以预先设置相似度阈值,若在初始种群所包括的多个初始个体中,模板图像中各字段与其对应的候选字段解之间字段相似度均满足相似度阈值,则直接将各字段的候选字段解,确定为各字段对应的最优字段解。
105.其中,相似度阈值为预先设置的任意数值,比如,90%、95%、98%等,本技术实施例对此不做限制。
106.若随机生成的初始个体数目有限,则各字段的候选字段解可能无法准确描述模板图像中各字段中原始文本的实际格式,因此,需要通过下述步骤423对初始种群进行一次或多次进化,以从进化后的目标个体中获取各字段的最优字段解。
107.步骤423:基于各字段的候选字段解,对多个初始个体进行变异处理,直至个体变异处理结果满足预设的种群进化结束条件,得到多个目标个体。
108.应该理解的是,对多个初始个体进行一次变异处理,初始种群即完成一次进化;对进化后的个体继续进行变异处理,初始种群即完成了两次进化。以此类推,一次种群进化就是对上一次进化后的种群中所包含的每个个体均执行一次变异处理。
109.在该步骤中,目标个体可以是一次种群进化后的个体,也可以是多次种群进化后的个体,取决于个体变异处理结果是否满足预设的种群进化结束条件。
110.其中,预设的种群进化结束条件包括以下任一种:
111.(1)个体变异次数达到预设的种群进化次数;
112.具体地,在个体变异处理的过程中,统计种群中的个体变异次数;若个体变异次数达到预设的种群进化次数,则结束种群进化操作,得到多个目标个体。
113.作为一个示例,种群进化次数可以为预设的任意数值,比如,5轮、10轮、50轮等。
114.(2)各字段的候选字段解在预设的变异处理次数内均未发生变化。
115.具体地,在每次变异处理后获取各字段的候选字段解;若各字段的候选字段解在预设的变异处理次数内未发生变化,则结束种群进化操作,得到多个目标个体。
116.作为一个示例,预设的变异处理次数可以为小于种群进化次数的任意数值,比如,3次、5次、10次等。
117.也即是,在此条件下,各字段的候选字段解在变异处理次数内已经无法再进一步优化,则可以提前结束进化操作。
118.可选地,也可以在预设比例的字段的候选字段解在预设的变异处理次数内未发生变化时,提前结束种群进化操作。
119.以上述模板图像为例,若5个字段中存在至少3个字段的候选字段解在预设的变异次数内未发生变化,也可以提前结束种群进化操作。
120.进一步地,如图7所示,上述步骤423中对多个初始个体进行变异处理时,其实现过程可以包括以下步骤:
121.步骤4231:采用预设的第一变异策略,在多个初始个体包含的字段参数解中,对各字段的候选字段解进行变异处理,得到候选字段解对应的第一变异向量。
122.需要说明的是,在多个初始个体中,每个初始个体对应的填充参数解中包括模板
图像中各字段分别对应的字段参数解。换言之,一个初始个体包含多个字段参数解,其字段参数解的数目与模板图像中所包含的字段数目相同。
123.对于一个初始个体包含的字段参数解中,其可能存在以下几种情况:
124.(1)初始个体的字段参数解包括模板图像中各字段的候选字段解,即该初始个体中的字段参数解均为候选字段解;
125.(2)初始个体的字段参数解中存在模板图像中至少一个字段的候选字段解,以及其他字段的非候选字段解,即该初始个体中的字段参数解既包括候选字段解,也包括非候选字段解;
126.(3)初始个体的字段参数解中不存在模板图像中任一个字段的候选字段解,即初始个体中的字段参数解均为非候选字段解。
127.基于此,针对上述情况(1),通过步骤4231对初始个体进行变异处理;针对上述情况(2),通过步骤4231和步骤4232对初始个体进行变异处理;针对上述情况(3),通过步骤4232对初始个体进行变异处理。
128.进一步地,考虑到一个证件图像中不同字段的字体大小、字体类型和区域偏移量可能是一样的,因此,对于初始个体中的候选字段解,可以选择rand/1变异策略进行变异处理。也即是,步骤4231中的第一变异策略可以为rand/1变异策略。
129.具体地,针对模板图像中的多个字段,在各字段的候选字段解所在的初始个体中,随机选择三个初始个体xp1(g)、xp2(g)和xp3(g),并通过下述公式(1)计算候选字段解的第一变异向量h
i1
(g):
130.h
i1
(g)=xp1(g)+f*(xp2(g)-xp3(g))
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
131.式中,f为缩放因子参数,一般取值在0-2之间;比如,设置f为0.5。
132.步骤4232:采用预设的第二变异策略,在多个初始个体包含的字段参数解中,对各字段的非候选字段解进行变异处理,得到各非候选字段解对应的第二变异向量。
133.其中,第二变异策略可以为best/1变异策略。
134.具体地,针对模板图像中的任一个字段,在初始种群中随机选择两个初始个体xp4(g)和xp5(g),并通过下述公式(2)计算非候选字段解的第二变异向量h
i2
(g):
135.h
i2
(g)=xbest(g)+f-(xp4(g)-xp5(g))
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
136.式中,xbest(g)是该字段的候选字段解,f为缩放因子参数,一般取值在0-2之间;比如,设置f为0.5。
137.步骤4233:针对初始种群中的任一个初始个体,将第一变异向量与对应的候选字段解进行交叉替换处理,和/或,将第二变异向量与对应的非候选字段解进行交叉替换处理,得到多个目标个体。
138.其中,交叉替换处理时,以介于0-1之间的交叉概率生成目标个体中的字体大小、字体类型和区域偏移量deviation={(tlx,tly),(trx,try),(dlx,dly),(drx,dry)},以替换初始个体中字段参数解。
139.需要说明的是,上述10个值(字体大小、字体类型、tlx、tly、trx、try、dlx、dly、drx、dry)单独计算交叉概率并进行替换。
140.可选地,在上述10个值中随机选择一个固定替换值random(j),该固定替换值random(j)对应的参数一定会被替换。如此,可以保证进化结果中能够出现交叉。
141.步骤424:基于目标个体,确定模板图像中各字段分别对应的最优字段解。
142.需要说明的是,从目标个体中选择各字段对应的最优字段解的实现过程,与从初始个体中选择各字段的候选字段解的过程类似,均是通过计算字段相似度的方式来实现的。因此,步骤424的实现过程可以参见上述步骤421和步骤422,在此不再赘述。
143.步骤430:根据模板图像中各字段分别对应的最优字段解,确定模板图像的文本填充参数。
144.具体地,从各字段对应的最优字段解中,确定模板图像中各字段的字体类型、字体大小和区域偏移量,从而得到模板图像的文本填充参数。
145.在上述预测文本填充参数的方案中,考虑到文本参数信息较为复杂,人工标注依赖于经验,且标注精度低,对于任一模板图像,本技术只需对模板图像中的原始文本和第一属性信息进行简单标注,即可根据文本标注信息,预测出模板图像的文本填充参数。如此,通过预测模板图像的文本填充参数,而非人工在模板图像中标注文本填充参数,不仅可以提高文本填充参数的精度,还可以减少人工标注量,节省了大量的人力物力。
146.进一步地,通过上述步骤410-步骤430,确定模板图像的文本填充参数后,即可根据该文本填充参数,基于模板图像来合成多张虚拟图像。
147.步骤120:生成模板图像中各字段分别对应的合成文本。
148.在一种可能的实现方式中,步骤120的实现过程可以为:在模板图像中确定各字段的第二属性信息;根据各字段的第二属性信息,获取各字段分别对应的文本合成策略;按照各字段文本合成策略,生成模板图像中各字段分别对应的合成文本。
149.其中,第二属性信息用于各字段的可填充文本,第二属性信息可以包括字段关键字或字段特征信息,比如,名称、姓名、地址/住址、车牌、手机号、身份证号码、日期等。
150.在其中一些实施例中,文本合成策略包括字段的文本内容和内容合成方式;内容合成方式可以为随机组合。
151.作为一个示例,针对上述列举的第二属性信息,字段的文本合成策略可以包括以下任一种:
152.(1)一定长度的随机字符串生成,支持根据当前已合成的文本的字符频率,调整每个字符在合成文本中出现的概率,确保合成文本中各字符的频率分布比较均匀。
153.(2)针对“地址/住址”字段,根据地址库中的多个地址信息,随机组合生成该字段的合成文本;
154.(3)枚举字符串生成时,从枚举字符串集中随机返回一个字符串;
155.(4)针对“车牌”字段,根据车牌样式和可用的字符串,采用随机组合的方式生成该字段的合成文本;
156.(5)针对“号码”字段,采用0-9的数字随机组合,生成一串数据,并随机采用预设的字符替换最后一位,生成该字段对应的合成文本;或者,采用0-9的数字随机组合,生成预设位数的数组,得到该字段的合成文本。
157.(6)针对“日期”字段,生成常见格式的日期及时间字符串,得到该字段的合成文本。
158.应该理解的是,步骤120的目的按照模板图像中各字段的第二属性信息,生成各字段的虚拟文本内容,得到各字段的合成文本。合成文本的内容与原始文本的内容不同。
159.基于此,在确定文本填充参数,且生成对应的合成文本后,只需按照文本填充参数,采用至少一个字段的合成文本替换模板图像中的原始文本,即可得到合成图像。
160.步骤130:根据第一属性信息和文本填充参数,在模板图像中依次采用各字段的合成文本替换对应的原始文本,得到多张合成图像。
161.其中,第一属性信息包括各字段的文本填充区域和字体颜色;文本填充参数包括各字段的字体类型、字体大小和区域偏移量中的至少一种。
162.在一种可能的实现方式中,步骤130的实现过程可以为:根据各字段的文本填充区域,生成各字段对应的第一字段图像;根据各字段的字体颜色、字体类型和字体大小,在对应的第一字段图像中添加字段的合成文本,得到各字段对应的第二字段图像;根据各字段的区域偏移量,对各字段对应的第二字段图像进行投影变换,得到各字段对应的第三字段图像;将各字段对应的第三字段图像中的字符像素值,填充至模板图像中各字段的文本填充区域中。
163.应该理解的是,步骤130中生成第三字段图像的过程,与上述步骤4211中生成目标字段的字段参数解对应的目标图像的实现过程相类似,因此,具体实现过程可参见上述步骤4211的解释和限定,在此不再赘述。
164.另外,在实施步骤130时,可以替换模板图像中的所有字段的原始文本,以生成合成图像;也可以替换模板图像中的至少一个字段的原始文本,以生成合成图像,本技术实施例对此不做限制。
165.在本技术实施例中,计算机设备基于模板图像的文本标注信息,预测模板图像的文本填充参数,以及生成模板图像中各字段分别对应的合成文本。其中,文本标注信息用于指示模板图像包括的至少一个字段的原始文本和第一属性信息,文本填充参数用于指示模板图像中各字段的内容填充格式。进而根据第一属性信息和文本填充参数,在模板图像中依次采用各字段的合成文本替换对应的原始文本,得到多张合成图像。在该方法中,首先,只需对模板图像中的原始文本和第一属性信息进行简单标注,即可根据文本标注信息,预测出模板图像的文本填充参数,提高了文本填充参数的精度,减少了人工标注量。其次,在确定模板图像的相关参数/信息后,通过各字段的合成文本替换模板图像中各字段的原始文本,即可生成与模板图像属于同类型的多张合成图像,提高了包含文本的图像合成效率,以在短时间内生成尽可能多的合成图像,满足算法训练的样本量需求。进一步地,由于多张图像均是基于模板图像的格式,通过替换文本内容得到的,因此,多张合成图像和模板图像所包含的字段数目相同,且除文本内容以外,多张合成图像和模板图像的第一属性信息和文本填充参数均相同。如此,合成图像与真实的模板图像之间的文本内容和格式等更加相似,从而提高了合成图像的真实性。
166.基于相同的技术构思,本技术实施例还提供了一种用于实现上述包含文本的图像合成方法所对应的包含文本的图像合成装置。该装置在解决技术问题时所提供的实现方案与上述方法实施例中所记载的实现方案相似,故下面所提供的一个或多个包含文本的图像合成装置实施例中的具体功能限定可以参见上文中包含文本的图像合成方法中相关步骤的限定,在此不再赘述。
167.在一示例性实施例中,如图8所示,本技术实施例还提供了一种包含文本的图像合成装置,该装置900包括:
168.参数预测模块910,用于基于模板图像的文本标注信息,预测模板图像的文本填充参数;文本标注信息用于指示模板图像包括的至少一个字段的原始文本和第一属性信息,文本填充参数用于指示模板图像中各字段的内容填充格式;
169.文本生成模块920,用于生成模板图像中各字段分别对应的合成文本;
170.内容替换模块930,用于根据第一属性信息和文本填充参数,在模板图像中依次采用各字段的合成文本替换对应的原始文本,得到多张合成图像。
171.在一种可能的实现方式中,第一属性信息包括各字段的文本填充区域和字体颜色;文本填充参数包括各字段的字体类型、字体大小和区域偏移量中的至少一种。
172.在一种可能的实现方式中,参数获取模块910,包括:
173.初始化子模块,用于生成模板图像对应的初始种群;初始种群包括多个初始个体,且每个初始个体对应模板图像的一个填充参数解,每个填充参数解包括模板图像中各字段分别对应的字段参数解;
174.字段解获取子模块,用于从多个初始个体包含的字段参数解中,获取模板图像中各字段分别对应的最优字段解;
175.参数确定子模块,用于根据模板图像中各字段分别对应的最优字段解,确定模板图像的文本填充参数。
176.在一种可能的实现方式中,字段解获取子模块,包括:
177.相似度计算单元,用于计算模板图像中各字段与多个初始个体包含的字段参数解之间的字段相似度,得到各字段对应的多个字段相似度;
178.候选解获取单元,用于根据各字段对应的多个字段相似度,从各字段在多个初始个体对应的字段参数解中获取各字段的候选字段解;
179.变异处理单元,用于基于各字段的候选字段解,对多个初始个体进行变异处理,直至个体变异处理结果满足预设的种群进化结束条件,得到多个目标个体;
180.字段解确定单元,用于基于目标个体,确定模板图像中各字段分别对应的最优字段解。
181.在一种可能的实现方式中,相似度计算单元,包括:
182.图像生成子单元,用于生成目标字段在多个初始个体中分别对应的字段参数解的目标图像;目标字段为模板图像中的任一个字段,目标字段在一个初始个体中对应一个字段参数解;
183.图像获取子单元,用于从模板图像中获取目标字段的标准字段图像;
184.计算子单元,用于基于标准字段图像与各字段参数解的目标图像之间的重叠像素累加量,确定目标字段与对应的多个字段参数解之间的字段相似度。
185.在一种可能的实现方式中,字段参数解包括字体参数、字号参数和偏移量参数;
186.图像生成子单元,具体用于:
187.根据目标字段在模板图像中的文本填充区域,生成各字段参数解对应的初始图像;
188.根据各字段参数解中的字体参数和字号参数,在对应的初始图像上添加目标字段的原始文本,得到各字段参数解对应的中间图像;原始文本在初始图像和中间图像中的像素值不同;
189.根据各字段参数解中的偏移量参数,对对应的中间图像进行投影变换,得到各字段参数解对应的目标图像。
190.在一种可能的实现方式中,变异处理单元,包括:
191.第一处理子单元,用于采用预设的第一变异策略,在多个初始个体包含的字段参数解中,对各字段的候选字段解进行变异处理,得到各候选字段解对应的第一变异向量;
192.第二处理子单元,用于采用预设的第二变异策略,在多个初始个体包含的字段参数解中,对各字段的非候选字段解进行变异处理,得到各非候选字段解对应的第二变异向量;
193.交叉替换子单元,用于针对初始种群中的任一个初始个体,将初始个体中的第一变异向量与对应的字段参数解进行交叉替换处理,和/或,将初始个体中的第二变异向量与对应的字段参数解进行交叉替换处理,得到多个目标个体。
194.在一种可能的实现方式中,种群进化结束条件包括以下任一种:
195.个体变异次数达到预设的种群进化次数;
196.各字段的候选字段解在预设的变异处理次数内均未发生变化。
197.在一种可能的实现方式中,内容替换模块930,包括:
198.图像生成子模块,用于根据各字段的文本填充区域,生成各字段对应的第一字段图像;
199.文本添加子模块,用于根据各字段的字体颜色、字体类型和字体大小,在对应的第一字段图像中添加字段的合成文本,得到各字段对应的第二字段图像;
200.图像处理子模块,用于根据各字段的区域偏移量,对各字段对应的第二字段图像进行投影变换,得到各字段对应的第三字段图像;
201.替换子模块,用于将各字段对应的第三字段图像中的字符像素值,填充至模板图像中各字段的文本填充区域中。
202.在一种可能的实现方式中,文本生成模块920,包括:
203.属性确定子模块,用于在模板图像中确定各字段的第二属性信息;
204.策略获取子模块,用于根据各字段的第二属性信息,获取各字段分别对应的文本合成策略;文本合成策略包括字段的文本内容和内容合成方式;
205.文本生成子模块,用于按照各字段文本合成策略,生成模板图像中各字段分别对应的合成文本。
206.需要说明的是,上述包含文本的图像合成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
207.在一示例性实施例中,本技术实施例还提供了一种计算机设备。该计算机设备可以用于实现前述实施例中的包含文本的图像合成方法。如图9所示,该计算机设备包括一个或多个处理器1010、存储器1020、系统总线1030和通信接口1040,且处理器1010、存储器1020和通信接口1040通过系统总线1030连接。
208.其中,处理器可以是中央处理单元(central processing units,cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制计算机设备中的其
他组件以执行期望的功能。
209.可选地,处理器中装置有具备数据处理等相关的应用软件。
210.存储器可以包括一个或多个计算机程序产品,该计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。其中,易失性存储器例如可以包括随机存取存储器(random access memory,ram)和/或高速缓冲存储器(cache)等。作为一个示例,该非易失性存储器可以包括只读存储器(read-only memory,rom)、硬盘、闪存等。在该计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器可以运行程序指令,以实现上文示出的各实施例中的包含文本的图像合成方法以及/或者其他期望的功能。
211.该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。
212.在一些实施例中,计算机设备还可以包括:输入装置和输出装置(图中未示出),这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。该输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。该输出装置可以向外部输出各种信息。例如,显示器/显示屏、扬声器、以及通信网络及其所连接的远程输出设备等。
213.当然,为了简化,图9中仅示出了该计算机设备中与本技术实施例有关的组件中的一些,除此之外,根据具体应用情况,计算机设备还可以包括任何其他适当的组件。
214.在一个示例性实施例中,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当计算机程序由计算机设备中的处理器执行时,能够实现上述实施例提供的包含文本的图像合成方法。
215.在一个示例性实施例中,本技术实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被计算机设备中的处理器执行时,能够实现上述实施例提供的包含文本的图像合成方法。
216.以上的具体实施方式,对本技术实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本技术实施例的具体实施方式而已,并不用于限定本技术实施例的保护范围,凡在本技术实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本技术实施例的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1