一种基于地形高程值的纹理合成方法.pdf

上传人:1** 文档编号:4577000 上传时间:2018-10-21 格式:PDF 页数:10 大小:465.38KB
返回 下载 相关 举报
摘要
申请专利号:

CN201010294766.7

申请日:

2010.09.28

公开号:

CN101950428A

公开日:

2011.01.19

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06T 11/00公开日:20110119|||实质审查的生效IPC(主分类):G06T 11/00申请日:20100928|||公开

IPC分类号:

G06T11/00; G06T11/40

主分类号:

G06T11/00

申请人:

中国科学院软件研究所

发明人:

张洁; 郑昌文; 吕品

地址:

100190 北京市海淀区中关村南四街4号

优先权:

专利代理机构:

北京君尚知识产权代理事务所(普通合伙) 11200

代理人:

冯艺东

PDF下载: PDF下载
内容摘要

本发明公开了一种基于地形高程值的纹理合成方法,其包括步骤:1)获取原始纹理图像;2)将地形模型中的采样点按高度划分为n个子集Hi,1≤i≤n,其中i、n均为整数;3)建立侯选纹理图像与采样点子集边界值之间的映射关系;4)获取结果纹理图像中像素点的相关原始纹理图像,对相关原始纹理图像取权值;5)采用加权求和的方法生成结果纹理图像中的各个像素值,完成纹理合成。本发明方法所生成的纹理与地形采样点的高度相关,因此可以动态生成真实反映地形高度属性的纹理信息,应用于动态地形可视化系统中可以绘制出逼真的动态场景。

权利要求书

1: 一种基于地形高程值的纹理合成方法, 包括步骤 : 1) 获取原始纹理图像 ; 2) 将地形模型中的采样点按高度划分为 n 个子集 Hi, 1 ≤ i ≤ n, 其中 i、 n 均为整数 ; 3) 建立原始纹理图像与采样点子集边界值之间的映射关系 ; 4) 获取结果纹理图像中像素点的相关原始纹理图像, 对相关原始纹理图像取权值 ; 5) 采用加权求和的方法生成结果纹理图像中的各个像素值, 完成纹理合成。
2: 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 1) 原始纹理图像为事先 存储在计算机磁盘上大小相同的图像。
3: 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 2) 子集的划分为 : 首先 获取地形中所有采样点的高度的最大值 hmax 和最小值 hmin 的差值, 然后将这个差值平均分 成 n 个区间, 每个区间的长度为 所有区间中最小的左值为 hmin, 最大的右值为 hmax。
4: 如权利要求 3 所述的纹理合成方法, 其特征在于, 采用如下公式表示每个子集 : 其中, hp(x,z) 为水平面坐标为 (x, z) 的地形采样点的高度, hmin 和 hmax 分别为所有地形 采样点高度值中的最小值和最大值, Li 和 Li+1 都是采样点子集的边界值, K 为各采样点子集 的间隔, Imax 为地形采样点的水平坐标的最大值。
5: 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 3) 原始纹理图像与采样 点子集边界值之间的映射关系为 : 每个采样点子集的边界值只对应一个原始纹理图像, 而 每个原始纹理图像对应零个、 一个或多个采样点子集的边界值。
6: 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 4) 结果图像中像素点的 相关纹理图像是指与该像素点对应的地形采样点所在的子集的边界值所对应的原始纹理 图像。
7: 如权利要求 1 或 4 所述的纹理合成方法, 其特征在于, 所述步骤 4) 相关原始纹理的 权值 ωa 和 ωb 分别为 : hp(x, z) 的地形采样点的高度, Li 和 Li+1 是采样 z) 为水平面坐标为 (x, 点子集的边界值。
8: 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 5) 采用如下公式生成结 果纹理图像中像素点 P(x, z) 的值 : 相关纹理图像 Ta 和 Tb 中在 (x, z) 处 的像素值分别为 Ta(x, z) 和 Tb(x, z)。

说明书


一种基于地形高程值的纹理合成方法

    【技术领域】
     本发明属于计算机图形学中纹理合成的领域, 涉及一种基于地形高程值的纹理合成方法。 背景技术 纹理合成技术是近十年来计算机图形学领域的热点技术之一, 具体可以分为以下 两大类 :
     1、 基于像素的纹理合成。基于像素的纹理合成依据马尔科夫随机过程而产生, 是 纹理合成领域出现较早的一种技术。 这种依赖于随机过程纹理合成算法的速度与合成效果 一直是其发展的两个瓶颈。
     2、 基于片 (patch) 的纹理合成。基于片的纹理合成是纹理合成领域的主流技术, 随着纹理合成技术研究的不断深入, 又逐步发展形成表面纹理合成、 动态纹理合成以及流 指导的纹理合成等一系列新的分支。
     虽然纹理合成技术多种多样, 但目前专门针对地形的纹理合成技术尚不发达 ; 而 且由于针对地形的纹理生成操作的复杂性, 大多数针对地形的纹理合成算法的效率都较 低, 这无疑限制了纹理合成技术在对实时性和交互性要求较高的地形可视化系统中的应 用。
     在动态的地形可视化系统中, 由于地形的拓扑结构和相关的属性会在运行时根据 实际情况发生变化, 在编译时无法确定具体的地形变化方式, 因此只有在运行时根据地形 发生变化以后的采样点信息动态生成与当前地形模型相匹配的纹理图像, 才能满足真实感 的纹理映射要求, 渲染出逼真的地形场景。
     发明内容 本发明提出一种基于地形高程值的纹理合成方法, 以地形中采样点的高度值为依 据, 可以根据地形高度的变化实时生成与地形高度相匹配的纹理信息, 在效率与真实感方 面都符合动态地形可视化系统的要求。
     本发明方法的理论依据为 :
     在现实中, 地表的景观往往根据高度的不同而表现出很大的差异, 因此, 在地形可 视化系统中, 基于地形采样点高程值的纹理合成技术可以自然地反映出地表纹理根据高度 的不同而发生的改变。
     另外, 在动态地形可视化场景中, 由于场景中的物体与地形表面的接触、 挤压以及 碰撞等原因所造成的地形表面的形变是动态地形场景相比于普通的地形可视化场景而言 需要额外建模的部分, 比较常见的地表形变模型主要有弹坑、 车辙以及脚印等。 本发明基于 地形高程值的纹理合成方法可以自然地表现各种地表形变模型的真实视觉效果, 主要原因 有:
     A) 在地表形变模型生成的过程中, 原始地形的拓扑结构与纹理属性发生变化最大
     的部分往往是模型中高度最低的部分, 因此越是高程值小的地表形变区域纹理信息改变越 明显。基于地形高程值的纹理合成算法可以很好地表现地表形变模型的这一特性 ;
     B) 由于地表形变模型需要加入到原始的地形模型中才能显示地形表面的具体形 变, 因此只有地表形变模型的纹理信息与原始地形模型的纹理信息之间达到自然的融合与 过渡, 才可能使生成的动态地形场景具有真实感。基于地形高程值的纹理合成方法通过加 权的方式处理属于不同高度区间的纹理信息的平滑过渡, 避免了明显的纹理跳跃现象的产 生。
     为了叙述方便, 将输入的各个原始纹理图像称为侯选纹理图像 ; 将最终合成的纹 理图像称为结果纹理图像。所述原始纹理图像是一张张大小相同的图像, 图像的大小可以 根据地形模型覆盖面积的大小调整, 所有原始纹理图像都是事先存储在计算机磁盘上。
     为了实现本发明的上述目的, 采用的技术方案概述如下 :
     一种基于地形高程值的纹理合成方法, 包括步骤 :
     1) 获取原始纹理图像 ;
     2) 将地形模型中的采样点按高度划分为 n 个子集 Hi, 1 ≤ i ≤ n, 其中 i、 n 均为整 数;
     3) 建立原始纹理图像与采样点子集边界值之间的映射关系 ; 4) 获取结果纹理图像中像素点的相关原始纹理图像, 对相关原始纹理图像取权 5) 采用加权求和的方法生成结果纹理图像中的各个像素值, 完成纹理合成。 所述步骤 1) 原始纹理图像为事先存储在计算机磁盘上大小相同的图像。 所述步骤 2) 子集的划分为首先获取地形中所有采样点的高度的最大值 hmax 和最 所有值;
     小值 hmin 的差值, 然后将这个差值平均分成 n 个区间, 每个区间的长度为 区间中最小的左值为 hmin, 最大的右值为 hmax。
     采用如下公式表示每个子集 :
     其中, hp(x,z) 为水平面坐标为 (x, z) 的地形采样点的高度, hmin 和 hmax 分别为所有 地形采样点高度值中的最小值和最大值, Li 和 Li+1 都是采样点子集的边界值, K 为各采样点 子集的间隔, Imax 为地形采样点的水平坐标的最大值。
     所述步骤 3) 侯选纹理图像与采样点子集边界值之间的映射关系为 : 每个采样点 子集的边界值只对应一个侯选纹理图像, 而每个侯选纹理图像对应零个、 一个或多个采样 点子集的边界值。
     所述步骤 4) 结果图像中像素点的相关纹理图像是指与该像素点对应的地形采样 点所在的子集的边界值所对应的原始纹理图像。
     所述步骤 4) 相关原始纹理的权值 ωa 和 ωb 分别为 :
     hp(x, z) 的地形采样点的高度, Li 和 Li+1 是 z) 为水平面坐标为 (x,采样点子集的边界值。
     所述步骤 5) 采用如下公式生成结果纹理图像中像素点 P(x, z) 的值 :
     相关纹理图像 Ta 和 Tb 中在 (x,z) 处的像素值分别为 Ta(x, z) 和 Tb(x, z)。
     与现有技术相比, 本发明方法具有的有益技术效果有 :
     本发明方法所生成的纹理与地形采样点的高度相关, 因此可以动态生成真实反映 地形高度属性的纹理信息, 应用于动态地形可视化系统中可以绘制出逼真的动态场景。 附图说明
     图 1 为地形模型示意图 ; 图 2 为侯选纹理图像与采样点子集边界值映射关系示意图 ; 图 3 为基于地形高程值的纹理合成算法框架图。具体实施方式
     下面结合附图和具体实施例, 对本发明做进一步的说明。
     a) 地形采样点子集
     根据实际需要将地形模型中的采样点按高度划分为 n 个子集 Hi(1 ≤ i ≤ n), 采 样点是从地形模型上得到的 ( 地形模型如图 1 所示 ), 首先获取地形中所有采样点的高度 的最大值 hmax 和最小值 hmin 的差值, 然后将这个差值平均分成 n 个区间, 每个区间的长度为 所有区间中最小的左值为 hmin, 最大的右值为 hmax( 采样区间最小的左值就是采 样点高度值中的最小值 )。例如, 若地形采样点中最大的高度是 256, 最小的高度是 0, 则其 差值是 256-0 = 256。如果设定 n = 4( 将高度值划分为 4 个区间 ), 则 256/4 = 64, 即每个 区间的长度为 64, 换句话说, 就是将所有的采样点按高度不同分别分到 [0, 64], [64, 128], [128, 192] 和 [192, 256] 这四个区间中。
     如图 1 中地形模型中所有三角形的各个顶点坐标 (x, y, z) 的三个分量中, x和z 是该顶点的位置坐标, y 就是该顶点的高度坐标。其中每个子集的定义为 :
     其中, hp(x,z) 为水平面坐标为 (x, z) 的地形采样点的高度, hmin 和 hmax 分别为所有 地形采样点高度值中的最小值和最大值, Li 和 Li+1 都是采样点子集的边界值, K 为各采样点 子集的间隔, Imax 为地形采样点的水平坐标的最大值。
     b) 侯选纹理图像与采样点子集边界值之间的映射关系
     为了使合成的纹理图像根据地形模型采样点的高程值不同而发生变化, 可以在侯 选纹理图像与采样点子集的边界值之间建立映射关系, 规定在具体的高度范围内纹理图像
     中各个像素点的取值范围。
     设采样点子集的边界值为 Li(Li ∈ [hmin, hmax], 1 ≤ i ≤ n+1), 侯选纹理图像为 Tj(j ≥ 1), 则 Li 与 Tj 的映射关系是 ( 如图 2 所示 ) :
     对每个 Li, 有且只有一个 Tj 与之对应 ;
     对每个 Tj, 有 0 个, 1 个或者多个 Li 与之对应。
     为了后文叙述方便, 给出结果纹理图像中与水平面坐标为 (x, z) 的采样点相对应 的像素点 P(x, z) 的相关纹理图像的定义 :
     定义 1 : 若 hp(x, z) 相对应的地形采样点的高度 z) 为与结果纹理图像中像素点 P(x, 值, 且 hp(x, Li+1], (1 ≤ i ≤ n), 且 hp(x, z) ∈ [Li, z) 的采样点子集边界值 Li 和 Li+1 对应的侯选 纹理图像分别为 Ta 和 Tb, 则 Ta 和 Tb 为 P(x, z) 的相关纹理图像。
     c) 相关侯选纹理图像的权值
     为了使结果纹理图像中位于不同侯选纹理图像的边界处的像素点的取值可以融 合不同候选纹理图像的信息, 采用加权求和的方法生成结果纹理图像中的各个像素值, 因 此, 各个侯选纹理的权值的优劣决定了纹理合成结果的好坏。
     对结果纹理图像中的任意像素 P(x, z), 其取值依赖且仅依赖于其相关纹理。设 P(x, z) 的相关纹理为 Ta 和 Tb, 则 Ta 和 Tb 在计算像素 P(x, z) 的取值时的权值 ωa 和 ωb 分 别为 :
     等式中所涉及的各个变量在前文中都有描述, 在此不再赘述。
     d) 合成纹理图像中的像素值
     根据侯选纹理图像中的像素值以及各个相关侯选纹理图像的权值, 可以获得结果 纹理图像中各个像素的取值。
     在结果纹理图像中, 每个像素点 P(x, z) 的取值仅与其相关纹理图像 Ta 和 Tb 有关。 设 Ta 和 Tb 中在 (x, z) 处的像素值分别为 Ta(x, z) 和 Tb(x, z), 则 P(x, z) 的取值为 :
     通过遍历整个结果纹理图像, 计算其每个像素点的取值, 即可获得与地形模型相 匹配的基于该模型采样点高程值的纹理图像。
     1. 具体算法
     基于地形高程值的纹理合成算法框架图如图 3 所示。
     输入 : 侯选纹理图像数组 candidate_tex 和地形采样点高程值数组 hp。
     算法伪代码 :
     Generate_texture(TEXTURE**candidate_tex, float*hp)
     {
     将地形数据根据高度 hp 划分为不同的子集 Hi ;
     建立 candidate_tex 数组中各元素与 Hi 各个边界点之间的映射关系 ;
     for( 结果纹理图像中的每个像素 P(x, z)) { 获取与该像素相对应的地形采样点的高度 hp(x, z) ; 获取高度为 hp(x, z) 的采样点所属的子集 Hi ; 根据 Hi 的边界值与 candidate_tex 中元素的对应关系确定 P(x, z) 的相关纹理图像 ; 计算 P(x, z) 的相关纹理图像的权值 ;
     计算 P(x, z) 的值 ;
     }
     }
     纹理生成作为动态地形可视化系统中的关键模块, 对系统的渲染效果与性能产生 重要影响。 基于地形高程值的纹理合成算法将输入的纹理图像的像素值与地形采样点的高 度值相关联, 可以在运行时动态生成与地形高程值相匹配的纹理图像, 增强了地形可视化 系统的渲染真实感。
    

一种基于地形高程值的纹理合成方法.pdf_第1页
第1页 / 共10页
一种基于地形高程值的纹理合成方法.pdf_第2页
第2页 / 共10页
一种基于地形高程值的纹理合成方法.pdf_第3页
第3页 / 共10页
点击查看更多>>
资源描述

《一种基于地形高程值的纹理合成方法.pdf》由会员分享,可在线阅读,更多相关《一种基于地形高程值的纹理合成方法.pdf(10页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 101950428 A (43)申请公布日 2011.01.19 CN 101950428 A *CN101950428A* (21)申请号 201010294766.7 (22)申请日 2010.09.28 G06T 11/00(2006.01) G06T 11/40(2006.01) (71)申请人 中国科学院软件研究所 地址 100190 北京市海淀区中关村南四街 4 号 (72)发明人 张洁 郑昌文 吕品 (74)专利代理机构 北京君尚知识产权代理事务 所 ( 普通合伙 ) 11200 代理人 冯艺东 (54) 发明名称 一种基于地形高程值的纹理合成方法 (5。

2、7) 摘要 本发明公开了一种基于地形高程值的纹理合 成方法, 其包括步骤 : 1)获取原始纹理图像 ; 2)将 地形模型中的采样点按高度划分为 n 个子集 Hi, 1 i n, 其中 i、 n 均为整数 ; 3) 建立侯选纹理 图像与采样点子集边界值之间的映射关系 ; 4) 获 取结果纹理图像中像素点的相关原始纹理图像, 对相关原始纹理图像取权值 ; 5) 采用加权求和的 方法生成结果纹理图像中的各个像素值, 完成纹 理合成。本发明方法所生成的纹理与地形采样点 的高度相关, 因此可以动态生成真实反映地形高 度属性的纹理信息, 应用于动态地形可视化系统 中可以绘制出逼真的动态场景。 (51)In。

3、t.Cl. (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 5 页 附图 3 页 CN 101950431 A1/1 页 2 1. 一种基于地形高程值的纹理合成方法, 包括步骤 : 1) 获取原始纹理图像 ; 2) 将地形模型中的采样点按高度划分为 n 个子集 Hi, 1 i n, 其中 i、 n 均为整数 ; 3) 建立原始纹理图像与采样点子集边界值之间的映射关系 ; 4) 获取结果纹理图像中像素点的相关原始纹理图像, 对相关原始纹理图像取权值 ; 5) 采用加权求和的方法生成结果纹理图像中的各个像素值, 完成纹理合成。 2. 如权利要求 1 所述的纹。

4、理合成方法, 其特征在于, 所述步骤 1) 原始纹理图像为事先 存储在计算机磁盘上大小相同的图像。 3. 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 2) 子集的划分为 : 首先 获取地形中所有采样点的高度的最大值 hmax和最小值 hmin的差值, 然后将这个差值平均分 成 n 个区间, 每个区间的长度为所有区间中最小的左值为 hmin, 最大的右值为 hmax。 4. 如权利要求 3 所述的纹理合成方法, 其特征在于, 采用如下公式表示每个子集 : 其中, hp(x, z)为水平面坐标为 (x, z) 的地形采样点的高度, hmin和 hmax分别为所有地形 采样点高度值。

5、中的最小值和最大值, Li和 Li+1都是采样点子集的边界值, K 为各采样点子集 的间隔, Imax为地形采样点的水平坐标的最大值。 5. 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 3) 原始纹理图像与采样 点子集边界值之间的映射关系为 : 每个采样点子集的边界值只对应一个原始纹理图像, 而 每个原始纹理图像对应零个、 一个或多个采样点子集的边界值。 6. 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 4) 结果图像中像素点的 相关纹理图像是指与该像素点对应的地形采样点所在的子集的边界值所对应的原始纹理 图像。 7. 如权利要求 1 或 4 所述的纹理合成。

6、方法, 其特征在于, 所述步骤 4) 相关原始纹理的 权值 a和 b分别为 : hp(x, z)为水平面坐标为 (x, z) 的地形采样点的高度, Li和 Li+1是采样 点子集的边界值。 8. 如权利要求 1 所述的纹理合成方法, 其特征在于, 所述步骤 5) 采用如下公式生成结 果纹理图像中像素点 P(x, z) 的值 : 相关纹理图像 Ta和 Tb中在 (x, z) 处 的像素值分别为 Ta(x, z) 和 Tb(x, z)。 权 利 要 求 书 CN 101950428 A CN 101950431 A1/5 页 3 一种基于地形高程值的纹理合成方法 技术领域 0001 本发明属于计算。

7、机图形学中纹理合成的领域, 涉及一种基于地形高程值的纹理合 成方法。 背景技术 0002 纹理合成技术是近十年来计算机图形学领域的热点技术之一, 具体可以分为以下 两大类 : 0003 1、 基于像素的纹理合成。基于像素的纹理合成依据马尔科夫随机过程而产生, 是 纹理合成领域出现较早的一种技术。 这种依赖于随机过程纹理合成算法的速度与合成效果 一直是其发展的两个瓶颈。 0004 2、 基于片 (patch) 的纹理合成。基于片的纹理合成是纹理合成领域的主流技术, 随着纹理合成技术研究的不断深入, 又逐步发展形成表面纹理合成、 动态纹理合成以及流 指导的纹理合成等一系列新的分支。 0005 虽然。

8、纹理合成技术多种多样, 但目前专门针对地形的纹理合成技术尚不发达 ; 而 且由于针对地形的纹理生成操作的复杂性, 大多数针对地形的纹理合成算法的效率都较 低, 这无疑限制了纹理合成技术在对实时性和交互性要求较高的地形可视化系统中的应 用。 0006 在动态的地形可视化系统中, 由于地形的拓扑结构和相关的属性会在运行时根据 实际情况发生变化, 在编译时无法确定具体的地形变化方式, 因此只有在运行时根据地形 发生变化以后的采样点信息动态生成与当前地形模型相匹配的纹理图像, 才能满足真实感 的纹理映射要求, 渲染出逼真的地形场景。 发明内容 0007 本发明提出一种基于地形高程值的纹理合成方法, 以。

9、地形中采样点的高度值为依 据, 可以根据地形高度的变化实时生成与地形高度相匹配的纹理信息, 在效率与真实感方 面都符合动态地形可视化系统的要求。 0008 本发明方法的理论依据为 : 0009 在现实中, 地表的景观往往根据高度的不同而表现出很大的差异, 因此, 在地形可 视化系统中, 基于地形采样点高程值的纹理合成技术可以自然地反映出地表纹理根据高度 的不同而发生的改变。 0010 另外, 在动态地形可视化场景中, 由于场景中的物体与地形表面的接触、 挤压以及 碰撞等原因所造成的地形表面的形变是动态地形场景相比于普通的地形可视化场景而言 需要额外建模的部分, 比较常见的地表形变模型主要有弹坑。

10、、 车辙以及脚印等。 本发明基于 地形高程值的纹理合成方法可以自然地表现各种地表形变模型的真实视觉效果, 主要原因 有 : 0011 A) 在地表形变模型生成的过程中, 原始地形的拓扑结构与纹理属性发生变化最大 说 明 书 CN 101950428 A CN 101950431 A2/5 页 4 的部分往往是模型中高度最低的部分, 因此越是高程值小的地表形变区域纹理信息改变越 明显。基于地形高程值的纹理合成算法可以很好地表现地表形变模型的这一特性 ; 0012 B) 由于地表形变模型需要加入到原始的地形模型中才能显示地形表面的具体形 变, 因此只有地表形变模型的纹理信息与原始地形模型的纹理信息。

11、之间达到自然的融合与 过渡, 才可能使生成的动态地形场景具有真实感。基于地形高程值的纹理合成方法通过加 权的方式处理属于不同高度区间的纹理信息的平滑过渡, 避免了明显的纹理跳跃现象的产 生。 0013 为了叙述方便, 将输入的各个原始纹理图像称为侯选纹理图像 ; 将最终合成的纹 理图像称为结果纹理图像。所述原始纹理图像是一张张大小相同的图像, 图像的大小可以 根据地形模型覆盖面积的大小调整, 所有原始纹理图像都是事先存储在计算机磁盘上。 0014 为了实现本发明的上述目的, 采用的技术方案概述如下 : 0015 一种基于地形高程值的纹理合成方法, 包括步骤 : 0016 1) 获取原始纹理图像。

12、 ; 0017 2) 将地形模型中的采样点按高度划分为 n 个子集 Hi, 1 i n, 其中 i、 n 均为整 数 ; 0018 3) 建立原始纹理图像与采样点子集边界值之间的映射关系 ; 0019 4) 获取结果纹理图像中像素点的相关原始纹理图像, 对相关原始纹理图像取权 值 ; 0020 5) 采用加权求和的方法生成结果纹理图像中的各个像素值, 完成纹理合成。 0021 所述步骤 1) 原始纹理图像为事先存储在计算机磁盘上大小相同的图像。 0022 所述步骤 2) 子集的划分为首先获取地形中所有采样点的高度的最大值 hmax和最 小值 hmin的差值, 然后将这个差值平均分成 n 个区间。

13、, 每个区间的长度为所有 区间中最小的左值为 hmin, 最大的右值为 hmax。 0023 采用如下公式表示每个子集 : 0024 0025 其中, hp(x, z)为水平面坐标为 (x, z) 的地形采样点的高度, hmin和 hmax分别为所有 地形采样点高度值中的最小值和最大值, Li和 Li+1都是采样点子集的边界值, K 为各采样点 子集的间隔, Imax为地形采样点的水平坐标的最大值。 0026 所述步骤 3) 侯选纹理图像与采样点子集边界值之间的映射关系为 : 每个采样点 子集的边界值只对应一个侯选纹理图像, 而每个侯选纹理图像对应零个、 一个或多个采样 点子集的边界值。 00。

14、27 所述步骤 4) 结果图像中像素点的相关纹理图像是指与该像素点对应的地形采样 点所在的子集的边界值所对应的原始纹理图像。 0028 所述步骤 4) 相关原始纹理的权值 a和 b分别为 : 0029 说 明 书 CN 101950428 A CN 101950431 A3/5 页 5 0030 hp(x, z)为水平面坐标为 (x, z) 的地形采样点的高度, Li和 Li+1是 采样点子集的边界值。 0031 所述步骤 5) 采用如下公式生成结果纹理图像中像素点 P(x, z) 的值 : 0032 相关纹理图像 Ta和 Tb中在 (x, z) 处的像素值分别为 Ta(x, z) 和 Tb(。

15、x, z)。 0033 与现有技术相比, 本发明方法具有的有益技术效果有 : 0034 本发明方法所生成的纹理与地形采样点的高度相关, 因此可以动态生成真实反映 地形高度属性的纹理信息, 应用于动态地形可视化系统中可以绘制出逼真的动态场景。 附图说明 0035 图 1 为地形模型示意图 ; 0036 图 2 为侯选纹理图像与采样点子集边界值映射关系示意图 ; 0037 图 3 为基于地形高程值的纹理合成算法框架图。 具体实施方式 0038 下面结合附图和具体实施例, 对本发明做进一步的说明。 0039 a) 地形采样点子集 0040 根据实际需要将地形模型中的采样点按高度划分为 n 个子集 H。

16、i(1 i n), 采 样点是从地形模型上得到的 ( 地形模型如图 1 所示 ), 首先获取地形中所有采样点的高度 的最大值 hmax和最小值 hmin的差值, 然后将这个差值平均分成 n 个区间, 每个区间的长度为 所有区间中最小的左值为hmin, 最大的右值为hmax(采样区间最小的左值就是采 样点高度值中的最小值 )。例如, 若地形采样点中最大的高度是 256, 最小的高度是 0, 则其 差值是 256-0 256。如果设定 n 4( 将高度值划分为 4 个区间 ), 则 256/4 64, 即每个 区间的长度为 64, 换句话说, 就是将所有的采样点按高度不同分别分到 0, 64, 6。

17、4, 128, 128, 192 和 192, 256 这四个区间中。 0041 如图 1 中地形模型中所有三角形的各个顶点坐标 (x, y, z) 的三个分量中, x 和 z 是该顶点的位置坐标, y 就是该顶点的高度坐标。其中每个子集的定义为 : 0042 0043 其中, hp(x, z)为水平面坐标为 (x, z) 的地形采样点的高度, hmin和 hmax分别为所有 地形采样点高度值中的最小值和最大值, Li和 Li+1都是采样点子集的边界值, K 为各采样点 子集的间隔, Imax为地形采样点的水平坐标的最大值。 0044 b) 侯选纹理图像与采样点子集边界值之间的映射关系 004。

18、5 为了使合成的纹理图像根据地形模型采样点的高程值不同而发生变化, 可以在侯 选纹理图像与采样点子集的边界值之间建立映射关系, 规定在具体的高度范围内纹理图像 说 明 书 CN 101950428 A CN 101950431 A4/5 页 6 中各个像素点的取值范围。 0046 设采样点子集的边界值为 Li(Li hmin, hmax, 1 i n+1), 侯选纹理图像为 Tj(j 1), 则 Li与 Tj的映射关系是 ( 如图 2 所示 ) : 0047 对每个 Li, 有且只有一个 Tj与之对应 ; 0048 对每个 Tj, 有 0 个, 1 个或者多个 Li与之对应。 0049 为了后。

19、文叙述方便, 给出结果纹理图像中与水平面坐标为 (x, z) 的采样点相对应 的像素点 P(x, z) 的相关纹理图像的定义 : 0050 定义 1 : 若 hp(x, z)为与结果纹理图像中像素点 P(x, z) 相对应的地形采样点的高度 值, 且 hp(x, z) Li, Li+1, (1 i n), 且 hp(x, z)的采样点子集边界值 Li和 Li+1对应的侯选 纹理图像分别为 Ta和 Tb, 则 Ta和 Tb为 P(x, z) 的相关纹理图像。 0051 c) 相关侯选纹理图像的权值 0052 为了使结果纹理图像中位于不同侯选纹理图像的边界处的像素点的取值可以融 合不同候选纹理图像。

20、的信息, 采用加权求和的方法生成结果纹理图像中的各个像素值, 因 此, 各个侯选纹理的权值的优劣决定了纹理合成结果的好坏。 0053 对结果纹理图像中的任意像素 P(x, z), 其取值依赖且仅依赖于其相关纹理。设 P(x, z) 的相关纹理为 Ta和 Tb, 则 Ta和 Tb在计算像素 P(x, z) 的取值时的权值 a和 b分 别为 : 0054 0055 0056 等式中所涉及的各个变量在前文中都有描述, 在此不再赘述。 0057 d) 合成纹理图像中的像素值 0058 根据侯选纹理图像中的像素值以及各个相关侯选纹理图像的权值, 可以获得结果 纹理图像中各个像素的取值。 0059 在结果。

21、纹理图像中, 每个像素点P(x, z)的取值仅与其相关纹理图像Ta和Tb有关。 设 Ta和 Tb中在 (x, z) 处的像素值分别为 Ta(x, z) 和 Tb(x, z), 则 P(x, z) 的取值为 : 0060 0061 0062 通过遍历整个结果纹理图像, 计算其每个像素点的取值, 即可获得与地形模型相 匹配的基于该模型采样点高程值的纹理图像。 0063 1. 具体算法 0064 基于地形高程值的纹理合成算法框架图如图 3 所示。 0065 输入 : 侯选纹理图像数组 candidate_tex 和地形采样点高程值数组 hp。 0066 算法伪代码 : 0067 Generate_t。

22、exture(TEXTURE*candidate_tex, float*hp) 0068 0069 将地形数据根据高度 hp 划分为不同的子集 Hi; 0070 建立 candidate_tex 数组中各元素与 Hi各个边界点之间的映射关系 ; 说 明 书 CN 101950428 A CN 101950431 A5/5 页 7 0071 for( 结果纹理图像中的每个像素 P(x, z) 0072 0073 获取与该像素相对应的地形采样点的高度 hp(x, z) ; 0074 获取高度为 hp(x, z) 的采样点所属的子集 Hi; 0075 根据 Hi的边界值与 candidate_tex。

23、 中元素的对应关系确定 P(x, z) 的相关纹理 图像 ; 0076 计算 P(x, z) 的相关纹理图像的权值 ; 0077 计算 P(x, z) 的值 ; 0078 0079 0080 纹理生成作为动态地形可视化系统中的关键模块, 对系统的渲染效果与性能产生 重要影响。 基于地形高程值的纹理合成算法将输入的纹理图像的像素值与地形采样点的高 度值相关联, 可以在运行时动态生成与地形高程值相匹配的纹理图像, 增强了地形可视化 系统的渲染真实感。 说 明 书 CN 101950428 A CN 101950431 A1/3 页 8 图 1 说 明 书 附 图 CN 101950428 A CN 101950431 A2/3 页 9 图 2 说 明 书 附 图 CN 101950428 A CN 101950431 A3/3 页 10 图 3 说 明 书 附 图 CN 101950428 A 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1