一种改进的按行纹理合成加速方法

文档序号:6511853阅读:171来源:国知局
一种改进的按行纹理合成加速方法
【专利摘要】一种改进的按行纹理合成加速方法,本发明先按块合成一行纹理,再按行合成整个纹理;将按块合成中的L形重叠区改进为r形重叠区,减少参与误差计算的冗余像素点个数;采用并行计算方式搜寻满足误差条件的最优合成纹理块;将水平最佳缝合线的搜索范围从块扩大到行,采用行最佳缝合线进行行纹理的缝合。本发明在其存在较大计算冗余的基础上提出了改进,使用r型重叠区代替了L型重叠区的计算并使用了按整行进行缝合的策略来进一步加快了纹理合成的速度。
【专利说明】一种改进的按行纹理合成加速方法
【技术领域】
[0001]本发明涉及一种纹理合成技术,尤其是按行纹理合成加速方法的改进,属于图形图像处理【技术领域】。
【背景技术】
[0002]基于样图的纹理合成技术(Texture Synthesis from Samples,TSFS)是继纹理映射、过程纹理合成方法之后发展起来的一种新的纹理合成技术。其原理为:基于给定的小区域纹理样本,按照物体表面的几何形状,拼合生成任意大小的纹理图像。
[0003]TSFS技术有两大类:基于点的纹理合成和基于块的纹理合成。基于点的纹理合成方法,采用Markov Random Field(MRF)模型进行纹理合成,MRF模型认为纹理具有局部统计特征,即纹理中的任一部分都可以由其周围部分(即邻域)完全决定,对于大多数纹理,MRF模型能够很好地描述纹理的特征,提升了样图纹理合成的质量,但是由于每合成一个像素都要搜索一遍样本图,运算量非常大,处理的速度也很慢。基于块的纹理合成方法,其每次合成一个方形的区域,通过寻找最佳纹理块和按最佳缝合线拼接最佳纹理块来产生新的纹理,大大提高了合成速度,同时还避免了点合成过程中的模糊效果,对纹理结构保持的较好。但该方法存在的问题也非常明显,它会出现纹理块的重复效应,有时边界不匹配,从而导致了合成质量较低的问题。虽然该合成方法的合成速度相比点合成有了一定的提升,但在实际的运用中还是速度较慢无法达到实时合成的效果。
[0004]在基于块的纹理合成中,具有代表性的为Image quilting方法。它是一种基于块拼接的纹理合成方法。该方法的主要步骤如下:
[0005](1)在输入的纹理样本图中任取一块纹理块BI,放在目标纹理图中,然后在纹理样本图中查找新的一块B2,查找方法为:①按照扫描线顺序,在纹理样本图中移动纹理块的左上角的位置,即从纹理样本图的(0,0)坐标开始,按照扫描线顺序把每一个点作为纹理块的左上角顶点,遍历纹理样本图。②对每个纹理块,按照重叠区宽度overlapWidth找到其与在目标图中已经合成块的重叠区,在已合成的块中的重叠区记为B1v,在当前找到的纹理块中的重叠区记为B2ov,计算重叠区域误差Error,用重叠区域内对应像素的颜色差值平方和Sum-of-Squared Differences (SSD)来度量该误差,计算方法为:
[0006]Error = Σ [ (%: - )2 十 ^ - c; )2 + iK, -eZn

I, Jeo verlap
[0007]式中,Κζ,Οζ和T是Βι。内对应像素的RGB颜色值,和bZ是B。内
对应像素的RGB颜色值。③找出重叠区域误差在误差容忍度Tolerance范围内的纹理块的集合,然后随机在该集合中挑选一个纹理块作为新找到的最优纹理块B2。
[0008](2)将民放在目标纹理图像中,与已合成的纹理块进行拼接,即寻找其与已合成纹理块之间的最佳缝合线,共有垂直、水平和L型三种拼接的种类。最佳缝合线用Dijkstra的最短路径方法得到。
[0009](3)把找到的最佳缝合线当成新的纹理边界,将B2放在目标纹理图中,按最佳缝合线进行拼合。
[0010](4)重复以上步骤直至目标纹理图全部被合成纹理覆盖。
[0011]从上述对Image quilting方法描述中可以看出,由于其存在对纹理样本图的遍历,选择最优纹理块是非常耗时的过程,重叠区域误差的计算量非常大,而且还存在着有计算冗余部分。

【发明内容】

[0012]本发明方法的目的正是为了克服上述现有技术存在的缺陷和不足之处,在其存在较大计算冗余的基础上提出了改进,使用r型重叠区代替了 L型重叠区的计算并使用了按整行进行缝合的策略来进一步加快了纹理合成的速度。
[0013]本方法是一种改进的按行纹理合成加速方法,本发明改进的目的还在于,在保证纹理合成效果的同时较大幅度的提升合成速度。而且,在对某些纹理图进行合成时,提高了合成速度的同时还能有更好的合成效果,降低了使用的复杂度。
[0014]本发明的目的是通过如下技术方案来实现的。
[0015]为提高纹理合成速度,本方法对现有的按块合成方法Image quilting方法进行了改进,提出改进的按行纹理合成加速方法,即先按块合成一行纹理,再按行合成整个纹理。将按块合成中的L形重叠区改进为r形重叠区,减少参与误差计算的冗余像素点个数;采用并行计算方式搜寻满足误差条件的最优合成纹理块;将水平最佳缝合线的搜索范围从块扩大到行,采用行最佳缝合线进行行纹理的缝合,保证和提高了纹理合成的效果。所提方法在不降低合成效果的前提下,提升了纹理合成速度,降低了方法的复杂性;
[0016]本发明按行合成加速方法的实施步骤为:
[0017](I)按照Image quilting方法中垂直重叠区纹理块拼接的方式合成目标纹理图的第一行;
[0018](2)从合成第二行纹理开始,寻找最佳纹理块时,除第一块的寻找与Imagequilting方法相同,其余块的寻找均按照r形重叠区域进行误差计算;
[0019](3)在一行的范围内寻找水平最佳缝合线,并按该缝合线将两行纹理进行纹理拼接;按行合成方法在进行纹理块缝合时只有两种拼接类型,按行合成的垂直最佳纹理缝合与按行合成的水平最佳纹理缝合;
[0020](4)重复(2)、(3)步骤直至目标纹理图全部被合成纹理覆盖。
[0021]本发明对于r型重叠区的构建思想为:对于Image quilting方法中的L形重叠区,在其上方纹理块和左方纹理块合成时已经各计算过一次误差,在本次合成时又被计算一次,造成了冗余计算,因此我们提出了 r型重叠区,它能够有效避免L形重叠区中出现的重复计算的问题。r形重叠区域中的垂直重叠区和水平重叠区不再有重合部分,其中左上角部分的像素只在前面选择时被用来计算重叠区误差,在本次最佳纹理块选择时,不再参与重叠区误差计算,消除了计算冗余,这在一定程度上提高了合成速度。
[0022]本发明水平最佳缝合线的搜寻的基本思想为:按行合成的方法是先合成一行后,再和前一行纹理进行纹理拼接。水平最佳缝合线的搜索范围从【背景技术】中提到的ImageQuilting方法中的一个合成块扩展到一行合成块,在和前一行已合成好的行纹理中在重叠区进行最佳缝合线的寻找,再按最佳缝合线进行两行的拼接,扩大了水平方向最佳缝合线的搜索范围,这种较大范围内的搜索有利于提高纹理合成的质量,使缝合线在一行上具有全局最优的特性,以保证合成效果不下降甚至还有提高。
[0023]本发明候选合成纹理块并行合成的基本思想为:在选择每一个最佳纹理块的过程中,每个候选纹理块和已合成好的纹理进行重叠区误差计算的过程是彼此独立,互不影响,因而可以同时对这些不同的块进行计算,所以可将其分解为并行遍历的过程。在进行方法实现时,设计并行计算的方法,即在同一时刻可以同时对两个、四个甚至多个合成纹理块进行重叠区误差计算,缩短寻找最佳纹理块的时间。在并行计算的过程中,借助多核CPU来实现并行计算,以此提高纹理合成速度。
[0024]发明的效果
[0025]本发明中提出的改进的按行纹理合成加速方法降低了其具体实现的复杂度;合成效果与现有的按块合成方法相比,没有下降,反而因行最佳缝合线的引入,还有所提升。设纹理样本图、合成纹理块和目标纹理图都是正方形的,重叠区域的宽度与合成纹
理块宽或高的比为l:n,即重叠区宽度占合成纹理块的1/n,可以得到:rcuion =
2η-1
从该式可以看出,1^^011与重叠区占合成纹理块的比例有密切关系,ratiojf随重叠区占合成纹理块比例的增大而提高。当n=3时,可以计算出按行合成的速度提升率为:
ratio, = ~~ = - = 20% 当 n=6 时,则 ratio^ = ~~ =丄=9.09%。
【专利附图】

【附图说明】
[0026]图1为Image Quilting方法的示意图;
[0027]图2为按块合成方法中的重叠区域的介绍示意图;
[0028]图3为本发明的新重叠区域r型重叠区域示意图;
[0029]图4为按块合成方法中的三种拼接类型示意图;
[0030]图5为在本发明中使用的两种拼接方式示意图;
[0031]图6为Image Quilting方法和改进的按行纹理合成加速方法合成效果对比图1部分;
[0032]图7为Image Quilting方法和改进的按行纹理合成加速方法合成效果对比图1I部分;
[0033]图8为Image QuiIting方法和改进的按行纹理合成加速方法合成效果对比图1II部分;
[0034]图9为Image Quilting方法和改进的按行纹理合成加速方法合成效果对比图1V部分。
【具体实施方式】
[0035]为提高纹理合成速度,本方法对现有的按块合成方法Image quilting方法进行了改进,提出改进的按行纹理合成加速方法,即先按块合成一行纹理,再按行合成整个纹理。将按块合成中的L形重叠区改进为r形重叠区,减少参与误差计算的冗余像素点个数;采用并行计算方式搜寻满足误差条件的最优合成纹理块;将水平最佳缝合线的搜索范围从块扩大到行,采用行最佳缝合线进行行纹理的缝合,保证和提高了纹理合成的效果。所提方法在不降低合成效果的前提下,提升了纹理合成速度,降低了方法的复杂性;
[0036]本发明按行合成加速方法的实施步骤为:
[0037](I)按照Image quilting方法中垂直重叠区纹理块拼接的方式合成目标纹理图的第一行;
[0038](2)从合成第二行纹理开始,寻找最佳纹理块时,除第一块的寻找与Imagequilting方法相同,其余块的寻找均按照r形重叠区域进行误差计算;
[0039](3)在一行的范围内寻找水平最佳缝合线,并按该缝合线将两行纹理进行纹理拼接;按行合成方法在进行纹理块缝合时只有两种拼接类型,按行合成的垂直最佳纹理缝合与按行合成的水平最佳纹理缝合;
[0040](4)重复(2)、(3)步骤直至目标纹理图全部被合成纹理覆盖。
[0041]见图1,(a)图为原有块合成方法,其中B1、B2为合成的区域,BI的区域为从左边到深黑色虚线矩形区域,B2的区域为从右边到图中深黑色直线矩形区域,深黑色直线到深黑色虚线之间的矩形区域为缝合时候的拼接区域;(b)图为Image Quilting方法使用到的最小误差分割路径技术,图中两条虚线之间的矩形区域为缝合部分,曲线为最佳缝合线。
[0042]见图2,图2中的左侧部分为已经合成好的块,右侧灰色部分为新找到的块。其中,(a)图为垂直型的纹理重叠区,其中右侧部分中水平方向标定的blockWidth为新找到的块的宽度,垂直方向标定的blockHeight为新找到的块的高度;(b)图为水平型的纹理重叠区;(c)图为L型纹理重叠区,其中右侧深灰色矩形部分为在合成过程中被重复多次计算的区域,其水平标定overlapWidth为该区域的宽度。
[0043]见图3,r形重叠区为图中深黑色矩形框区域所示,其出现在非第一行和非第一列的最优匹配块选择中。灰色区域为新合成的用于拼接的块。r型重叠区的提出,使图2中的矩形重叠区域的计算次数在本方法中每一行(非第一行)的合成中减少了一次,在计算减少的这一次中只计算了垂直和水平的部分区域而不再重复计算其重叠的矩形区域。
[0044]见图4,图中深黑色矩形框内的部分为其缝合的区域,灰色区域为新找到的用于拼接的块。其中,(a)图为垂直型最佳纹理缝合线;(b)图为水平型最佳纹理缝合线;(C)图为L型最佳纹理缝合线。
[0045]见图5,图中深黑色矩形框内的黑线为最佳缝合线,灰色区域为新合成的用于拼接的块。其中,(a)图为按行合成的垂直型最佳纹理缝合线,其与原有方法的合成原理和效果相同;(b)图为按行合成的水平型最佳纹理缝合线,该缝合方式为本方法中新提出,其不再对每一块分别进行水平缝合而是将每一行作为整体进行整行的缝合,从而在提升了缝合连贯性效果的同时还能加快缝合速度。
[0046]见图6?图9,其中n=3,bN=6 (η为重叠区占合成纹理块的比例,bN为纹理块的个数)。图中实验所使用的平台其硬件规格为:CPU =Intel(R) Core(TM) 2Duo P8700 ;CPU主频:2.53GHz ;内存:2GM。图中从左到右依次为纹理样本及合成参数、Image Quilting合成效果图、改进的按行加速合成效果图、Image Quilting方法的合成时间(IQ TS)、改进的按行合成加速方法合成时间(Line TS)、合成速度提升率(Ratio)、按行并行合成时间、按行合成与按行并行合成的提升率。从图6?图9中可得出,使用了按行合成加速方法后相比ImageQuilting方法的平均合成速度提升率为23.38%,使用了按行并行合成后相比没有使用并 行合成时的平均速度提升率为45.55%。
【权利要求】
1.一种改进的按行纹理合成加速方法,其特征在于,先按块合成一行纹理,再按行合成整个纹理;将按块合成中的L形重叠区改进为r形重叠区,减少参与误差计算的冗余像素点个数;采用并行计算方式搜寻满足误差条件的最优合成纹理块;将水平最佳缝合线的搜索范围从块扩大到行,采用行最佳缝合线进行行纹理的缝合; 其步骤为: (1)按照Imagequilting方法中垂直重叠区纹理块拼接的方式合成目标纹理图的第一行; (2)从合成第二行纹理开始,寻找最佳纹理块时,除第一块的寻找与Imagequilting方法相同,其余块的寻找均按照r形重叠区域进行误差计算; (3)在一行的范围内寻找水平最佳缝合线,并按该缝合线将两行纹理进行纹理拼接;按行合成方法在进行纹理块缝合时只有两种拼接类型,按行合成的垂直最佳纹理缝合与按行合成的水平最佳纹理缝合; (4)重复(2)、(3)步骤直至目标纹理图全部被合成纹理覆盖。
【文档编号】G06T11/00GK103473798SQ201310422033
【公开日】2013年12月25日 申请日期:2013年9月16日 优先权日:2013年9月16日
【发明者】普园媛, 苏迤, 魏小敏, 徐丹, 王朝晖 申请人:云南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1