为解决传统方案中体纹理合成耗时过长的问题,发明专利技术人提供了一种体纹理合成与映射的方法,包括以下步骤:根据目标物体建立体纹理样本和目标模型;根据体纹理样本和目标模型建立体纹理空间;获取目标模型的表面网格节点在体纹理空间中的相应位置的纹理值,并将该纹理值赋予相应的网格节点;获取构成目标模型表面的三角面片的内部的点在体纹理空间中的相应位置的纹理值,并将该纹理值赋予相应的点。发明专利技术人同时提供了实现上述方法的体纹理合成与映射的装置。区别于现有技术,上述技术方案可引入GPU进行并行计算,由此进行体纹理的合成与映射,可高效解决传统方法中体纹理合成耗时过长的问题。
【技术实现步骤摘要】
本专利技术设及计算机图形图像及并行计算领域,特别设及一种体纹理合成与映射的 方法和装置。
技术介绍
对于体纹理合成运一课题,现有的方法主要有如下几种: (1)基于优化的二维纹理来合成=维体纹理,并采用直方图匹配的方式,使生成的 体纹理能够包含较丰富的全局特征,该方法能够在模型表面映射出质量较高的纹理,但在 内部纹理细节的显示方面存在一定不足。 (2)基于空间各向异性来合成体纹理,根据用户在四面体网格模型上定义的张量 场粘贴体纹理块,该方法能够较好地模拟树木、水果、蔬菜等的表面及内部纹理细节,但在 合成高精度模型时存在速度偏慢的问题,无法满足特定应用场合对于交互性的要求。 (3)基于二维纹理贴图的体纹理合成方法,该方法对候选块进行一系列的预处理 选择工作,W减少捜索空间,弱化相邻纹理匹配的关联性,并利用GPU的并行特性进行计算, 优化合成速度。该方法在一些纹理细节较少且周期性特征较强的体纹理合成中具有良好的 合成效果及合成速度,但在具有丰富的纹理细节且结构性特征较不明显的纹理合成中具有 很大的局限性。 上述诸技术方案均存在耗时过长的问题,严重制约了体纹理合成应用于实际的效 率和可能性。
技术实现思路
为此,需要提供一种可解决传统方案中体纹理合成耗时过长问题的体纹理合成与 映射的方法和装置。[000引为实现上述目的,专利技术人提供了一种体纹理合成与映射的方法,包括W下步骤: 根据目标物体建立体纹理样本和目标模型; 根据体纹理样本和目标模型建立体纹理空间; 获取目标模型的表面网格节点在体纹理空间中的相应位置的纹理值,并将该纹理 值赋予相应的网格节点; 获取构成目标模型表面的=角面片的内部的点在体纹理空间中的相应位置的纹 理值,并将该纹理值赋予相应的点。 进一步地,所述的体纹理合成与映射的方法中,步骤"根据目标物体建立体纹理样 本和目标模型"具体包括: 利用目标物体的连续横断面图片进行纵向叠加,从而建立体纹理样本。 进一步地,所述的体纹理合成与映射的方法中,步骤"根据目标物体建立体纹理样 本和目标模型"具体包括: 利用建模工具建立目标模型。 进一步地,所述的体纹理合成与映射的方法中,步骤"根据体纹理样本和目标模型 建立体纹理空间"具体包括: 确定用于空间区域布块的体纹理块大小; 确定体纹理空间各方向上填充的体纹理块的数目。 进一步地,所述的体纹理合成与映射的方法中,步骤"确定体纹理空间各方向上填 充的体纹理块的数目"具体包括: 遍历目标模型表面网格各节点的坐标值并计算各方向的坐标值差值的最大值; 将得到的各方向的坐标值差值的最大值除W所述用于空间区域布块的体纹理块 大小并向上取整,得到各方向上填充的纹理块的数目。 进一步地,所述的体纹理合成与映射的方法中,步骤"根据体纹理样本和目标模型 建立体纹理空间"还包括步骤: 从体纹理样本中随机提取尺寸小于预设标准的体纹理块对体纹理空间进行并行 填充; 对经并行填充后的体纹理空间中的体纹理块接缝做接缝缝合处理。 进一步地,所述的体纹理合成与映射的方法中,步骤"获取目标模型的表面网格节 点在体纹理空间中的相应位置的纹理值,并将该纹理值赋予相应的网格节点"具体包括: 计算体纹理空间中各体纹理块中屯、点的空间坐标值,并确定各体纹理块所处的空 间区域; 确定目标模型的表面网格节点所在的体纹理块及其在相应体纹理块中的纹理坐 标; 根据所述纹理坐标获取所述表面网格节点在体纹理空间中的相应位置的纹理值, 并将该纹理值赋予相应的表面网格节点。 进一步地,所述的体纹理合成与映射的方法中,步骤"获取构成目标模型表面的= 角面片的内部的点在体纹理空间中的相应位置的纹理值,并将该纹理值赋予相应的点"具 体包括: 计算构成目标模型表面的S角面片的内部的点的空间坐标; 将所述点的空间坐标转换为所述点所在的体纹理块的纹理坐标; 根据所述点所在的体纹理块的纹理坐标获取所述点在体纹理空间中的相应位置 的纹理值,并将该纹理值赋予所述点。 进一步地,所述的体纹理合成与映射的方法中,步骤"计算构成目标模型表面的= 角面片的内部的点的空间坐标"中,对构成目标模型表面的S角面片的内部的点的遍历遵 循如下方式: 将 S 角面片的 S 个顶点分别表示为 A(xO,yO,zO),B(xl,yl,zl),C(x2,y2,z2),S 角形ABC内部任意一点M表示为遍?二《*31+皮*盈?,其中a=AB7AB,b = AC7AC,且a、b满 ^^#0<a< U0<b< m^a+b< 1; 在遍历时,a、b的取值按预设优化方式确定。 进一步地,所述的体纹理合成与映射的方法中,确定a、b的取值的预设优化方式 为:分别取a、b为AB、AC长度值的倒数。 专利技术人同时还提供了一种体纹理合成与映射的装置,包括体纹理样本建立单元、 目标模型建立单元、体纹理空间建立单元、表面网格节点着色单元和内点集着色单元; 所述体纹理样本建立单元用于根据目标物体建立体纹理样本; 所述目标模型建立单元用于根据目标物体建立目标模型; 所述体纹理空间建立单元用于根据体纹理样本和目标模型建立体纹理空间; 所述表面网格节点着色单元用于获取目标模型的表面网格节点在体纹理空间中 的相应位置的纹理值,并将该纹理值赋予相应的网格节点; 所述内点集着色单元用于获取构成目标模型表面的=角面片的内部的点在体纹 理空间中的相应位置的纹理值,并将该纹理值赋予相应的点。 进一步地,所述的体纹理合成与映射的装置中,体纹理样本建立单元利用目标物 体的连续横断面图片进行纵向叠加,从而建立体纹理样本。 进一步地,所述的体纹理合成与映射的装置中,目标模型建立单元利用建模工具 建立目标模型。 进一步地,所述的体纹理合成与映射的装置中,体纹理空间建立单元包括体纹理 块大小确定模块和体纹理块数目确定模块; 体纹理块大小确定模块用于确定用于空间区域布块的体纹理块大小; 体纹理块数目确定模块用于确定体纹理空间各方向上填充的体纹理块的数目。 进一步地,所述的体纹理合成与映射的装置中,体纹理块数目确定模块确定体纹 理块数目具体包括: 遍历目标模型表面网格各节点的坐标值并计算各方向的坐标值差值的最大值; 将得到的各方向的坐标值差值的最大值除W所述用于空间区域布块的体纹理块 大小并向上取整,得到各方向上填充的纹理块的数目。 进一步地,所述的体纹理合成与映射的装置中,体纹理空间建立单元还用于从体 纹理样本中随机提取尺寸小于预设标准的体纹理块对体纹理空间进行并行填充;并对经并 行填充后的体纹理空间中的体纹理块接缝做接缝缝合处理。 进一步地,所述的体纹理合成与映射的装置中,表面网格节点着色单元获取目标 模型的表面网格节点在体纹理空间中的相应位置的纹理值,并将该纹理值赋予相应的网格 节点具体包括: 计算体纹理空间中各体纹理块中屯、点的空间坐标值,并确定各体纹理块所处的空 间区域; 确定目标模型的表面网格节点所在的体纹理块及其在相应体纹理块中的纹理坐 标; 根据所述纹理坐标获取所述表面网格节点在体纹理空间中的相应位置的纹理值, 并将该纹理值赋予相应的表面网格节点。 进一步地,所述的体纹理合成与映射的装置中,内点集着色单元获取构成目标模 型表面的=角面片的内部的点在体纹理本文档来自技高网...
【技术保护点】
一种体纹理合成与映射的方法,其特征在于,包括以下步骤:根据目标物体建立体纹理样本和目标模型;根据体纹理样本和目标模型建立体纹理空间;获取目标模型的表面网格节点在体纹理空间中的相应位置的纹理值,并将该纹理值赋予相应的网格节点;获取构成目标模型表面的三角面片的内部的点在体纹理空间中的相应位置的纹理值,并将该纹理值赋予相应的点。
【技术特征摘要】
【专利技术属性】
技术研发人员:吴拥民,何汉鑫,许凯杰,刘德建,陈宏展,
申请(专利权)人:福建天晴数码有限公司,
类型:发明
国别省市:福建;35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。