示例图片的生成方法、装置、计算机设备及存储介质与流程

文档序号:21888394发布日期:2020-08-18 17:34阅读:324来源:国知局
示例图片的生成方法、装置、计算机设备及存储介质与流程

本发明实施例涉及广告技术领域,尤其涉及一种示例图片的生成方法、装置、计算机设备及存储介质。



背景技术:

随着互联网技术的发展,线上广告的投放越来越多。目前广告投放采用基于算法模型的广告流量分发机制,这使得广告营销需要更多、更丰富的图片素材来满足这种广告投放方式。

广告图片通常由两部分组成,示例图片和文案,文案就是广告图片上的宣传用语,示例图片是广告图片上除文案以外的所有元素组成的图片,因此,要制作一张广告图片,首先要确定示例图片。传统的示例图片的制作方法是由技术人员根据要求人工设计出来的,这种人工设计的方式不仅效率低下,而且成本高昂。还有一种方式是,通过ai系统无差别训练生成示例图片,系统能够被动生成大量广告图片供技术人员挑选,但是这种方式要求较高,需要系统具备ai算法,且生成的大量图片高度相似,技术人员在挑选时容易造成视觉和审美疲劳。



技术实现要素:

有鉴于此,本发明实施例提供一种示例图片的生成方法、装置、计算机设备及存储介质,以提高示例图片的产出效率和精确度。

第一方面,本发明实施例提供一种示例图片的生成方法,包括:

获取示例图生成任务,所述示例图生成任务包括形成示例图片的至少一种类型的初始元素,所述初始元素包括第一标记信息;

若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,得到多种类型的目标元素,每种类型的目标元素有多个;

将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合;

根据每个元素组合生成示例图片。

进一步的,所述第一标记信息至少包括第一业务类型、第一运营位和第一标签中的一种,所述第二标记信息包括第二业务类型、第二运营位和第二标签,所述样本元素的第二标记信息与所述初始元素的第一标记信息相同包括:

样本元素的第二业务类型与所述初始元素的第一业务类型相同;和/或

样本元素的第二运营位与所述初始元素的第一运营位相同;和/或

样本元素的第二标签与所述初始元素的第一标签相同。

进一步的,所述示例图生成任务包括三种类型的初始元素,分别为:初始模板、初始背景和初始图标,所述预设数据库中的样本元素包括多个样本模板、多个样本背景和多个样本图标;

所述若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,包括:

若样本背景的第二标记信息和样本图标的第二标记信息与所述初始模板的第一标记信息相同,则将所述样本背景作为目标背景,将所述样本图标作为目标图标;

若样本模板的第二标记信息和样本图标的第二标记信息与所述初始背景的第一标记信息相同,则将所述样本模板作为目标模板,将所述样本图标作为目标图标;

若样本模板的第二标记信息和样本背景的第二标记信息与所述初始图标的第一标记信息相同,则将所述样本模板作为目标模板,将所述样本背景作为目标背景。

进一步的,所述将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合,包括:

所述初始模板与一个目标背景和一个目标图标形成一个元素组合,从而得到多个元素组合;

所述初始背景与一个目标模板和一个目标图标形成一个元素组合,从而得到多个元素组合;

所述初始图标与一个目标模板和一个目标背景形成一个元素组合,从而得到多个元素组合。

进一步的,所述根据每个元素组合生成示例图片包括:

将所述多个元素组合放入队列;

从所述队列中获取当前元素组合;

获取所述当前元素组合对应的多个图片尺寸;

将所述当前元素组合根据其对应的每个图片尺寸生成示例图片,得到多个示例图片。

进一步的,所述当前元素组合根据其对应的每个图片尺寸生成的全部示例图片为当前示例图组,所述方法还包括:

确定当前示例图组的示例图片是否全部生成成功;

若当前示例图组的示例图片全部生成成功,则将所述当前示例图组的示例图片存储到预设数据库;

若当前示例图组的示例图没有全部生成成功,则将所述示例图生成任务标记为待重试任务,根据预设延时规则执行所述待重试任务以重新生成示例图。

进一步的,所述将所述当前示例图组的示例图片存储到预设数据库包括:

通过多线程上传方式将所述当前示例图组的示例图片的图片文件上传到服务器;

将所述图片文件在服务器中的存储地址通过分行存储的方式存储到预设数据库。

第二方面,本发明实施例提供一种示例图片的生成装置,包括:

任务获取模块,用于获取示例图生成任务,所述示例图生成任务包括形成示例图片的至少一种类型的初始元素,所述初始元素包括第一标记信息;

元素匹配模块,用于若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,得到多种类型的目标元素,每种类型的目标元素有多个;

元素组合形成模块,用于将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合;

图片生成模块,用于根据每个元素组合生成示例图片。

第三方面,本发明实施例提供一种计算机设备,所述计算机设备包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例提供的示例图片的生成方法。

第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例提供的示例图片的生成方法。

本发明实施例提供的示例图片的生成方法实现了示例图片的批量生产,输入示例图片的至少一个元素,就可以获取到多个示例图片,提高了示例图片的设计效率;且通过标记信息的匹配和筛选,提高了示例图片中元素与元素之间关联性,使得生成的示例图片更加精准,更加符合技术人员的要求。

附图说明

图1为本发明实施例一提供的一种示例图片的生成方法的流程示意图;

图2为本发明实施例二提供的一种示例图片的生成方法的流程示意图;

图3a为本发明实施例三提供的一种示例图片的生成方法的流程示意图;

图3b为本发明实施例三提供的示例图任务处理流程的示意图;

图3c为本发明实施例三提供的任务重试流程的示意图;

图4为本发明实施例四提供的一种示例图片的生成装置的结构示意图;

图5是本发明实施例五提供的一种计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时处理可以被终止,但是还可以具有未包括在附图中的附加步骤。处理可以对应于方法、函数、规程、子例程、子程序等等。

此外,术语“第一”、“第二”等可在本文中用于描述各种方向、动作、步骤或元件等,但这些方向、动作、步骤或元件不受这些术语限制。这些术语仅用于将第一个方向、动作、步骤或元件与另一个方向、动作、步骤或元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一标记信息称为第二标记信息,且类似地,可将第二标记信息称为第一标记信息。第一标记信息和第二标记信息两者都是标记信息,但其不是同一标记信息。术语“第一”、“第二”等而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”、“批量”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

实施例一

图1为本发明实施例一提供的一种示例图片的生成方法的流程示意图,本实施例可用于批量生成可用于广告投放的图片素材。如图1所示,本发明实施例一提供的示例图片的生成方法包括:

s110、获取示例图生成任务,所述示例图生成任务包括形成示例图片的至少一种类型的初始元素,所述初始元素包括第一标记信息。

具体的,将广告图片的组成内容称为元素,示例图片是指广告图片上除文案以外的所有元素组成的图片,即,一个示例图片与一个文案可以组成一张广告图片。元素的类型就是指组成示例图片的元素的种类,通常,示例图片包括多种类型的元素,例如,组成示例图的元素有模板、背景、图标、logo、按钮、标题等,则元素的类型分别为:模板、背景、图标、logo、按钮、标题。标记信息可以看成是对示例图片或示例图片内的各类型的元素进行多方位分类的标记,标记信息有多个种类,如,标记信息包括业务类型、运营位和标签等。

技术人员编辑好组成示例图的元素之后,程序会自动创建示例图生成任务,技术人员编辑的这些元素就称为初始元素,初始元素的标记信息为第一标记信息。第一标记信息可以由技术人员手动添加,也可以是技术人员输入图片文案后,程序根据初始元素的一些特性自动添加的。

s120、若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,得到多种类型的目标元素,每种类型的目标元素有多个。

其中,预设数据库是预先存储了大量样本元素的数据库,如mysql、redis等。样本元素的标记信息称为第二标记信息。

示例性的,标记信息包括业务类型、运营位和标签。业务类型是指广告图片应用的业务领域,例如,电商、品牌宣传、自营贷款、办卡、理财非标等。运营位是指广告图片在网站页面的投放位置,例如,理财app首页banner(横幅广告)、理财app首页弹窗、理财app首页悬浮图标等。标签则是对广告图片的一些特殊分类,标签分为多个类别,每个类别都具有多个标签,例如,假日类型的标签有:元旦、情人节、劳动节等,特征类型的标签有:红包、金币、礼盒、人物、书籍、手机等,专属标签有:每周话题、京东提供、精选专题等。通常情况下,一个示例图片或元素的标记信息中的业务类型和运营位是唯一的,但是标签可以有多种。

初始元素的第一标记信息至少包括第一业务类型、第一运营位和第一标签中的一种,样本元素的第二标记信息包括第二业务类型、第二运营位和第二标签,即,初始元素至少包括一种类型的标记信息,样本元素则包括所有类型的标记信息。那么,样本元素的第二标记信息与初始元素的第一标记信息相同,进一步包括:样本元素的第二业务类型与初始元素的第一业务类型相同(即业务类型匹配);和/或,样本元素的第二运营位与初始元素的第一运营位相同(即运营位匹配);和/或,样本元素的第二标签与初始元素的第一标签相同(即标签匹配)。

也即,初始元素的第一标记信息包括哪几个种类,就需要进行对应种类的标记信息的匹配。若初始元素的第一标记信息只包括第一业务类型、第一运营位和第一标签中的一种,则只需要进行业务类型匹配、运营位匹配和标签匹配中的一种即可确定目标元素,若初始元素的第一标记信息包括多种类型,则需要进行多种匹配。当初始元素的第一标记信息包括第一业务类型、第一运营位和第一标签时,则样本元素的第二业务类型、第二运营位和第二标签分别与初始元素对应的第一业务类型、第一运营位和第一标签都一致时,样本元素才能作为目标元素。

进一步的,在进行标签匹配时,当初始元素的第一标签的类别和数量较多时,则当样本元素和初始元素的每种标签类别都至少有一个标签相同时,样本元素才能作为目标元素。例如,初始元素的第一标签(以“标签类别-标签”的形式表示)包括:假日-元旦、特征-礼物、特征-手机、特征-限时,样本元素1的第二标签包括:假日-元旦、特征-礼物、特征-红包、特征-限时,样本元素2的第二标签包括:假日-情人节、特征-礼物、特征-手机、特征-限时,进行标签匹配时,样本元素1与初始元素的每种标签类别都至少有一个标签相同,而样本元素2与初始元素的“假日”类别标签中没有相同的标签,因此,样本元素1可作为目标元素,而样本元素2不是目标元素。

示例性的,示例图的组成元素包括三种类型:模板、背景和图标,模板是指示例图的模板,主要定义了示例图的各种组成元素的位置、布局以及图片文案的字体等;背景指示例图的背景,包括图片背景、透明背景和纯色背景等;图标是示例图上的图形表示,图标是与业务强相关的元素,通常与图片文案的含义相同。对应的,多个初始元素包括初始模板、初始背景和初始图标,第一预设数据库中包括多个模板、多个背景和多个图标。

那么,若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,进一步包括:

若样本背景的第二标记信息和样本图标的第二标记信息与初始模板的第一标记信息相同(即初始模板的元素匹配),则将样本背景作为目标背景,将样本图标作为目标图标;

若样本模板的第二标记信息和样本图标的第二标记信息与初始背景的第一标记信息相同(即初始背景的元素匹配),则将样本模板作为目标模板,将样本图标作为目标图标;

若样本模板的第二标记信息和样本背景的第二标记信息与初始图标的第一标记信息相同(即初始图标的元素匹配),则将样本模板作为目标模板,将样本背景作为目标背景。

以初始模板的元素匹配为例说明具体的匹配过程。第一标记信息包括第一业务类型、第一运营位和第一标签,第二标记信息包括第二业务类型、第二运营位和第二标签,在对模板进行元素匹配时,需要进行业务类型匹配、运营位匹配和标签匹配三种类型的匹配,即,若样本背景的第二业务类型、第二运营位和第二标签与初始模板的第一业务类型、第一运营位和第一标签相同,则将样本背景作为目标背景;若样本图标的第二业务类型、第二运营位和第二标签与初始模板的第一业务类型、第一运营位和第一标签相同,则将样本图标作为目标图标。

由此可知,目标元素是与初始元素的类型不同但标记信息相同的样本元素,由于示例图片的组成元素有多个种类,那么最终得到的目标元素自然也有多个种类,且每个种类的目标元素有多个。

s130、将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合。

示例性的,初始模板与一个目标背景和一个目标图标形成一个元素组合,初始背景与一个目标模板和一个目标图标形成一个元素组合,初始图标与一个目标模板和一个目标背景形成一个元素组合,一般情况下,每一种元素组合都有多个。

s140、根据每个元素组合生成示例图片。

具体的,每个元素组合中的都包括了能够形成一个示例图片的全部元素,那么将每个元素组合中的全部元素根据示例图片的要求进行布局,就形成了示例图片。进一步的,由于模板定义了示例图的各种组成元素的位置、布局以及图片文案的字体等,那么将每个元素组合中的背景和图标根据对应的模板定义的位置和布局进行排列或组合,就形成了示例图片。

本发明实施例一提供的示例图片的生成方法实现了示例图片的批量生产,输入示例图片的至少一个元素,就可以获取到多个示例图片,提高了示例图片的设计效率;且通过标记信息的匹配和筛选,提高了示例图片中元素与元素之间关联性,使得生成的示例图片更加精准,更加符合技术人员的要求。

实施例二

图2为本发明实施例二提供的示例图片的生成方法的流程示意图,本实施例是对上述实施例的进一步细化。如图2所示,本发明实施例二提供的示例图片的生成方法包括:

s210、获取示例图生成任务,所述示例图生成任务包括形成示例图片的至少一种类型的初始元素,所述初始元素包括第一标记信息。

s220、若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,得到多种类型的目标元素,每种类型的目标元素有多个。

s230、将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合。

s240、将所述多个元素组合放入队列。

具体的,队列是一种线性存储结构,它的特性是先进先出,即插入在一端,删除在另一端。将得到的多个元素组合放入队列中,可以按顺序对多个元素组合进行处理。

s250、从所述队列中获取当前元素组合。

具体的,由于将元素组合放入了队列中,那么当队列中没有元素组合时,即无法从队列中获取当前元素组合,则说明本次示例图生成任务的所有元素组合都已经处理完毕,此时可将示例图生成任务标记为处理成功,避免后续重复处理该示例图生成任务,然后结束流程。如果队列中还存在没有处理的元素组合(即待处理元素组合),说明本次示例图生成任务的所有元素组合还没有完全处理完毕,则根据队列先进先出的规则,从队列汇中获取的当前需要处理的元素组合即为当前元素组合。

s260、获取所述当前元素组合对应的多个图片尺寸。

具体的,由于目前终端设备的显示屏有各种各样的尺寸,例如,3.7英寸、4.5英寸、5.0英寸、5.5英寸等,为了能够使不同尺寸的终端设备上的广告图片能够得到较好的展示,因此,广告图片的尺寸需要根据终端设备的尺寸进行设计,那么每个示例图片也有多个图片尺寸,一个元素组合可以形成一个示例图片,故示例图片的图片尺寸也就是元素组合对应的图片尺寸。

可选的,每个元素组合对应的多个图片尺寸可以根据元素的标记信息获取,例如,根据运营位获取多个图片尺寸。

s270、将所述当前元素组合根据其对应的每个图片尺寸生成示例图片,得到多个示例图片。

具体的,每个元素组合形成的示例图片通常有一个默认尺寸,例如,每个元素组合形成的示例图片是根据终端设备的显示屏为5.0英寸进行设计的。当前元素组合根据其对应的每个图片尺寸生成示例图片是指,根据每个图片尺寸,对形成默认尺寸的示例图片的每个元素组合中的元素进行缩放和对齐操作,得到最终的示例图片。例如,图片尺寸包括3.7英寸、4.5英寸、5.0英寸、5.5英寸,当图片尺寸为3.7英寸或4.5英寸时,需要对每个元素组合中的元素进行缩小和对齐操作后输出示例图片;当图片尺寸为5.0英寸时,可以直接将默认尺寸的示例图片输出;当图片尺寸为5.5英寸时,需要对每个元素组合中的元素进行放大和对齐操作后输出示例图片。

本发明实施例二提供的示例图片的生成方法实现了示例图片的批量生成,一次能够生成多个示例图片,并且通过标记信息的匹配提高了示例图片生成的精准度,使得生成的示例图片更加符合目标要求。通过生成多个图片尺寸的示例图片,使得示例图片的场景适应力更强,扩大了示例图片能够匹配的终端设备的范围。

实施例三

图3a为本发明实施例三提供的一种示例图片的生成方法的流程示意图,本实施是对上述实施例的进一步细化。如图3a所示,本发明实施例三提供的一种示例图片的生成方法包括:

s301、获取示例图生成任务,所述示例图生成任务包括形成示例图片的至少一种类型的初始元素,所述初始元素包括第一标记信息。

s302、若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,得到多种类型的目标元素,每种类型的目标元素有多个。

s303、将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合。

s304、将所述多个元素组合放入队列。

s305、从所述队列中获取当前元素组合。

s306、获取所述当前元素组合对应的多个图片尺寸。

s307、将所述当前元素组合根据其对应的每个图片尺寸生成示例图片,得到多个示例图片。

s308、确定当前示例图组的示例图片是否全部生成成功,其中,所述当前元素组合根据其对应的每个图片尺寸生成的全部示例图片为当前示例图组。

具体的,将一个元素组合生成的不同图片尺寸的全部示例图片称为一个示例图组,也即,一个示例图组中包括多个示例图片,示例图片的数量与图片尺寸的数量相同,当前示例图就是指当前元素组合根据其对应的每个图片尺寸生成的全部示例图片。确定当前示例图组的示例图是否全部生成成功包括,当前示例图组中的示例图数量是否等于图片尺寸的数量,以及当前示例图组中的示例图的生成是否有异常情况,例如,异常情况包括无法与第一预设数据库连接以进行元素匹配、元素的内容缺失等情况。

s309、若当前示例图组的示例图片全部生成成功,则将所述当前示例图组的示例图片存储到预设数据库。

具体的,当示例图片全部生成成功时,将所有示例图片存储到预设数据库,以方便后续使用。

进一步的,将所述当前示例图组的示例图片存储到预设数据库包括步骤s309_1~s309_2(图中未示出)。

s309_1、通过多线程上传方式将所述当前示例图组的示例图片的图片文件上传到服务器。

具体的,生成的示例图片本身形成的图片文件(如.png文件)通常是上传到文件服务器,当需要使用示例图片形成可以进行广告投放的广告图片是,从服务器获取示例图片即可。线程是程序中的一个执行流,一个线程通常执行一个任务,由于生成的示例图片数量较多,因此采用多线程上传方式将多个示例图片上传到服务器,从而可以大大减少示例图片的上传时间。

进一步的,当有多台计算机设备同时执行示例图片的生成流程时,多台计算机设备的多个线程同时向文件服务器上传示例图片的图片文件,这时可能出现死锁(deadlock)的情况,死锁是指,在多任务系统下,当一个或多个进程等待系统资源,而资源又被进程本身或其它进程占用时,就形成了死锁。为了防止死锁情况的发生,在将示例图片存储到文件服务器时,使用分布式锁控制,从而使多个线程有序地保存示例图。目前很多系统都是分布式部署的,为了防止分布式系统中的多个进程之间相互干扰,需要一种分布式协调技术来对这些进程进行调度,而这个分布式协调技术的核心就是分布式锁。分布式锁使得在分布式系统环境下,一个方法在同一时间只能被一个设备的一个线程执行,因此分布式锁具备锁失效机制,可以防止死锁情况的发生。

s309_2、将所述图片文件在服务器中的存储地址通过分行存储的方式存储到预设数据库。

具体的,通过分行存储的形式将图片文件在服务器中的存储地址存储到预设数据库,就是在预设数据库中,一行存储示例图片的一个元素的存储地址。例如,预设数据库为mysql,当后续对示例图增加新的元素时,不需要改变表结构即可实现新增元素,有利于后续维护。

s310、若当前示例图组的示例图没有全部生成成功,则将所述示例图生成任务标记为待重试任务,根据预设延时规则执行所述待重试任务以重新生成示例图。

具体的,若当前示例图组的示例图片没有全部生成成功,则说明当前示例图组中的示例图片的生成有异常情况发生,例如,无法与第一预设数据库连接以进行元素匹配、元素的内容缺失等,此时应将示例图生成任务标记为待重试任务,等待预设延迟时间后重新执行该示例图生成任务,以确保每一个示例图片都能成功生成。

本实施例中,预设延时规则可以是延时固定的预设延迟时间,例如,延时1分钟后执行待重试任务,若待重试任务执行过程中仍然不能使示例图片全部生成成功,则再次延时1分钟后执行该待重试任务。

预设延时规则还可以是按预设规则依次增加延迟时间,例如,首次延迟1分钟后执行待重试任务,若待重试任务重新执行后仍然不能使示例图全部生成成功,则延迟2分钟后再次执行待重试任务,后续按照每重新执行一次待重试任务,下一延迟时间增加1分钟的规则进行延迟重试,即依次延迟3分钟、4分钟、5分钟等。也可以是依次延时2分钟、4分钟、6分钟等,具体的延时规则本实施例不做限制,可以根据实际情况进行设置。由于重试过程中仍然需要消耗一些系统资源,如果频繁重试会造成资源的浪费,故通过依次增加延迟时间可以避免系统资源的浪费。

本发明实施例三提供的示例图片的生成方法实现了示例图片的批量生产,通过一个元素可以获取到多个示例图片,提高了示例图片的设计效率;且通过标记信息的匹配和筛选,提高了示例图片中元素与元素之间的关联性,使得生成的示例图片更加精准,更加符合要求。通过多线程上传方式减少了示例图片上传到服务器的时间,提高了上传效率。通过分行存储的方式使得后期对数据库的维护更加方便。

举例来说,如图3b所示,为本实施例提供的示例图任务处理流程的示意图。

步骤s1~s3是本实施例中步骤s301的可替代实施方式,通过定时任务获取示例图的生成任务,并将任务标记为处理中,以便计算机设备执行该待处理中的任务,初始状态的任务就是指获取的示例图的生成任务,其中包括多个初始元素。在可替代实施例中,还可以设置异步实时触发示例图生成任务的方式,即当技术人员进行人工干预时,优先执行技术人员所选择的示例图生成任务。

步骤s4是本实施例中步骤s302~s303的可替代实施方式,即,为多个初始元素中的每个初始元素匹配对应的组合关系(组合关系也就是元素组合),并将得到的多个组合关系放入队列中,例如,初始元素为模板时,通过业务类型、运营位、标签等匹配对应的背景和图标,模板与匹配得到的一个背景和一个图标形成一个组合关系,通常一个初始元素能匹配得到多个组合关系,每个组合关系都能生成一个示例图片。

步骤s5~s11和s18是本实施例中步骤s304~s307的可替代实施方式。将组合关系放入队列中,然后判断队列中是否有待处理的组合关系,也就是确定队列中是否有组合关系,如果队列中没有组合关系,说明元素匹配得到的全部组合关系已经都生成了示例图片,示例图片生成任务已经执行完成,此时标记示例图生成任务为处理成功并结束流程;如果队列中存在组合关系,则说明示例图生成任务仍然在处理当中,此时根据队列先进先出的规则依次获取队列中的组合关系,并获取每个组合关系需要生成的示例图片的多个图片尺寸,根据图片尺寸对组合关系中的各元素进行缩放和对齐,以生成对应不同机型的屏幕尺寸的示例图片。

步骤s12~s18是本实施例中步骤s308~s310的可替代实施方式,其中,步骤s13~s15是本实施例中步骤s309的可替代实施方式,步骤s16~s18是本实施例中步骤s310的可替代实施方式。将一个组合关系根据不同尺寸生成的全部示例图片作为一组图片(即,一个示例图组),当一组图片未能全部生成成功时,说明有异常情况发生,此时将示例图片生成任务标记为待重试任务,并根据预设延迟规则执行待重试任务;当一组图片全部生成成功时,将这一组图片的示例图片的图片文件本身通过分布式锁控制方式批量上传到文件服务器,并将示例图片的存储地址存储在第二预设数据库,完成了一个组合关系的所有示例图片的上传与存储,可进入下一个组合关系的示例图片的生成。

示例性的,如图3c所示,为本实施提供的任务重试流程的示意图。任务重试流程与示例图片任务处理流程大体上相同,只是示例图片任务处理流程的步骤s2获取的是初始状态的任务,而任务重试流程的步骤s2'获取的是待重试任务,并且在任务重试流程中,示例图片存储到第二预设数据库之后,需要删除重试记录,即,在与示例图片任务处理流程的相同步骤s15之后增加了步骤s15'。任务重试流程的其余流程步骤与示例图片任务处理流程中相同,在此不再赘述。

实施例四

图4为本发明实施例四提供的一种示例图片的生成装置的结构示意图,本实施例可用于批量生成可用于广告投放的图片素材。本发明实施例提供的示例图片的生成装置可以实现本发明任意实施例提供的示例图片的生成方法,具备实现方法的相应功能结构和有益效果,本实施例中未详尽描述的内容可参考本发明任意方法实施例的描述。

如图4所示,本发明实施例四提供的示例图片的生成装置包括:任务获取模块410、元素匹配模块420、元素组合形成模块430和图片生成模块440。

任务获取模块410用于获取示例图生成任务,所述示例图生成任务包括形成示例图片的至少一种类型的初始元素,所述初始元素包括第一标记信息;

元素匹配模块420用于若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,得到多种类型的目标元素,每种类型的目标元素有多个;

元素组合形成模块430用于将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合;

图片生成模块440用于根据每个元素组合生成示例图片。

进一步的,所述第一标记信息至少包括第一业务类型、第一运营位和第一标签中的一种,所述第二标记信息包括第二业务类型、第二运营位和第二标签,所述样本元素的第二标记信息与所述初始元素的第一标记信息相同包括:样本元素的第二业务类型与所述初始元素的第一业务类型相同;和/或,样本元素的第二运营位与所述初始元素的第一运营位相同;和/或,样本元素的第二标签与所述初始元素的第一标签相同。

进一步的,所述示例图生成任务包括三种类型的初始元素,分别为:初始模板、初始背景和初始图标,所述预设数据库中的样本元素包括多个样本模板、多个样本背景和多个样本图标;元素匹配模块420具体用于:若样本背景的第二标记信息和样本图标的第二标记信息与所述初始模板的第一标记信息相同,则将所述样本背景作为目标背景,将所述样本图标作为目标图标;若样本模板的第二标记信息和样本图标的第二标记信息与所述初始背景的第一标记信息相同,则将所述样本模板作为目标模板,将所述样本图标作为目标图标;若样本模板的第二标记信息和样本背景的第二标记信息与所述初始图标的第一标记信息相同,则将所述样本模板作为目标模板,将所述样本背景作为目标背景。

进一步的,元素组合形成模块430具体用于:所述初始模板与一个目标背景和一个目标图标形成一个元素组合,从而得到多个元素组合;所述初始背景与一个目标模板和一个目标图标形成一个元素组合,从而得到多个元素组合;所述初始图标与一个目标模板和一个目标背景形成一个元素组合,从而得到多个元素组合。

进一步的,图片生成模块440具体用于:将所述多个元素组合放入队列;从所述队列中获取当前元素组合;获取所述当前元素组合对应的多个图片尺寸;将所述当前元素组合根据其对应的每个图片尺寸生成示例图片,得到多个示例图片。

进一步的,所述当前元素组合根据其对应的每个图片尺寸生成的全部示例图片为当前示例图组,所述装置还包括:

示例图片判断模块,用于确定当前示例图组的示例图片是否全部生成成功;

示例图片存储模块,用于若当前示例图组的示例图片全部生成成功,则将所述当前示例图组的示例图片存储到预设数据库;

重试模块,用于若当前示例图组的示例图没有全部生成成功,则将所述示例图生成任务标记为待重试任务,根据预设延时规则执行所述待重试任务以重新生成示例图。

进一步的,所述示例图片存储模块具体用于:通过多线程上传方式将所述当前示例图组的示例图片的图片文件上传到服务器;将所述图片文件在服务器中的存储地址通过分行存储的方式存储到预设数据库。

本发明实施例提供的示例图片的生成装置通过任务获取模块、元素匹配模块、元素组合形成模块和图片生成模块,实现了示例图片的批量生产,输入示例图片的至少一个元素,就可以获取到多个示例图片,提高了示例图片的设计效率;且通过标记信息的匹配和筛选,提高了示例图片中元素与元素之间关联性,使得生成的示例图片更加精准,更加符合技术人员的要求。

实施例五

图5是本发明实施例五提供的一种计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备512的框图。图5显示的计算机设备512仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图5所示,计算机设备512以通用设备的形式表现。计算机设备512的组件可以包括但不限于:一个或者多个处理器516(图5中以一个处理器为例),存储装置528,连接不同系统组件(包括存储装置528和处理器516)的总线518。

总线518表示几类总线结构中的一种或多种,包括存储装置总线或者存储装置控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industrysubversivealliance,isa)总线,微通道体系结构(microchannelarchitecture,mac)总线,增强型isa总线、视频电子标准协会(videoelectronicsstandardsassociation,vesa)局域总线以及外围组件互连(peripheralcomponentinterconnect,pci)总线。

计算机设备512典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备512访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

存储装置528可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(randomaccessmemory,ram)530和/或高速缓存存储器532。计算机设备512可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统534可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘,例如只读光盘(compactdiscread-onlymemory,cd-rom),数字视盘(digitalvideodisc-readonlymemory,dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线518相连。存储装置528可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块542的程序/实用工具540,可以存储在例如存储装置528中,这样的程序模块542包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块542通常执行本发明所描述的实施例中的功能和/或方法。

计算机设备512也可以与一个或多个外部设备514(例如键盘、指向终端、显示器524等)通信,还可与一个或者多个使得用户能与该计算机设备512交互的终端通信,和/或与使得该计算机设备512能与一个或多个其它计算终端进行通信的任何终端(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口522进行。并且,计算机设备512还可以通过网络适配器520与一个或者多个网络(例如局域网(localareanetwork,lan),广域网(wideareanetwork,wan)和/或公共网络,例如因特网)通信。如图5所示,网络适配器520通过总线518与计算机设备512的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备512使用其它硬件和/或软件模块,包括但不限于:微代码、终端驱动器、冗余处理器、外部磁盘驱动阵列、磁盘阵列(redundantarraysofindependentdisks,raid)系统、磁带驱动器以及数据备份存储系统等。

处理器516通过运行存储在存储装置528中的程序,从而执行各种功能应用以及数据处理,例如实现本发明任意实施例所提供的示例图片的生成方法,该方法可以包括:获取示例图生成任务,所述示例图生成任务包括形成示例图片的至少一种类型的初始元素,所述初始元素包括第一标记信息;若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,得到多种类型的目标元素,每种类型的目标元素有多个;将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合;根据每个元素组合生成示例图片。

实施例六

本发明实施例六还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的示例图片的生成方法,该方法可以包括:获取示例图生成任务,所述示例图生成任务包括形成示例图片的至少一种类型的初始元素,所述初始元素包括第一标记信息;若预设数据库中的样本元素的类型与所述初始元素的类型不同,且样本元素的第二标记信息与所述初始元素的第一标记信息相同,则将所述样本元素作为目标元素,得到多种类型的目标元素,每种类型的目标元素有多个;将所述初始元素与每种类型的目标元素中的一个目标元素形成元素组合,得到多个元素组合;根据每个元素组合生成示例图片。

本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或终端上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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