一种快速流体图像表面追踪方法技术

技术编号:14405594 阅读:34 留言:0更新日期:2017-01-11 17:14
本发明专利技术涉及一种快速流体图像表面追踪方法,包括以下步骤:S1,流体图像三角形网格化,找到所有与其他三角形存在相交的三角形;S2,将存在相交的三角形面积收缩,使其与其他三角形不相交;S3,对步骤S1得到的不存在相交的三角形分别进行位置判断,去除位于流体内部的三角形;S4,去除多余三角形,使每个顶点仅与零条或两条边相邻,得到具有空洞的流体表面三角形网格;S5,对空洞进行填充,得到完整的流体表面三角形网格。与现有技术相比,本发明专利技术具有速度快、鲁棒性强等优点。

【技术实现步骤摘要】

本专利技术涉及一种图像处理方法,尤其是涉及一种快速流体图像表面追踪方法
技术介绍
三维显示中三维物体通常是通过绘制物体封闭表面来达到绘制三维物体的目的,因此快速的追踪到三维物体的表面,对于三维显示具有重要意义。由于液体的表面形状复杂,且其拓扑变化频繁,追踪液体表面是一个比较有挑战性的问题。将液体表面表示成栅格图中的一系列标量函数是一种非常可取的一种方法,因为通过这种方法可以自动应对拓扑的结构变化,但是栅格表示的分辨率由这一系列标量函数所能表示的最小的特征尺寸所限制,要想模拟大范围空间中的小颗粒就需要非常庞大的栅格网。最近出现了基于三角网格来追踪液体表面的方法,以此来克服栅格网表示的缺点。通过三角网格来表示物体表面在理论上没有特征尺寸的限制。但是通过三角网来表示液体表面时,由于液体融合与分裂等事件而导致的拓扑改变将必须得到有效的处理(主要是重叠部分的去处与修改)。多数已有的基于三角网格的表面追踪技术同时使用着栅格网,通过使用栅格网来修正重叠部分。例如Wojtanetal.在2009年使用匹配立方体其后在2010年使用匹配凸壳的方式来处理拓扑变化带来的重叠问题。这些处理方法都限制了拓扑改变时所能处理的最小尺寸,同时将栅格网转化为三角网表示也是一个比较麻烦的过程,且其精度很难保证,其所导致的非流体网格还会导致后续处理进程中的困难。
技术实现思路
本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种快速去除拓扑噪音、确定流体表面的快速流体图像表面追踪方法,是一种完全用三角网格来表示物体表面时,对物体(主要是液体)融合与分裂等事件引发的三角网格拓扑变化的处理方法。本专利技术的目的可以通过以下技术方案来实现:一种快速流体图像表面追踪方法,包括以下步骤:S1,流体图像三角形网格化,找到所有与其他三角形存在相交的三角形;S2,将存在相交的三角形面积收缩,使其与其他三角形不相交;S3,对步骤S1得到的不存在相交的三角形分别进行位置判断,去除位于流体内部的三角形;S4,去除多余三角形,使每个顶点仅与零条或两条边相邻,得到具有空洞的流体表面三角形网格;S5,对空洞进行填充,得到完整的流体表面三角形网格。所述的步骤S2中,三角形面积收缩的方法为:根据三角形原顶点v1、v2、v3确定新坐标,具体如下式:v1←αv1+(1-α)v1+v22]]>v2←αv2+(1-α)v2+v32]]>v3←αv3+(1-α)v3+v12]]>其中,0<α<1。所述的步骤S2中,α=0.5。所述的步骤S5中,采用动态规划的方法进行空洞填充。所述的步骤S1中,若两个三角形共享一个顶点则为不相交,若两个三角形共享两个顶点,则判断两个三角形法向量夹角,小于阀值判断为相交,大于阀值为不相交。与现有技术相比,本专利技术通过相交三角形收缩、删除多余三角形和空洞填充,快速追踪流体表面,具有速度快、鲁棒性高的优点。附图说明图1为本专利技术的流程图。具体实施方式下面结合附图和具体实施例对本专利技术进行详细说明。本实施例以本专利技术技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本专利技术的保护范围不限于下述的实施例。实施例如图1所示,本实施例快速流体图像表面追踪方法的主要目标是给定一个没有边界的但是存在重叠的流体,由于融合和分裂区域产生重叠交叉的三角网格,将其处理成具有多样性但是没有重叠部分的三角网格。本方法分为以下六步:(1)找到相交的三角形。(2)拓扑噪音去除。(3)删除多余的三角形。(4)确保网格的多样性。(5)空洞匹配。(6)空洞填充。第一步:寻找相交的三角形。在这一步,首先对每对三角形判断是否共享顶点,如果共享一个顶点则为不相交,如果有两个点相交判断其相交角度,小于阀值判断为相交,大于阀值为不相交。对于不共享任何点的两个三角形,采用Moller算法来判断在三维空间中的两个三角形是否相交。对于这一步的结果考虑到后面的步骤需求,需要将交叉的三角形对储存在一个链表中。由于后面的步骤需要检查三角形是否是相交三角形,对于每个三角形都检查链表代价比较大,因此对于每个三角形设置状态记录,当在判断一对三角形是否相交时即将其标记,这样在后面判断是否属于相交三角形时可以直接判断,而省下了查找相交三角形对链表的时间。第二步:移除拓扑噪音。对于每一个相交的三角形,将其所有点按照下列公式进行变换:v1←αv1+(1-α)v1+v22]]>v2←αv2+(1-α)v2+v32]]>v3←αv3+(1-α)v3+v12]]>这一步相当于将每一个三角形内缩了,可以将那些处于相交边缘的三角形通过较小幅度的变化来变成非相交的三角形,尤其是对于有非常多的小颗粒的数据,可以将相交小颗粒变为非相交,进而减少后续判断处理的数据量。第三步:删除多余的三角形。在这一步需要判断出去相交三角形以外其余三角形是否在某一个物体内部,对于这些三角形连通相交的三角形都需要删除。由于所有相交三角形都已经找出,其余三角形的所有顶点要么全部在物体内部或全部在外部,也就变成了判断三角形上某一顶点是否在物体内部,对于这个问题有多种方法可选,本实施例采用的是Muller于2009年提出的一种射线投影的方法,具体过程可概括为对于一个点从这个点引出一条射线(射线方向需要指向其面垂直向外的方向),对于这条射线所相交的每一个三角形(要包括第一步中判断为相交三角形的三角形,所以第一步中的相交三角形都不能直接删除掉,需要等到这一步中判断完所有体内三角形后才可以一起删除掉,在实现的时候,可采用将三角形标记而不是直接删除掉的方式来处理的),将这个三角形的向外法向量方向与射线方向相乘,大于零加一计数小于零减一计数。如果最后计数为零,则为外部点,不为零则为内部点(至关的几何理解,一个外部点引出的射线经过任何一个体都会从一面穿入在从一个面穿出,所过两个面的上述乘积结果分别为负、正,因此外部点最终计数为零,而内部点不为零)。最后删除所有相交和在体内的三角形。对于每一个三角形都做如上判断代价十分巨大,但由于已经判断出了相交三角形,如果这一判断准确的话,去除这些三角形后相连通的三角形要么全部在内部,要么全部在外部,理论上只要判断其中一个三角形即可。在实际实现中,由于数值计算的精度问题(其实使用射线法判断本身在理论上就会有误判,比如射线经过两个三角形边界,这时不管是判断为相交还是不相交都会使最后结果错误),单个的判断并不准确,对每一联通区域,任意选择几个来进行投票判断。对于这一步因为需要得到各个三角形向体外的法向量方向,三角形获取法向量是可以实现的。第四步:确保多样性。一条边当且仅当其有不超过两个相邻三角形时具有有多样性,一个顶点当且仅当其相邻的三角形只通过边相连时具有多样性。而一个三角网格当且仅当其所有的边和顶点都具有多样性时才具有多样性。直接按照定义判断是否具有多样性代价十分巨大,但是由于当前三角网格是从一个具有多样性的三角网格通过删除部分三角形而形成的,所以只需要保证每本文档来自技高网...
一种快速流体图像表面追踪方法

【技术保护点】
一种快速流体图像表面追踪方法,其特征在于,包括以下步骤:S1,流体图像三角形网格化,找到所有与其他三角形存在相交的三角形;S2,将存在相交的三角形面积收缩,使其与其他三角形不相交;S3,对步骤S1得到的不存在相交的三角形分别进行位置判断,去除位于流体内部的三角形;S4,去除多余三角形,使每个顶点仅与零条或两条边相邻,得到具有空洞的流体表面三角形网格;S5,对空洞进行填充,得到完整的流体表面三角形网格。

【技术特征摘要】
1.一种快速流体图像表面追踪方法,其特征在于,包括以下步骤:S1,流体图像三角形网格化,找到所有与其他三角形存在相交的三角形;S2,将存在相交的三角形面积收缩,使其与其他三角形不相交;S3,对步骤S1得到的不存在相交的三角形分别进行位置判断,去除位于流体内部的三角形;S4,去除多余三角形,使每个顶点仅与零条或两条边相邻,得到具有空洞的流体表面三角形网格;S5,对空洞进行填充,得到完整的流体表面三角形网格。2.根据权利要求1所述的一种快速流体图像表面追踪方法,其特征在于,所述的步骤S2中,三角形面积收缩的方法为:根据三角形原顶点v1、v2、v3确定新坐标,具体如下式:v1←αv1+(1-α)v...

【专利技术属性】
技术研发人员:盛斌刘涛
申请(专利权)人:上海交通大学
类型:发明
国别省市:上海;31

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

1