基于最大化泊松圆盘采样的重新网格化方法技术

技术编号:10814939 阅读:224 留言:0更新日期:2014-12-24 19:16
本发明专利技术公开了一种基于最大化泊松圆盘采样的重新网格化方法,该方法包括以下步骤:对输入的三角网格进行细分处理,得到细分网格S;利用局部冲突检测方法在细分网格S上进行初始泊松采样;对于细分网格S进行迭代检测并填充其中的空隙区域,得到最大化的泊松圆盘采样点集;利用最大化的泊松采样点集,对于细分网格S中的三角形进行离散聚类,提取得到新的三角网格;对于得到的新的三角网格进行角度和顶点度数优化。本发明专利技术为最大化的泊松圆盘采样提供了一种快速解决方案,而且可以获得具有蓝噪声性质的网格,非常适用于物理模拟、光照渲染以及几何建模等。

【技术实现步骤摘要】
基于最大化泊松圆盘采样的重新网格化方法
本专利技术属于图形处理
,具体涉及图形处理领域中的蓝噪声采样技术和重新网格化方法,特别涉及一种利用细分网格进行快速泊松圆盘采样,并利用采样点生成三角网格的方法。
技术介绍
采样是信息处理领域中的基本问题,广泛应用于生物,物理,化学以及医学等诸多领域,与人类的日常生活密不可分。在多媒体处理与计算机图形学领域,采样技术尤为重要。在众多采样方法中,蓝噪声采样具有低频能量低、能量径向对称等重要的频谱特征,这些性质在图像处理与图形学中有着广泛的应用。泊松圆盘采样是最经典的蓝噪声采样方法之一。一个理想的泊松圆盘采样点集需要满足三个条件:无偏差采样性质(采样区域的每个没有覆盖的点都有相同的概率接受一个新的采样点)、最小距离性质(任意两个采样点之间的距离大于给定的采样半径),最大化性质(采样区域被所有的采样圆盘完全覆盖)。满足这三个条件的采样方法称为最大化泊松圆盘采样(MaximalPoisson-diskSampling-MPS)。另一方面,网格是三维几何表示的基本形式,网格生成技术是连接计算机图形学和工业界的重要桥梁。通常的网格生成是通过激光扫描仪扫描得到的粗糙网格数据,但是这些模型存在数据量大、三角形网格质量差等缺点,不能直接用于有限元模拟,计算机动画等高级应用。除此之外,曲面网格生成方法研究如何从一个已有曲面出发,通过计算得到高质量的输出网格用来近似表示输入曲面。如果输入曲面已经是三角形网格表示,那么称之为曲面的重新网格化(remeshing),重新网格化是获得高质量网格模型的重要手段。泊松圆盘采样以及重新网格化分别都有几十年的研究历史,但是很少有工作将两者结合起来同时研究。近年,Yan和Wonka(Yan,D.-M.andWonka,P.(2013).GapprocessingforadaptivemaximalPoisson-disksampling.ACMTrans.onGraphics,32(5):148:1-148:15.)首次提出网格曲面上的最大化泊松圆盘采样(MaximalPoisson-diskSampling-MPS)方法及重新网格化方法,推动了蓝噪声网格生成的发展。该方法利用曲面上的局部限制Voronoi(沃罗诺伊)图给出了空隙区域存在的理论分析,并建立一个三维均匀网格来辅助冲突检测和泊松采样,但是该方法采样速度慢,而且内存消耗大,不利于进行快速的泊松采样。另外,由于该方法在一个全局的网格结构内使用欧式距离进行冲突检测,所以其在相近区域和自相交区域处很容易出现问题。
技术实现思路
本专利技术的目的是针对现有技术的缺陷,提供一种基于最大化泊松圆盘采样的重新网格化方法。为实现上述目的,本专利技术提供一种基于最大化泊松圆盘采样的重新网格化方法,该方法包括以下步骤:步骤S1、对输入的三角网格进行细分处理,得到细分网格S;步骤S2、利用局部冲突检测方法在细分网格S上进行初始泊松采样;步骤S3、对于细分网格S进行迭代检测并填充其中的空隙区域,得到最大化的泊松圆盘采样点集;步骤S4、利用最大化的泊松采样点集,对于细分网格S中的三角形进行离散聚类,提取得到新的三角网格;步骤S5、对于得到的新的三角网格进行角度和顶点度数优化。本专利技术采用计算机图形处理的技术,利用原始输入网格的细分网格进行快速的最大化泊松圆盘采样,进而提取生成蓝噪声网格,并通过一种优化的手段使得网格的质量满足用户的需求,因而非常适用于物理模拟、光照渲染以及几何建模等。附图说明图1是本专利技术基于最大化泊松圆盘采样的重新网格化方法的流程图;图2是根据本专利技术一实施例输入三角形的细分过程;图3A和图3B是根据本专利技术一实施例的输入三角网格和细分之后的网格;图4A~图4C是根据本专利技术一实施例重新网格化的示意图,其中图4A是一个最大化的泊松采样点集,图4B初始提取的三角网格,图4C是优化后的三角网格;图5A和图5B分别是本专利技术的方法与前人方法在运行时间和内存使用方面的对比图;图6A和图6B是本专利技术的方法与前人方法在模型相近区域重新网格化的结果对比图;图7A和图7B是本专利技术的方法与前人方法在模型自相交的区域重新网格化的结果对比图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术进一步详细说明。图1是本专利技术基于最大化泊松圆盘采样的重新网格化方法的流程图,如图1所示,所述方法包括以下步骤:步骤S1、对输入的三角网格进行细分处理,得到细分网格S;步骤S2、利用局部冲突检测方法在细分网格S上进行初始泊松采样;步骤S3、对于细分网格S进行迭代检测并填充其中的空隙区域,得到最大化的泊松圆盘采样点集;步骤S4、利用最大化的泊松采样点集,对于细分网格S中的三角形进行离散聚类,提取得到新的三角网格;步骤S5、对于得到的新的三角网格进行优化,使得优化网格中每个三角形的角度和每个顶点的度数均满足用户指定的要求。下面对上述每个步骤进行更加详细的说明。步骤S1、对输入的三角网格进行细分处理,得到细分网格S;本专利技术的输入是一个三角网格,首先由用户指定最小采样半径rmin,然后对输入的三角网格进行不断的细分,使得细分后的网格中每条边的长度不大于最小采样半径,这样就可以保证细分后的网格S中的每个三角形至多只包含一个采样点。具体的细分过程为:首先,构建一个优先队列,将输入三角网格的所有边放入到优先队列中,长度越长的边优先级越高,每次从优先队列中弹出一条边,如果该边的长度大于最小采样半径,则在该边的中点处添加一个新的顶点v,并分别连接v与该条边相对的两个输入顶点,从而形成两条新的边,并将他们加入到优先队列中。该过程不断进行下去直到所有边的长度均小于等于最小采样半径,得到细分网格S。图2是一个输入三角形ABC细分过程的示意图,本专利技术首先检测到边AB大于rmin,那么在AB的中点添加点D并连接CD,从而将三角形ABC细分为两个三角形ADC和DBC。接下来依次处理边BC、AC和CD,最终将ABC细分为四个更小的三角形。最后,细分网格记为S={V,M},其中,V是顶点集合r是顶点的个数,M是三角形集合tk代表一个细分三角形,m是细分三角形的个数,每个细分三角形都使用一个数组来存储完全覆盖该三角形或者与该三角形相交的采样点。图3A是根据本专利技术一实施例输入的三角网格,图3B是对图3A所示的输入三角网格进行细分之后得到的网格。然后,对于细分网格S上的每一个点pi,定义该点处采样球的球心为pi,半径为ri=kρ(pi),其中k是一个常数,ρ(x)为定义在该细分网格上的密度函数。当ρ(x)是常数时,得到的采样为均匀采样,当ρ(x)是一个变化的量时(如在本专利技术一实施例中,采用每个点处的曲率作为密度函数),得到的采样称为非均匀采样。步骤S2、利用局部冲突检测方法,在细分网格S上进行初始泊松采样;该步骤使用投镖法在细分网格S上进行初始采样,具体地,所述步骤S2进一步包括以下步骤:步骤S21,在细分网格S上随机产生一个采样点p;所述步骤S21具体为:首先,在细分网格S上随机选择一个三角形ti,使得选择该三角形ti的概率与该三角形的加权面积其中,是三角形ti的重心点,|ti|是三角形的面积)成正比;然后,在选择的三角形内部随机产生本文档来自技高网
...
基于最大化泊松圆盘采样的重新网格化方法

【技术保护点】
一种基于最大化泊松圆盘采样的重新网格化方法,其特征在于,该方法包括以下步骤:步骤S1、对输入的三角网格进行细分处理,得到细分网格S;步骤S2、利用局部冲突检测方法在细分网格S上进行初始泊松采样;步骤S3、对于细分网格S进行迭代检测并填充其中的空隙区域,得到最大化的泊松圆盘采样点集;步骤S4、利用最大化的泊松采样点集,对于细分网格S中的三角形进行离散聚类,提取得到新的三角网格;步骤S5、对于得到的新的三角网格进行角度和顶点度数优化。

【技术特征摘要】
1.一种基于最大化泊松圆盘采样的重新网格化方法,其特征在于,该方法包括以下步骤:步骤S1、对输入的三角网格进行细分处理,得到细分网格S;步骤S2、利用局部冲突检测方法在细分网格S上进行初始泊松采样;步骤S3、对于细分网格S进行迭代检测并填充其中的空隙区域,得到最大化泊松圆盘采样点集;步骤S4、利用最大化泊松圆盘采样点集,对于细分网格S中的三角形进行离散聚类,提取得到新的三角网格;步骤S5、对于得到的新的三角网格进行角度和顶点度数优化;所述步骤S1中,首先指定最小采样半径rmin,然后对输入的三角网格进行不断的细分,使得细分后的网格中每条边的长度不大于最小采样半径,得到细分网格S;然后对于细分网格S上的每一个点pi,定义该点处采样球的球心为pi,半径为ri=kρ(pi),其中,k是一个常数,ρ(x)为定义在该细分网格上的密度函数。2.根据权利要求1所述的方法,其特征在于,所述步骤S2进一步包括以下步骤:步骤S21,在细分网格S上随机产生一个采样点p;步骤S22,利用局部冲突检测方法检测该采样点p是否被接受,如果采样点P没有被接受,则表示采样失败;步骤S23,重复进行步骤S21-S22的采样过程,直到连续采样失败的次数大于某一阈值λ1或者总的采样次数大于另一阈值λ2。3.根据权利要求2所述的方法,其特征在于,所述步骤S21包括:首先,在细分网格S上随机选择一个三角形ti,使得选择该三角形ti的概率与该三角形ti的加权面积成正比,其中,三角形ti的加权面积表示为:是三角形ti的重心点,ρ(x)为定义在该细分网格上的密度函数,|ti|是三角形的面积;然后,在选择的三角形内部随机产生一个采样点p。4.根据权利要求2所述的方法,其特征在于,所述步骤S22中,如果采样点p对应的采样球不包含其他任何采样点,同时采样点p不被其他任何采样点对应的采样球包含,那么采样点p就被接受并将其加入到采样点集中;否则采样点p被拒绝。5.根据权利要求2所述的方法,其特征在于,所述局部冲突检测方法包括:首先,检查采样点p所在的三角形是否已被其他采样点完全覆盖,若是,则说明检测到冲突,该采样点被拒绝,否则将该三角形放入到一个优先队列中;然后,从优先队列中弹出首元素三角形,检查所有与该三角形相交的采样球是否与采样点p冲突,如果没有冲突,则检查该三角形的相邻三角形是否与采样点p对应的...

【专利技术属性】
技术研发人员:严冬明郭建伟张晓鹏
申请(专利权)人:中国科学院自动化研究所
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1