本发明专利技术公开了一种基于GPU的几何表面上各向同性/异性纹理合成方法,属于计算机图形学领域。本方法为:1)选取一纹理图像样本E并对图像E进行Gabor滤波,得到E的特征空间;2)生成E的网格顶点结构S;根据S建立多分辨率金字塔结构,得到层次化的网格模型序列,进行各项同性的表面纹理合成;即对金字塔结构每一层进行:将顶点i的纹理坐标按照它在网格模型序列中父顶点的纹理坐标来分配;对几何顶点的纹理坐标进行扰动;根据特征空间对纹理坐标迭代校正;对于每个网格顶点,获取其M个最近的邻接顶点;3)对顶点纹理坐标进行不等距的偏移变换,进行各项异性的表面纹理合成。本方法具有合成效率高,且保持形状特性和形变一致性。
【技术实现步骤摘要】
本专利技术涉及一种通过GPU加速的几何表面各向同性/异性纹理合成方法,更具体地说,本专利技术涉及ー种利用GPU的可编程功能及其高效处理性能三维几何表面纹理合成速度的方法,属于计算机图形学领域。纹理合成結果可以用于电影动画、虚拟现实、电子游戏等领域。
技术介绍
I. I基于样本图像的纹理合成在最近几年,纹理合成已经显著増加了映射图像细节到网格表面的容易性。较早的算法随机的将小块图像粘贴在三维表面,然后使用alpha混合技术隐藏块间缝隙。最近,裁缝方法能够产生更好的合成結果,它通过仔細的放置小块纹理来减小小块边界的不连续性。放置这些纹理块之后,简单的使用alopha混合技术来隐藏纹理缝隙,而通过搜索最小剪切缝隙进一步增强缝隙间过渡的平滑性。因为人类的视觉对纹理中的边缘,角点和其它高水平特征非常敏感,从样本纹理中提取出特征图,然后使用特征匹配和图像形变的方法来最优的保持特征连续性。其它的相关纹理合成方法包括基于像素的和基于块策略的混合方法,对图片中物体重新进行纹理合成,GPU 上的并行可控纹理合成, 和使用期望最小化优化算法的纹理合成方法. Huang et al. 在GPU上实现了 K-类似搜索和主成分分析(PCA),并进一步加速了后面的纹理优化。Gabor滤波器对于纹理分析具有理想最优特性;它的方向和径向频率带宽是可调的,允许空间和空间频率中进行联合分辨率优化。Bovid和 Clark提出了使用2D Gabor滤波器进行视觉纹理分析的计算方法。他们发现这种方法对于人工和自然纹理的分割都很适用,如预料中一样。最近Gilet和 Dischler使用Gabor滤波器来计算纹理相似度以便进行基于图像的渲染。I. 2表面纹理合成三维表面的纹理合成方法,在过去的十几年的发展中,已经显著的使任意曲面的复杂图像细节设计变得更加容易。第一类方法实现了基于各像素非参数化米样的纹理合成,并且需要额外的映射或重釆样以便进行渲染。相对而言,有些方法在渲染的过程中使用原始纹理图像,并且使用纹理映射硬件执行此图像的索引。其中的一种较早的方法是 Soler #人的,他们通过三角面片的聚类实现小块的创建。Zelnika 和 Garland也扩展了他们的跳跃映射,以便每个顶点在原始图像索引的坐标中使用。Lefebvre和Hoppe 使用硬件实现了用于纹理查找表的额外内存存储,并且他们的方法利用了 GPU来提供交互纹理合成的速度。他们的合成結果中的高质量有部分原因是因为使用了纹元掩模和对像素邻域的PCA分析。Han等人提出了使用期望最大化算法来计算表面纹理,他们在GPU上实现了该算法。大多数之前的方法都提取局部邻域栅格通过局部压平和表面重釆样技木。I. 3纹理映射与将ー个曲面压平成一个平面的问题紧密相关的纹理映射技术经常在游戏引擎或3D渲染的简化的角色模型中被使用。自从Catmull 提出纹理映射以来,在文献中出现了大量的方法.因为大多数3D表面是不能够展开的,在最后的合成图像中存在纹理失真。而且,尽管3D表面是可以展开的,许多方法也会引起失真。基于表面参数化以便把ー个3D表面变平的纹理合成方法需要将一个表面分解成离散的平面图像块,并使用分段映射的方法建立3D网格和它们的2D平面中的同构等价物中的对应关系,而且要通过线性和非线性的解法来最小化这种弓I入的失真° 在文献中给出了最近在表面参数化方法中的很好的总结。1. 4上述方法中存在的问题表面纹理增加了几何模型的真实性和丰富性。尽管对任意表面进行纹理合成的问题已经被广泛的研究了,但是实时性和并行性仍然是交互应用化的主要瓶颈。 上面介绍的表面纹理合成方法可以主要分成两类纹理映射和直接在表面上进行的纹理合成。前者,例如UV映射和UVW映射,不可避免具有显著的纹理失真和繁重的人工操作的缺点。因此,已经有很多研究工作是关于直接在三维表面进行纹理合成的。表面纹理是连续的并且直接定义在表面上,尽管它们在实际中以离散的单个顶点的形式表现。当前的表面纹理合成方法针对于静态的表面经常使用全局参数化,这将会引发纹理缝隙或失真。众所周知,实现表面参数化域的映射具有很高的复杂性,最典型的,产生一个低失真的表面参数化需要相当多的用户干预。另外,如果说纹理要反映表面的形状信息,那么与显著的几何结构或者形变相一致是很重要的。尽管可控性,精心设计的矢量场可以让三维表面的纹理合成产生很多变化的效果。但是目前所提出的这些纹理合成方法并没有太多关注物体形状或者几何形变情况中的纹理渐变的问题。很多真实的物体的表面纹理都是具有尺度变化性质的。所以当我们合成这样的物体表面纹理的时候,我们应该产生这种尺度渐变的纹理以产生更真实的纹理合成效果。例如斑马模型,在斑马的身体和背部通常都是大尺度的条纹,然而在腿部区域这种条纹的尺度是很小的。为了能够在虚拟现实中产生这种真实的合成效果,这种纹理渐变必须在纹理合成的过程进行仔细的考虑和设计。不仅仅是在静态模型中,对于形变的模型,我们也很想在形变的过程中保持纹理的一致性。现有方法还没有很好的解决上述描述的需求,不能产生真实的纹理渐变特性。在经典的并行纹理合成算法中,它们并没有考虑尺度场的变化。
技术实现思路
本专利技术的目的在于解决三维纹理表面直接进行各向同性、异性纹理合成的问题。本专利技术方法利用GPU的可编程功能及其高效处理能力来加速纹理合成。假设网格表面S = (V,C)和mXm纹理样本图像E(mXm为文理样本图像的大小,即像素个数),其中V表示网格顶点集合,C表示顶点之间的连通信息。表面纹理合成可以认为是计算每个顶点的映射函数S :V — E(即将二维网格S中的每个网格顶点映射到二维图像E中的坐标),对于每个顶点i G V,其中S表示E中的坐标u,所以顶点i的颜色为E(u) = E] o 受到并行纹理合成策略思想的启发,我们将上釆样-抖动-校正的合成流程(即并行纹理合成策略)应用于任意表面,以达到保持几何特征的目的。同时,我们釆用了 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)描述图本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:盛斌,孙汉秋,王文成,吴玉宝,
申请(专利权)人:中国科学院软件研究所,香港中文大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。