一种计算机图形的点模型几何信息的各向异性表示方法

文档序号:6606344阅读:632来源:国知局
专利名称:一种计算机图形的点模型几何信息的各向异性表示方法
技术领域
本发明涉及计算机图形技术领域,尤其涉及一种计算机图形的点模型几何信息的 各向异性表示方法。
背景技术
在计算机图形系统中,复杂的场景通常用三角网格表示,但是,随着场景的复杂程 度的提高所需要的三角形的数量就越多,不断增加的三角形数量导致模型的几何数据量和 拓扑数据量的迅速膨胀,这在很大程度上降低了处理和绘制的速度。另外,在三维影像处理 和三维扫描技术中会直接产生大量用点表示的几何模型,如果利用传统的基于面的方法, 需要将这些点通过三角化技术表示成三角网格,然后再进行处理或者显示,这不但增加了 数据量,而且降低了处理效率。为了进一步提高几何模型的处理与绘制效率,将点作为一种 基本的绘制元素,这样省去三角化以及后续的三角网格表示、传输等过程,从而可以获得较 高的处理效率。将点作为模型的表示元素源于一个朴素的想法任何形状的模型都可以通过位于 其边界(表面)的多个点来表示,表示的质量只与点的数量有关,并且不受拓扑关系的约 束。在基于点的模型表示方法中,某点的局部信息是人们最关注的,利用这些局部信息可以 计算出点的一些重要的几何属性,如法向量。另外,由于点模型中点的数量较多,局部算法 的效率远远高于全局算法。尽管点模型相关的算法多为局部算法,我们希望所有局部计算 的结果与全局算法一致,可以得到一个光滑的二维流形体。虽然在用点元素表示的模型中不用记录拓扑或者连接关系,但是对于复杂模型来 说,仍然需要记录上百万甚至上亿个点的几何信息和属性信息。几何信息指点的几何坐标, 属性信息包括模型表面在该点的法向量、点的尺寸、颜色等,在多分辨率模型中还要记录表 示点集合法向范围的法向锥半角。与三角模型一样,点模型在绘制时会出现多个点投影到 同一个像素上的现象,如果不对模型进行简化和多分辨率显示控制,该像素将被重复处理 多次。另外,为了适合互联网中的不同带宽的情况,点模型需要和三角网格模型一样的渐进 传输技术。因此,设计一个合理的数据结构来表示点模型,并对点模型的数据进行压缩、简 化、多分辨率控制、累进传输,从而提高点模型的存储和传输效率,是基于点的表示技术首 先要解决的问题。Botsch等人提出了基于八叉树的点模型的几何数据量化与压缩方法,该方法也适 用于多分辨率点模型绘制。该方法假设整个点模型可以包含在一个立方体盒子B中,八叉 树结构是指将该立方体盒子平均分割成八个等尺寸的小立方体,这些小立方体又被进一步 分割成八个更小尺寸的立方体,该过程重复执行的次数称为八叉树的深度,而该过程执行 过程中产生的立方体称为八分体,每个八分体被连接到生成它的立方体盒子中,点模型中 的每个点被连接到完全包含它的八分体中。为了利用八叉树对点模型的几何数据,即点的坐标值进行量化,首先按照均勻群 集方法的要求,计算出曲面S的边界立方体盒,令采样步距为h,则η = 1/h,把立方体盒均勻分割成nXnXn个子立方体,并在与曲面S相交的子立方体的中心取一个采样点Pi。均 勻群集方法的采样密度为h或者‘,近似误差为# h ,可见二者均为采样步距h的倍数。令η = 2k,每个方向取两个相邻的子立方体,共2X2X2个子立方体,将这8个子 立方体合并成一个立方体,原始网格Gtl变成网格G1,网格G1中的立方体至少包含一个采样 点,其采样步距h’ =2h。依此类推,最后得到一个立方体Gk。这些网格之间的关系可以用 八叉树表示。八叉树每个节点的状态表示采样点的分布情况,由于每个节点对应8个子立 方体,用一个字节可以完全表示节点的256种状态。Botsch等人的八叉树表示方法,在表示点模型的数据的几何信息时均采用各向同 性的量化,所谓各向同性的量化是指采样点的坐标值的x、y和ζ分量的精度相同,各向同性 的量化沿着坐标轴方向对空间进行同步均勻分割,而各向异性的量化沿着坐标轴方向对空 间的进行均勻不同步分割,对空间的同步均勻分割对于平坦区域的采样来说存在较大的冗 余,也就是说各向同性的量化存在较大冗余。因此,现有技术存在两个主要缺点,第一就是为了达到某一方向上的精度,其他两 个方向上的精度被没必要提高,造成表示精度提高,而显示精度没有提高,同时也浪费了表 示位数;第二个缺点就是不适合较大、平坦区域的表示,在对该类模型进行表示时的表示效 率低于目前的三角形表示方法。基于KD-树的点模型表示方法,KD-树可以分为中点分割KD-树、均衡KD-树以 及滑动中点KD-树。中点分割KD-树的分割平面位于节点对应的立方体的中心[3],与坐 标轴平行,这种KD-树的相邻层的节点之间具有位共享特点。均衡KD-树的分割平面通过 节点包含的所有点中的某一点,并使分割平面两侧的点数近似相等。滑动中点KD-树通过 将位于立方体盒中心的分割平面移动到距离其最近的某一点上,对节点进行分割,著名的 PointShop3D中采用了这种KD-树。除了中点分割KD-树,其他两种KD-树均不具备位共享 特点。滑动中点KD-树的表示方法的缺点在于不具备位共享特点,无法利用KD-树的特 点对点模型的几何信息进行量化,还需要其他的量化技术。

发明内容
本发明所要解决的技术问题是提供一种计算机图形的点模型几何信息的各向异 性表示方法。一种计算机图形的点模型几何信息表示方法,包括以下步骤:Al,各向异性的量 化;A2,构造中点分割KD-树;A3,KD-树编码。所述的方法,所述步骤Al具体执行以下操作采样点的坐标值的X,y和ζ分量的 精度不同。所述的方法,所述步骤A2具体执行以下操作A21,确定空间分割过程中采样点集 的局部坐标系与边界盒尺寸计算Ptl的局部坐标系的原点Qtl、坐标轴的方向以及包围该点集 的边界盒尺寸;A22,确定分割方向。所述的方法,所述步骤A21具体执行以下操作令点Ptl为Ptl的平均位置,即,
构造三阶协方差矩阵C。 矩阵Ctl为对称的半正定矩阵,它的特征值为实数,特征向量互相正交,通过计算特 征多项式的根,得到3个特征值入2和λ 3,求解奇次线性方程组C0-AiTi= 0,i e {1,2,3}可以得到3个特征向量I1,12和I3 ;为了计算点集Ptl的边界盒,还需要计算点集沿 这3个坐标轴的分布范围,才可以获得包围该点集的6个边界平面,这个工作可以通过分别 计算点集Ptl中每个点与3个特征向量的点积的最小与最大值完成,即边界盒的6个面分别 为,
则边界盒的边长L1, L2和L3分别等于点积的最小值与最大值之差;令a,b和c分 别为点集沿特征向量I1,12和I3方向分布范围的平均值,则, 分别与特征向量I1,12和I3垂直并将边界盒平分为二的3个平分平面为<I1;_a>, <12,-b>和<13,-C>,这三个平面的交点,即边界盒的中心Qtl为,Q0 = ali+bl2 +cl3以Qci为坐标系的原点,特征向量I1,12和I3对应的方向为X,y和ζ轴构成的坐标 系即为点集Ptl的局部坐标系。所述的方法,所述步骤A22确定分割方向的方法为根据特征值λ”入2和入3之 间的关系来确定分割方向。所述的方法,根据特征值λ1,入2和λ3之间的关系来确定分割方向的具体做法 为令三个特征值λ1≤λ2≤ λ3,则共分3种情况,SP,(1) A1 < λ2,λ 3, (2)λ1= λ2 < λ3, (3) A1= A2= λ3;对于第⑴种情况,首先分别计算特征向量I1与坐标轴之间 的锐角夹角,取最小角对应的坐标轴为分割平面的法向量;对于第(2)种情况,计算特征向 量I3与坐标轴之间的锐角夹角,取最大角对应的坐标轴为分割平面的法向量;对于第(3) 种情况,首先计算节点包含采样点的平均位置P,然后计算向量P-Q与坐标轴之间的锐角夹角,取最小角对应的坐标轴为分割平面的法向量。所述的方法,所述步骤A3编码策略为KD_树中的每个节点记录该节点的分割方 式和结果;分割方式包括不分割、沿X轴方向的分割、沿y轴方向的分割、沿Z轴方向的分割 四种情况,用两个比特表示这四种分割方式,即00表示不分割,01表示沿χ轴方向的分割, 10表示沿y轴方向的分割、11表示沿Z轴方向的分割;而对于每一次分割来说,其结果包括 两个子区域均为空、均为非空、正半区域非空和负半区域非空四种情况,同样用两个比特表 示,即00两个子区域均为空,11表示均为非空,01表示正向区域非空,10表示负向区域非 空。本发明根据中点分割KD-树的空间等分特性,提出了各向异性的量化方法,利用 该方法对点模型中采样点的坐标值进行重新量化,量化结果被表示成KD-树构造过程中的 空间分割方式和结果的编码。该方法不仅可以直接降低点模型的几何数据量,而且在保持 点模型几何数据的数值精度不变的情况下,降低了采样点数,从而进一步降低了点模型的 数据量。同时该方法也实现了几何模型的点与多边形混合表示,克服了点模型不适用于表 示大的平坦区域的缺点。本发明主要解决了点模型表示过程中的两个问题,其一是解决了点模型几何信息 各向异性表示问题,实现了点模型几何数据的压缩;其二是解决了点模型表示方法不适用 于较大平坦区域表示的问题。该方法是一个点模型的几何数据压缩方法,也是一个多分辨 率表示方法,同时适用于点模型的渐进式传输,该方法也可以用于几何模型的点与多边形 (矩形)的混合表示。


图1为各向同性量化与各向异性量化示意图;图2为与三维空间分割等价的二维空间分割过程中的3种情况示意图;图3为二维空间分割的例子;图4为图3中所示二维空间分割的KD-树及编码情况;
具体实施例方式以下结合附图和具体实施例,对本发明进行详细说明。实施例1各向异性的量化与三角网格模型的压缩一样,量化是几何信息压缩的前提,在点模型常用的数据 结构中,基于空间分割的数据结构,如八叉树和KD-树,中隐含了量化信息,充分利用这些 信息可以获得较高的几何信息压缩率。Botsch等人的工作利用空间分割八叉树表示点模 型,点的位置信息隐含在节点的层次中,每个节点包含一个8比特的编码表示子节点的情 况,对于二维流形体的表面,该方法使每个点的几何位置平均只需要8/3比特的编码。而且 不需要保存节点的半径信息,因为该信息可以通过节点的编码间接计算出来,即已知某个 节点k的大小为IX 1X1,则其子节点的大小为。Botsch等人的工作中使用的是各向同性的量化,所谓各向同性的量化是指采样点 的坐标值的X,y和Z分量的精度相同。与之对应的量化为各向异性的量化,即采样点的坐 标值的x,y和ζ分量的精度不相同。各向同性的量化沿着坐标轴方向对空间进行同步均勻
7分割,而各向异性的量化沿着坐标轴方向对空间的进行均勻不同步分割。对空间的同步均 勻分割对于平坦区域的采样来说存在较大的冗余,也就是各向同性的量化存在较大冗余, 如图1所示。而各向异性的量化可以根据采样点的分布,进行不同精度的量化,即表示采样 点的三个坐标分量的比特数可以根据采样点的分布情况而不同。
如图1所示,其中的灰色区域包含的4个点,在八叉树中坐标值依次被量化为 (0. 125,-0. 625)、(0. 375,-0. 625)、(0. 625,-0. 625)、(0. 875,-0.625)等 4 个点,每个坐标 分量的量化精度均为0. 125,分别需要用3个比特表示。而在KD-树中,这四个采样点被量 化为(0.5,-0.625) —个点,χ坐标分量的量化精度为0.5,需要1个比特,y坐标分量的量 化精度为0. 125,需要3个比特。在绘制时,只要用一个合适的尺寸的点去绘制就可以达到 八叉树的效果,而量化精度中正好隐含了绘制尺寸的大小。实施例2中点分割KD-树的构造对于给定曲面的采样点集巧={ 八,/0〔IR3,量化精度为h,满足Nyquist条 件并且足够反映曲面的几何和拓扑信息。首先确定空间分割过程中采样点集的局部坐标系 与边界盒尺寸,即对该点集进行协方差分析,计算Ptl的局部坐标系的原点Qtl、坐标轴的方向 以及包围该点集的边界盒尺寸。令点Ptl(粗黑体,下同)为Ptl(斜体,下同)的平均位置, 即,
(1)构造三阶协方差矩阵C。,
(2)矩阵Ctl为对称的半正定矩阵,它的特征值为实数,特征向量互相正交,通过计算特 征多项式的根,得到3个特征值入2和λ 3,求解奇次线性方程组C0-Λili=0,i∈{1,2,3} (30)可以得到3个特征向量I1, I2和13。为了计算点集Ptl的边界盒,还需要计算点集 沿这3个坐标轴的分布范围,才可以获得包围该点集的6个边界平面,这个工作可以通过分 别计算点集Ptl中每个点与3个特征向量的点积的最小与最大值完成,即边界盒的6个面分 别为,
则边界盒的边长L1,L2和L3分别等于点积的最小值与最大值之差。令a,b和c分
别为点集沿特征向量I1, I2和I3方向分布范围的平均值,则,
分别与特征向量I1,12和I3垂直并将边界盒平分为二的3个平分平面为<I1;_a>, <12,-b>和<13,-C>,这三个平面的交点,即边界盒的中心Qtl为,Q0 = ali+b^+clg (6)以Qtl为坐标系的原点,特征向量I1,12和I3对应的方向为X,y和ζ轴构成的坐标 系即为点集Ptl的局部坐标系。确定点集Ptl的局部坐标系和边界盒尺寸后,接下来就是确定分割方向,即沿着x,y 和ζ这三个坐标轴中的哪一轴个分割当前的模型空间。本文的方法根据特征值λ≤入2和 λ≤ 3之间的关系来确定分割方向,若令三个特征值A1≤ A2 ≤λ3,则共分3种情况,即,(1) A1 < λ 2,λ 3,(2) λ i = λ 2 ≤ λ 3,(3) λ i = A2= λ 3。我们将这三种情况分别用二维空 间中的点集的边界盒的情况来表示,如图2所示。对于第一种情况,首先分别计算特征向量I1与坐标轴之间的夹角(锐角),取最小 角对应的坐标轴为分割平面的法向量,如图2(a)所示,分割平面的法向量与y轴平行。对 于第二种情况,计算特征向量I3与坐标轴之间的夹角(锐角),取最大角对应的坐标轴为分 割平面的法向量,如图2(b)所示,分割平面的法向量与y轴平行。对于第三种情况,首先计 算节点包含采样点的平均位置P,然后计算向量P-Q与坐标轴之间的夹角(锐角),取最小 角对应的坐标轴为分割平面的法向量,如图2(c)所示,分割平面的法向量与y轴平行。下面,以图3所示二维点集的空间分割为例说明KD-树构造过程,令给定采样点集 为
量化精度为h。首先利用协方差分析计算该点集的边界盒以及局部坐 标系,如图3 (a)所示,边界盒尺寸为L1X L2,根据分割规则,取与y轴垂直并过边界盒中心Qtl 的分割线将点集Ptl分为两个子集P1和P2,由于在局部坐标系中点集Ptl的边界盒中心Qtl的 坐标为(OAO)JJP1占据区域的坐标为Q1 = (0,-0.5L2),面积为L1XOjL2, P2占据区域 的坐标为Q2= (0,0.51^),面积也为1^乂0.51^2。继续分别对点集P1和P2进行协方差分析, 确定它们的分割方法。依此类推,该过程直到节点对应区域的尺寸小于等于采样步距h。按照以上区域分割方法将得到每个叶子节点只包含一个点的KD-树。如果所有叶 子节点均没有兄弟节点,则对于给定曲面的采样点集Ptl在采样步距为h的条件下不存在过 采样数据。但是,一般模型中通常包含较平坦的表面和复杂表面,在同一个采样精度下通常 存在过采样现象,为了克服过采样带来的数据冗余,需要对KD-树中的叶子节点进行合并 操作,即当两个非空叶子节点有公共双亲节点时,这两个叶子节点就可以合并到其双亲节 点,而双亲节点也就成了叶子节点,该过程贪婪地执行直到所有非空的叶子节点的兄弟节 点均为空节点,即叶子节点不存在兄弟节点。在不同分辨率下,一些中间层的节点如G5和 G3层的节点也可以合并,从而在保持显示精度的前提下减少冗余数据,如图3(h)和图3(i) 中所示。实施例3KD-树编码
根据区域分割过程,KD-树中的每个节点应该记录该节点的分割方式和结果。分割 方式包括不分割、沿X轴方向的分割、沿y轴方向的分割、沿Z轴方向的分割四种情况,用两 个比特可以表示这四种分割方式,即00表示不分割,01表示沿χ轴方向的分割,10表示沿 y轴方向的分割、11表示沿ζ轴方向的分割。而对于每一次分割来说,其结果不外乎两个子 区域均为空、均为非空、正半区域非空和负半区域非空四种情况,同样用两个比特表示,即 00两个子区域均为空,11表示均为非空,01表示正向区域非空,10表示负向区域非空。根 据以上编码策略,图3中所示的区域分割可以表示成图4中所示的KD-树。KD-树中的一个双亲节点有两个孩子节点,如果KD-树中位于Gk层的节点数为m,
则GH层的节点数为>,根据编码方法可知,Gk层的节点可以由GH层的点加上个比
特来表示。KD-树的编码效率与其叶子节点中双子节点的数量有关,若KD-树的最深层中的
每个节点对应2个采样点,那么对于含有η个点的点采样集合,可以用M个比特表示, k 即每个点平均需要4个比特表示。这是采样点集存在大量过采样信息的情况。若
KD-树的每个叶子节点对应1个采样点,并且没有兄弟节点,那么为了表示点集中的η个采 即每个点平均需要8个比特表示。该结果与Botsch等人提出的八叉树方法中的每 个采样点平均2. 67个比特的结果有较大差距,但是他们的结果是在假设八叉树的最深层 中的每个节点包含4个采样点的条件下获得,该条件为一理想条件。另外,通过合并KD-树 节点可以降低采样中的冗余数据,减少采样点数。应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换, 而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
权利要求
一种计算机图形的点模型几何信息的各向异性表示方法,其特征在于,包括以下步骤A1,各向异性的量化;A2,构造中点分割KD 树;A3,KD 树编码。
2.根据权利要求1所述的方法,其特征在于,所述步骤Al具体执行以下操作采样点 的坐标值的X,y和ζ分量的精度不同。
3.根据权利要求1所述的方法,其特征在于,所述步骤A2具体执行以下操作A21,确 定空间分割过程中采样点集的局部坐标系与边界盒尺寸计算Ptl的局部坐标系的原点Qtl、坐 标轴的方向以及包围该点集的边界盒尺寸,Ptl为给定曲面的采样点集;A22,确定分割方向。
4.根据权利要求3所述的方法,其特征在于,所述步骤A21具体执行以下操作令点Ptl 为Ptl的平均位置,即, 构造三阶协方差矩阵C 矩阵Ctl为对称的半正定矩阵,它的特征值为实数,特征向量互相正交,通过计算特征多 项式的根,得到3个特征值λ”入2和λ 3,求解奇次线性方程组 C0-AiIi = 0,i e {1,2,3}可以得到3个特征向量I1, I2和I3 ;为了计算点集Ptl的边界盒,还需要计算点集沿这 3个坐标轴的分布范围,才可以获得包围该点集的6个边界平面,这个工作可以通过分别计 算点集Ptl中每个点与3个特征向量的点积的最小与最大值完成,即边界盒的6个面分别为, 则边界盒的边长L1, L2和L3分别等于点积的最小值与最大值之差;令a,b和c分别为 点集沿特征向量I1, I2和I3方向分布范围的平均值,则, 分别与特征向量I1, I2和I3垂直并将边界盒平分为二的3个平分平面为<I1; -a>, <12,-b>和<13,_c>,这三个平面的交点,即边界盒的中心Qtl为, Q0 = a^+bla+clg以Qtl为坐标系的原点,特征向量I1,12和I3对应的方向为X,y和ζ轴构成的坐标系即 为点集Ptl的局部坐标系。
5.根据权利要求3所述的方法,其特征在于,所述步骤A22确定分割方向的方法为根 据特征值入2和λ 3之间的关系来确定分割方向。
6.根据权利要求5所述的方法,其特征在于,根据特征值λ”入2和λ3之间的关系来 确定分割方向的具体做法为令三个特征值A1S λ 3,则共分3种情况,g卩,(1) A1 < λ 2,λ 3,⑵λ工=λ 2 < λ 3,⑶λ工=λ 2 = λ 3 ;对于第(1)种情况,首先分别计算特 征向量I1与坐标轴之间的锐角夹角,取最小角对应的坐标轴为分割平面的法向量;对于第 (2)种情况,计算特征向量I3与坐标轴之间的锐角夹角,取最大角对应的坐标轴为分割平面 的法向量;对于第(3)种情况,首先计算节点包含采样点的平均位置P,然后计算向量P-Q 与坐标轴之间的锐角夹角,取最小角对应的坐标轴为分割平面的法向量。
7.根据权利要求1所述的方法,其特征在于,所述步骤A3编码策略为KD-树中的每个 节点记录该节点的分割方式和结果;分割方式包括不分割、沿χ轴方向的分割、沿y轴方向 的分割、沿ζ轴方向的分割四种情况,用两个比特表示这四种分割方式,即00表示不分割, 01表示沿χ轴方向的分割,10表示沿y轴方向的分割、11表示沿ζ轴方向的分割;而对于 每一次分割来说,其结果包括两个子区域均为空、均为非空、正半区域非空和负半区域非空 四种情况,同样用两个比特表示,即00两个子区域均为空,11表示均为非空,01表示正向区 域非空,10表示负向区域非空。
全文摘要
本发明公开了一种计算机图形的点模型几何信息的各向异性表示方法,包括以下步骤A1,各向异性的量化;A2,构造中点分割KD-树;A3,KD-树编码。
文档编号G06T17/00GK101894395SQ20101023296
公开日2010年11月24日 申请日期2010年7月22日 优先权日2010年7月22日
发明者崔江涛, 李广鑫, 詹海生 申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1