为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 基于视频的流水和火焰特效合成

基于视频的流水和火焰特效合成

2011-10-14 46页 pdf 2MB 24阅读

用户头像

is_443147

暂无简介

举报
基于视频的流水和火焰特效合成 浙江大学 硕士学位论文 基于视频的流水和火焰特效合成 姓名:孟伟臻 申请学位级别:硕士 专业:计算机应用 指导教师:于金辉 20060501 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 摘 要 自然景观的模拟一直是计算机图形学的一个重要研究内容。现有的模拟方法 主要是分形几何技术和粒子系统。本文根据最近几年才迅速发展的视频纹理合成 编辑技术,提出一个基于视频的流水和火焰特效模拟合成方法。 视频纹理是最近几年才提出的一种新型媒体,它介于图像和视频之间,具有 图像真实的优点,又捕抓了视频的动...
基于视频的流水和火焰特效合成
浙江大学 硕士学位 基于视频的流水和火焰特效合成 姓名:孟伟臻 申请学位级别:硕士 专业:计算机应用 指导教师:于金辉 20060501 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 摘 要 自然景观的模拟一直是计算机图形学的一个重要研究内容。现有的模拟方法 主要是分形几何技术和粒子系统。本文根据最近几年才迅速发展的视频纹理合成 编辑技术,提出一个基于视频的流水和火焰特效模拟合成方法。 视频纹理是最近几年才提出的一种新型媒体,它介于图像和视频之间,具有 图像真实的优点,又捕抓了视频的动态性。它以样本视频为素材,在对其分析的 基础上构造出连续运动的场景。视频合成最基本要求是保持动态连贯性,利用某 种图像相似度的度量方法来查找视频序列中的周期性,回跳性的循环播放来合成 具有任意长度的视频。 本文研究视频纹理合成流水和火焰的方法。在基于视频的流水合成研 1.3。 张军英、敖磊、贾江涛、高琳,求解TSP问题的改进蚁群算 法,西安硼i681;685= 臣霆。出誊拦,世&粥i蛆转鲫骁鞋薹基于幅——匿秘蠹琵辩 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 Abstract ThenaturallandscapesimulationiSanimportantresearchareaof computergraphics.Existingsimulationtechniquesmainlyarefractal geometrytechnologyandparticlesystem.BasedonvideotexturesynthesiS technique,weproposeanewapproachforthesynthesiSofflowingwater andfirevideo. Videotextureisanewmedianintroducedinrecentyears,whichis somethinginbetweenthephotoandvideothatcapturesdynamicsofthe videoandlooksrealistic.Tosynthesizeavideowithvideotexturethe temporalcontinuitymustbemaintained.Wecansynthesizeacontinuous streamofimagesbyrepeatingloopsdetectedintheoriginalvideo. Weinvestigatethemethodsofsynthesizingandtheflowingwaterand fire.Inthecaseofsynthesizingandeditingflowingwater,wefirstrun thevideostabilizationandloopdetection,wethenextendthevideo texturesusingaMarkovRandomFieldtofittherequiredlengthofthe flowingwaterinthescene,wecanfurthereditthevideotexturessuch aschangingthestonesizesorevenremovingstonesfromthevideotextures Theflowcontinuityispreservedwellintheresultantwateranimations. Intheprocessofsynthesizingfirevideo,weadoptdifferentimage segmentationmethodologiesfordifferentfireimages,andtheneditthe firetexturestofitscenes,Finallywebuildsimplemodeistosimulate thewindeffectandfirespreadingprocess,asdemonstratedbyexamples inthethesiS. KeyWords:videotexture,textureandvideosynthesis,texturesynthesis, imageandvideoprocessing,flowingwatersimulation,firesimulation, firespreading 4 浙江大学硕士学位论文 基于视频的流水和火焰特效台成 1.1引言 第一章 绪论 随着图形学的高速发展,计算机成为影视制作特殊场景的主要工具。自然景 物的模拟一直是计算机图形学具有挑战性的研究方向之一。自然景物的形状往往 是不规则的,有些是随机变化的,运用传统的几何学理论很难比较真实地模拟他 们。许多研究人员提出了分形几何技术和基于物理的粒子系统来模拟自然景物。 分形几何技术(FractalGeometry)研究对象的最显著特征是描述对象的自 相似性,也即任意取研究对象的一部分,经放大后,他们都具有与整体非常相似 的大致形态。它用递归算法使复杂的景物可用简单的规则来生成,可以产生任意 水平的细节,图形越放大就越清楚地显示出来。分形技术在模拟树木,山川,海 岸线等景物时能取得很好的效果,在生成真实感的地景地形方面已经有了比较成 功的应用。 粒子系统(ParticleSystem)是一种很有影响的模拟不规则物体的方法, 能够成功地模拟由不规则模糊物体组成的景物。粒子系统采用了一套完全不同于 造型、绘制系统的方法来构造、绘制景物。景物被定义为由成千上万不规则的、 随机分布的粒子组成,而每个粒子均有一定的生命周期,它们不断改变形状、不 断运动,将这些简单形状的微小粒子作为基本元素聚集起来,形成一个不规则的 模糊物体,从而构成一个封闭的系统——粒子系统。 粒子系统并不是一个简单的静态系统,随着时间的推移,系统中已有粒子不 仅不断改变形状、不断运动,而且不断有新的粒子加入。为模拟生长和死亡过程, 每个粒子均被赋予~定的生命周期,它将经历出生、成长、衰老和死亡的过程。 同时,为使粒子系统所示的景物具有良好的随机性,与粒子有关的每一个参数 均将受到一个随机过程的控制。粒子系统的上述造型方式使得用它来模拟动态自 然景物(火焰、云雾、流水等)成为可能。生成粒子系统某瞬间画面的基本步骤 是: 1.生成新的粒子并加入系统中; 2.赋予每一新粒子以一定的属性; 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 3.删除那些已经超过生命周期的粒子; 4.根据粒子的动态属性对粒子进行移动和变换; 5.绘制并显示由有生命的粒子组成的图形。 上述每个操作都是过程计算模型,因而它可与任何描述物体运动和特征的模 型结合起来,采用一些非常简化的随机过程来控制粒子在它所在系统中的形状、 特征及运动。 粒子系统充分体现了不规则模糊物体的动态性和随机性。但是其计算量较 大,代价很高,而且一个粒子系统通常会局限在描述一种自然现象中,比如烟雾, 流水,火焰等等。 最近几年,人们开始研究用视频纹理来模拟流体景观,合成新的视频序列。 本文的研究内容就是基于视频的特效合成,就是一种应用视频重构真实场景的方 法。它以样本视频为素材,在对素材视频进行分析的基础上,构造出永恒、连续 的虚拟场景。 1.2视频纹理 视频纹理(VideoTexture)是2000年的国际图形学大会(SIGORAPH)上提出 的一种新型媒体,介于图像和视频之间,它具有图像真实的优点,同时也捕抓了 视频的动态性。 1.2.1视频纹理的概念 视频纹理是由对一段有限长度的视频样本进行处理,所合成的表现相同动态 内容的具有任意长度的视频。 视频纹理具有重现特定运动现象的特征。由某一段视频合成的视频纹理,它 所表现的内容和这段视频是完全相同的,不同的是视频纹理具有任意的播放长 度,是相对于合成于它的视频样本的任意长度的延长。视频纹理只表现镜头固定 的特定的动态现象或景观。比如火焰、海浪、白云、瀑布等。纹理是图像分析中 常用的概念,视频纹理和通常所说的纹理在概念上具有相似之处。纹理是由许多 相互接近的、互相编织的元素构成,并通常富有周期性。这种周期性表现在二维 图像平面上,而视频纹理的纹理特征则体现在时间轴上。视频样本中的某一帧在 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 视频纹理的播放过程中不断的重复,也表现出一定的周期性。 视频纹理合成和纹理合成也有十分相似的特征,通常可以把视频纹理合成看 作纹理合成的一种扩展。纹理合成(texturesynthesis)是计算机图形学和计算 机视觉中相当活跃的研究领域,许多学者对此作了大量的研究。纹理合成可以描 述如下[1]:给定一个纹理样本,合成一幅新纹理,由观察者看来,它和样本纹理 一样由同一个动态过程产生。也就是说,从动态系统的角度,合成的纹理和样本 纹理都是由同一个系统输出的,只是输出的尺寸不同,特征是完全一样的。视频 纹理和它的样本视频也具有同样的特征,它们表现的内容基本相同,比如对于某 个瀑布视频纹理和它的样本视频,它们表现的都是同一个瀑布的景观,只是时间 长度不同。样本视频具有固定的长度,而视频纹理的长度则根据应用的需求决定, 只要视频纹理的播放程序没有中断,它就可以不间断的播放下去。 所以说视频纹理的合成过程就是对原视频片断进行分析,继而回跳性重排序 播放过程。它的关键技术就在于通过对有限长度的视频片断的分析,找到视频中 自然的切换点,并采用图像间的融合和过渡技术来减少视频帧跳变所引起的视频 播放的不连续性。 1.2.2视频纹理合成方法 (1)基于跳变的视频纹理合成方法 Schodl在论文[2]中提出了视频纹理这种新型媒体,并给出了一种基于跳变 的合成方法:给定一段样本视频,假设视频中存在相似的两帧图像:第j帧和第J 帧(少力,因为从第神贞到第』-q帧的切换是最自然的,所以从第J帧到第j“帧的 切换也是可行的,即不会引起视觉上的跳跃,我们称J为跳变点。当视频播放到 第撒时,它既可以继续向前播放到第』十砷贞,也可以切换到第j咖帧。只要视频 中存在足够的相似帧,在视频的播放过程中,就可以不断的从跳变点处往回切换, 合成任意长度的视频。视频纹理方法以£旗为图像相似性尺度,计算视频中任意 两帧的差异:岛=|IIi-Ii吣并通过公式P“ocexp(一Dm.,/o)将帧1'9差异岛转化 为从第神贞到第撒的跳变可行性。在合成动态纹理时,当播放到第J帧,就找出 P。,(j≠i+1)的最大值以,然后从厨盯订中随机选择一帧作为要播放的下一帧。在 基于跳变的合成方法中,最关键的一点就是图像相似性评估问题。找到合理的图 9 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 像相似性尺度,避免明显的跳变,成为视频纹理合成的最基本的问题。 (2)基于渐变的视频纹理合成方法 基于跳变的视频纹理合成方法,是基于图像间相似性进行的。但有时某些场 景的视频纹理合成效果很差,不同帧之间的突然切换带来视觉上明显的不连贯 性。基于渐变的视频纹理合成方法,脱离了基于跳变合成方法的框架,对于可逆 序视频纹理的合成非常有效[26,28]。当某一段视频无论是顺序播放还是逆序播 放都能正确的反映物体的运动特征时,这样的视频就称为可逆序的。可逆序视频 在现实世界中广泛存在,如周期运动、脸部运动、风中的稻穗的视频等。通过利 用视频的可逆性,可以不断的重复视频中物体运动的特性以达到视频纹理合成的 目的:自然的任意长度的播放效果。视频中可以发生逆序播放的位置称为渐变点, 当视频播放到渐变点时,按一随机概率,选择顺序播放下一帧或者逆序播放前一 帧。如此反复,合成任意长度的视频。找到合适的渐变点成为基于渐变的视频纹 理合成的最关键问题。 (a) (b) 图1.1 基于跳变(a)和渐变(b)的视频纹理合成方法 基于渐变的方法增强了视频纹理切换的丰富性,减少了基于跳变的视频纹理 本身所带来的视觉的不连续性,但它只适用于可逆序播放的视频,如:风吹的麦 浪,不断摇动的树木等。而瀑布,流水,火焰等视频就不具有这样的特征,瀑布 有单一的向下的运动方向,而火焰的运动方向是向上的,所以在逆序播放的时候, 视频中的物体运动方向完全与实际相反,对这一类的视频纹理一般只能使用基于 跳变的办法来合成。 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 2.1引言 第二章 基于视频纹理的流水合成 在所有自然景物中,最有意思也是最困难的当属水的模拟。水自身的复杂性 远远超过大部分事物,它的模拟一直是图形学中具挑战性的课题之一。 在过去20多年期间,研究人员从很多角度提出了模拟水特效的方法。Turner whitted使用RayTracing技术模拟了水池中的涟漪效果,使用BumplIlapping技 术加强水面的真实感效果[4]。NorishibeChiba等人提出了模拟流水行为的基于 拟物理模型的模拟方法,该模型核心是让水粒子根据牛顿定律,在三种假设力的 作用下运动达到模拟流水的目的[5]。徐迎庆等从水力学方程组出发,提出了基 于物理模型的流水造型方法。该算法从水力学方程组出发直接得到流水形态,通 过调整方程的初始条件可以较为真实模拟流水的不同状态[6]。Iglesias在文献 [7]中详细了80到90年代真实感水效果建模和渲染技术。这些方法总的来说, 可分为两大类:视觉真实感技术(visuallyconvincingtechniques)和物理精确 建模技术(phsicallyaccuratetechniques)。前者通过启发式方法模拟流体运 动,得到很好的视觉效果,但是通常需要大量经验参数的复杂控制。而后者通常 是基于某种形式的Navier—Stokesequ8tion的求解过程。他的缺点是计算量较 大,代价很高。另外,模型生成的水画面在质感上与摄像机拍摄的真实水面仍有 一定差距。 最近几年人们开始研究用视频纹理来合成编辑流水序列。wei和Levoy提出了 基于树结构向量量化的快速纹理合成方法,并把无参数视频纹理模型运用在三维 模拟流体效果[1]。采用马尔可夫随机场表示纹理,提出确定性搜索策略代替穷 尽搜索,从而极大的提高了合成速度。 图2.1是二维海面纹理合成效果图。 浙江大学硕士学位论文 基于视频酌流水和火焰特效合成 图2.1海面纹理合成效果图 将该算法进行三维扩展构造动态纹理,只需将原算法中的二维实体替换为相 应的三维实体,比如用三维体数据代替二维图像数据进行滤波和下行采样构建高 斯金字塔,象素的相邻结构也由二维扩展到三维,合成按从低到高的精度进行, 对每一层精度,以帧为单位合成输出。 图2.2是三维海面动态纹理的扩展效果。左为原始序列,右合成序列 图2.2三维海面动态纹理的扩展 Kwatra使用图切分(graphcut)算法,有效的计算出输入和输出纹理间最 优的匹配面片(Patch)大小,将原始纹理的匹配面片区域叠加到输出纹理上, 并沿最佳边缘缝合得到新的更大的场景[9]。视频序列是图象的3D集合,时间是 横轴。图象中的面片,在视频序列中,就是3D(空间一时间)的块(block)。 在2D合成过程中的面片选择和边缘检测都可以直接扩展到视频合成中。图2.3 是两个视频序列的合成效果。 浙江大学硕士学位论文 基于视频的流水和火焰特效台成 图2.3基于graphcut的视频序列的合成 Kiran在文【l踟中提出一种合成和编辑流体型(flowpro%tern)自然现象视 频序列的新颖算法。以瀑布场景为例,在原始视频序列中,由用户首先指定一组 采样路径(flowlines),沿着该路径上各点的不同深度,采集动态纹理样本。 再由用户指定的新路径,建立二者的对应关系后,进行纹理合成,保持动态连续 性,最终合成新的任意长度的视频序列。该算法较简单,对瀑布、流水、火焰、 烟雾等的合成编辑能取得较好的效果。 图2.4根据控制路径生成新视频 本文提出了一个基于视频的合成、编辑流水动画的方法,主要包括以下两个 研究目标: 1. 原始的视频序列是从不同位置拍摄的多个流水片断。通常情况下, 场景中需要合成的河流长度,是大于单个流水片断长度的。所以,我们需要对原 始的视频纹理进行扩展来满足场景需要,并且保持流水的动态连贯性。 2. 在原始视频中,流水中会存在一些物体例如石头。这些石头在扩展 的视频纹理中会出现重复,或者石头的大小不太合适,会影响场景的整体美观效 果,这就需要能够改变他们的大小或者是能在合成的视频中完全去除他们a 为了解决这两个问题,我们采用基于Markov(MRF)随机场的纹理合成技术。 14 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 2.2系统框架 对原始流水视频的合成编辑,由以下几部分组成:由于原始视频拍摄过程中, 存在较大的震动,所以要进行视频稳定的处理。然后检测流水序列的周期性,在 后面的合成过程中用来保证流水的连贯性。下一步我们对视频纹理进行扩展来达 到场景所需的长度。在视频编辑过程里,改变石头大小或去除石头。最后将合成 后的视频序列运用到3D场景中。 圈2.5基于嫁F随桃场模型的流水视频合成源程图 2.3视频稳定处理 在拍摄过程中由于摄像机的震动,导致视频各帧场景产生偏移.如图2.6所 示。这里是视频中的两帧.可以看到拍摄明显的位置偏差。因而在合成期间对流 水周期性的检测过程时计算各帧相似度有产生很大偏差,难以获得满意合成结 果。所以在合成之前需要进行视频稳定处理。 图2.6 视频稳定 我们在场景第一帧的中心(红点位置)选取默扩大小的参考窗口,然后对其 后所有顿在以中心偏差[一6J胡的范围内取孵铲的块与参考窗口比较,计算二者 之间的误差,找出误差最小的那点,该点即为此帧消除震动干扰的中心点(蓝点 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 位置)。经过试验,在萨50,伊10时能取得最佳效果。 经过上述处理可以保证场景主体位置的固定。这一步处理的代价是会丧失小 部分的边缘信息,但可以明显提高检测流水周期性的准确性。 2.4检测流水周期 流水运动是连贯的,相邻帧是紧密联系的。为了保证合成的流水视频的连贯, 我们要检测原始序列的周期性。这里,我们采用了文献[23中的算法检测流水周 期。选择每对图像的L:距离作为相似性尺度。对输入序列的所有帧进行比较,找 出最小的L:距离的一对作为视频的子序列,通过其循环播放达到连续运动的效 果。 但将序列的所有帧逐像素计算厶距离十分费时。所以我们引入了一些子窗 口,将上口算法只应用在这些子窗口里。例如,我们从每帧中均匀选择5个子窗 口来做比较,一个子窗口在原始帧的最中心,其他四个均匀分布在四周,靠近原 始帧的四个边界。见图2.7。 图2.7子窗口的引入 在实验中,600x480每帻选取50x50大小的5个子窗口来计算厶距离,每 帧计算可省时25倍,计算量大大减小的同时也得到了比较精确的结果。 我们将五帧和刁帧子窗口的£魇离计算结果保存在矩阵皿J中, 岛2IlI;。IjIIz 当口。。在矩阵中最小时,我们就可以取五和腓为流水周期性的一个子序列 了。图2.8是对一段流水视频第lO帧与第20帧对比其后50帧的统计结果。 16 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 图2。8第10帧与其后50帧比较结果第20帧与其后50帧比较结果 可以看到,第10帧与第20帧,都在其后约20帧的位置得到最相近的结果 但(20—40)更为接近,所以我们此时可以取这段流水序列中的(20—40)问的 20帧作为循环周期。 2.5视频纹理合成 我们需要对视频纹理进行扩展,来满足场景需要的大小。直接将视频片断的 对应帧连接起来合成的流水中会有明显的不连续性。为了保持这种连续性,我们 在视频片断的拼接上采用了纹理合成的方法。 视频纹理合成和纹理合成也有十分相似的特征,通常可以把视频纹理合成看 作纹理合成的一种扩展。对于大多数的纹理,Markov随机场模型是一种很好的 逼近的模型。Markov模型认为纹理具有局部统计特征,在取样图中取一个点作 为种子写到合成图中,然后从种子的邻点开始,在样图中移动匹配窗口,把误差 最小的匹配点写入合成图中,直至填满合成图,得到新的纹理。 这里我们采用文献[8]中提到的基于Markov随机场的片采样(Patch—Based Sampling)的纹理合成算法。通过对局部Markov条件概率的无参数估计片采样, 能够避免片边界间的特征不匹配问题。 2.5.1片采样策略 厶和厶是相同大小和形状的纹理片,如果d(以砌<6,即两纹理片距离小于 某-tq限值,则表示厶和厶压配。 17 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 根据Markov的性质,片采样算法可以根据经验估计局部Markov条件概率 e(z,/z,o。》罢孚a腥缎理片宽为%的边界区域。当已经纹理片边界区域z。。 0"一 后,就可以估计出未知纹理区域瑚自局部条件概率分布了。我们直接在输入纹理 厶内搜索所有与边界区域厶篇。相似边界区域的纹理片,将所得结果置入集合V 中。合成厶,只需从集合V中随机取出一个元素即可。 D) 图2.9,h采样策略.(b)是合成纹理,阴影表示边界区域. 输入纹理(a)中三个边界区域与(b)边界匹配,将选中的红色区域填入(b) Markov条件概率估计方法: 颤如I‰)e∑诎5妇一垴),∑啦=L ‘ l 其中,厶二荧示输入纹理五。内具有和L湘同边界区域,。。的纹理块,他们的相 似度因子为a, 2.5.2片采样纹理合成 我们运用上面的片采样策略,现在选出即将输出到五。。的第膏个纹理片尻 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 图2.10片采样纹理合成方法。 灰色区域表示已合成,阴影表示边界区域。 鼠的边界区域如会和已经存在的片{岛”像.J的边界E。。。交叠。如果他们的交 接区域匹配的话,我们就说他们的边界区域是匹配的。 我们为输出纹理L。建立一个集合kUB,集合包括所有与昂。‘匹配的厶纹理 片。B(x,y)是厶。中左下角坐标(x,y)的纹理片。即 重量=脚神I懒k舭:如)《‰,%帕in.rM 从WB内随即选取一纹理片将其填入厶。的露的位置。 整个片采样合成算法的过程如下: a)随即从输入纹理L中选取%×引}臼纹理片岛,填入输出纹理L。的左下角 仁1. b)输入纹理厶建立与晶?匹配的纹理片集合vB。 c)如果WB为空,则选取与E。?边界区域最为接近的纹理片。 d)否则,从WB中随即选取一纹理片夙,将其填入到Lo。k=k+l e)重复b,c,d步骤直到填满整个输出纹理。 f)对边界区域进行混合 我们选取视频纹理中的某一帧作为输入纹理,输出纹理尺寸由场景大小决 定。若是场景太小和输入纹理接近,对其进行小幅度的扩展,效果可以接受,但 是若扩展的范围较大,那么该视频纹理上信息会多次被利用,过多的重复造成人 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 工做作的感觉。 我们的办法是用多个流水视频样本拼接合成一个足够大的视频,而不是仅仅 局限在一个视频片断内的纹理合成。 我们源视频序列∥五,%的第jth帧为VT.j,VToj,合成纹理厶。将‰写 久L。此时VT.j的右边缘即为晶。‘。在VToj中寻找和丘。?匹配的位置。我们计算 条件概率P(VT.j/鳓,屏是VT.j内和晟。。‘匹配的gbxHeight的区域。我们在VT.j 中移动窗口寻找WbxHeight的块构造集合V使得d(既E。0<6。在V中随即 选取一进行拼接。在门限6取不同值时结果不同。拼接需要平滑自然的过渡。 所以我们用RGBA插值进行视频纹理的边缘混合。 如果序列一与序ytJ-拼接仍未达到目标长度,重复此过程寻找第三序列。 上述过程时两视频片断单帧合成效果如图2.11 (a)源序列一 (b)源序列二 (c)直接拼合两序列产生明显间断 图2.ii(d)基于Markov纹理合成拼合结果 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 2.5.3动态连续性 我们的目标是对整段视频序列的扩展,所以必须还要注意到合成视频的动态 连续性。因为眈和%是从同一河流中获取的视频片断。所以流水的运动速 度是相同的,即啊u,%,到VT.j+,,VToj.胸距离是相同的。所以%,,,和嘿,, 的拼接点选择和%、VToj相同时,就可以保证且h,j+Ith帧间的连续性。 2.6视频纹理编辑 图2.12视频序列拼接结果 这个步骤我们对流水序列中的石头进行编辑,改变其大小或者是完全去除 它。 在视频片断中石头和流水都是纹理,石头看起来是静态的而流水是运动的。 我们可以通过扩大或是缩小石头的纹理在改变其大小,所以问题归结到纹理合成 的领域里。同样,我们运用2.5节讲述得Markov随机场片采样纹理合成算法来实 现。 2.6.1石头缩小 假定视频片断嵋,中存在石头如图2.13。我们可以在石头的边界区域合成流 水的纹理来缩小它。第一步就是要确定石头的边界线。在此基础上合成水纹理。 由于视频里石头的边界在水的运动中不够清晰所以自动检测石头边界是很困难 的,我们需要用户制定一些点(图2.13中的红点)勾出石头的 ?? ?x 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 在视频的第一帧中进行交互操作,由用户指定石头的边界。 2.6.2石头去除 采用类似的方法,我们可以从视频中将石头完全去除。唯一不同的是我们要 将G怠围的整个区域重新绘制,运用更大的纹理块加速纹理合成过程。在片匹 配的纹理合成算法中[8],纹理块越大,合成的时间越短,但是,如果纹理块过 大合成的新纹理会看起来不连续。我们允许用户改变纹理块大小来测试合成效 果,最终决定纹理块大小,将其应用在序列的所有帧合成中。 2.7试验结果 图2.15石头去除(2十2的网格覆盖效果) 图2.16石头去除(3x3的网格覆盖效果) 我们将合成的流水序列绘制到三维场景系统中。为了增加真实感,流水的边 缘和草地用alpha混合处理,并添加随机扰动来尽量避免线性alpha混合的模糊 感,使得流水纹理和草地区域的过渡更自然一些。 通过合成和编辑原始流水序列,我们得到三组流水动面。第一组图2.17(a) 展示了通过拓展流水视频纹理,满足场景中的河流长度的需要。除了上述视频纹 理的拓展,在第二组和 浙江大学硕士学位论文 基于视频的流水和火焰特效台成 第三章 基于视频纹理的火焰合成 3.1引言 火焰模拟大致上可以分为直接数字合成(DirectNumericalsimulation)和 视觉效果建模(visualModeling)。chiba和Inakage用数字合成算法逼真地模拟 了火焰的模糊边界[儿,12]:Rshmeier证明数字合成算法可以非常成功地模拟火 焰产生的烟雾效果[13];Yngve则是用数字合成算法形象地模拟了物体爆炸时的 情形[14]。但是在模拟火焰形状和运动时,数字合成算法就显得力不从心;在模 拟大规模动画时,数字合成算法的运算也过于复杂。 视觉效果建模(Visual赫odeling)主要考虑模拟物体的有效性和易控性, Reeves的粒子系统(Particlesystem)方法被认为是模拟不规则模糊物体最为 成功的一种图形生成算法,也是很多火焰算法的基础[15]。粒子系统能够和其他 因素相互作用,易于渲染和进行线性比例变化,合成效果真实性主要取决于动画 的驱动算法。力量场函数和过程噪声函数能在大场景中取得理想的效果,但是难 以精确捕捉真实火焰在空间上的一致性。 Philippe是以小火苗为基础建立三维火焰框架,用不同方程模拟燃烧物体周 围温度、氧气含量和空气流动速度交化时火焰的形态,比较理想地模拟了火焰在 三维物体上蔓延燃烧的形状[16]。通过~系列函数求得火焰整体轮廓线,就得到 火焰三维模型。根据燃烧的物理规律,把模型从内到外分为不同的层,每层根据 离焰心的距离确定它的亮度,用不同的颜色进行渲染,就得到可以在物体表面蔓 延、不断跃动的火焰。该算法主要贡献在于形象地模拟了火焰蔓延的过程。 图3.1(a)火焰在球面上燃烧的骨架 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 3.3.1边缘检测 最容易想到的就是利用边缘检测的方法,看是否能找到火焰的边缘,有了边 缘就可以轻松将火焰提取出来。所谓边缘是指其周围像素灰度急剧变化的那些象 素的集合,它是图像最基本的特征。边缘大致可以分为两种,一种是 ?? ?x 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 应于不同物体或物体不同部位的区域,并提取出感兴趣目标的技术和过程。图像 分割的目的是把图像空间分割成一些有意义的区域,可以按幅度不同分割,可以 按边缘分割,也可以按形状分割。 1、基于幅度的图像分割 幅度分割方法是把图像的灰度分成不同的等级。然后用设置灰度门限的方法 确定有意义的区域或与分割物体的边界。 图3.8(a)是图3.7中的火焰灰度直方图。 T 图3.8(a)火焰灰度直方图 (b)幅度分割点 可以看到,图像的大部分像素取值较低,其余像素较均匀的分布在其他灰度 级上。直方图也表示出这是物体叠加在一个暗背景上形成的。可以设立一个门限 值T,将直方图分为两个部分。 T的选择本着一个原则:B1尽可能包含于背景相关联的灰度级,B2则应包含 物体的所有灰度级。当扫描这幅图像时,从Bl到B2之间的灰度变化就只是出有 边界存在。为了找出水平方向和垂直方向上的边界,应进行两次扫描,即首先确 定一个门限T,然后: 1. 对,伍∥的每行检测。产生的图像五侥∥的灰度应遵循: 如果,亿∥和,伍y一∥处在不同灰度级别带上,则£∞力气k: 话醚flIx.y)=k 厶是边缘灰度级,厶是背景灰度级。 2. 对,伍一的每列检测,产生的图像£伍∥的灰度应遵循: 如果,伍∥和,臼一t∥处在不同灰度级别带上,则£伍∥艺s: 奄聪fz(x?y)=b 为了得到边缘图像,可采用下述关系: 如果,伍∥和五伍∥中的任何一个等于厶则,伍∥屯一; 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 奄聪f(x.y)=LB. 上述方法是以某像素到下一个像素间灰度的变化为基础的。边缘提取的准确 性和门限值的又最直接的关系。从直方图上妥善的选择门限值,对正确划分出感 必趣区域和背景区域是很重要的。 对于边缘明显的火焰纹理,我们采用简单的幅度分割方法;但对于边缘非常 模糊的火焰纹理,简单的幅度分割方法不能有效的提取,火焰的边缘容易被忽略 掉,所以采用基于MeanShift的图像分割方法来实现。 2、基于MeanShift图像分割 MeanShift这个概念最早是由Fukunaga等人[20]于1975年在一篇关于概 率密度梯度函数的估计中提出来的。随着MeanShift理论的发展,现在说Mean Shift算法,一般是指一个迭代的步骤,即先算出当前点的偏移均值,移动该点到 其偏移均值,然后以此为新的起始点,继续移动,直到满足一定的条件结束。 MeanShift指向概率密度梯度方向,并且MeanShift向量^“(x)是归一化 的概率密度梯度,该算法会收敛到概率密度函数的一个稳态点。根据MeanShift 和概率密度梯度的关系可以看到,MeanShift算法本质上是一个自适应的梯度 上升搜索峰值的方法,如图3.9所示,如果数据集{而,f=l,..m}服从概率密度函数 f(X),给定一个如图初始点x,MeanShift算法就会一步步的移动,最终收敛到第 一个峰值点.从这张图上可以看到MeanShift可以用于聚类,数据集{薯,i=1,¨埘l 中的每一点都可以作为初始 i 瑚i:lMean S于视频的火焰合成方 ?? ?x 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 息,组成~个p+2维的向量x=(∥,x7),其中r表示网格点的坐标,,表示该网 格点上P维向量特征. 我们用核函数K,^来估计z的分布,氏,‘具有如下形式, ‰=丽C伥陆旧|2] 其中氟,曩控制着平滑的解析度,c是一个归一化常数. 我们分别用五和互,i=l,⋯,n表示原始和平滑后的图像.用MeanShift算法 进行图像平滑的具体步骤如下, 对每一个象素点, 1,初始化/=1,并且使咒J=五 2,运用MeanShift算法计算”川,直到收敛.记收敛后的值为Y, 3.赋值丑=(FⅥyr。) 图3.10显示了平滑步骤,x,y表示这一区域内的象素点的坐标,图3.10(a) 在一个三维空间显示了各个象索点的灰度值,图3.10(h)显示各点的移动痕迹, 黑点是最终收敛值,图3.10(C)显示了平滑后的各象素点的灰度值,图3.10(d)是 继续分割后的结果. 图3.10(a)原始图像的各象素点灰度值.(b)各象素点的MeanShift移动路径. (c)平滑后的各象素点的灰度值.(d)分割后的结果 基于MeanShift的图像分割与图像平滑类似,只需要把收敛到同一点的起始 点归为一类,然后把这一类的标号赋给这些起始点,在图像分割中有时还需要把 浙江大学硕士学位论文 基于视频的流水和火焰特效台成 包含象素点太少类去掉。 Meanshift算法进行图像分割,本质上是一种基于特征空间的分析技术,但 分割结合了图像域的信息。均值移动算法通过密度梯度估计的非参数过程,即密 度梯度上舟,来恢复图像概率分布中的高密度区域,对应于图像中的重要特征。 3、试验结果 要将背景剔除,得到火焰主体的纹理,我们选择为纹理添加alpha透明通道 的方法来进行,而且也方便对火焰边缘进行处理。hlpha值的取值范围为 (0,255)。纹理在OpenGL绘制的场景中应用时,可以根据纹理的alpha通道自 动将纹理和背景混合。alpha=O的区域变为透明,而alpha=255区域则完全不 透明。在alpha通道图中,火焰内部明亮的部分应当是完全不透明的,而边缘处 应当是部分透明状。其间的颜色变化为: color=Firecolor木alpha+Backcolor木(1一alpha): 对于边缘明显的火焰纹理,我们采用简单的基于幅度的图像分割方法, 如图3.12。 (a)原图 (b)灰度化 (c)幅度分割 (d)火焰纹理提取 圈3.12基于幅度的图像分割效果图 但对于边缘非常模糊的火焰纹理,简单的幅度分割方法不能有效的提取,火 焰的边缘容易被忽略掉,所以采用基于MeanShift的[]像分割方法来实现。 (a)原图 (b)分割后效果 图3.13MeanShift[]像分割效果图 浙江大学硕士学位论文 基于视频的流水和火焰特效合成 3.4视频纹理编辑 不论是基于幅度的图像分割还是基于MeanShift的图像分割,最终都是为 了得到火焰的带alpha透明通道的纹理。构造alpha通道需要我们将图像灰度化。 不同方法的分割,得到的结果有不同的缺陷,需要我们进行再加工。 3.4.1基于幅度图像分割的纹理编辑 在基于幅度的图像分割中,只是简单的取--I']限值来将背景去除,如果火焰 主体非常分散且亮度较低,在基于幅度的分割中,比较暗的火焰部分会被当作背 景去除,导致火焰主体残缺,所以我们先进行灰度的线性变化,使其特征更加的 明显,亮的地方应更亮,暗的地方应更暗。 灰度的线性变换是很简单的,将图像中所有的点的灰度按照线性灰度变换函 数进行变换。该线性灰度变换函数,6∥是一个一维线性函数: 厂(并);J爿·x+,曰 灰度变换方程: D。一{tp3=fA·D。七{B 其中参数捌为线性函数的斜率,馏为线性函数的在y轴的截距。历表示输入图 像的灰度,历表示输出图像的灰度。当fA>l时,输出图像的对比度将增大;当fA
/
本文档为【基于视频的流水和火焰特效合成】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索