本发明属于图像纹理合成技术领域,具体涉及一种图文结合的海报生成方法和系统。
背景技术:
平面设计在日常生活中广泛使用,海报、杂志封面、平面广告设计等这类图片与文字互相结合的媒介,能更好地传达信息,然而图文结合的人工制作过程繁琐,需要一定的技术。全自动海报生成方法具有巨大的商用价值。
海报生成的关键技术为纹理合成,将代表风格的纹理信息添加到目标文字上。尽管纹理合成被广泛使用,但是使用纹理合成进行艺术字生成的方法较少。一种艺术字生成的方法是基于多通道的艺术字生成方法。该方法通过采用偏移通道来对纹理围绕文字的空间位置分布进行约束,但是这需要风格图片为艺术字图片并且需要对应的原始文字图片作为引导。对输入的严格限制了该方法的应用场景。同时,这类方法只针对艺术字本身,没有考虑文字与背景图片的结合问题,无法用来自动生成海报。
技术实现要素:
针对上述问题,本发明提出一种图文结合的海报生成方法和系统。本发明通过考虑多种因素自动确定文字在背景图片的最佳位置;同时考虑轮廓调整,从而增加艺术字的表现力;在图文结合时,同时考虑文字的结构与背景图片的像素约束,使得生成的海报具有更好的主观视觉质量。
本发明采用的技术方案如下:
一种图文结合的海报生成方法,包括以下步骤:
1)计算或指定目标文字在背景图片中的放置位置,得到文字放置区域;
2)对风格图片进行前背景分割;
3)根据风格图片分割得到的前景轮廓的形状,调整目标文字的轮廓;
4)在背景图片的文字放置区域,根据文字的结构,利用风格图片的纹理进行纹理合成,生成艺术字;
5)使用背景图片的原始像素值替换文字放置区域边缘的像素值;
6)重复步骤4)到步骤5),直到收敛,得到图文结合的海报。
进一步地,步骤1)是可选的,可以由用户指定放置位置,也可以采用本发明提供的智能的位置推荐方法,该方法包括以下步骤:
1.1)对于输入的背景图片i,风格图片s和目标文字图t,计算背景图像i中每个像素x邻域内的像素值的方差,作为方差惩罚;
1.2)使用显著度检测方法计算背景图片i中每个像素x处的显著度,作为显著度惩罚;
1.3)计算背景图片i中每个图像块与其在风格图片s中最相似的图像块的差异的平方和,作为相关度惩罚;
1.4)计算背景图片i中每个像素x距离i的中心点的距离,然后计算偏离中心点的惩罚,作为偏移惩罚;
1.5)利用步骤1.1)~1.4)得到的惩罚项中的任意一种或多种,计算背景图片i中每个像素x放置文字的总惩罚;
1.6)将总惩罚最小的区域作为目标文字在背景图像的最佳位置。
进一步地,步骤2)使用聚类方法对风格图片进行前背景分割,得到两个区域,其中显著度均值较大的区域设置为前景,显著度均值较小的区域为设置背景。
进一步地,步骤3)所述调整目标文字的轮廓的方法是:
3.1)检测风格图片分割得到的前景的边缘上的像素点,以其为中心的图像块的集合记为gψ;
3.2)检测目标文字图中文字边缘上的像素点,以其为中心的图像块的集合记为tψ;
3.3)对每一个图像块ψ∈tψ,在gψ中寻找最相似的块ψ’,用ψ’的像素值代替ψ,得到轮廓调整后的文字图。
步骤4)基于相似块进行纹理合成,包括:
4.1)对背景图片i的文字放置区域
4.2)使用ψs(y)的像素值替换ψi(x)中对应的像素,以更新i;对于被多个图像块包含的像素,通过将每个相似块提供的像素值取均值进行替换。
进一步地,步骤6)中,重复步骤4)和步骤5)直到收敛或者背景图片的更新程度小于设定的阈值,得到自动生成的图文结合的海报。
一种图文结合的海报生成系统,其包括:
文字放置区域计算模块,用于计算目标文字在背景图片中的放置位置,得到文字放置区域;
前背景分割模块,用于对风格图片进行前背景分割;
轮廓调整模块,用于根据风格图片分割得到的前景轮廓的形状,调整目标文字的轮廓;
纹理合成模块,用于在背景图片的文字放置区域,根据文字的结构,利用风格图片的纹理进行纹理合成,生成艺术字;
像素值替换模块,用于使用背景图片的原始像素值替换文字放置区域边缘的像素值;
迭代模块,用于使纹理合成模块和像素值替换模块进行重复操作,直到收敛,得到图文结合的海报。
本发明提出了完整的自动生成海报方法,解决了文字在背景图片中布局的确定问题;同时对风格图片没有特殊要求,具有更广泛的应用场景。为了处理形态各异的风格,提出对文字轮廓进行有针对性的调整,从而增加艺术字的表现力,使得生成的海报具有更好的主观视觉质量。
附图说明
图1为本发明的图文结合的海报生成方法的演示图。
图2为本发明的图文结合的海报生成方法的流程图。
图3a至图3c为通过本发明方法生成的海报效果对比图。
具体实施方式
下面对本发明的详细方法流程作进一步地描述:
图1为本发明的图文结合的海报生成方法的演示图,图2为该方法的流程图。如该两图所示,本发明方法包括以下步骤:
步骤1:计算目标文字在背景图片中的放置位置,得到文字放置区域,具体包括:
a)对于输入的背景图片i,风格图片s和目标文字图t,计算背景图像i中每个像素x邻域内的像素值的方差,作为方差惩罚:
uv(x)=var(ψ(x))(1)
其中ψ(x)是以x为中心的图像块,var(·)为求方差操作。
b)使用显著度检测方法计算背景图片i中每个像素x处的显著度,作为显著度惩罚:
us(x)=sal(x)(2)
其中sal(·)为求显著度操作。
c)计算背景图片i中每个图像块ψ(x)与其在风格图片s中最相似的图像块的差异的平方和,作为相关度惩罚:
其中,q表示风格图片s中的一个像素,ψ(q)表示风格图片s中以像素q为中心点的图像块,
d)计算背景图片i中每个像素x距离i的中心点的距离dist(x),然后计算下面的偏离中心点的惩罚,作为偏移惩罚:
ua(x)=1-exp(-dist2(x)/2σ2)(4)
其中σ设置为背景图片i的长和宽的较小值。
e)计算背景图片i中每个像素x放置文字的总惩罚u(x):
u(x)=uv(x)+λ1us(x)+λ2uc(x)+λ3ua(x)(5)
其中λ1,λ2和λ3是加权的系数;uv是方差惩罚,在纹理丰富的区域具有较高的值,防止将文字放置到纹理丰富的区域;us是显著度惩罚,在具有重要物体的区域具有较高的值,防止将文字放置到具有重要物体的区域;uc是相关度惩罚,在与风格s差异较大的区域具有较高的值,防止将文字放置到与风格s差异较大的区域;ua是偏移惩罚,在不居中的位置具有较高的值,防止将文字放置到不居中的位置。其中,λ1,λ2和λ3可以通过实验来确定,本实施例中,λ1=1,λ2=1,λ3=0.5。
本发明所述“惩罚”是指将文字放置到指定位置的代价,代价越小,越适合将文字放置到该位置。
f)若目标文字图t是一个形状为r的形状(比如矩形等),则计算目标文字在背景图像的最佳位置为总惩罚最小的一个区域
步骤2:使用聚类方法,例如图割方法、k-means方法等对风格图s进行前背景分割,分割得到2个区域,计算每个区域中所有像素显著度的均值。比较2个均值的大小,显著度均值较大的区域设置为前景,显著度均值较小的区域为设置背景,分割结果记为g。
步骤3:检测g中前景的边缘上的像素点,以它们为中心的图像块的集合记为gψ。检测t中文字边缘上的像素点,以它们为中心的图像块的集合记为tψ。对每一个图像块ψ∈tψ,在gψ中寻找最相似的块ψ’,块相似的度量准则如式(7)所示,其中d表示块的差异度,差异度越小则越相似:
用ψ’的像素值代替ψ,得到轮廓调整后的文字图t’。
步骤4:使用纹理迁移方法将s的纹理合成到背景图像i中的文字t’之上,其中文字t’位于矩形区域
步骤4.1:对i的
其中,ψt’(x)是ψi(x)在文字图t’中对应位置的图像块,ψg(y)是ψs(y)在分割图g中对应位置的图像块,sal(y)是s中像素y处的显著度,t’(x)是t’中像素x的值,在文字内部(t’(x)=1)寻找显著度高的图像块,在文字外部寻找显著度低的图像块(t’(x)=0),从而使艺术字从背景中凸显出来,增加艺术字的可识别性,λ4和λ5是加权的系数。公式(8)也可以用其他相似度衡量准则代替。其中,λ4和λ5可以通过实验来确定,本实施例中,λ4=10,λ5=0.05。
步骤4.2:在步骤4.1中,为ψi(x)找到了相似块ψs(y),使用ψs(y)的像素值替换ψi(x)中对应的像素,以更新i。对于被多个图像块包含的像素,通过将每个相似块提供的像素值取均值进行替换。
步骤5:取矩形区域
步骤6:重复步骤4和步骤5,直到收敛或者i的更新程度小于一定阈值。最终的i就是自动生成的图文结合的海报。
根据以上方法,步骤4对目标文字进行纹理风格化,而步骤5将文字区域边缘处的像素值替换为原始背景图片的值,就可以在迭代更新中引导纹理风格化的过程使得文字无痕地嵌入到背景图像中。图3a至图3c为通过本发明方法生成的海报效果对比图。
上述实施例中步骤1建立了四项惩罚项,并利用四项惩罚项计算总惩罚项。在其它实施例中,也可以选择四项惩罚项任意一项或多项来计算总惩罚(选择一项时,将该项直接作为总惩罚),还可以采用类似的思路添加其他的惩罚项。
本发明中的步骤1是可选的,上述实施例提供了一个智能的位置推荐方法,其它实施例中也可以由用户指定放置位置。本发明中的聚类方法和显著度计算方法可以采用任意现有的方法;步骤3可以采用任意现有的结构迁移方法来调整目标文字的轮廓;步骤4可以采用任意现有的纹理迁移方法进行纹理合成。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。