CN103646428A - 一种3d流体场景的合成方法 - Google Patents
一种3d流体场景的合成方法 Download PDFInfo
- Publication number
- CN103646428A CN103646428A CN201310629156.1A CN201310629156A CN103646428A CN 103646428 A CN103646428 A CN 103646428A CN 201310629156 A CN201310629156 A CN 201310629156A CN 103646428 A CN103646428 A CN 103646428A
- Authority
- CN
- China
- Prior art keywords
- synthetic
- frame
- video
- texture
- texture block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种3D流体场景的合成方法,该方法包括输入视频初始化、单针合成和视频合成三个步骤,首先,重建原视频中的流体,将其转化到3D空间,并统计原视频第一帧中所有边缘区域的直方图,利用直方图的统计信息将边缘区域进行近似分类;然后,利用分类的结果进行第一帧的合成,其中用到多带平滑算法去除合成过程中出现的不真实边缘部分;最后,利用第一帧以及第一帧的合成信息,合成后续各帧。本发明能够有效的提取2D视频流体信息,并合成任意大小的3D流体视频,合成的纹理将与原视频纹理保持一致。
Description
技术领域
本发明涉及一种3D流体场景的合成方法,特别是利用流体视频的连续性进行大规模场景合成,使得合成的流体场景更加真实。
背景技术
3D场景合成技术是一项应用性十分广泛的技术,在电子游戏、科幻电影等商业领域大量使用。目前,大部分商用技术采用物理属性重建的方式,缺少使用视频流体合成3D水域场景的方法。物理属性合成的缺点是为了合成真实的水流,需要大量计算运动属性,计算量巨大,耗时严重。而视频流体合成方法,提取了原视频的流体特征进行合成,合成快速,但现有的方法大多在2D场景下合成,不能满足合成3D水流的要求,因此提供基于视频的3D水流场景合成技术具有重要的现实意义和使用价值。
流体运动是一种典型的非刚体运动,具有随机性、多变性等特点。在物体纹理的合成过程中,纹理分为弱纹理和强纹理。弱纹理具有自相似性,其图像变化具有亮度不变性;而视频中的流体部分属于强纹理,其特点是纹理变化快速,随机分布特征明显,多种纹理同时存在,互相融合,因此在合成过程中保持原流体纹理的特征十分重要,一种简单高效的方式是从直接利用原纹理进行合成。
目前,采用视频流体纹理直接合成水流纹理的研究已经有了一些成果。这些研究成果可以在保证与原纹理相似的条件下,合成任意大小、随机分布的水流纹理。随着大量研究资源的投入,这种方法已经可以达到实时合成的要求。但是,在合成结果中,合成的流体都是平面下的不可交互流体,缺少在三维空间合成的有效方式。
发明内容
本发明的目的是针对现有技术中存在的问题而提供的一种有效的3D流体场景的合成方法,利用该方法能得到具有外观真实感的任意面积的3D水流场景。
本发明的目的是这样实现的:
一种3D流体场景的合成方法,它包括以下具体步骤:
a)原视频预处理操作
是将原视频重建到三维空间,并对于每一帧进行灰度直方图统计,利用统计结果进行近似聚类;
b)合成视频初始化
Ⅰ)使用马尔科夫随机场对视频第一帧进行合成,并使用预处理时的聚类信息进行加速,具体步骤:
ⅰ)从三维重建后的原始视频第一帧中随机选择一个纹理块,并贴入拟合成3D流体场景的左上角;定义:拟合成3D流体场景中已合成的纹理为EO,边缘区域为EB,正在匹配的粒子块为BK;
ⅱ)在三维重建后的原始视频第一帧中选择与已合成纹理EO最相似的匹配块BK;匹配相似度由公式(1)计算:
DOB代表两个纹理块的不相似度,代表上一个纹理块中第ith个像素的高度,代表正在匹配块中第ith个像素的高度;当DOB最小时,BK是最相似纹理块,并将其加入EO;为了加快速度,寻找最匹配BK时,只在与上一个匹配块同类的纹理块中查找;
ⅲ)重复步骤ⅱ),直到第一帧合成完毕;
Ⅱ)为使马尔科夫随机场的合成效果更精确,对合成过程中任意两个相邻纹理块的重叠区域进行多带平滑,步骤如下:
ⅰ)分别对左右两边的纹理块建立拉普拉斯金字塔LA、LB;
ⅱ)建立第三个金字塔LT,LT各层的右半边等于LA各层的右半边粒子,左半边等于LB的左半边粒子,各层的中间粒子等于LA与LB各层中间粒子的平均值;
其中(x,y)代表了某一个特定粒子的坐标,N代表了合成块的宽度是2N+1;
ⅲ)将LT各层叠加即得到第一帧合成的精确结果;
c)3D流体场景的合成
ⅰ)记录合成第一帧时各纹理块在原视频中的坐标;
ⅱ)加宽各个纹理块的相邻区域,并计算其在原视频中的坐标;
ⅲ)利用纹理块的坐标合成后续各帧,即从对应的视频帧中将相应坐标的纹理块贴入合成场景,并对相邻纹理块的重叠区域进行多带平滑,得到3D流体场景。
本发明从视频中提取流体信息合成3D流体场景,提高了流体仿真的真实性。同时,由于加速算法的加入,合成速度远远快于传统方法。
附图说明
图1为单帧合成过程的示意图;
图2为视频合成过程的示意图;
图3为单帧合成结果展示图;
图4是连续四帧的合成结果示意图;
图5是本方法与另外两种方法的对比图。
具体实施方式
下面详细叙述本发明:
(1)原视频预处理操作
利用三维重建将原视频重建到三维空间,然后统计原视频第一帧中每个像素所在区域的直方图,利用直方图统计信息降低聚类方法中聚类向量的维度,使用低维度的聚类方法将初始帧的所有区域聚类。具体步骤如下:
1)运用光照模型重建整个输入视频,并结合将极限波、最高峰等信息优化合成结果,得到准确的水流高度场。
2)找到第一帧的高度场中的最大值和最小值,记其差值为Range,并将Range平分为一百份。
3)对于高度场中所有4*50(宽*高)区域进行统计,记录该区域中各个高度层中的粒子数。
4)以统计信息中的粒子数最大的五个高度层为信息源,使用这五个层的高度值以及每个高度的粒子数为该区域的聚类向量,将所有这些4*50的区域聚到十个类中(可采用k-means的方法)。其中两个向量的距离被定义为Dij:
降低向量的维度能有效提高算法的速度。对于普通的K-means聚类方法来说,时间复杂度为:
T=kmN (4)
其中,k代表聚类的样本数,m代表向量的维度,N代表聚类的类数。
对于一般的合成过程来说,重叠区域被定义为4*50,m为200,使得算法复杂度高。利用主成分聚类后,m降为5,将复杂度减小40倍,保证合成过程的实时性。
其中,聚类数的确立很大程度上影响了方法的实时性;合成过程的总复杂度为(包括预处理、初始化和视频合成三个部分):
其中,n代表每个合成区域的像素数,M代表一个粒子块中的粒子数,t代表计算两个粒子块之间距离的时间。
根据公式5的性质,当
时,T取得最小。
当T最小时,可以得到
一般情况下,n、M、m的数量级分别是106,103和101,也意味着N应该取10左右。
同时,也可得到整个算法的复杂度为106,可以在一台普通的个人电脑上实时运行。
(2)合成视频初始化
利用聚类的结果,采用马尔科夫随机场的合成3D大面积水流,其中用到多带分布平滑优化合成结果;其具体步骤如下:
1)从原始视频第一帧中随机选择一个块,并贴入合成纹理的左上角。如图1所示,EO是已经合成的场景,EB是边缘区域,BK是正在匹配的粒子块。
2)按照直方图的分类结果,在上一个合成块所在的类中寻找匹配的下一个合成块,匹配相似度由公式(1)计算;
3)重复步骤2),直到第一帧合成完成。
由于在合成过程中将不同的水流块进行拼接,这就无法避免边缘不匹配的现象,因此需要进行平滑,采用多带平滑进行优化,具体步骤如下:
分别对左右两边的流体块建立拉普拉斯金字塔LA、LB。
建立第三个金字塔LT,LT各层的右半边等于LA各层的右半边粒子,左半边等于LB的左半边粒子,各层的中间粒子等于LA与LB各层中间粒子的平均值,如公式2所示:
其中(x,y)代表了某一个特定粒子的坐标,N代表了合成块的宽度是2N+1。
将LT各层叠加,得到相应各帧的合成结果。
(3)3D流体场景的合成
为了保证合成过程的实时性,并不是对于每一帧都采用上述方法进行合成,而是采用信息传递的方式,利用原视频的连续性进行合成;具体步骤如下:
1)第一帧合成过程中记录每一个粒子块在原视频中的位置,并将这些位置传递到后续各帧。
2)调整各帧中收到的这些位置信息,使得各块重叠区域的宽度变为原来的两倍,有效的纹理区域的相对位置不变;参见图2,图中,(a)图表示第一帧的原图像,(b)图表示第一帧的合成图像,(c)图表示后续某帧的原图像,(d)是(c)图对应的合成图像。和是对应的两个纹理块,与对应。
3)运用调整后的位置信息从原视频高度场中提取粒子块进行合成,并用多带平滑的方法优化边缘,得到合成的3D流体场景。
实施例
本实施例采用DynTex动态纹理库中的54ab110、54pf110、571b310、649h610、649de10、571b110、645c310、649cf20、649h320、649h320、6489810和649cj10进行合成实验。在PC机上Windows7操作系统下进行了计算,其硬件配置是2.66GHz Intel Core(TM)2Duo CPU、4GB RAM。
1)运用光照模型重建视频,并对算得的高度场进行优化,其中用到:
计算高度优化值。
EW=0.13*2*Wa (9)
计算极限波。
计算最终波高。
2)对于每一组视频,得到第一帧的高度场中的最大值和最小值,记其差值为Range,这里将Range平分为一百份。
3)对于高度场中所有4*50(宽*高)区域进行统计,记录该区域中各个高度层中的粒子数。
4)为了加快聚类算法,这里将聚类向量定位5,并将聚类数定位10,将所有4*50的区域聚到10个类中。
5)从原始视频第一帧中随机选择一个块,并贴入合成纹理的左上角。
6)按照直方图的分类结果,在上一个合成块所在的类中寻找匹配的下一个合成块,匹配值由公式(1)计算。
7)对于相邻两块进行拉普拉斯金字塔建立。
8)利用步骤7中得到的两个金字塔建立第三个金字塔,具体方法如公式2。
9)将第三个金字塔每一层迭加,得到平滑后的图像,代替原来的重叠区域。
10)重复步骤6)-9),直到整个场景合成完毕,单帧合成完成。
11)将第一帧的合成位置信息传递到后续各帧。
12)调整各帧中收到的这些位置信息,使得各块重叠区域的宽度变为原来的两倍,有效的纹理区域的相对位置不变。
13)按照步骤2)-10)完成一帧的合成。
14)重复步骤12)-13),直到整个3D水流视频合成完毕,合成结果参照图3及图4。从图3可以看出合成结果让人满意,边界平滑较成功,看不出人工修改的痕迹。图4中可以看到连续四帧的连续性较好,波浪缓慢生成、消失。
为了和现有的一些方法进行对比,分别采用基于像素的合成方法(使用TSVQ加速)和基于块的合成方法(使用图割优化)。由于这两种方法都是在二维空间下合成的,也将合成的结果投到二维空间与其对比。从图5中可以清晰地看到本发明克服了基于像素方法中纹理丢失的现象,和基于图割优化方法中人工修改痕迹明显的缺点。
从图3、4及5中外观上看出本发明取得的良好效果。为了更进一步验证此方法的有效性,从差异值出发,以量化的方法衡量此方法的合成结果。
由于在3D水域中水流的平稳度取决与水体粒子的高度,使用公式(11)、(12)来衡量合成场景与原场景的相似程度。
Gi代表场景中第i个粒子的高度,GA代表该场景中所有粒子高度的平均值,p是该场景中粒子的个数。vL是合成前左侧区域的V值,vR是合成前右侧区域的V值,vM是合成后区域的V值。
从公式12中可以看出score代表了合成区域与原区域的相似程度。对于一次合成中所有重叠区域计算score值,并统计score值的分布情况。表1是与图3中合成结果相对应的score值统计结果。
表1
从表1中可以看到大部分区域的Score值在0.95到1之间,说明与原图有很好的相似度,并且合成结果比较平滑,说明本发明可以取得很好的效果。
表2显示了本发明的时间性能,以及之前一些方法的时间性能,从表中可以看出,本发明在合成3D场景的基础上可以达到实时的效果,并且能快于之前2D的合成方法。
表2
Claims (1)
1.一种3D流体场景的合成方法,其特征在于该方法包括以下具体步骤:
a)原视频预处理操作
是将原视频重建到三维空间,并对于每一帧进行灰度直方图统计,利用统计结果进行近似聚类;
b)合成视频初始化
Ⅰ)使用马尔科夫随机场对视频第一帧进行合成,并使用预处理时的聚类信息进行加速,具体步骤:
ⅰ)从三维重建后的原始视频第一帧中随机选择一个纹理块,并贴入拟合成3D流体场景的左上角;定义:拟合成3D流体场景中已合成的纹理为EO,边缘区域为EB,正在匹配的粒子块为BK;
ⅱ)在三维重建后的原始视频第一帧中选择与已合成的纹理EO最相似的匹配粒子块BK;匹配相似度由公式(1)计算:
DOB代表两个纹理块的不相似度,代表上一个纹理块中第ith个像素的高度,代表正在匹配块中第ith个像素的高度;当DOB最小时,BK是最相似纹理块,并将其加入EO;为了加快速度,寻找最匹配BK时,只在与上一个匹配块同类的纹理块中查找;
ⅲ)重复步骤ⅱ),直到第一帧合成完毕;
Ⅱ)为使马尔科夫随机场的合成效果更精确,对合成过程中任意两个相邻纹理块的重叠区域进行多带平滑,步骤如下:
ⅰ)分别对左右两边的纹理块建立拉普拉斯金字塔LA、LB;
ⅱ)建立第三个金字塔LT,LT各层的右半边等于LA各层的右半边粒子,左半边等于LB的左半边粒子,各层的中间粒子等于LA与LB各层中间粒子的平均值;
其中(x,y)代表了某一个特定粒子的坐标,N代表了合成块的宽度是2N+1;
ⅲ)将LT各层叠加即得到第一帧合成的精确结果;
c)3D流体场景的合成
ⅰ)记录合成第一帧时各纹理块在原视频中的坐标;
ⅱ)加宽各个纹理块的相邻区域,并计算其在原视频中的坐标;
ⅲ)利用纹理块的坐标合成后续各帧,即从对应的视频帧中将相应坐标的纹理块贴入合成场景,并对相邻纹理块的重叠区域进行多带平滑,得到3D流体场景。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310629156.1A CN103646428B (zh) | 2013-11-29 | 2013-11-29 | 一种3d流体场景的合成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310629156.1A CN103646428B (zh) | 2013-11-29 | 2013-11-29 | 一种3d流体场景的合成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103646428A true CN103646428A (zh) | 2014-03-19 |
CN103646428B CN103646428B (zh) | 2016-06-01 |
Family
ID=50251638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310629156.1A Expired - Fee Related CN103646428B (zh) | 2013-11-29 | 2013-11-29 | 一种3d流体场景的合成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103646428B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104050718A (zh) * | 2014-07-03 | 2014-09-17 | 华东师范大学 | 具有时空连续性的真实感三维流体场景合成方法 |
CN105488760A (zh) * | 2015-12-08 | 2016-04-13 | 电子科技大学 | 基于流场的虚拟图像拼接方法 |
CN107085629A (zh) * | 2017-03-28 | 2017-08-22 | 华东师范大学 | 一种基于视频重建与欧拉模型耦合的流体仿真方法 |
CN115797535A (zh) * | 2023-01-05 | 2023-03-14 | 深圳思谋信息科技有限公司 | 一种三维模型纹理贴图方法及相关装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW479209B (en) * | 1997-06-30 | 2002-03-11 | Inst Information Industry | Virtual reality interface generating device |
US7010158B2 (en) * | 2001-11-13 | 2006-03-07 | Eastman Kodak Company | Method and apparatus for three-dimensional scene modeling and reconstruction |
CN101807304A (zh) * | 2010-03-23 | 2010-08-18 | 中国科学院软件研究所 | 一种基于复用的纹理合成方法 |
CN102737097A (zh) * | 2012-03-30 | 2012-10-17 | 北京峰盛博远科技有限公司 | 基于lod透明纹理的三维矢量实时动态叠加技术 |
-
2013
- 2013-11-29 CN CN201310629156.1A patent/CN103646428B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW479209B (en) * | 1997-06-30 | 2002-03-11 | Inst Information Industry | Virtual reality interface generating device |
US7010158B2 (en) * | 2001-11-13 | 2006-03-07 | Eastman Kodak Company | Method and apparatus for three-dimensional scene modeling and reconstruction |
CN101807304A (zh) * | 2010-03-23 | 2010-08-18 | 中国科学院软件研究所 | 一种基于复用的纹理合成方法 |
CN102737097A (zh) * | 2012-03-30 | 2012-10-17 | 北京峰盛博远科技有限公司 | 基于lod透明纹理的三维矢量实时动态叠加技术 |
Non-Patent Citations (1)
Title |
---|
俞铭琪等: ""真实感流体实时重建"", 《计算机辅助设计与图形学学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104050718A (zh) * | 2014-07-03 | 2014-09-17 | 华东师范大学 | 具有时空连续性的真实感三维流体场景合成方法 |
CN104050718B (zh) * | 2014-07-03 | 2017-02-15 | 华东师范大学 | 具有时空连续性的真实感三维流体场景合成方法 |
CN105488760A (zh) * | 2015-12-08 | 2016-04-13 | 电子科技大学 | 基于流场的虚拟图像拼接方法 |
CN107085629A (zh) * | 2017-03-28 | 2017-08-22 | 华东师范大学 | 一种基于视频重建与欧拉模型耦合的流体仿真方法 |
CN107085629B (zh) * | 2017-03-28 | 2020-05-12 | 华东师范大学 | 一种基于视频重建与欧拉模型耦合的流体仿真方法 |
CN115797535A (zh) * | 2023-01-05 | 2023-03-14 | 深圳思谋信息科技有限公司 | 一种三维模型纹理贴图方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103646428B (zh) | 2016-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xie et al. | Style-based point generator with adversarial rendering for point cloud completion | |
CN111832655B (zh) | 一种基于特征金字塔网络的多尺度三维目标检测方法 | |
Xu et al. | Grid-guided neural radiance fields for large urban scenes | |
CN103246884B (zh) | 基于深度图像序列的实时人体动作识别方法及装置 | |
CN103366400B (zh) | 一种三维头像自动生成方法 | |
CN106446936B (zh) | 基于卷积神经网络的空谱联合数据转波形图的高光谱数据分类方法 | |
Lu et al. | Attention-based dense point cloud reconstruction from a single image | |
CN103646428B (zh) | 一种3d流体场景的合成方法 | |
CN102609950B (zh) | 一种二维视频深度图的生成方法 | |
CN101882150B (zh) | 一种基于核密度估计的三维模型比较和检索方法 | |
CN104616286A (zh) | 快速的半自动多视图深度修复方法 | |
CN103413322A (zh) | 序列视频关键帧提取方法 | |
CN103854301A (zh) | 基于复杂背景下可见外壳的三维重建方法 | |
CN103714574A (zh) | 一种基于gpu加速的海中场景建模与实时交互绘制方法 | |
Fang et al. | Neusample: Neural sample field for efficient view synthesis | |
CN108986218A (zh) | 一种基于pmvs的建筑物密集点云快速重建方法 | |
CN102208033A (zh) | 基于数据聚类的鲁棒sift特征匹配方法 | |
CN102637304B (zh) | 基于gpu的几何表面上各向同性/异性纹理合成方法 | |
CN100504911C (zh) | 一种从头肩的三维扫描原始数据中自动提取脸部区域的方法 | |
CN101930452A (zh) | 基于智能计算的多粒度图像检索方法 | |
CN105243137A (zh) | 一种基于草图的三维模型检索视点选择方法 | |
Peng et al. | RGB-D human matting: A real-world benchmark dataset and a baseline method | |
CN102289661A (zh) | 一种基于谱匹配的三维网格模型的匹配方法 | |
Hu et al. | R-CNN based 3D object detection for autonomous driving | |
CN112489097A (zh) | 基于混合2d卷积和伪3d卷积的立体匹配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160601 Termination date: 20191129 |
|
CF01 | Termination of patent right due to non-payment of annual fee |