基于gpu的几何表面上各向同性/异性纹理合成方法

文档序号:6361735阅读:200来源:国知局
专利名称:基于gpu的几何表面上各向同性/异性纹理合成方法
技术领域
本发明涉及一种通过GPU加速的几何表面各向同性/异性纹理合成方法,更具体地说,本发明涉及ー种利用GPU的可编程功能及其高效处理性能三维几何表面纹理合成速度的方法,属于计算机图形学领域。纹理合成結果可以用于电影动画、虚拟现实、电子游戏等领域。
背景技术
I. I基于样本图像的纹理合成在最近几年,纹理合成已经显著増加了映射图像细节到网格表面的容易性。较早的算法随机的将小块图像粘贴在三维表面,然后使用alpha混合技术隐藏块间缝隙[E. Praun, A. Finkelstein, and H. Hoppe. Lapped textures. Proceedings of SIGGRAPH2000,pp. 465-470]。最近,裁缝方法[A. Efros and W. Freeman. Image quilting fortexture synthesis and transfer. Proceedings of SIGGRAPH 2001,pp. 341-346 ;L. Liang,C. Liu,Y. Xu,B. Guo,and H. Shum. Real-time texture synthesis by patch-basedsampling. ACM Transactions on Graphics,vol.20,no. 3,pp. 127-150,2001 ;V.Kwatra,A.Schodl, I.Essa, G. Turk,and A.BodicL Graphcut textures Image andvideo synthesis using graph cuts. ACM Transactions on Graphics,vol. 22, no. 3,pp. 277-286,2003 ;K. Zhou, P. Du,L. Wang, Y. Matsushita,J. Shi,B. Guo,and H. Shum.Decorating surfaces with bidirectional texture functions. IEEE Transactions onVisualization and Computer Graphics, vol. 11,no. 5, pp. 519-528, 2005.]能够产生更好的合成結果,它通过仔細的放置小块纹理来减小小块边界的不连续性。放置这些纹理块之后,[L. Liang, C. Liu, Y. Xu, B. Guo, and H. Shum. Real-timetexture synthesis bypatch-based sampling. ACM Transactions on Graphics,vol. 20,no. 3,pp. 127-150,2001 ;S. Magda and D. KriegmaniFast texture synthesis on arbitrary meshes. ACM SIGGRAPH 2003 Sketches & Applications,2003,p. I·]简单的使用alopha混合技术来隐藏纹理缝隙,而[A. Efros and W. Freeman. Image quilting for texture synthesis and transfer.Proceedings of SIGGRAPH 2001,pp. 341-346 ;K.Zhou,P.Du, L. Wang, Y. Matsushita,J. Shi, B.Guo,and H. Shum.Decorating surfaces with bidirectional texturefunctions.IEEE Transactions on Visualizationand Computer Graphics,vol. 11,no. 5,pp. 519-528,2005.]通过搜索最小剪切缝隙进一步增强缝隙间过渡的平滑性。因为人类的视觉对纹理中的边缘,角点和其它高水平特征非常敏感,[Q. Wu and Y. Yu. Featurematching and deformation ior texture synthesis. ACM Transactions on Graphics,vol. 23,no. 3,pp. 364-367,2004.]从样本纹理中提取出特征图,然后使用特征匹配和图像形变的方法来最优的保持特征连续性。其它的相关纹理合成方法包括基于像素的和基于块策略的混合方法[A. Nealen and Μ· Alexa. Hybrid texture synthesis. Proceedingsof the 14th Eurographics workshop on rendering. Eurographics Association,2003,p. 105.],对图片中物体重新进行纹理合成[H. Fang and J.Hart,Textureshop texturesynthesis as a photograph editing tool. ACM Transaction on Graphics,vol. 23,no.3,pp. 354-359,2004. ],GPU 上的并行可控纹理合成[S. Lefebvre and H. Hoppe. Parallelcontrollable texture synthesis. ACM Transactions on Graphics,vol.24, no. 3,pp. 777-786, 2005. ], [S. Lefebvre and H. Hoppe. Appearance-space texture synthesis.ACM SIGGRAPH 2006,p. 548.]和使用期望最小化优化算法的纹理合成方法[V. Kwatra,I. Essa,A. Bobick,and N. Kwatra. Texture optimization for example-based synthesis.ACM SIGGR APH2005,p. 802. ]. Huang et al. [H. Huang,X. Tong, and W. Wang. Acceleratedparallel texture optimization. Journal of Computer Science and Technology,vol. 22,no. 5,pp. 761-769,2007.]在GPU上实现了 K-类似搜索和主成分分析(PCA),并进一步加速了后面的纹理优化。Gabor滤波器对于纹理分析具有理想最优特性;它的方向和径向频率带宽是可调的,允许空间和空间频率中进行联合分辨率优化。Bovid和 Clark[A. Bovik,M. Clark,and W. Geisler. Multichannel texture analysis usinglocalized spatial filters. IEEE Transactions on Pattern Analysis and MachineIntelligence,pp. 55-73,1990.]提出了使用2D Gabor滤波器进行视觉纹理分析的计算方法。他们发现这种方法对于人工和自然纹理的分割都很适用,如预料中一样。最近Gilet和 Dischler[G. Gilet,J. Dischler, et al. An Image-Based Approach for StochasticVolumetric and Procedural Details. Computer Graphics Forum, vol.29, no.4, WileyOnline Library,2010,pp. 1411-1419.]使用Gabor滤波器来计算纹理相似度以便进行基于图像的渲染。I. 2表面纹理合成三维表面的纹理合成方法,在过去的十几年的发展中,已经显著的使任意曲面的复杂图像细节设计变得更加容易。第一类方法[G. Turk. Texture synthesis on surfaces.Proceedings of the28th annual conference on Computer graphics and interactivetechniques. ACM New York,NY,USA,2001,pp. 347-354. ;L. Wei and M. Levoy. Texturesynthesis over arbitrary manifold surfaces. Proceedings of the 28th annualconference on Computer graphics and interactive techniques. ACM New York,NY,USA,2001,pp. 355-360. ;X. Tong, J. Zhang, L Liu,X. Wang, B.Guo,and H. Shum. Synthesisof bidirectional texture functions on arbitrary surfaces. ACM Transactions onGraphics,vol. 21, no. 3,pp. 665-672, 2002. ;S. Zelinka and M. Garland. Interactivetexture synthesis on surfaces using jump maps. Proceedings of the 14thEurographics workshop on Rendering. Eurographics Association Aire—la—Ville,Switzerland, Switzerland,2003,pp. 90-96.]实现了基于各像素非参数化米样[A. Efrosand T.Leung.Texture synthesis by non-parametric sampling.InternationalConference on Computer Vision,vol. 2,no. 9,1999,pp. 1033-1038. ;L. Wei,and M. Levoy.Fast texture synthesis using tree-structured vector quantization. Proceedingsof the27th annual conference on Computer graphics and interactive techniques.ACM Press/Addison-Wesley Publishing Co. New York, NY,USA,2000,pp. 479-488.]的纹理合成,并且需要额外的映射或重釆样以便进行渲染。相对而言,有些方法在渲染的过程中使用原始纹理图像,并且使用纹理映射硬件执行此图像的索引。其中的一种较早的方法是 Soler #人的[C. Soler, M.Cani,and A. Angelidis. Hierarchical pattern mapping.Proceedings of the 29th annual conference on Computer graphics and interactivetechniques. ACM New York,NY, USA,2002,pp. 673-680.],他们通过三角面片的聚类实现小块的创建。Zelnika 和 Garland[S. Zelinka and M. Garland. Jump map-based interactivetexture synthesis. ACM Transactions on Graphics,vol.23, no.4, pp. 930-962,2004.]也扩展了他们的跳跃映射,以便每个顶点在原始图像索引的坐标中使用。Lefebvre和Hoppe [S.Lefebvre and H. Hoppe. Appearance-space texture synthesis. ACM SIGGR APH2006,p. 548.]使用硬件实现了用于纹理查找表的额外内存存储,并且他们的方法利用了 GPU来提供交互纹理合成的速度。他们的合成結果中的高质量有部分原因是因为使用了纹元掩模和对像素邻域的PCA分析。Han等人[J. Han, K. Zhou,L Wei,M. Gong, H. Bao,X.Zhang, and B.Guo. rast example-based suriace texture synthesis via discreteoptimization. The Visual Computer, vol. 22,no. 9,pp. 918-925,2006.]提出了使用期望最大化算法来计算表面纹理,他们在GPU上实现了该算法。大多数之前的方法[E.Praun,A.Finkelstein,and H. Hoppe. Lapped textures. Proceedings of SIGGRAPH 2000,pp. 465-470 ;G.Turk.Texture synthesis on surfaces. Proceedings of the 28th annualconference on Computer graphics and interactive techniques. ACM New York,NY,USA,2001, pp. 347-354. ;L. Wei and M. Levoy. Texture synthesis over arbitrary manifoldsurfaces. Proceedings of the 28th annual conference on Computer graphics andinteractive techniques. ACM New York, NY, USA,2001, pp. 355-360. ;X. Tong,J. Zhang,L. Liu, X. Wang, B. Guo,and H.Shum. Synthesis of bidirectional texture functions onarbitrary surfaces. ACM Transactions on Graphics, vol. 21,no. 3,pp.665-672,2002.;J.Zhang, K.Zhou, L Velho,B. Guo, and H. Shum. Synthesis of progressively-varianttextures on arbitrary surfaces. ACM SIGGRAPH 2003,pp. 295-302.]都提取局部邻域栅格通过局部压平和表面重釆样技木。I. 3纹理映射与将ー个曲面压平成一个平面的问题紧密相关的纹理映射技术经常在游戏引擎或3D渲染的简化的角色模型中被使用。自从Catmull [E. Catmull. A subdivisionalgorithm for computerdisplay of curved surfaces. 1974.]提出纹理映射以来,在文献中出现了大量的方法[E. Bier and K. Sloan. Two-part texture mappings. IEEE ComputerGraphics and applications,vol.6,no.9,pp.40—53,1986 ;P.Heckbert. Survey oftexture mapping. IEEE Computer Graphics and Application,vol.6, no. 11,pp.56—67,1986 ;S.Haker, S.Angenent, A. Tannenbaum, R.Kikinis, G. Sapiro,and M.Halle.Conforma丄 surface parameterization for texture mapping. IEEE Transactions onVisualization and Computer Graphics,vol. 6,no. 2,pp. 181—189,2000 ;L Wang,X. Gu,K. Mueller,and S. Yau. Uniform texture synthesis and texture mapping using globalparameterization. The Visual Computer, vol. 21, no. 8, pp. 801-810,2005.].因为大多数3D表面是不能够展开的,在最后的合成图像中存在纹理失真。而且,尽管3D表面是可以展开的,许多方法也会引起失真。基于表面参数化以便把ー个3D表面变平的纹理合成方法需要将一个表面分解成离散的平面图像块,并使用分段映射的方法建立3D网格和它们的2D平面中的同构等价物中的对应关系,而且要通过线性和非线性的解法来最小化这种弓I入的失真° 在文献[A. Sheffer, E. Praun, and K. Rose. Mesh parameterization methodsand their applications. Foundations and Trends in Computer Graphics and Vision,vol. 2,no. 2,p. 171,2006.]中给出了最近在表面参数化方法中的很好的总结。1. 4上述方法中存在的问题表面纹理增加了几何模型的真实性和丰富性。尽管对任意表面进行纹理合成的问题已经被广泛的研究了,但是实时性和并行性仍然是交互应用化的主要瓶颈。
上面介绍的表面纹理合成方法可以主要分成两类纹理映射和直接在表面上进行的纹理合成。前者,例如UV映射和UVW映射,不可避免具有显著的纹理失真和繁重的人工操作的缺点。因此,已经有很多研究工作是关于直接在三维表面进行纹理合成的。表面纹理是连续的并且直接定义在表面上,尽管它们在实际中以离散的单个顶点的形式表现。当前的表面纹理合成方法针对于静态的表面经常使用全局参数化,这将会引发纹理缝隙或失真。众所周知,实现表面参数化域的映射具有很高的复杂性,最典型的,产生一个低失真的表面参数化需要相当多的用户干预。另外,如果说纹理要反映表面的形状信息,那么与显著的几何结构或者形变相一致是很重要的。尽管可控性,精心设计的矢量场可以让三维表面的纹理合成产生很多变化的效果。但是目前所提出的这些纹理合成方法并没有太多关注物体形状或者几何形变情况中的纹理渐变的问题。很多真实的物体的表面纹理都是具有尺度变化性质的。所以当我们合成这样的物体表面纹理的时候,我们应该产生这种尺度渐变的纹理以产生更真实的纹理合成效果。例如斑马模型,在斑马的身体和背部通常都是大尺度的条纹,然而在腿部区域这种条纹的尺度是很小的。为了能够在虚拟现实中产生这种真实的合成效果,这种纹理渐变必须在纹理合成的过程进行仔细的考虑和设计。不仅仅是在静态模型中,对于形变的模型,我们也很想在形变的过程中保持纹理的一致性。现有方法还没有很好的解决上述描述的需求,不能产生真实的纹理渐变特性。在经典的并行纹理合成算法[L.Wei and M. Levoy. Order-independent texturesynthesis. Computer Science Department,Stanford University,2002 ;S. Lefebvreand H. Hoppe. Parallel controllable texture synthesis. ACM Transactions onGraphics(TOG),vol. 24,no. 3,pp. 777-786,2005.]中,它们并没有考虑尺度场的变化。

发明内容
本发明的目的在于解决三维纹理表面直接进行各向同性、异性纹理合成的问题。本发明方法利用GPU的可编程功能及其高效处理能力来加速纹理合成。假设网格表面S = (V,C)和mXm纹理样本图像E(mXm为文理样本图像的大小,即像素个数),其中V表示网格顶点集合,C表示顶点之间的连通信息。表面纹理合成可以认为是计算每个顶点的映射函数S :V — E(即将二维网格S中的每个网格顶点映射到二维图像E中的坐标),对于每个顶点i G V,其中S[i]表示E中的坐标u,所以顶点i的颜色为E(u) = E[S[i]] o 受到并行纹理合成策略[S. Lefebvre and H. Hoppe. Appearance-spacetexture synthesis. ACM SIGGRAPH 2006 Papers. ACM,2006,p.548 ;L. Wei andM. Levoy.Order-independent texture synthesis. Computer Science Department,Stanford University, 2002 ;S. Lefebvre and H. Hoppe. Parallel controllable texturesynthesis. ACM Transactions on Graphics (TOG),vol. 24,no. 3,pp. 777-786,2005.]思想的启发,我们将上釆样-抖动-校正的合成流程(即并行纹理合成策略)应用于任意表面,以达到保持几何特征的目的。同时,我们釆用了 Gabor特征来提高K-Coherence捜索的准确度。本发明的技术方案为一种基于GPU的几何表面上各向同性/异性纹理合成方法,其步骤为I)选取ー纹理图像样本E并对图像E进行Gabor滤波,得到图像E的Gabor特征空间;2)生成图像E的网格顶点结构S ;根据网格顶点结构S建立多分辨率金字塔结构,得到层次化的网格模型序列,进行各项同性的表面纹理合成;即对金字塔结构每ー层进行a)表面纹理上采样,将顶点i的纹理坐标按照它在网格模型序列中父顶点的纹理坐标来分配;b)表面纹理坐标扰动,对上采样以后的几何顶点的纹理坐标进行扰动; c)根据Gabor特征空间对纹理坐标迭代校正;d)对于姆个网格顶点,获取其M个最近的邻接顶点,记为Vp(p = I. . . M);3)对于顶点纹理坐标进行不等距的偏移变换,进行各项异性的表面纹理合成。进ー步的,采用K-Coherence搜索方法计算所述Gabor特征空间的距离;其中,K-Coherence方法为每个样本像素构建ー个坐标集合,坐标集合中包含了 K个与当前像素具有相似邻域的像素的坐标。进ー步的,对网格表面S进行重采样,使网格表面的顶点分布均匀。进ー步的,采用正则采样方法对网格表面S进行重采样。进ー步的,用亮度空间(Y,Cb, Cr)描述图像E的彩色纹理,然后对图像E的亮度Y通道滤波,从而将所述Gabor特征空间T投影到一 L维的子空间(Fi) ;最后将所述L维子空间与图像E的颜色空间(R,G,B)合并为ー H维特征空间(R,G,B,Fi),i = I. · ·し进ー步的,根据Gabor特征空间进行纹理坐标迭代校正的方法为首先将网格顶点的邻域三角形集合通过投影转换成(2N+1) X (2N+1)的网格;然后每个采样点由插值关系得到ー个H维Gabor特征空间,使每个网格顶点i的邻域Ni上形成ー个HX (2N+1) X (2N+1)维的Gabor特征向量;N为大于I小于5的整数。进ー步的,所述步骤2)中,进行各项同性的表面纹理合成方法为合成像素P吋,根据Gabor特征空间中的像素相似性匹配计算得到当前点P的候选像素集;然后,对于候选像素集中的每个像素,把样本纹理中与其邻域最为相似的k-Ι个像素也加入到候选像素集中,最后从候选像素集中找出与P邻域最为匹配的像素作为最終的合成結果。进ー步的,采用针对网格顶点的切平面投影办法,将网格顶点的邻域三角形集合通过投影转换成(2N+1) X (2N+1)的网格。进ー步的,采用k-coherence纹理匹配方法进行几何表面顶点的邻域搜索。进ー步的,所述金字塔网格结构相邻两层的顶点个数为4 I。、
进一步的,所述步骤3)中,首先根据图像样本E表面的曲率得到其纹理坐标的不等距偏移尺度场,然后对于纹理坐标进行偏移,得到随几何表面变化的表面纹理特征,进行各项异性的表面纹理合成。进一步的,所述步骤b)中,通过一个二维哈希随机函数H :Z—
2以及一个由用户控制的随机参数来控制表面纹理坐标扰动。2. IGabor 空间类似于2D基于样本图像的纹理合成,合成的像素的邻域和样本图像像素的邻域的相似度通常通过特征距离的计算量进行衡量。找到与合成表面像素相似的样本图像的像素是提高表面合成纹理视觉质量的关键。之前的方法通过空间邻域特征或者降维德空间邻域特征(也称为表现空间[S. Lefebvre and H. Hoppe. Appearance-space texture synthesis. ACM SIGGRAPH 2006Papers. ACM, 2006, p. 548;])的距离来进行邻域的匹配。然而,样本像素的多尺度特征是很难通过纹理空间邻域的SSD(Sum-of-Squared-Difference,平方差距离)距离进行捕捉的。本发明通过对待处理图像E进行Gabor滤波,得到E的Gabor特征空间。因为Gabor滤波统一了纹理特征的频率和多尺度空间分析。针对2D样本图像E (x,y),它的Gabor小波变换为Enij n(x, y) = E xl E ylE(x1; Y1) gm,n(x-x1, y-y) (I)其中,gm,n 表不文献[B. S. Manjunath and ff. -Y. Ma. Texture features forbrowsing and retrieval of image data. IEEE Trans.Pattern Anal. Mach. Intell.,vol. 18, no. 8, pp. 837-842,1996.]中的自相似滤波器组,m, n分别表示的是文献中Gabor滤波器的尺度和方向(m = I. . . C, n = I. . . K) (X1, Y1)表示几何表面的任一顶点,N的含义为Gabor滤波器采样窗口的大小。滤波图像幅值均值和方差用来构造特征空间,分别定义如下滤波图像幅值均值=^H|Kx,>0|,(2)和滤波图像幅值方差=技ZX(K’々,>0|-/V )2,(3)很多纹理分类技术,米用文献[B.S. Manjunath and W. -Y. Ma. Texture featuresfor browsing and retrieval o fimage data. IEEE Trans. Pattern Anal. Mach. Intell.,vol. 18,no. 8,pp. 837-842,1996.]使用 4 个尺度(C = 4)和 6 个方向(K = 6)。Gabor 特征空间如下T =U35O35J(4)彩色纹理可以使用不同的颜色空间描述,(R,G,B)或者亮度/色度颜色空间(Y,Cb, Cr)。在本发明的纹理合成算法中,Gabor滤波器组用来对样本纹理图像的亮度Y通道滤波。将48维的特征矢量使用PCA(Principle-Component-Analysis)方法投影到6维的子空间$山=,.6,也可以投影到L维(一般维数小于20),对应的合并后的空间可以是H维(H=L+3)。因此,用于合成的Gabor特征空间可以表示为9维空间(R,G,B,Fi),i = I. 6。低维的Gabor特征空间依据原始样本图像通过预计算的方法产生。
为了加速纹理合成速度,在Gabor特征空间的距离使用了 !(-Coherence搜索方法。K-Coherence方法为每个样本像素构建ー个坐标集合,这个坐标集合中包含了 K个与当前像素具有相似邻域的像素的坐标。实验表明,样本像素的相似集可以被准确的找到,因为Gabor滤波器具有比SSD指标更好的区分特征和纹理结构的特性。在图I显示了我们方法的主要结构及各子模块调用关系。与其它的纹理合成方法相比,在Κ-Coherence构建的过程中,我们使用了 Gabor特征空间,更好更准确的保持了纹理结构特征,如图2所示。图3同样也证明了使用Gabor特征能够得到较理想的纹理合成結果。2. 2GPU 预处理在进行实时表面纹理合成之前,我们利用ReMesh [M. Attene and B. Falcidieno.ReMESH An interactive environment to edit ana repair triangle meshes, in IEEEInternational Conference on Shape Modeling and Applications,2006. SMI 2006,2006,pp. 41-41.]方法对网格表面S进行重采样,使网格表面的顶点分布尽量均匀。层级结构的网格同样通过控制相邻两层的顶点个数为4 I的方法实现。算法中金子塔网格结构的相邻两层的父子关系可以用公式表示为P1+1(j) = k,其中j e S1+1,k e S1,并且k = arg minFe^ |ノ - k]\(5)其中,函数p()表示的是对于子网格上的顶点,求解其在父网格上对应的父亲顶点的过程;j是表示子网格S1+1的任意ー顶点,k表示父网格的顶点(顶点k是顶点j的父亲),S1是子几何网格S1+1的父网格。网格结构S与样本图像E是一一对应的关系,S是由粗到细的一系列网格序列,E也是由粗到细的一系列纹理样本(即金字塔结构)父子关系通过预处理得到并保存以便在实时合成中加速上采样步骤。我们应用高斯滤波器来构建纹理样本图像的高斯堆栈。在第i堆栈层,滤波器的半径为2H+1。通过对纹理样本做的处理,得到纹理样本的高斯金字塔表达,这样的高斯金字塔结构的纹理样本为后面纹理合成是与几何网格的金字塔结构--对应。2. 3各项同性的表面纹理合成由于我们将表面纹理看成是顶点顔色直接合成到网格表面,实际合成的基本单元为曲面顶点。在以往的工作中,ー个由粗到细的纹理金字塔可以捕获多分辨率的纹理结构与小社区。我们基于曲面的顶点网格结构(顶点的网格结构即为S),建立了ー个由粗及细的2D纹理样本的多分辨率金字塔结构(參考文献L. Wei and M. Levoy. Texturesynthesis over arbitrary manifold surfaces. Proceedings of the 28th annualconference on Computer graphics and interactivetechniques. ACM New York,NY,USA,2001,pp. 355-360.),以获取2D纹理样本中的多分辨率结构信息,同时我们基于几何表面的顶点网格S也建立了多分辨率金字塔结构,建立了层次化的网格模型序列,并结合纹理样本的多分辨率金字塔结构来进行由上自下,由粗到细的多分辨率合成。我们运用层次化纹理合成创造从低到更高的分辨率。在初始的粗分辨率网格中,我们通过随机指定纹理坐标,这相当于在金字塔顶部输入随机的白化噪声纹理。对于每ー个金字塔的水平,我们执行3个合成算法步骤上采样,扰动和校正。对每个网格顶点进行与次序无关的合成步骤,具体说明如下(I)表面纹理上采样在表面纹理的上采样中,顶点i的纹理坐标被直接按照它在网格层次模型中的父顶点(处于较粗的网格分 辨率中)的纹理坐标来分配。这里的网格顶点算法,不像二维纹理的上采样算法。因为这里新算法不关心父子顶点间的纹理坐标在方向和距离上的相似性。其原因在于计算几何网格表面的父子顶点层次关系间纹理坐标的偏移坐标繁琐,且直接继承最后的综合协调礼物等效的视觉质量。所以新算法中几何网格表面的Mesh提升采样可以被数学表达为S1= (Sh [P1 ⑴])modm即顶点i的纹理坐标被直接按照它在网格层次模型中的父顶点(处于较粗的网格分辨率中)的纹理坐标来分配。(2)表面纹理坐标扰动为了避免纹理合成的效果出现不自然的分布规律,我们应用坐标的扰动函数对于上采样以后的几何顶点的纹理坐标进行必要的扰动。这样的一个扰动函数J1Q)可以通过一个二维哈希随机函数H :Z—
2(Z就是一个随机二维坐标数,H:Z—
2表示的是随机生成一个2维坐标,坐标的两个维度范围都在
内。)以及一个由用户控制的随机参数来控制。在几何表面纹理坐标的上采样中,由于父子顶点间坐标的直接继承,其不规则几何表面的顶点拓扑关系已经产生了一定的纹理随机性,所以在通常情况下,扰动过程是一种交互的处理步骤,可由用户选择并控制的表面纹理的随机性扰动。(3)纹理坐标迭代校正在整个表面纹理合成的过程中,表面纹理的核心是并行化的纹理坐标迭代校正过程。新算法的纹理校正过程包括三个步骤(I)每个表面顶点i,我们对每个网格顶点在其切平面上得到5X5采样点网格,(2)每个采样点可以由插值关系得到一个九维的Gabor特征向量,这样每个网格顶点i的邻域Ni (5X5采样点网格,)上可以形成一个9X5X5维的Gabor特征向量。(3)我们对于每个网格顶点,获取其M个(此处M为6)个最近的邻接顶点,记为Vp (p = 1...6)。(4)在实际合成中,我们将k-coherence纹理匹配方法来进行几何表面顶点的邻域搜索。在合成像素P时,先根据Gabor特征空间中的像素相似性匹配计算得到当前点P的候选像素集,然后,对于候选像素集中的每个像素,把样本纹理中与其邻域最为相似的k-1个像素也加入到候选像素集中(k的含义是每个像素的邻居像素个数),最后从候选像素集中找出与P邻域最为匹配的像素作为最终的合成结果,这种表面纹理的合成技术考虑了纹理合成的并行性和生成质量,可以方便地在GPU得到快速实现。2. 4各向异性的表面纹理合成在新算法中,我们可以通过采用不同方向上的不等距偏移来合成几何表面纹理,从而达到各项异性的纹理表观,显示几何表面纹理中的不同纹元的比例效果。值得注意的是虽然传统的雅可比场J可直接地评价规则的平面参数化效果,其对全局的曲面定义却很难进行精确合适的参数化计算,特别是其局部表面的矢量场旋转变换也具有很大的歧义性(E. Praun,A. Finkelstein,and H. Hoppe. Lapped textures [C]//Proceedings ofSIGGRAPH ‘2000, Computer Graphics, Annual Conference Series, 2000 :465-470)。虽然也可以采用测地距离来定义集合表面的雅可比场,其几何局部表面的旋转变换计算仍然具有高度的主观性。为此,新算法在各向异性的纹理合成中并没有采用定义雅可比场的方法来合成几何表面纹理,而是寻求将几何表面解析成纹理单元中邻居纹理坐标的各向异性的偏移为此,我们通过对于顶点与其邻域纹理坐标的偏移Ni(A)来实现与雅可比变换等效的纹理合成效果。具体来说我们定义了不等距放缩场
权利要求
1.一种基于GPU的几何表面上各向同性/异性纹理合成方法,其步骤为 1)选取一纹理图像样本E并对图像E进行Gabor滤波,得到图像E的Gabor特征空间; 2)生成图像E的网格顶点结构S;根据网格顶点结构S建立多分辨率金字塔结构,得到层次化的网格模型序列,进行各项同性的表面纹理合成;即对金字塔结构每一层进行 a)表面纹理上采样,将顶点i的纹理坐标按照它在网格模型序列中父顶点的纹理坐标来分配; b)表面纹理坐标扰动,对上采样以后的几何顶点的纹理坐标进行扰动; c)根据Gabor特征空间对纹理坐标迭代校正; d)对于每个网格顶点,获取其M个最近的邻接顶点,记为Vp(p = I. . . M); 3)对于顶点纹理坐标进行不等距的偏移变换,进行各项异性的表面纹理合成。
2.如权利要求I所述的方法,其特征在于采用K-Coherence搜索方法计算所述Gabor特征空间的距离;其中,K-Coherence方法为每个样本像素构建一个坐标集合,坐标集合中包含了 K个与当前像素具有相似邻域的像素的坐标。
3.如权利要求I或2所述的方法,其特征在于对网格表面S进行重采样,使网格表面的顶点分布均匀。
4.如权利要求3所述的方法,其特征在于采用正则采样方法对网格表面S进行重采样。
5.如权利要求I所述的方法,其特征在于用亮度空间(Y,Cb,Cr)描述图像E的彩色纹理,然后对图像E的亮度Y通道滤波,从而将所述Gabor特征空间T投影到一 L维的子空间(Fi)i = U;最后将所述L维子空间与图像E的颜色空间(R,G,B)合并为一 H维特征空间(R, G, B,Fi),i = I. L0
6.如权利要求5所述的方法,其特征在于根据Gabor特征空间进行纹理坐标迭代校正的方法为首先将网格顶点的邻域三角形集合通过投影转换成(2N+1) X (2N+1)的网格;然后每个采样点由插值关系得到一个H维Gabor特征空间,使每个网格顶点i的邻域Ni上形成一个HX (2N+1) X (2N+1)维的Gabor特征向量;N为大于I小于5的整数。
7.如权利要求I或5或6所述的方法,其特征在于所述步骤2)中,进行各项同性的表面纹理合成方法为合成像素P时,根据Gabor特征空间中的像素相似性匹配计算得到当前点P的候选像素集;然后,对于候选像素集中的每个像素,把样本纹理中与其邻域最为相似的k-1个像素也加入到候选像素集中,最后从候选像素集中找出与p邻域最为匹配的像素作为最终的合成结果。
8.如权利要求6所述的方法,其特征在于采用针对网格顶点的切平面投影办法,将网格顶点的邻域三角形集合通过投影转换成(2N+1) X (2N+1)的网格。
9.如权利要求I或5或6所述的方法,其特征在于采用k-coherence纹理匹配方法进行几何表面顶点的邻域搜索。
10.如权利要求I所述的方法,其特征在于所述金字塔网格结构相邻两层的顶点个数为 4 : I。
11.如权利要求I所述的方法,其特征在于所述步骤3)中,首先根据图像样本E表面的曲率得到其纹理坐标的不等距偏移尺度场,然后对于纹理坐标进行偏移,得到随几何表面变化的表面纹理特征,进行各项异性的表面纹理合成。
12.如权利要求I所述的方法,其特征在于所述步骤b)中,通过一个二维哈希随机函数H :Z —
2以及一个由用户控制的随机参数来控制表面纹理坐标扰动。 ·
全文摘要
本发明公开了一种基于GPU的几何表面上各向同性/异性纹理合成方法,属于计算机图形学领域。本方法为1)选取一纹理图像样本E并对图像E进行Gabor滤波,得到E的特征空间;2)生成E的网格顶点结构S;根据S建立多分辨率金字塔结构,得到层次化的网格模型序列,进行各项同性的表面纹理合成;即对金字塔结构每一层进行将顶点i的纹理坐标按照它在网格模型序列中父顶点的纹理坐标来分配;对几何顶点的纹理坐标进行扰动;根据特征空间对纹理坐标迭代校正;对于每个网格顶点,获取其M个最近的邻接顶点;3)对顶点纹理坐标进行不等距的偏移变换,进行各项异性的表面纹理合成。本方法具有合成效率高,且保持形状特性和形变一致性。
文档编号G06T15/04GK102637304SQ20121006946
公开日2012年8月15日 申请日期2012年3月15日 优先权日2012年3月15日
发明者吴玉宝, 孙汉秋, 王文成, 盛斌 申请人:中国科学院软件研究所, 香港中文大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1