基于流线生长法和变态粒子法的多层纹理生成方法技术

技术编号:20005210 阅读:25 留言:0更新日期:2019-01-05 17:47
本发明专利技术涉及一种基于流线生长法和变态粒子法的多层纹理生成方法,通过网格单元填充法对目标纹理中的每帧中每个像素进行点定位和插值预处理,获取每个像素的点定位和插值结果,生成第一帧中的所有种子粒子;按照如下方法循环处理每一帧:通过采用流线生长法生成每一帧的静态流线纹理,通过采用变态粒子法生成每一帧的动态迹线纹理,将两层纹理合并为一层输出结果纹理;按照时间顺序依次绘制每一帧的输出结果纹理,生成动态纹理动画。本发明专利技术提出的基于流线生长法和变态粒子法的多层纹理生成方法,具有更强的时变矢量场表达能力、更快的速度和更好的适应性。

Multilayer Texture Generation Method Based on Streamline Growth Method and Abnormal Particle Method

The present invention relates to a multi-layer texture generation method based on streamline growth method and abnormal particle method. Each pixel in each frame of target texture is pre-processed by grid cell filling method to obtain the result of point location and interpolation of each pixel and generate all seed particles in the first frame. Each frame is processed in a circular manner by streamline generation. The static streamline texture of each frame is generated by the long method, and the dynamic trace texture of each frame is generated by the abnormal particle method. The two layers of texture are merged into one layer of output texture. The output texture of each frame is drawn sequentially in time order to generate dynamic texture animation. The multi-layer texture generation method based on streamline growth method and abnormal particle method has stronger time-varying vector field expression ability, faster speed and better adaptability.

【技术实现步骤摘要】
基于流线生长法和变态粒子法的多层纹理生成方法
本专利技术涉及计算机图形学中科学计算可视化领域,特别是一种基于流线生长法和变态粒子法的多层纹理生成方法。
技术介绍
所谓“时变矢量场”,是指随时间变化的矢量场。例如某个机械零件局部受热后一段时间内零件内部的温度梯度场,或者风洞实验中飞行器表面的空气流场,都是典型的时变矢量场。“纹理”(Texture)是科学计算可视化学科中一种常用的矢量场可视化技术,其基本功能是对科学研究中的大规模矢量场数据(例如流体的速度场,机械设备受热后的温度梯度场等)进行描述,将大量抽象数据转化为直观的图像表达出来。纹理方法最大的优点是能提供像素级的矢量场细节描述能力,更利于科研人员分析、理解、挖掘数据本质。当前主流的时变矢量场纹理生成算法主要分为两大类:基于“线积分卷积”(LIC)技术的,和基于“图像平流”(IBFV)技术的。Cabral(BRIANC.,LEITHL..Imagingvectorfieldsusinglineintegralconvolution[C]//ProceedingsofACMSIGGRAPH‘93.NewYork,USA:ACMPress,1993:263-270.)等人最先提出了LIC算法。LIC技术的基本思路是利用随机白噪声覆盖整个矢量场形成初始图形。然后利用卷积运算沿着流线方向,在相邻像素之间建立起空间相关性,而在垂直流线方向由于采用随机白噪声,而不存在任何空间相关性,这种差异可以表现出流场中的方向感。Forssell(ForssellL.K.,CohenS.D..Usinglineintegralconvolutionforflowvisualization:curvilineargrids,variable-speedanimation,andunsteadyflows[J].IEEETransactionsonVisualizationandComputerGraphics,1995,1(2):133-141.)等人提出沿着迹线进行卷积以产生纹理,每次积分同时在空间和时间上前进一步,这种迹线纹理能够表达时变矢量场在时间和空间上的连续变化。SHEN(SHENHanwei,DavidL.K..ANewLineIntegralConvolutionAlgorithmforVisualizingTime-VaryingFlowFields[J].IEEETransactionsonVisualizationandComputerGraphics,1998,4(2):98-108.)等人提出了“时间精准的值散射方法”和“连续前馈过程”,提高了迹线纹理动画的生成效率。LIU(LIUZhanping,RobertJ..Acceleratedunsteadyflowlineintegralconvolution[J].IEEETransactionsonVisualizationandComputerGraphics,2005,11(2):113-125.)等人提出了UFLIC算法,进一步提高了效率。以上算法基本思路都是沿着迹线卷积,这样生成的纹理动画天然具有两个缺陷。首先,在每一帧静态纹理上,不同像素点之间不存在任何空间相关性,不能表达该时刻的矢量场静态状态。其次,迹线纹理将一条迹线上下相邻的一段时间内途经的像素信息进行卷积,这种卷积会建立时间相关性,但是同时带来混淆。当矢量场变化剧烈时,这种混淆会带来很大的视觉混乱。Andreas(AndreasS..Dynamiclineintegralconvolutionforvisualizingstreamlineevolution[J].IEEETransactionsonVisualizationandComputerGraphics,2003,9(3):273-282.)提出了DLIC算法,对每个瞬间矢量场建立流线静态LIC纹理,并利用“第二动画矢量场”来描述流线纹理的变化,这种思路在描述电磁场方面取得了成功,但是由于电磁场具有“跳变”等特性,从而使得该方法不具一般性,不能描述其他类型的时变矢量场。Jarke(JarkeJ.,vanW..ImageBasedFlowVisualization[C]//ProceedingsofACMSIGGRAPH2002.NewYork,USA:ACMPress,2002:745-754.)等人提出了IBFV算法,结果纹理动画中每一帧都由两部分混合组成,其一是前一帧图像平流后的纹理,其二是随机白噪声。IBFV法利用“图像平流”代替传统LIC的质点平流,提高了时变矢量场纹理动画的生成效率。后续研究中Jarke(JarkeJ.,vanW..ImageBasedFlowVisualizationforCurvedSurfaces[C]//ProceedingsofIEEEVIS2003.Seattle,WA,USA:IEEEPress,2003:123-130.)等人又将IBFV算法应用到曲面网格中。文献(孙长会,范茵,李骞,等.增强型IBFV2维矢量场可视化算法[J].中国图象图形学报,2011,16(6):1064-1069.)中提出不再混合白噪声,而是混合前一帧图像经过方波滤波后的结果纹理。文献(陈世龙,李思昆,王怀辉,等.飞行器表面矢量场数据动态纹理可视化方法[J].计算机工程与应用,2013,49(19):123-126.)中提出混合当前帧的流线纹理。这两种方法能够提高结果对比度,也在一定程度上描述了矢量场静态特征,但是都会加大计算负担。基于IBFV算法的纹理动画生成算法比LIC算法要快,但是同样有两个缺点:不能描述瞬间矢量场静态特征,容易产生视觉混乱。
技术实现思路
本专利技术的目的在于提供一种基于流线生长法和变态粒子法的多层纹理生成方法,以克服现有技术中存在的缺陷。为实现上述目的,本专利技术的技术方案是:一种基于流线生长法和变态粒子法的多层纹理生成方法,通过网格单元填充法对目标纹理中的每帧中每个像素进行点定位和插值预处理,获取每个像素的点定位和插值结果,生成第一帧中的所有种子粒子;按照如下方法循环处理每一帧:通过采用流线生长法生成每一帧的静态流线纹理,通过采用变态粒子法生成每一帧的动态迹线纹理,将两层纹理合并为一层输出结果纹理;按照时间顺序依次绘制每一帧的输出结果纹理,生成动态纹理动画。在本专利技术一实施例中,在通过所述网格单元填充法进行预处理过程中,还包括如下步骤:步骤S11:所述像素为纹理像素,循环处理每个网格单元,对位于其中的所有纹理像素,根据纹理像素边长和当前网格单元顶点坐标找到左上角第一个纹理像素位置,对其进行点定位;根据扫描线顺序,按照从左到右、从上到下的顺序,依次找到每个属于当前网格单元的纹理像素位置,并进行点定位;步骤S12:循环处理每一帧,根据每个纹理像素的点定位信息以及当前帧中该纹理像素所在网格单元的每个网格顶点处的物理场值,对当前帧内的每个纹理像素进行插值。在本专利技术一实施例中,在所述步骤S12中,所述网格单元为三角形网格,采用三角形面积坐标法按照如下方式进行插值:其中,A、B、C是当前三角形网格单元的三个顶点,VA、VB、VC分别为对应的物理场本文档来自技高网
...

【技术保护点】
1.一种基于流线生长法和变态粒子法的多层纹理生成方法,其特征在于,通过网格单元填充法对目标纹理中的每帧中每个像素进行点定位和插值预处理,获取每个像素的点定位和插值结果,生成第一帧中的所有种子粒子;按照如下方法循环处理每一帧:通过采用流线生长法生成每一帧的静态流线纹理,通过采用变态粒子法生成每一帧的动态迹线纹理,将两层纹理合并为一层输出结果纹理;按照时间顺序依次绘制每一帧的输出结果纹理,生成动态纹理动画。

【技术特征摘要】
1.一种基于流线生长法和变态粒子法的多层纹理生成方法,其特征在于,通过网格单元填充法对目标纹理中的每帧中每个像素进行点定位和插值预处理,获取每个像素的点定位和插值结果,生成第一帧中的所有种子粒子;按照如下方法循环处理每一帧:通过采用流线生长法生成每一帧的静态流线纹理,通过采用变态粒子法生成每一帧的动态迹线纹理,将两层纹理合并为一层输出结果纹理;按照时间顺序依次绘制每一帧的输出结果纹理,生成动态纹理动画。2.根据权利要求2所述的基于流线生长法和变态粒子法的多层纹理生成方法,其特征在于,在通过所述网格单元填充法进行预处理过程中,还包括如下步骤:步骤S11:所述像素为纹理像素,循环处理每个网格单元,对位于其中的所有纹理像素,根据纹理像素边长和当前网格单元顶点坐标找到左上角第一个纹理像素位置,对其进行点定位;根据扫描线顺序,按照从左到右、从上到下的顺序,依次找到每个属于当前网格单元的纹理像素位置,并进行点定位;步骤S12:循环处理每一帧,根据每个纹理像素的点定位信息以及当前帧中该纹理像素所在网格单元的每个网格顶点处的物理场值,对当前帧内的每个纹理像素进行插值。3.根据权利要求2所述的基于流线生长法和变态粒子法的多层纹理生成方法,其特征在于,在所述步骤S12中,所述网格单元为三角形网格,采用三角形面积坐标法按照如下方式进行插值:其中,A、B、C是当前三角形网格单元的三个顶点,VA、VB、VC分别为对应的物理场值;P是待定位点;SABC、SPBC、SAPC、SABP分别为四个三角形的面积值;VP是点P插值后得到的矢量场值。4.根据权利要求2所述的基于流线生长法和变态粒子法的多层纹理生成方法,其特征在于,在所述步骤S12中,通过一个三维数组保存插值结果;所述三维数组的第一维长度为帧数,第二维长度为矢量场x轴方向剖分的纹理像素数量,第三维长度为矢量场y轴方向剖分的纹理像素数量;所述三维数组中的每个元素存储纹理像素的位置信息、矢量场值信息和所在的网格单元编号信息。5.根据权利要求4所述的基于流线生长法和变态粒子法的多层纹理生成方法,其特征在于,实现增加一个四叉树;为所述三维数组中每个元素设置一个表示当前元素是否是四叉树的叶子节点的标志位;如果是,则当前元素已经保存了插值信息;如果否,则当前元素包含一个指针,指向他的四个孩子节点。6.根据权利要求2...

【专利技术属性】
技术研发人员:杜小甫
申请(专利权)人:厦门大学嘉庚学院
类型:发明
国别省市:福建,35

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

1