一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

生成图片的方法、装置、设备、存储介质和计算机产品与流程

2021-10-24 04:57:00 来源:中国专利 TAG:计算机 图谱 电子设备 总体上 深度


1.本公开总体上涉及知识图谱、深度学习、计算机视觉领域,更具体地涉及一种用于生成图片的方法、装置、电子设备、计算机可读存储介质以及计算机程序产品。


背景技术:

2.在进行创作期间,用户需要大量的图片来扩充其创作的素材。例如在进行写作时,需要用图片来可视化地呈现文字部分所要表达的内容,从而辅助写作。人们期望的使用的图片是独一无二的,即与现存的所有图片都不一样,从而能使得创作更有创意。如何根据用户的不同需求为用户个性化地定制图片,从而提高创作的效率,是设计者期望实现的一个目标。


技术实现要素:

3.本公开提供了一种用于生成图片的方法、装置、电子设备、计算机可读存储介质以及计算机程序产品。
4.根据本公开的第一方面,提供了一种生成图片的方法。该方法包括:接收用户的输入,该输入包括用于描述该图片的短语;基于接收到的输入的类型,从预先训练的多个算子模型中选择对应的算子模型;以及基于所选择的对应的算子模型,为该用户生成与该输入的该短语相关联的图片。
5.根据本公开的第二方面,提供了一种生成图片的装置。该装置包括:输入接收模块,被配置为接收用户的输入,该输入包括用于描述该图片的短语;模型选择模块,被配置为基于接收到的输入的类型,从预先训练的多个算子模型中选择对应的算子模型;以及图片生成模块,被配置为基于所选择的对应的算子模型,为该用户生成与该输入的该短语相关联的图片。
6.根据本公开的第三方面,提供了一种电子设备,包括一个或多个处理器;以及存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现根据本公开的第一方面的方法。
7.根据本公开的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现根据本公开的第一方面的方法。
8.根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序指令,该计算机程序指令被处理器实现如本公开的第一方面的方法。
9.本技术在为用户生成图片时,考虑到用户输入的不同类型,选择相对应的合适的算子模型,从而自动地实现图片生成,这样生成的图片与用户期望的图片的匹配程度更高,从而极大地优化图片自动生成的方案。
10.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
11.附图用于更好地理解本方案,不构成对本技术的限定。其中:
12.图1示出了本公开的多个实施例能够在其中实现的示例环境的示意图;
13.图2示出了根据本公开的一些实施方式的用于生成图片的方法的流程图;
14.图3示出了根据本公开的一些实施方式的归一化的流程图;
15.图4示出了根据本公开内容的示例性实施方式的用于生成图片的装置的框图;以及
16.图5示出了能够实施本公开内容的多个实施方式的计算设备的框图。
具体实施方式
17.以下结合附图对本技术的示范性实施例做出说明,其中包括本技术实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本技术的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
18.如上文所述,当用户在进行创作时,需要依照其创作需求来添加各种图片。例如,在报道体育赛事时,可能需要一些数据结构图来对赛事中的统计数据进行可视化呈现,例如用饼状图来呈现某位篮球运动员的命中率。再如,在编辑卡通类文章时,可能需要提供一些富于创意性的图片,来使得文字的表达更加传神,例如绘制一只黑色的老虎。
19.在现有的环境中,用户可以去现有的图库中选择满足其需求的图片。然而,并非所有需要的图片都可以在现有的图库中找到。用户也可以选择完全由自己编辑图片,但是无论如何,这样的编辑工作都会导致增加额外的时间,从而降低创作的效率。
20.针对上述问题,本公开的实施方式提供了一种用于生成图片的方案。下面将结合图1到图5来具体描述本公开的实施方式。
21.图1示出了本公开的多个实施例能够在其中实现的示例环境100的示意图。下面将结合文章写作的场景来描述本公开的实施方式。然而,应该理解的是,这样的描述仅仅是示意性的。本公开的实施方式还可以用于其他需要生成图片的场景,例如广告创作、视频创作等。具体的场景将不受到本公开的实施方式的限制。
22.如图1所示,在环境100中,计算设备110可以与用户进行交互,计算设备110被配置为基于用户的输入102生成用户所需要的输出104。该输出104可以是图片的形式。用户可以各种输入设备完成该输入102的键入。例如,可以通过与计算设备110以有线或者无线方式连接的键盘键入该输入102。
23.输入102中可以包含多个短语。在本公开的语境下,术语“短语”可以表示能够描述用户所期望的图片的一些特征的词语,该词性可以包括但不限于名词、形容词、量词、动词。此外,该输入102中所包含的短语的数目也可以根据不同的使用场景而有所不同。例如,在图1的示意性环境中,当输入102为“写有

飞机’字样的两架飞机”时,该输入102可以包括三个短语,这些短语分别是“写有

飞机’字样”、“两架”、“飞机”。应当理解的是,这里的输入102仅仅是示意性的,而非限制性的,输入102的短语的类型和数目不受限于这里描述的实施例。
24.如图1所示,经过计算设备110学习得出的输出104是用户期望得到图片。该图片是
针对于用户的输入102而得到的,换句话说,该图片是专门为该用户的需求而定制的图片,与现有的图片都是不一样的。此外,这样的图片是由计算设备110自动生成的,无需用户花费额外的时间和精力去另外的图片编辑软件中编辑图片,从而可以实现创作效率的极大提高。应该理解的是,该图片可以呈用户可以使用的任何格式,例如jpg格式、bmp格式、png格式,等等,具体的格式不受到本公开的实施例的限制,只要采用这样格式的图片可以被用户方便地使用即可,例如可以被直接拷贝到编辑文档中,以辅助用户的创作。
25.下面参照图2来描述根据本公开的一些实施方式的生成图片的方法200。方法200可以由图1中的计算设备110执行,从而基于用户的输入102更加精确地生成输出104。
26.在框202,接收来自用户的输入102。该输入102包括可以用来描述用户期望得到的图片的短语。在一些实施例中,可以使用各种短语识别函数来对该输入102中的短语进行识别,这样可以将输入102的结构识别清楚,以便于后续的处理。例如,当输入102是图1中示例性示出的“写有

飞机’字样的两架飞机”时,各个短语“写有

飞机’字样”、“两架”、“飞机”可以被短语识别函数有效地识别出来,这有利于对输入的类型加以判断。
27.在框204,基于接收到的输入102的类型,从预先训练的多个算子模型中选择对应的算子模型。在一些实施例中,根据输入102的不同的数据化程度,可以将输入102划分成结构化数据、非结构化数据和半结构化数据。这将在下文中详细描述。
28.在本公开的语境下,结构化数据表示的是具有标准输入格式的数据,例如仅包括数值的数据。举例来说,在撰写经济报告的实施例中,结构化的数据可以是某个国家的gdp数值。或者,在另一些实施例中,结构化的数据可以例如是某个学校的升学率。可以理解的是,这里列出的结构化数据的示例仅仅是示意性的,该结构化数据可以是各种各样的使用场景下的不同数据,只要该数据可以仅用数值表示即可。
29.与结构化数据相对的是,非结构化数据表示的是不含有数值的数据,例如仅包括文本。图1中列举的内容为“写有

飞机’字样的两架飞机”的输入102便是一种非结构化数据。再如,在其他实施例中,非结构化的数据可以是“一只黑色老虎的照片”。这样的非结构化的数据往往是具有一定创意性的输入,其数据内容并不像结构化数据那样是相对固定的,可以用于用户特定的创作目的。
30.半结构化数据是介于结构化数据和非结构化数据之间的一种数据,该数据可以包括数值和非数值的组合。例如,天气数据是一种半结构化的数据,因为天气数据除了包括诸如温度、风力等用数值表示的结构化数据之外,还包括描述不同天气状态(例如,晴天、小雨、暴雪)的用气象标志表示的非结构化数据。
31.由于不同的数据类型具有不同的特性,因此为其选择不同的算子模型。这样可以使得生成更加符合用户需求的定制化图片。在一些实施例中,算子模型可以包括图表类算子模型、元素类算子模型或者创意类算子模型。
32.在图表类算子模型中,可以实现各种类型的图表类图片的生成。在一些实施例中,这些图表类图片可以包括柱形图、饼状图、折线图、热力图中的一种或多种。由于这种类型的图表可以良好地呈现对数值的分析,而结构化数据中往往包含确定程度相对较高的数据,因此图表类算子模型特别适用于结构化数据。以此方式,可以实现对结构化数据的进一步分析。例如,折线图有助于反映数据的变化规律,饼状图可以反映每个数据在整体数据中的相对权重。在另一些实施例中,该图表类图片也可以包括表格式的图片。以此方式,在用
户需要对不同数据之间的相互关系直观体现出来时,可以自动地生成这样的表格式图片来协助创作。
33.在其他实施例中,图表类算子模型也可以适用于一些半结构化数据。这是由于,用户输入102中的某些半结构化数据中包含数值的部分数据也可以借助于上面介绍的图表类算子模型来生成对应的图片。
34.在元素类算子模型中,可以支持包括文本、图片、图标等各类的非结构化的输入。此外,在一些实施例中,借助于元素类算子模型,还可以生成包含上述信息的图片。以此方式,用户可以得到包含各种图片元素的图片,例如,除了图表的数据本身之外,图表上的图标或者题注的文字部分也可以借助于元素类算子模型来获得,由此大大地丰富了图片的展示功能。
35.在创意类算子模型中,模型的输入往往都是非结构化的数据。例如上文提到的,这些非结构化数据的数值化程度很低。对应地,创意类的算子模型可以使用例如基于深度学习的text2image的图片生成方案来实现用户输入的描述图片的文字到该图片的转换。
36.应当理解的是,这里列出的仅仅是一些示意性的算子模型。根据不同的用户的输入,可以从本文中未列出的其他算子模型中选择合适的算子模型来生成图片。此外,还应当理解的是,可以利用将来开发出的算子模型来根据用户的输入实现图片的生成。本公开的实施例在此方面不受限制。
37.返回参考图2,在框206处,基于所选择的对应的算子模型,为用户生成与输入102的短语相关联的图片,从而使用户获取符合其输入要求的图片。
38.在一些实施例中,在对算子模型进行训练时,可以基于训练得到的图片与用户期望的图片之间的匹配程度来对训练模型进行更新。这样的匹配程度可以用评价值来表示。
39.在一些实施例中,基于一个输入102,可以为用户生成多个图片,以供用户选择,并且可以根据用户对这些图片的选择情况来调整训练模型。在进一步的实施例中,如果训练得出的多个图片中的某张图片被用户选择,则为该张图片赋予相对较高的一个评价值。被选择的图片与对应的评价值可以被训练模型所考虑,从而使训练模型获知这样的反馈信息,以便对训练模型进行更新。对应地,训练得出的多个图片中的未被选择的图片会被赋予相对较低的一个评价值。同样,这些图片和对应的评价值也会被训练模型所考虑。
40.以此方式,基于用户对训练结果的评价,通过反复学习迭代,图片生成模型可以不断地优化自身的生成策略。由于神经网络模型的输出结果将随着训练样本数目的增加而变得更加准确,因此随着计算设备110处理的用户的输入102的次数增多,可以用来训练的模型数据就越丰富。以此方式,图片生成模型得以更新,从而使以后的图片生成更加合理。
41.在一些实施例中,图片的评价可以基于实际应用场景中用户的选择来进行。在另一些实施例中,图片的评价也可以由其他人员专门训练来进行。
42.需要注意的是,不同的算子模型往往具有不同的输入。由于这些算子模型的输入是不同的,因此有必要对用户的输入102进行归一化,以便于使该输入102适用于各种不同的算子模型。
43.下面参考图3来描述本公开的一些实施方式的归一化。如图3所示,输入310可以包括不同类型的数据,例如结构化数据312、半结构化数据314和非结构化数据316。这里的输入310可以是图1中的输入102。针对不同类型的输入,可以从算子模型库330中选择适当的
算子模型以用于根据该输入生成图片340。图3的算子模型库330中既可以包括上文描述的图表类算子模型332、元素类算子模型334以及创意类算子模型336,也可以包括已知的或者将来开发出的其他算子模型338。
44.在一些实施例中,图表类算子模型332的输入可以包括图表的坐标轴、名称、风格、单位、颜色,等等。类似地,元素类算子模型334的输入可以包括元素的种类、数目、位置、大小、名称等等。创意类算子模型336的输入可以包括输入的文本类型、名称、生成的图片大小、数目等。应该理解的是,这里列出各种算子模型的输入的示例仅仅是示意性的,而非限制性的,基于不同的使用场景,可以使用其他的参数来表示对应的算子模型的输入。
45.为了使输入310适用于更多类型的算子模型,可以对输入310实施归一化320的步骤。在实施归一化320时,可以将用户的输入102转换成预定格式,经过格式的转换,经转换的格式适用于各种不同的算子模型。以此方式,当扩展出更多算子模型时,可以避免由于算子模型与输入之间的不匹配导致无法利用该算子模型。
46.图4示意性示出了根据本公开内容的示例性实施方式的用于生成图片的装置400的框图。具体地,该装置400包括:输入接收模块402,被配置为接收用户的输入,该输入包括用于描述该图片的短语;模型选择模块404,被配置为基于接收到的输入的类型,从预先训练的多个算子模型中选择对应的算子模型;以及图片生成模块406,被配置为基于所选择的对应的算子模型,为该用户生成与该输入的该短语相关联的图片。
47.在一些实施例中,该预先训练的算子模型是基于生成的该图片及其对应的评价值而训练的,该评价值表示生成的该图片与用户期望的图片之间的匹配程度。
48.在一些实施例中,为该用户生成与该输入的该短语相关联的图片包括:为该用户生成与该输入的该短语相关联的多个图片供该用户选择,并且该装置还包括:第一评价值赋予模块,被配置为基于该多个图片中的第一图片被该用户选择,为该第一图片赋予第一评价值;以及第二评价值赋予模块,被配置为基于该多个图片中的第二图片未被该用户选择,为该第二图片赋予第二评价值,其中该第二评价值低于该第一评价值。
49.在一些实施例中,该输入的类型包括:结构化数据、非结构化数据和半结构化数据,其中该结构化数据中仅包括数值,该非结构化数据仅包括文本,该半结构化数据包括数值和文本。
50.在一些实施例中,该算子模型包括图表类算子模型和元素类算子模型,其中该图表类算子模型被配置为生成数据图表,该元素类算子模型被配置为生成图片元素。
51.在一些实施例中,该数据图表包括柱形图、饼状图、折线图、热力图中的一种或多种。
52.在一些实施例中,该图片元素包括与该图片相关联的文本、图标中的一种或多种。
53.在一些实施例中,该装置400还包括格式转换模块,被配置为将用户的该输入转换成预定格式,该预定格式适用于该多个算子模型。
54.本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
55.根据本技术的实施例,本技术还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。图5示出了能够实施本公开的多个实施例的电子设备500的示意性框图。
56.如图所示,电子设备500包括中央处理单元(cpu)501,其可以根据存储在只读存储
器(rom)502中的计算机程序指令或者从存储单元508加载到随机访问存储器(ram)503中的计算机程序指令,来执行各种适当的动作和处理。在ram 503中,还可存储电子设备500操作所需的各种程序和数据。cpu 501、rom 502以及ram 503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。
57.电子设备500中的多个部件连接至i/o接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许电子设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
58.上文所描述的各个过程和处理,例如方法200,可由处理单元501执行。例如,在一些实施例中,方法200可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由rom 502和/或通信单元509而被载入和/或安装到电子设备500上。当计算机程序被加载到ram 503并由cpu 501执行时,可以执行上文描述的方法200的一个或多个动作。
59.本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
60.计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是——但不限于——电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd

rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
61.这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
62.用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c 等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利
用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
63.这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
64.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
65.也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
66.附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
67.根据本技术实施例的技术方案,根据用户的输入为其自动地定制相应图片,从而避免花费额外的时间来对图片进行编辑。此外,由于在图片生成时考虑了用户输入的不同类型,因此生成的图片的用户满意度可以提升。这样的方案具有良好的自动化和智能化程度。
68.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本技术中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本技术公开的技术方案所期望的结果,本文在此不进行限制。
69.上述具体实施方式,并不构成对本技术保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本技术的精神和原则之内所作的修改、等同替换和改进等,均应包含在本技术保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜