当前位置:
文档之家› 适用于曲面的纹理映射方法研究
适用于曲面的纹理映射方法研究
角α 相等,即α = θ 。为将纹理平面上的任一圆弧映射为球 面上的一段纬线,令 P 点的纬度ϕ 为 Q 点的极径 r(设为(0,
1)之间)的函数,即 r = f (ϕ) 。而后,我们需要定义一种准
梯形面片与准四边形面片,用于算法的描述。
图 3 球面局部纹理映射
如图 3 所示,在圆形纹理平面上指定平面片 Q Q Q Q , 1234
(7)后,可得
r = 1− sin ϕ / 1− sin Φ
(8)
然后就可以算出纹理的 u,v 值
u = r cosα = r cosθ
(9)
v = r sinα = r sinθ
(10)
一般来说,为了保证球面映射中纹理的不变形,必须满
足 3 个准则:点的相邻性;面积的等比性;长宽比的不变性。
可以看出在上文介绍的整体纹理映射算法中,映射后会出现
片 Q Q Q Q 的面积为
1
2
3
4
SQ = (r22 − r12 )(α 2 − α1) / 2
(4)
曲面片 P1P2P3P4 的面积为
SP = (sin ϕ2 − sin ϕ1)(θ2 −θ1)
(5)
又因为α1 = θ1 ,α2 = θ2 ;则可得
SQ / SP = (r22 − r12 ) / 2(sin ϕ2 − sin ϕ1)
4 .1 选取投影平面
为了保证纹理映射后的效果,曲面片上其他点投影后要
尽量落在边界点投影后围成的多边形中,因此,投影面的选
取非常重要。由投影面的点法式方程知,投影面平面方程的
计算有两个方面,一是投影面法向量的选取,二是投影面上
的一个点的坐标。不妨设该平面方程为 a(x − x1) + b(y − y1) +
Research on Surface Texture Mapping Algorithm
ZHANG Tianxi1, HE Huaiqing1,3, ZHANG Yuxiang1, YANG Guoqing2
(1.College of Computer Science and Technology, Civil Aviation University of China, Tianjin 300300; 2. Civil Aviation Administration of China, Beijing 100710; 3.Tianjin Key Lab for Advanced Signal Processing, Tianjin 300300)
【Abstract】Applying to regular and irregular surfaces, these three algorithms have played an important role in the research of texture mapping. Through comparing these two algorithms of sphere texture mapping, this paper analyses their advantages and disadvantages according to the non-distortion criteria of sphere texture mapping. Furthermore, the paper also achieves the algorithm of projection mapping applicable to irregular surface based on harmonic mapping. 【Key words】Entire sphere texture mapping;Partial sphere texture mapping;Projection mapping
点对应点 a,而 P2 点对应点 b, P1 点则对应点 c,即三角形
P0 P1P2 对应于纹理图中的三角形 acb。所要实现的是将左图
三角形中任意一点映射到右面纹理图中,不失一般性,在这
里选择任一点
w
进行计算。先作出向量
v A
=
P1
− P0
,
基金项目:民航总局科技基金资助项目 作者简介:张天锡(1981—),男,硕士,主研方向:图形图像与虚拟 现实;贺怀清,博士、副教授;张宇翔,硕士;杨国庆,博士、教 授、博导 收稿日期:2005-05-20 E-mail:ztx1218@
4 不规则曲面的纹理映射方法
由于不规则曲面的特殊性,不可能按照常规的想法将不 规则曲面上的每一点用一个函数与纹理图上的点一一对应 起来,于是在这里采用了另一种思路——投影映射。可以利 用调和映射将三维模型投影到较合适的投影面上,然后对其 坐标进行归一化处理,进而得到纹理坐标。该方法共分 4 个 步骤,具体如下:
—216—
矢Bv 量= P和2 −来P0表,示以,及即包C含v =wα的Av +向β量BvCv,=αw,−βP∈0 ,[0C,v1]可,用这Av样和得B出v 的
⎡C x ⎢⎣C y
⎤ ⎥ ⎦
=
⎡ ⎢ ⎣
Ax Ay
Bx ⎤⎡α ⎤
By
⎥ ⎦
⎢⎣
β
⎥⎦
(1)
解该方程后可得α , β 的表达式
α = ByCx − BxCy
(6)
为保持其比例关系,这里将 r = f (ϕ) 写成
r 2 = Asin ϕ + B
(7)
其中 A,B 为待定系数。 在这里,我们认定纹理的平面中心与球面的正极点相对
应,映射纹理的区域为纬度坐标不小于 Φ 的局部球面,于是
有如下关系:r=0 时,ϕ = π / 2 ;r=1.0 时,ϕ = Φ 。代入式
为使球的表面划分后能与纹理图的表面一一对应起来, 可以将球上的那些四边形小面进一步分割成三角形小面,然 后采用一种调和映射的方法将它们映射到纹理图上。
下面介绍这种调和映射的方法,如图 1。
图 1 调和映射的方法
假设图中左面三角形为球面上的一个划分三角形,而右
面的图对应于该三角形在纹理图上的一个映射图,这其中 P0
3 球面局部纹理映射的方法
球面的局部映射方法是将一个圆形纹理平面上的某区 域映射到球体表面的一个局部区域,该区域可以不是完整的 半球面或球面。其算法具体内容如下:
设纹理平面上任一点 Q 的极坐标为 (r,α ) ,映射到球面
上对应点 P 的经纬坐标为 (θ ,ϕ) 。首先将纹理平面上的径向
线段映射为球面上的一段经线,令 P 点的经度θ 与 Q 点的极
c(z − z1) = 0 ,平面法向量{a,b,c}可以通过计算曲面片的总
体法向量的矢量和得到。设曲面片的集合为
S :{s1, s2 ⋅⋅⋅ sn} ,其中的点集为V :{v1, v2 ⋅⋅⋅ vn},每个小面
片的法向量为: si :{ai , bi ,ci } ,则投影面的法向量为
(2)
Ax By − Ay Bx
β = AxCy − AyCx
(3)
Ax By − Ay Bx
这里的α , β 即为点 w 在纹理图中对应的纹理坐标 u,v。(其
中 u,v∈ [0,1])。
2 球面整体纹理映射方法
传统的纹理映射方法即为将一个矩形的纹理图案映射
在整个球面上,其映射算法如图 2。
图 2 球面整体纹理映射
纹理图案的面积不等比性,从而不能满足第二个准则。而在
这里我们使用的算法有如下特点:
(1) 可将圆形纹理平面上的某区域映射到球体表面的一
个局部区域,该映射区域的位置与大小可根据需要确定。
(2)采用了面积等比约束这一有力措施。
这样,就使该算法满足了前两条纹理不变形规则,从而
大大提高了纹理映射的质量。
—217—
根据以上对球体的表面的整体划分,将球面上任意一点
的经纬坐标 (θ ,ϕ) 与纹理图上的纹理坐标(u,v)建立起一个一
一映射的关系,如图 2,假设 P 为球面上任意一点,且球体
中心为 O,要做的是把左边球面上的 P (θ ,ϕ) 映射到右面的 纹理图上,映射后的点为 Q(u,v),其中θ 为直线 OP 映射到 XOY 面后与 X 轴的夹角,ϕ 为 OP 与 Z 轴的夹角,由于θ 的
为了模拟物体表面精致的、不规则的颜色纹理,在虚拟 现实技术中引入了纹理映射技术。该技术首先由美国犹他大 学 Catmull 在 1974 年提出,这种方法增加了绘制图像的真实 性、丰富度,而又不影响图像的基本几何复杂度。本文所论 述的球面整体纹理映射算法、球面局部纹理映射算法以及投 影映射算法正是在此基础上发展起来的。其中前两种算法完 成了从纹理平面到球面的映射[1]。由于球面是不可伸展曲面, 因此球面的纹理映射不可避免会发生变形。文献[2]提出了一 种球面等积映射方法,用于消除球面映射时所产生的球面两 极处纹理汇聚现象以及首尾连接处不连续走样现象。文献[3] 提出了透视变换纹理映射算法,也取得了不错的效果。第三 种投影映射算法实现了从纹理图案到不规则曲面的映射。它 采用了调和映射的方法[4],允许用户交互选择模型的贴图范 围,自动生成模型的纹理坐标[5]。
本文先从球面映射算法产生纹理形变的原因入手,根据 Bier 和 Sloan 提出的纹理不变形准则,较好地分析了两种球 面算法优缺点,增加了它们在实际应用的灵活性。然后在调 和映射方法的基础上,通过实际物理模型,实现了投影映射 算法在不规则曲面上的映射。
1 工作前提
在进行球面的纹理映射的算法研究之前,我们必须要先 掌握球的整体拓扑结构。众所周知,球是一个三维二次曲面 物体。为了对其表面进行逼近,完全可以采用地理划分法将 一个球体划分成若干个小区域。这些区域可以称其为经纬区 域。其中北极和南极区域用三角形小面来逼近,其他区域用 四边形小面来逼近。
第 31 卷 增 刊 Vol.31 Supplementary Issue