文档库 最新最全的文档下载
当前位置:文档库 › 基于视频的景观特效实时模拟

基于视频的景观特效实时模拟

收稿日期:2009-07-26。 基金项目:国家自然科学基金资助项目(60603076);国家863计划项目(2007AA 01Z 316);上海市科委自然科

学基金资助项目(07ZR 14035);上海市青年科技启明星计划项目(08QA 140250);上海市科委重点科技攻关项目(0951*******);上海海事大学重点学科项目(S 030602)。

作者简介:王长波(1976-),男,湖北随州人,副教授,博士,CCF 会员,主要研究方向:真实感图形、基于物理的动画、数字娱乐; 吴亮(1987-),男,上海人,主要研究方向:计算机图形学; 栾天骄(1988-),女,吉林四平人,主要研究方向:计算机图形学; 盛小勇(1983-),男,江西吉安人,硕士研究生,主要研究方向:计算机图形学; 肖昭(1985-),男,陕西西安人,硕士研究生,主要研究方向:计算机图形学;陈晓(1988-),女,山东枣庄人,主要研究方向:计算机图形学。

文章编号:1001-9081(2009)12-3418-04

基于视频的景观特效实时模拟

王长波,吴 亮,栾天骄,盛小勇,肖 昭,陈 晓

(华东师范大学软件学院,上海,200062)

(cb w ang @cad .zju .edu .cn )

摘 要:从火焰和水波的视频出发,首先进行时间和空间连续性的拼接,利用光流场计算视频帧之间的相似度,通过相似度矩阵计算实现连续小跳变的火焰合成,采用基于骨架的驱动来实现风力与火的交互,实现了火焰的蔓延和互动等效果;采用一种自适应边界采样方法来实现水面的视频合成,得到了较好的模拟效果。

关键词:火焰;流水;视频合成;光流;仿真中图分类号:TP 391.9 文献标志码:A

V ideo 2ba sed si m ula tion of landscape effects i n rea l 2ti m e

WAN G Chang 2bo,WU L iang,LUAN Tian 2jiao,SHENG X iao 2yong,X I AO Zhao,CHEN Xiao

(S oft w a re Eng ineering Institu te,East Ch ina N or m a l U n iversity,S hangha i 200062,Ch ina )

Abstract:Based on video synthesis technique,the authors p roposed an app roach for the real 2ti me si m ulation of flow ing water and fire video .From the fire and flow video,the continuity of ti me and space was i mp lemented by the op tical flow field method .The interaction bet w een wind and fire was achieved through the skeleton of fire,including the fire sp read and interaction of fire flame .The flow was also synthesized by a method of self 2adap tive edge samp ling .Finally,by the techniques of 32di m ension si m ulation w ith videos from multip le directions,good si mulation results were achieved .

Key words:fire flame;flow ing water;video texture;op tical flow;si mulation

0 引言

熊熊燃烧的火焰、惊涛拍岸的海水……,这些自然景观的真实感模拟一直是计算机图形学中的难点和热点之一,在计算机游戏动画、影视特效制作、虚拟现实、航海训练模拟等方面都有着非常广泛的应用价值。

火焰、水流属于无规则物体,具有实时的多变性和无规则性。正是由于它们的外观形状极不规则、没有光滑的表面,使得经典的欧几里得几何学对其描述无能为力。此外,火焰、水流在燃烧和流动的过程中,受到各种内外因素的作用和影响,火焰和水流本身的形态也非常丰富,在不同的情况下表现出很大的差异。因此真实感模拟动态的火焰和水流特效一直是计算机图形学领域中最具挑战性的工作之一。

国内外目前比较成熟的水火景观特效模拟的方法主要是分形几何和粒子系统。分形几何主要用来表现静态景观,鉴于计算速度的限制,常常不能表现烟、火、水这类特殊景观的动态过程。文献[1]提出了粒子系统作为模糊物体的建模方法,后来粒子系统大量用来表现烟、火等自然现象。它可以方便地表现自然现象的动态性,也是目前影视游戏中用到最多的一种特效制作工具,如特效制作软件Particles Illusion 系统。文献[2]在粒子系统方法中引入涡流元素方法来模拟气体的运动变化过程,以弥补粒子系统物理性不足的问题。但是由于粒子变化规则的简单性,对于大规模的景观模拟绘制效率还较

低。

流水、草地等自然景观对象通常具有自相似性结构,基于立体视觉的重建一般不适用于这类物体。文献[3]提出视频纹理合成的思想,通过分析流体的运动周期,重组合成新的任意长的视频帧,该方法可以看作是基于图像的绘制方法在时间域上的扩展。文献[4]针对流体提出了交互式的视频纹理合成方法,通过分析输入的视频中纹理粒子的运动,交互地画出运动流线,进而无缝地合成出连续的动画,该方法对瀑布、水流等合成的效果较好。文献[5]使用自回归过滤法对视频序列中流体的复杂运动进行建模,按照最大相似度和最小误差进行优化,从而合成了连续的喷泉、流水动画。然而,目前的视频纹理技术绘制出来的效果还比较简单,未考虑视频纹理对象的空间漫游等问题,且不易实现与风力等环境的交互。

本文从火焰和水波的视频出发,首先进行时间和空间连续性的拼接,提出一种基于光流的相似度矩阵计算,根据该矩阵实现连续小跳变的火焰视频合成,然后根据火焰中心的流线进行驱动来实现火焰的蔓延和互动等效果;采用一种自适应片采样的合成方法来实现水面的视频合成,得到较好的效果。

1 基于视频的绘制技术

如何消除视频帧跳变带来的不连续性是目前基于视频绘制的关键问题,主要有两种方法:

基于跳变的视频纹理合成 文献[6]提出了一种基于

第29卷第12期

2009年12月 

计算机应用

Journal of Computer App lications

 

Vol .29No .12

Dec .2009

跳变的合成方法,即在样本视频中寻找存在相似帧构成跳变点,在视频的播放过程中,就可以不断地从相似帧之间切换跳变,合成任意长度的视频。这里最关键的一点就是图像相似性评估问题,需要找到合理的图像相似性尺度,避免明显的跳变。

基于渐变的视频纹理合成方法[11] 利用视频的可逆性,当视频播放到渐变点时,按一随机概率选择顺序播放下一帧或者逆序播放前一帧,如此反复,合成任意长度的视频。此方法只适用于可逆序播放的视频,如:风吹的麦浪、不断摇动的树木等。

由于我们要模拟的主要是流水、火焰等视频景观,它们不具有可逆的特征,如火焰的运动方向只能向上,因此我们拟采用基于跳变的思路来绘制。

2 火焰特效的绘制及编辑

基于视频的绘制首先要解决的就是时间连续性和空间连续性的问题。

2.1 时间连续性的处理

时间连续性的处理主要需要解决的是从样本视频中找到相似的两帧图像,然后进行跳变转换。前人方法在进行相似度计算时常常以颜色作为标准来计算[4],这时视频图像中像素偏移一个像素,其整个颜色就可能偏离很大,不够准确。因此我们采用一种基于光流趋势的相似度计算方法。

对于视频V(i)中每一帧,构建出按时间顺序的数据帧序列I(x,y,t),t为时间。利用光流场原理计算任意两帧之间的运动偏移量,从而确定他们之间跳转的可能性。假设I(x, y,t)和I(x,y,t+1)为相邻两帧,且I(x,y,t)=I(x+u,y +v,t+1),则光流的基本方程可以表示为:

I x u+I

y

v+I

t

=0

(1)

其中I

x

如式(2)所示:

I x =

5I 5x

I y=5I 5y

I t=I(x,y,t+1)-I(x,y,t)

(2)

光流的方程中有两个未知量一个方程,显然不能唯一确定运动偏移量u,v,必须加入其他约束来求解。这里采用Lucas2Kanade光流算法[8],假定在一个小的邻域n内运动位移量保持不变,该邻域是均匀的,采用加权平方和最小化来估计U=(u,v)T。则:

m∈Ω

W2(m)( I?U+5I5t)2=0(3)

其中 I=(I

x ,I

y

)。这里W2(m)是一个窗口函数,它使得邻

域中心的加权要比周围的大。对于在邻域Ω内的n个点m

i

,式

(3)的解可用最小二乘法得到:

A T W2AU=A T W2b(4)

U=(A T W2A)-1A T W2b(5)当A T W2A为非奇异时可得到解析解。

对于提取的相邻关键帧,依次计算第i帧与其他帧视频图像对比计算得到的运动偏移量U=(u,v)T,找到和U最相似的帧j,即可知i+1同j相似,则i可以跳转到j。

根据以上算得的两帧之间的运动偏移量,构建可能性矩阵P。P(i,j)表示从第i帧跳转到第j帧的可能性值,取值范围为(0,1),P(i,j)值越大,可跳转的概率就越大。视频播放时,要从第i帧开始跳转,通过遍历P矩阵中的第i行,得到最大可能性的帧。即:

N ex tF ram e=M ax(P,i)(6)其中M ax(P,i)为计算矩阵P中第i行中最大值所对应的j的值。

到目前为止,在计算帧之间跳转的可能性时仅仅考虑了局部的影响。即从当前帧跳转到下一帧后,下一帧对后续帧的影响并未考虑。我们进一步考虑当前帧跳转对后续帧跳转的影响,从视觉相似度的匹配和运动状态一致性匹配两个方面来考虑帧之间跳转的可能性。对于原有的可能性矩阵P 的每一行进行遍历,并设定一个可能性阈值,当某一行不存在比设定阈值大的可能性值,则将该行删除。当有高于阈值的列,则判断该列所对应的标号是否在行中出现。反复遍历,直到不存在低于设定阈值的行数据。

具体算法流程如下。

1)扫描可能性矩阵的第i行,如果有高于设定阈值T,则跳转到2);否则删除当前行,执行3)。

2)判断第i行中是否P(i,j)≥T,如果是,再判断P(i,j)中的j是否在整个矩阵中有第j行,如果没有P(i,j)设为0。直到遍历完整个行后,执行3)。

3)扫描可能性矩阵的第i+1行,如果有高于设定阈值T,则跳转到2);否则删除当前行,

执行1)。当整个矩阵都遍历完后,执行4)。

4)遍历整个矩阵,判断是否存在某一行中P(i,j)的值大于T(或大于T的列号对应的行不存在),如果是则执行1),否则结束。

根据以上方法,我们可实现视频帧在不同帧之间的无缝跳转,保证了合成视频的时间连续性。

图1 视频跳转的示意图

2.2 空间连续性的处理

以上实现了视频的时间连续性,但视频还是二维的,如果要合成到三维空间中,还需解决空间连续性问题。鉴于火焰视频的动态性,传统针对固定特征反求相机参数的方法较难得到满意的效果,这里采用一种基于视点的视频绘制技术来实现。

首先采集多角度的火焰视频数据,表现短时间内火焰的运动。如可以从8个均分角度来采集8个方向的实时同步视频。这些多角度视频对火焰的特写表现出了在真实三维场景中从不同方向观察火焰时的效果。而对于不是这些角度正对的视频景象,可以借助相似角度的视频进行混合以重现任一特定角度的火焰景象。

由于火焰是不断运动的,观察的视角也在运动。根据视角的不同将最接近于视线垂直方向的相邻的两份视频数据D(i)和D(i+1)进行混合。成后的视频绘制到随视点方向旋转的面片上。

9143

第12期王长波等:基于视频的景观特效实时模拟

percen t=(ED-D(n))/45

RGB(i,j)=RGB(n,i,j)3percen t+

RGB(n+1,i,j)3(1-percen t)

(7)

ED为视角的方向值,其变化范围为1°~360°,percen t表示相邻两帧各在合成帧中的权值。根据ED的值,确定ED所处在D(0)~D(7)的范围,即D(n)

2.3 火焰的蔓延和交互

火焰与环境的交互包括火焰由于外部风的因素而产生的火焰蔓延扩展及弯曲等效果。这里采用基于参考骨架线弯曲的思想来实现火焰的蔓延扩展。

根据火焰的每行像素点确定每行的中心位置坐标,各行中心点构成一条曲线作为参考轴,提取火焰的骨架。以骨架为轴线标准,在轴线两边各确定一定长度范围,把原火焰中心区域部分扩大化,根据火焰扩散幅度range来决定火焰发散范围。

为了寻求较好的效果,将新产生的火焰体与原火焰主体重叠部分采用高斯模糊和插值。插值后,新火焰主体与原火焰主体构成同一的蔓延火焰主体,达到火焰蔓延的效果。

进一步地,以参考轴为中心,计算出火焰物体的包围盒,以一定角度和风力作为控制弯曲因素,对火焰的不同部分实施不同的偏移,从而形成风吹火动的效果。

3 水面特效的绘制

3.1 水面视频的拼接

首先拍摄的一小块水面视频,采用空间合成的方式绘制出大范围的水域场景。这里需要对视频纹理进行扩展,如果直接将视频片段的对应帧连接起来合成的流水会有明显的不连续性。目前的视频拼接主要采用的是基于整个视频帧区域进行片采样,这样匹配的计算量较大。这里我们提出一种快速的边界填充视频拼接方法。

首先将水面视频帧图片进行直接拼接,这时接缝处一般会存在不连贯性,于是将图片中间的一个长条形矩形区域(高度为L en,宽度为W,W可设为64个像素)删除。通过遍历原图片寻找与删除区域相似度较高的图片区域,并填充进删除的区域。遍历的区域可以采用自适应大小的矩形块区域。最后通过插值,对新存在的不连续的区域进行高斯处理,增加接缝处的连贯性。这样可以只对视频帧图片的边界进行处理,同时采用了全局搜索策略,能较好地进行水面的合成。3.2 视频场景的合成

我们还采用几何建模的方法建立虚拟的户外场景,包括地形、草地、天空等,然后将合成的火焰及水的视频效果合成到虚拟场景中去。根据视点位置的改变,切换显示视频火焰。对于水面,将一小块水面视频平铺在设定的水域,块与块之间通过水面合成的方法进行处理,保证视频之间的过渡平滑性。4 仿真效果及分析

4.1 仿真效果

运用上面方法,在CP U为I ntel Core2Duo CP U T7300 2.00GHz,图形加速卡为NV I D I A GeForce8600GS,显存为DDR3256MB的PC机上实现了火焰和水面的实时绘制。图2~5为本文方法绘制不同效果截屏,效果良好

4.2 算法效率分析

已有的针对火焰、烟、爆炸等特效的绘制算法多数是基于帧数据的采集、绘制序列的重建和帧数据的实时绘制三个方面。这样的绘制算法有一个最重要的计算瓶颈就是对纹理内存的消耗。为了能够连贯地绘制特效的动态效果,要求所有的纹理数据都必须常驻在显卡的纹理内存中。如果不能够保证这个要求,那么绘制的性能将会有很大的下降。

而本文算法将用光流场代替了对纹理的需求,而且把对帧间跳转序列的选取放到预处理中进行,大大减少了实时绘制时对于内存的需求和消耗,只需读入处理完成的数据即可进行实时绘制,使得整个过程实时流畅。

在进行视频合成时,算法主要包括两方面处理:预处理部分和实时处理部分。表1为我们对5s的视频进行合成的算法效率分析,并与其他算法进行了定量的对比。可以看到,本

0243 计算机应用第29卷

文算法虽然花费了一定的预处理时间,但合成的效率较其他算法有较大的提高。

表1 算法的性能分析

算法读入预处理时间/s运行速度/fp s 文献[4]算法12012

文献[5]算法3015本文的火焰合成算法75100

本文的水面合成算法3035

5 结语

本文研究了基于视频纹理的景观特效绘制方法,从视频片段出发合成出三维的火焰和水波,并实现火焰的蔓延及互动,最后将它们合成到虚拟场景漫游。基于视频的方法不需要建立复杂的几何模型,适用于各种轻量化建模的场合。

本文的研究还存在一些不足,在通过水和火的视频纹理来构建场景中的自然景观时,虽然增加了真实感,但也存在三维感缺失的不足,将来可以通过将传统的粒子系统与视频纹理模拟方法结合,以提高绘制场景的真实感。进一步采用GP U技术来加速大场景的视频合成算法,提高算法的效率。参考文献:

[1] REEVESW T.Particle system s—A technique f or modeling a class

fuzzy objects[J].AC M Transacti ons on Graphics,1983,2(2):91

-108.

[2] ADABALA N,MANOHAR S.Modeling and rendering of gaseous

phenomena using particle map s[J].Journal of V isualizati on and Computer Ani m ati on,2000,11(5):279-293.

[3] ESS A I,SCHODL A,SZEL I SKI R.V ideo textures[C]//Pr oceed2

ings of AC M SI GGRAPH2000.Ne w York:AC M Press,2000:489 -498.

[4] BHAT D H,SSRTZ S M,HODGI N S J K,et al.Fl ow based video

synthesis and editing[C]//Pr oceedings of AC M SI GGRAPH2004.

Ne w York:AC M Press,2004,23(3):360-363.

[5] DORETT O G,CH I U S O A,SP ATT O S,et al.Dynam ic textures

[J].I nternati onal Journal of Computer V isi on,2003,51(2):91-

109.

[6] SSCODL A,ESS A IA.Contr olled ani m ati on of video s p rites[C]//

AC M SI GGRAPH Sy mposium on Computer Ani m ati on.Ne w York: AC M Press,2002:121-128.

[7] LOS ASS O F,I RV I N G G,G UENDELMAN E,et al.Melting and

burning s olids int o liquids and gases[J].I EEE Transacti ons on V i2 sualizati on and Computer Graphics,2006,12(3):343-352. [8] LUCAS B D.Generalized I m age Matching by the Method of D iffer2

ences[D].Pittsburgh:Carnegie Mell on University,Robotics I nsti2 tute,1984.

[9] REY NOLDS C W.Fl ocks,herds,and schools:A distributed be2

havi oral model[J].Computer Graphics,1987,21(4):25-34. [10]张芹,吴惠中,谢隽毅,等.基于粒子系统的火焰模型及其生成

方法研究[J].计算机辅助设计与图形学学报,2001,12(1):78 -82.

[11]刘英博,朱旭阳,李思昆.基于可逆序视频的视频纹理合成方法

的研究[J].系统仿真学报,2001,13(S2):20-22.

(上接第3417页)

3r=L i m it8(value);

value=(Yt o I ntY[y]+V t oGreen[v]+U t oGreen[v])>>16;

3g=L i m it8(value);

value=(Yt o I ntY[y]+U t oB lue[u])>>16;

3b=L i m it8(value);

上述代码利用了B lackfin DSP的硬件结构特点,尽可能地利用了乘加寄存器,利用整型运算代替浮点运算,利用移位减少了乘法的使用,大大提高了运算速度。

4 系统测试结果

从采集程序占用DSP内核开销来看,在每块数据传送完成后在DMA中断程序中执行的指令大约有40条,在内核频率为600MHz的B lackfin533DSP上完成一帧320×240大小数据的传送中断程序执行需要的时间约为7μs(不考虑指令并行),占用DSP开销约为0.015%,数据经过格式转换最终在LC D显示屏显示采集图像的延迟时间约为210μs,而系统在没有经过代码优化时显示采集图像的延迟时间约为270μs,速度性能可提升22.2%。本系统与基于PC平台的视频采集系统相比较,具有结构简单、体积小、功耗低等特点,与未经优化的基于DSP核心的视频采集系统相比较,在视频显示速度上有了大幅提高。

5 结语

本系统以B lackfin533为数据处理核心,使用C MOS传感器采集视频,TFT显示屏显示视频,以点击触摸板作为触发信号,特别是在数据格式转换部分进行了代码优化,提升了视频显示的速度,实现了一个完整的视频采集与显示系统。其设计特点为结构简单、体积小、速度快、功耗低、成本低廉。本系统可作为智能监控、便携式视频会议等高端应用的平台,具有较高的实用价值和推广性。

参考文献:

[1] 彭启琮,李玉柏,管庆.DSP技术的发展与应用[M].北京:高等

教育出版社,2007.

[2] 陈峰.基于B lackfin DSP的数字图像处理[M].北京:电子工业出

版社,2009.

[3] I nnolux D is p lay Cor p.PT035T N01V6s pecificati on datasheet[R].

[S.l.]:I nnolux D is p lay Cor p,2006:13-17.

[4] Omnvisi on Cor p.Public0V9653advanced infor mati on p reli m inary

datasheet[R].[S.l.]:Omnvisi on Cor p,2004:16-18.

[5] Anal og Device.B lackfin p r ocess or instructi on set reference[R].[S.

l.]:Anal og Device,2004:21-22.

[6] WANG L Q,SH I Y,LU Z K,et al.M iniaturized C MOS i m aging

module with real2ti m e DSP technol ogy for endoscope and laryngo2 scope app licati ons[J].Journal of Signal Pr ocessing Syste m s,2009,

54(1):7-13.

[7] 罗志强,王耀南.B lackfin533的DMA技术及其在图像处理中的

应用[J].国外电子元器件,2005,15(2):75-79.

[8] Y ANG L,PENG C L,ZHAO D C,et al.Design of a video i m age

recorder system f orwireless cap sule endoscopes based on DSP[C]// World Congress on Medical Physics and B i omedical Engineering 2006.Berlin:Sp ringer,2006:4192-4195.

[9] 徐常志.嵌入式医学影像平台设计研究[D].西安:西安电子科

技大学,2009.

[10]延明.嵌入式实时DSP图像监控系统的设计[J].电子器件,

2006,29(3):814-816.

1243

第12期王长波等:基于视频的景观特效实时模拟

相关文档
相关文档 最新文档