一種3d流體場景的合成方法
【專利摘要】本發(fā)明公開了一種3D流體場景的合成方法,該方法包括輸入視頻初始化、單針合成和視頻合成三個(gè)步驟,首先,重建原視頻中的流體,將其轉(zhuǎn)化到3D空間,并統(tǒng)計(jì)原視頻第一幀中所有邊緣區(qū)域的直方圖,利用直方圖的統(tǒng)計(jì)信息將邊緣區(qū)域進(jìn)行近似分類;然后,利用分類的結(jié)果進(jìn)行第一幀的合成,其中用到多帶平滑算法去除合成過程中出現(xiàn)的不真實(shí)邊緣部分;最后,利用第一幀以及第一幀的合成信息,合成后續(xù)各幀。本發(fā)明能夠有效的提取2D視頻流體信息,并合成任意大小的3D流體視頻,合成的紋理將與原視頻紋理保持一致。
【專利說明】一種3D流體場景的合成方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種3D流體場景的合成方法,特別是利用流體視頻的連續(xù)性進(jìn)行大規(guī)模場景合成,使得合成的流體場景更加真實(shí)。
【背景技術(shù)】
[0002]3D場景合成技術(shù)是一項(xiàng)應(yīng)用性十分廣泛的技術(shù),在電子游戲、科幻電影等商業(yè)領(lǐng)域大量使用。目前,大部分商用技術(shù)采用物理屬性重建的方式,缺少使用視頻流體合成3D水域場景的方法。物理屬性合成的缺點(diǎn)是為了合成真實(shí)的水流,需要大量計(jì)算運(yùn)動(dòng)屬性,計(jì)算量巨大,耗時(shí)嚴(yán)重。而視頻流體合成方法,提取了原視頻的流體特征進(jìn)行合成,合成快速,但現(xiàn)有的方法大多在2D場景下合成,不能滿足合成3D水流的要求,因此提供基于視頻的3D水流場景合成技術(shù)具有重要的現(xiàn)實(shí)意義和使用價(jià)值。
[0003]流體運(yùn)動(dòng)是一種典型的非剛體運(yùn)動(dòng),具有隨機(jī)性、多變性等特點(diǎn)。在物體紋理的合成過程中,紋理分為弱紋理和強(qiáng)紋理。弱紋理具有自相似性,其圖像變化具有亮度不變性;而視頻中的流體部分屬于強(qiáng)紋理,其特點(diǎn)是紋理變化快速,隨機(jī)分布特征明顯,多種紋理同時(shí)存在,互相融合,因此在合成過程中保持原流體紋理的特征十分重要,一種簡單高效的方式是從直接利用原紋理進(jìn)行合成。
[0004]目前,采用視頻流體紋理直接合成水流紋理的研究已經(jīng)有了一些成果。這些研究成果可以在保證與原紋理相似的條件下,合成任意大小、隨機(jī)分布的水流紋理。隨著大量研究資源的投入,這種方法已經(jīng)可以達(dá)到實(shí)時(shí)合成的要求。但是,在合成結(jié)果中,合成的流體都是平面下的不可交互流體,缺少在三維空間合成的有效方式。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的是針對現(xiàn)有技術(shù)中存在的問題而提供的一種有效的3D流體場景的合成方法,利用該方法能得到具有外觀真實(shí)感的任意面積的3D水流場景。
[0006]本發(fā)明的目的是這樣實(shí)現(xiàn)的:
[0007]—種3D流體場景的合成方法,它包括以下具體步驟:
[0008]a)原視頻預(yù)處理操作
[0009]是將原視頻重建到三維空間,并對于每一幀進(jìn)行灰度直方圖統(tǒng)計(jì),利用統(tǒng)計(jì)結(jié)果進(jìn)行近似聚類;
[0010]b)合成視頻初始化
[0011]I)使用馬爾科夫隨機(jī)場對視頻第一幀進(jìn)行合成,并使用預(yù)處理時(shí)的聚類信息進(jìn)行加速,具體步驟:
[0012]i )從三維重建后的原始視頻第一幀中隨機(jī)選擇一個(gè)紋理塊,并貼入擬合成3D流體場景的左上角;定義:擬合成3D流體場景中已合成的紋理為Etj,邊緣區(qū)域?yàn)镋b,正在匹配的粒子塊為Bk ;
[0013]ii)在三維重建后的原始視頻第一幀中選擇與已合成紋理Etj最相似的匹配塊Bk ;匹配相似度由公式(I)計(jì)算:
[0014]
【權(quán)利要求】
1.一種3D流體場景的合成方法,其特征在于該方法包括以下具體步驟: a)原視頻預(yù)處理操作 是將原視頻重建到三維空間,并對于每一幀進(jìn)行灰度直方圖統(tǒng)計(jì),利用統(tǒng)計(jì)結(jié)果進(jìn)行近似聚類; b)合成視頻初始化 I )使用馬爾科夫隨機(jī)場對視頻第一幀進(jìn)行合成,并使用預(yù)處理時(shí)的聚類信息進(jìn)行加速,具體步驟: i)從三維重建后的原始視頻第一幀中隨機(jī)選擇一個(gè)紋理塊,并貼入擬合成3D流體場景的左上角;定義:擬合成3D流體場景中已合成的紋理為Etj,邊緣區(qū)域?yàn)镋b,正在匹配的粒子塊為Bk ; ii)在三維重建后的原始視頻第一幀中選擇與已合成的紋理Etj最相似的匹配粒子塊Bk ;匹配相似度由公式(I)計(jì)算:
N-\ DOB = Y\h'o-K\⑴
?=? Dtffi代表兩個(gè)紋理塊的不相似度,4代表上一個(gè)紋理塊中第ith個(gè)像素的高度,<代表正在匹配塊中第ith個(gè)像素的高度;當(dāng)Dm最小時(shí),Bk是最相似紋理塊,并將其加入Etj ;為了加快速度,尋找最匹配Bk時(shí),只在與上一個(gè)匹配塊同類的紋理塊中查找;iii)重復(fù)步驟?),直到第一幀合成完畢; II)為使馬爾科夫隨機(jī)場的合成效果更精確,對合成過程中任意兩個(gè)相鄰紋理塊的重疊區(qū)域進(jìn)行多帶平滑,步驟如下: i)分別對左右兩邊的紋理塊建立拉普拉斯金字塔La、Lb ; ? )建立第三個(gè)金字塔LT,Lt各層的右半邊等于La各層的右半邊粒子,左半邊等于Lb的左半邊粒子,各層的中間粒子等于La與Lb各層中間粒子的平均值;
4(1,y)x<N + l
LT=\[LA(x,y) + LB(x,y)]/2 x = N + \< 2)
Z^(x,_v)x> N + 1 其中(x,y)代表了某一個(gè)特定粒子的坐標(biāo),N代表了合成塊的寬度是2N+1 ; iii)將Lt各層疊加即得到第一幀合成的精確結(jié)果; c)3D流體場景的合成 i)記錄合成第一幀時(shí)各紋理塊在原視頻中的坐標(biāo);? )加寬各個(gè)紋理塊的相鄰區(qū)域,并計(jì)算其在原視頻中的坐標(biāo);iii)利用紋理塊的坐標(biāo)合成后續(xù)各幀,即從對應(yīng)的視頻幀中將相應(yīng)坐標(biāo)的紋理塊貼入合成場景,并對相鄰紋理塊的重疊區(qū)域進(jìn)行多帶平滑,得到3D流體場景。
【文檔編號(hào)】G06T19/20GK103646428SQ201310629156
【公開日】2014年3月19日 申請日期:2013年11月29日 優(yōu)先權(quán)日:2013年11月29日
【發(fā)明者】全紅艷, 薛漢昱, 俞銘琪 申請人:華東師范大學(xué)