国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于數(shù)據(jù)驅(qū)動(dòng)的流體動(dòng)畫加速生成方法

      文檔序號(hào):10657023閱讀:500來源:國知局
      基于數(shù)據(jù)驅(qū)動(dòng)的流體動(dòng)畫加速生成方法【專利摘要】一種基于數(shù)據(jù)驅(qū)動(dòng)的流體動(dòng)畫加速生成方法,利用訓(xùn)練樣本訓(xùn)練完成之后的人工神經(jīng)網(wǎng)絡(luò)作為求解器,在歐拉法流體模擬過程中投影步的求解十分迅速,并且可以在快速求解的同時(shí)保持較小的求解誤差,從而保證了求解結(jié)果的準(zhǔn)確性。本發(fā)明利用之前在投影步前后計(jì)算得到的訓(xùn)練數(shù)據(jù),經(jīng)過人工神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,調(diào)整人工神經(jīng)網(wǎng)絡(luò)的傳輸節(jié)點(diǎn)權(quán)值,直接得到最終的計(jì)算模型,完全避免原本耗時(shí)的投影步數(shù)值計(jì)算過程。本發(fā)明適用于歐拉法模擬流體動(dòng)畫時(shí),大幅加速求解投影步計(jì)算?!緦@f明】基于數(shù)據(jù)驅(qū)動(dòng)的流體動(dòng)畫加速生成方法
      技術(shù)領(lǐng)域
      [0001]本發(fā)明設(shè)及的是一種圖像處理領(lǐng)域的技術(shù),具體是一種借助大量訓(xùn)練數(shù)據(jù)W及人工神經(jīng)網(wǎng)絡(luò),極大加速歐拉法生成流體動(dòng)畫過程中最為耗時(shí)的投影步的方法?!?br>背景技術(shù)
      】[0002]基于物理的流體模擬是計(jì)算機(jī)圖形學(xué)中的重要研究方向之一?;谖锢淼牧黧w模擬過程需要求解化Vier-Stokes方程(NS方程)。但因?yàn)榇朔匠淌且粋€(gè)非線性偏微分方程,拉格朗日法與歐拉方法分別被用于NS方程的離散化求解中。在高精度流體模擬領(lǐng)域,歐拉方法被廣泛應(yīng)用。但是,歐拉法需要在投影步求解泊松方程得到壓強(qiáng),消耗了大量的計(jì)算資源。[0003]近年來,大數(shù)據(jù)W及機(jī)器學(xué)習(xí)方法被逐漸用于各個(gè)研究領(lǐng)域。作為深度學(xué)習(xí)的基礎(chǔ)結(jié)構(gòu),人工神經(jīng)網(wǎng)絡(luò)是一種模仿生物神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和功能的計(jì)算模型,常用來對(duì)輸入和輸出間復(fù)雜的關(guān)系進(jìn)行建模。人工神經(jīng)網(wǎng)絡(luò)可W通過增加隱藏層的數(shù)目來有效增強(qiáng)輸入數(shù)據(jù)與輸出數(shù)據(jù)之間的隱藏非線性關(guān)系,從而非常適合用于NS方程中投影步的非線性計(jì)算過程的建模。同時(shí),經(jīng)過大量數(shù)據(jù)訓(xùn)練完成的人工神經(jīng)網(wǎng)絡(luò)求解投影步,可W大大加速投影步的求解過程。[0004]目前,已有的加速方法是采用更高效的數(shù)值方法加速求解流體方程,尤其是泊松方程的求解過程,例如取代早期的高斯賽德爾迭代法的預(yù)處理共扼梯度法。加速求解的另一種思路是使用復(fù)合網(wǎng)格,目的是將更多的計(jì)算資源分配在我們更感興趣的區(qū)域,最終在保持動(dòng)畫視覺效果不變的條件下加速了計(jì)算過程。但復(fù)合網(wǎng)格的問題在于對(duì)于不同的流體場景魯棒性較差,而且維護(hù)不同形狀網(wǎng)格的運(yùn)動(dòng)過程非常復(fù)雜。[0005]數(shù)據(jù)驅(qū)動(dòng)的方法已經(jīng)在各種物理過程的模擬中廣泛使用。在流體模擬領(lǐng)域,最常見的方法就是降維,將求解過程轉(zhuǎn)換到一個(gè)低維度的空間后再求解,例如主成分分析。雖然在視覺效果上有著大量缺失,但是計(jì)算過程可W大大加速;另一種常見的數(shù)據(jù)驅(qū)動(dòng)方法就是插值,通過已有的流體模擬數(shù)據(jù)預(yù)測生成未直接模擬的場景中的流體運(yùn)動(dòng)過程。[0006]中國專利文獻(xiàn)號(hào)CN201110077969,【公開日】2011-08-10,提供了一種"基于可移動(dòng)歐拉網(wǎng)格的模擬驅(qū)動(dòng)的煙霧模擬方法"。該專利提出了一種基于歐拉網(wǎng)格的煙霧模擬方法,主要包括=個(gè)步驟:1)使用歐拉網(wǎng)格離散化計(jì)算出煙霧的運(yùn)動(dòng)狀態(tài);2)使用模型驅(qū)動(dòng)歐拉網(wǎng)格中的煙霧運(yùn)動(dòng),同時(shí)計(jì)算其運(yùn)動(dòng)狀態(tài)變化;3)使用改進(jìn)的體繪制方法使得模擬的煙霧可視化。該專利利用模型驅(qū)動(dòng)的方法加速了煙霧模擬速度。但是當(dāng)無法準(zhǔn)確模擬模型中不存在的的煙霧狀態(tài),應(yīng)用局限性較大。[0007]AdrienTreuille等人在《ACMTransactiononGraphics》上發(fā)表的《Modelreductionforreal-timefluids》(2006年)一文中通過收集大量場景的模擬計(jì)算數(shù)據(jù),利用主成分分析方法找到維度較低的基函數(shù),從而將原有的求解空間大幅降維,在低維空間中求解后再將解映射回到高維空間。但是運(yùn)種方法極大地?fù)p失了動(dòng)畫的模擬精度,同時(shí)在低維空間上求解速度有著進(jìn)一步加快的潛力。[000引LuborLadicky和BarbaraSolenthaler等人在《ACMIYansactiononGra地ics》上發(fā)表白勺《Data-drivenFluidSimulationsusingRegressionForests》(2015年)一文中提出將整個(gè)拉格朗日方法中的流體模擬過程視為一個(gè)回歸問題。預(yù)處理步驟中,通過歷史數(shù)據(jù)訓(xùn)練回歸森林。訓(xùn)練完成后,輸入鄰域粒子的狀態(tài),就可W根據(jù)已有數(shù)據(jù)快速得到當(dāng)前粒子下一帖的近似速度值。然而運(yùn)種方法在歐拉方法中的流體模擬過程中并不能適用?!?br/>發(fā)明內(nèi)容】[0009]本發(fā)明的目的在于克服上述現(xiàn)有技術(shù)存在的不足,提出了一種基于數(shù)據(jù)驅(qū)動(dòng)的流體動(dòng)畫加速生成方法,針對(duì)框架中最為耗時(shí)的投影步求解方式進(jìn)行基于數(shù)據(jù)驅(qū)動(dòng)的改進(jìn),從而使得本發(fā)明易于拓展到各種基于歐拉法的方法中。[0010]本發(fā)明通過W下技術(shù)方案實(shí)現(xiàn):[0011]本發(fā)明設(shè)及一種基于數(shù)據(jù)驅(qū)動(dòng)的流體動(dòng)畫加速生成方法,包括W下步驟:[0012]步驟一,采集流體動(dòng)畫模擬的歐拉法中投影步的訓(xùn)練樣本并生成訓(xùn)練數(shù)據(jù)集,即采用化Vier-Stokes方程表征流體運(yùn)動(dòng)的物理描述,該方程包括描述流體單元速度的基本方程,即第①部分和限制流體運(yùn)動(dòng)過程中的不可壓縮性的第②部分,具體為:[0013][0014][0015]其中:表示流體單元密度,U表示流體單元速度,t表示流體動(dòng)畫模擬時(shí)間,P表示流體壓強(qiáng),G表示流體粘度,f表示流體所受到的外力。[0016]常規(guī)的歐拉法如化SStam在《ACMSIGGRAPH'99PR0CE抓INGS》上發(fā)表的《StableFluids》中提到的穩(wěn)定歐拉法,即首先將整個(gè)求解空間劃分為若干個(gè)規(guī)則的立方體歐拉網(wǎng)格,再去求解上述方程。[0017]本發(fā)明采用改進(jìn)型的歐拉法,包括:對(duì)流步、外力步、擴(kuò)散步和基于數(shù)據(jù)驅(qū)動(dòng)的投影步,對(duì)流步的求解過程表示流體在對(duì)流過程中,屬性值(壓強(qiáng)、速度)不發(fā)生任何變化,只是不斷發(fā)生位置的移動(dòng)。外力項(xiàng)與擴(kuò)散步的核屯、求解過程在于得到每個(gè)流體網(wǎng)格中計(jì)算流體單元的受力情況,并且計(jì)算加速度之后對(duì)速度進(jìn)行修改即可。其中投影步的求解使用的是耗時(shí)的常規(guī)數(shù)值解法(例如共輛梯度法、高斯塞德爾迭代法等)。[0018]所述的基于數(shù)據(jù)驅(qū)動(dòng)的投影步具體是指:第n帖中投影步的流體單元X的速度Un(X)由流體動(dòng)畫模擬的時(shí)間步長At,流體單元密度P,流體壓強(qiáng)P求解得到:通過歐拉法進(jìn)行離散化求解之后,得到具體的求解過程需要依靠于該流體單元上下左右前后6個(gè)位置的流體單元的相關(guān)屬性,因此得到離散化的方程為:三維空間位置為(X,y,Z)處的流體單元,Un(X)表示流體單元X的速度,At表示流體動(dòng)畫模擬的時(shí)間步長,P表示流體單元密度,h表示網(wǎng)格法流體單元的網(wǎng)格邊長。[0020]利用共輛梯度法求解該離散化的方程,并記錄此方程求解所需的已知量作為輸入向量,此方程的未知量作為輸出向量,輸入向量與輸出向量組成一組樣本;對(duì)于歐拉法求解過程中每一帖、離散空間中每一個(gè)網(wǎng)格,均收集一組樣本作為訓(xùn)練數(shù)據(jù)集。[0021]步驟二,利用步驟一中得到的訓(xùn)練數(shù)據(jù)集構(gòu)建并訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)。[0022]所述的人工神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)從輸入到輸出的順序?yàn)?輸入層、隱含層、輸出層,該人工神經(jīng)網(wǎng)絡(luò)采用GeoffreyE.Hinton和RusIanR.Salakhutdinov于2006年在《Science》上發(fā)表的名為《ReducingtheDimensionalityofDatawith化uralNetworks》中提到的方法進(jìn)行構(gòu)建和訓(xùn)練。構(gòu)建與訓(xùn)練的具體步驟為:[0023]2.1)輸入層的節(jié)點(diǎn)數(shù)與步驟一中輸入向量的維度相同,每組樣本的輸入向量中各個(gè)維度的值與輸入層對(duì)應(yīng)節(jié)點(diǎn)的值相同。輸入層的每一個(gè)節(jié)點(diǎn)均與最左側(cè)隱含層中每個(gè)節(jié)點(diǎn)互相連接。[0024]2.2)輸出層的節(jié)點(diǎn)數(shù)與步驟一中輸出向量的維度相同,每組樣本的輸出向量中各個(gè)維度的值與輸出層對(duì)應(yīng)節(jié)點(diǎn)的值相同。最右側(cè)隱含層中每個(gè)節(jié)點(diǎn)均與輸出層的每一個(gè)節(jié)點(diǎn)互相連接。[0025]2.3)隱含層是對(duì)于一個(gè)或多個(gè)層的統(tǒng)稱,具體的層數(shù)視人工神經(jīng)網(wǎng)絡(luò)需要描述的非線性關(guān)系的復(fù)雜程度決定。隱含層層數(shù)、隱含節(jié)點(diǎn)數(shù)W及不同層節(jié)點(diǎn)之間的連接權(quán)值需要步驟一中的訓(xùn)練數(shù)據(jù)集W所有樣本與輸出層的誤差和最小為優(yōu)化目標(biāo)不斷循環(huán)訓(xùn)練、調(diào)整。[0026]所述的循環(huán),其停止條件為輸出層誤差縮小到闊值之內(nèi)或輸出層誤差的下降梯度縮小到闊值之內(nèi),同時(shí)在此基礎(chǔ)上使得隱含層的層數(shù)與各層上的節(jié)點(diǎn)數(shù)更少,即消耗更少的計(jì)算資源。[0027]所述的輸出層誤差為各個(gè)輸出節(jié)點(diǎn)上真實(shí)值與模擬值之間的歐式距離之和,即S=E(areal-asim)2,其中:area功輸出節(jié)點(diǎn)上真實(shí)值,asim為輸出節(jié)點(diǎn)上模擬值。[0028]2.4)得到輸出層誤差之后,需要利用人工神經(jīng)網(wǎng)絡(luò)反向傳遞算法,得到隱含層中每層的每個(gè)隱含節(jié)點(diǎn)的誤差。已知每個(gè)隱含層W及輸出層上每個(gè)節(jié)點(diǎn)的誤差之后,可W利用梯度下降法調(diào)整不同層節(jié)點(diǎn)之間的連接權(quán)值,使得在隱含層層數(shù)固定、各層上節(jié)點(diǎn)數(shù)固定是該神經(jīng)網(wǎng)絡(luò)的非線性擬合能力達(dá)到最好。[0029]步驟=,利用訓(xùn)練后的人工神經(jīng)網(wǎng)絡(luò)實(shí)施歐拉法,逐帖進(jìn)行流體動(dòng)畫模擬并得到對(duì)應(yīng)該帖的投影結(jié)果,用該投影結(jié)果更新歐拉法中投影步之后每個(gè)網(wǎng)格內(nèi)的屬性值(壓強(qiáng)、速度)并繪制當(dāng)前帖流體動(dòng)畫。[0030]目P:歐拉法將方程的求解過程分為了四個(gè)步驟:對(duì)流步、外力步、擴(kuò)散步、投影步。首先正常求解流體運(yùn)動(dòng)過程中的對(duì)流步、外力步、擴(kuò)散步。[0031]當(dāng)擴(kuò)散步求解完成之后,進(jìn)入投影步的求解過程。不再使用常規(guī)數(shù)值解法(例如共輛梯度法、高斯塞德爾迭代法等)求解步驟一中的離散化方程,而是使用基于數(shù)據(jù)驅(qū)動(dòng)的投影步求解方法。此時(shí),僅需要記錄此方程求解所需的已知量,輸入到已經(jīng)訓(xùn)練好的人工神經(jīng)網(wǎng)絡(luò)中,僅再需要進(jìn)行一次前向傳遞過程,將人工神經(jīng)網(wǎng)絡(luò)的輸出層各個(gè)節(jié)點(diǎn)值重新組合成輸出向量,避免了耗時(shí)迭代的數(shù)值求解過程。[0032]當(dāng)前帖中當(dāng)前的歐拉網(wǎng)格內(nèi)的計(jì)算已經(jīng)完成后,采用相同方式完成其余網(wǎng)格的處理。技術(shù)效果[0033]與該領(lǐng)域現(xiàn)有技術(shù)相比,本發(fā)明利用傳統(tǒng)數(shù)值計(jì)算方法在投影步前后計(jì)算得到的訓(xùn)練數(shù)據(jù),經(jīng)過人工神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,調(diào)整人工神經(jīng)網(wǎng)絡(luò)的傳輸節(jié)點(diǎn)權(quán)值,得到最終的計(jì)算模型。從而在歐拉法流體模擬過程中,避免原本耗時(shí)的投影步迭代計(jì)算。[0034]本發(fā)明使用訓(xùn)練完成后的人工神經(jīng)網(wǎng)絡(luò),再次進(jìn)行投影步的計(jì)算時(shí),可W在快速求解的同時(shí)保持較小的求解誤差,從而保證了求解結(jié)果的準(zhǔn)確性。[0035]本發(fā)明并沒有修改現(xiàn)有的歐拉法求解流體動(dòng)畫的框架,使得本發(fā)明可W很好地適用于各種基于歐拉法的改進(jìn)方法中。【附圖說明】[0036]圖1為本發(fā)明提出的模擬流程圖;[0037]圖2為本發(fā)明的實(shí)施例在不同像素級(jí)別下(從左至右,像素級(jí)別分別為48*64、96*128、192*256、384*512)訓(xùn)練樣本實(shí)例圖;[0038]圖3為本發(fā)明的實(shí)施例在不同像素級(jí)別下(從左至右,像素級(jí)別分別為48*64、96*128、192*256、384*512)模擬結(jié)果實(shí)例圖?!揪唧w實(shí)施方式】實(shí)施例1[0039]本實(shí)施例中展示了一個(gè)由訓(xùn)練樣本學(xué)習(xí)得到的人工神經(jīng)網(wǎng)絡(luò),并進(jìn)行投影步快速計(jì)算的實(shí)施例。如圖1所示,本實(shí)施例包含如下步驟:[0040]步驟一,離散求解化Vier-Stokes方程,并收集下一步驟中需要用于訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù):[0041]1.1,按照對(duì)流步、外力步、擴(kuò)散步的順序離散化求解方程。[0042]1.2,投影步依靠正常的數(shù)值計(jì)算解法進(jìn)行求解。收集各個(gè)帖的各個(gè)網(wǎng)格中,投影步前后的輸入向量、輸出向量作為訓(xùn)練樣本。[0043]步驟二,設(shè)計(jì)人工神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),包括輸入層、輸出層、隱含層。并調(diào)整隱含層的層數(shù)、W及每層的隱含節(jié)點(diǎn)數(shù)。本實(shí)施例包含如下步驟:[0044]2.1,按照輸入向量的維度:18維,設(shè)置神經(jīng)網(wǎng)絡(luò)的輸入層節(jié)點(diǎn)數(shù):18個(gè)。[0045]2.2,按照輸出向量的維度:1維。設(shè)置神經(jīng)網(wǎng)絡(luò)的輸出層節(jié)點(diǎn)數(shù):1個(gè)。[0046]2.3,首先確定神經(jīng)網(wǎng)絡(luò)的隱含層節(jié)點(diǎn)數(shù)與輸入層相同為18個(gè),并設(shè)置隱含層層數(shù)為2層。按照控制變量法,設(shè)置統(tǒng)一的輸出層誤差闊值W及輸出層誤差下降梯度闊值。[0047]2.4,首先逐步增加隱含層層數(shù),每增加一層之后即利用后向傳遞算法進(jìn)行訓(xùn)練直至停止,并記錄當(dāng)前的輸出層誤差。發(fā)現(xiàn)當(dāng)隱含層層數(shù)到達(dá)3層及W上時(shí),訓(xùn)練停止后的輸出層誤差已經(jīng)不再有大幅下降。因此選取隱含層層數(shù)為3層。[0048]2.5,首先逐步降低每層隱含層的隱含節(jié)點(diǎn)數(shù),每降低一個(gè)隱含節(jié)點(diǎn)后即利用后向傳遞算法進(jìn)行訓(xùn)練直至停止,并記錄當(dāng)前的輸出層誤差。發(fā)現(xiàn)當(dāng)隱含節(jié)點(diǎn)數(shù)到達(dá)10個(gè)及W下時(shí),訓(xùn)練停止后的輸出層誤差會(huì)產(chǎn)生有大幅上升。因此選取隱含層上隱含節(jié)點(diǎn)數(shù)為10個(gè)。[0049]步驟=,得到步驟二中訓(xùn)練完成后的人工神經(jīng)網(wǎng)絡(luò)后,再次利用歐拉方法進(jìn)行流體動(dòng)畫模擬時(shí),具體步驟包括:[0050]3.1,歐拉法將方程的求解過程分為了四個(gè)步驟:對(duì)流步、外力步、擴(kuò)散步、投影步。首先利用常規(guī)解法,正常求解流體運(yùn)動(dòng)過程中的對(duì)流步、外力步、擴(kuò)散步。[0051]3.2,在步驟3.1的擴(kuò)散步求解完成之后,進(jìn)入投影步的求解過程。不再使用常規(guī)的數(shù)值解法求解步驟一中的離散化方程,需要記錄此方程求解所需的已知量,輸入到已經(jīng)訓(xùn)練好的人工神經(jīng)網(wǎng)絡(luò)中,僅需要進(jìn)行一次前向傳遞過程,將人工神經(jīng)網(wǎng)絡(luò)的輸出層各個(gè)節(jié)點(diǎn)值重新組合成輸出向量,避免了耗時(shí)迭代的數(shù)值求解過程。[0052]3.3,在步驟3.2的投影步完成之后,即當(dāng)前帖中當(dāng)前網(wǎng)格內(nèi)的計(jì)算已經(jīng)完成。其余網(wǎng)格的計(jì)算同樣如此,直至完成所有網(wǎng)格的計(jì)算進(jìn)入下一帖返回到步驟3.1再次計(jì)算。[0053]步驟四,利用人工神經(jīng)網(wǎng)絡(luò)求解得到的投影步結(jié)果,更新歐拉法中每個(gè)網(wǎng)格內(nèi)的屬性值,繪制當(dāng)前帖的流體動(dòng)畫。然后進(jìn)入下一帖,返回步驟=。直至流體動(dòng)畫整體繪制成功。[0054]CPU模擬環(huán)境下,我們可W采集得到我們的方法與常規(guī)的投影步數(shù)值解法(此處指的是常規(guī)解法中適用面與求解效率綜合表現(xiàn)最為優(yōu)秀的共輛梯度法)進(jìn)行對(duì)比,可W得到在不同的歐拉網(wǎng)格精度下,動(dòng)畫模擬的時(shí)間數(shù)據(jù)如下表所示:[0055]由表1與圖2、3可知,本發(fā)明的方法相較于傳統(tǒng)的迭代數(shù)值解法,可W充分利用在投影步得到的訓(xùn)練數(shù)據(jù),經(jīng)過人工神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,得到最終的計(jì)算模型。從而在歐拉法流體模擬過程中,避免原本耗時(shí)的投影步迭代計(jì)算,改為使用人工神經(jīng)網(wǎng)絡(luò)進(jìn)行求解?;跀?shù)據(jù)驅(qū)動(dòng)的快速求解方法在進(jìn)行投影步的快速求解的同時(shí)保證了求解結(jié)果的準(zhǔn)確性。[0056]上述具體實(shí)施可由本領(lǐng)域技術(shù)人員在不背離本發(fā)明原理和宗旨的前提下W不同的方式對(duì)其進(jìn)行局部調(diào)整,本發(fā)明的保護(hù)范圍W權(quán)利要求書為準(zhǔn)且不由上述具體實(shí)施所限,在其范圍內(nèi)的各個(gè)實(shí)現(xiàn)方案均受本發(fā)明之約束。【主權(quán)項(xiàng)】1.一種基于數(shù)據(jù)驅(qū)動(dòng)的流體動(dòng)畫加速生成方法,其特征在于,包括以下步驟:步驟一,采集流體動(dòng)畫模擬的歐拉法中投影步的訓(xùn)練樣本并生成訓(xùn)練數(shù)據(jù)集;步驟二,利用步驟一中得到的訓(xùn)練數(shù)據(jù)集構(gòu)建并訓(xùn)練人工神經(jīng)網(wǎng)絡(luò);步驟三,利用訓(xùn)練后的人工神經(jīng)網(wǎng)絡(luò)實(shí)施歐拉法,逐幀進(jìn)行流體動(dòng)畫模擬并得到對(duì)應(yīng)該幀的投影結(jié)果,用該投影結(jié)果更新歐拉法中每個(gè)網(wǎng)格內(nèi)的屬性值并繪制當(dāng)前幀流體動(dòng)畫。2.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的步驟一,具體為:采用Navier-Stokes方程表征流體運(yùn)動(dòng)的物理描述,該方程包括描述流體單元速度的基本方程,即第①部分和限制流體運(yùn)動(dòng)過程中的不可壓縮性的第②部分:其中:P表示流體單元密度,u表示流體單元速度,t表示流體動(dòng)畫模擬時(shí)間,p表示流體壓強(qiáng),e表示流體粘度,f表示流體所受到的外力。3.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的歐拉法包括:對(duì)流步、外力步、擴(kuò)散步和基于數(shù)據(jù)驅(qū)動(dòng)的投影步。4.根據(jù)權(quán)利要求1或3所述的方法,其特征是,所述的基于數(shù)據(jù)驅(qū)動(dòng)的投影步具體是指:第η幀中投影步的流體單元X的速度un(X)由流體動(dòng)畫模擬的時(shí)間步長△t,流體單元密度P,流體壓強(qiáng)P求解得到:▽·u(x)=&+▽·VP;通過歐拉法進(jìn)行離散化求解之后,得到具體的求解過程需要依靠于該流體單元上下左右前后6個(gè)位置的流體單元的相關(guān)屬性,因此得到離散化的方程為:〒在三維空間位置為(X,y,z)處的流體單元,un(X)表示流體單元X的速度,△t表示流體動(dòng)畫模擬的時(shí)間步長,P表示流體單元密度,h表示網(wǎng)格法流體單元的網(wǎng)格邊長;利用共輒梯度法求解該離散化的方程,并記錄此方程求解所需的已知量作為輸入向量,此方程的未知量作為輸出向量,輸入向量與輸出向量組成一組樣本;對(duì)于歐拉法求解過程中每一幀、離散空間中每一個(gè)網(wǎng)格,均收集一組樣本作為訓(xùn)練數(shù)據(jù)集。5.根據(jù)權(quán)利要求1所述的方法,其特征是,所述的構(gòu)建并訓(xùn)練,具體包括:2.1)輸入層的節(jié)點(diǎn)數(shù)與步驟一中輸入向量的維度相同,每組樣本的輸入向量中各個(gè)維度的值與輸入層對(duì)應(yīng)節(jié)點(diǎn)的值相同。輸入層的每一個(gè)節(jié)點(diǎn)均與最左側(cè)隱含層中每個(gè)節(jié)點(diǎn)互相連接;2.2)輸出層的節(jié)點(diǎn)數(shù)與步驟一中輸出向量的維度相同,每組樣本的輸出向量中各個(gè)維度的值與輸出層對(duì)應(yīng)節(jié)點(diǎn)的值相同。最右側(cè)隱含層中每個(gè)節(jié)點(diǎn)均與輸出層的每一個(gè)節(jié)點(diǎn)互相連接;2.3)隱含層是對(duì)于一個(gè)或多個(gè)層的統(tǒng)稱,具體的層數(shù)視人工神經(jīng)網(wǎng)絡(luò)需要描述的非線性關(guān)系的復(fù)雜程度決定。隱含層層數(shù)、隱含節(jié)點(diǎn)數(shù)以及不同層節(jié)點(diǎn)之間的連接權(quán)值需要步驟一中的訓(xùn)練數(shù)據(jù)集以所有樣本與輸出層的誤差和最小為優(yōu)化目標(biāo)不斷循環(huán)訓(xùn)練、調(diào)整;2.4)得到輸出層誤差之后,需要利用人工神經(jīng)網(wǎng)絡(luò)反向傳遞算法,得到隱含層中每層的每個(gè)隱含節(jié)點(diǎn)的誤差;已知每個(gè)隱含層以及輸出層上每個(gè)節(jié)點(diǎn)的誤差之后,利用梯度下降法調(diào)整不同層節(jié)點(diǎn)之間的連接權(quán)值,使得在隱含層層數(shù)固定、各層上節(jié)點(diǎn)數(shù)固定是該神經(jīng)網(wǎng)絡(luò)的非線性擬合能力達(dá)到最好。6.根據(jù)權(quán)利要求5所述的方法,其特征是,所述的循環(huán),其停止條件為輸出層誤差縮小到閾值之內(nèi)或輸出層誤差的下降梯度縮小到閾值之內(nèi),同時(shí)在此基礎(chǔ)上使得隱含層的層數(shù)與各層上的節(jié)點(diǎn)數(shù)更少,即消耗更少的計(jì)算資源。7.根據(jù)權(quán)利要求5所述的方法,其特征是,所述的輸出層誤差為各個(gè)輸出節(jié)點(diǎn)上真實(shí)值與模擬值之間的歐式距離之和,即S=E(areal_asim)2,其中:areal為輸出節(jié)點(diǎn)上真實(shí)值,asim為輸出節(jié)點(diǎn)上模擬值。8.根據(jù)權(quán)利要求4所述的方法,其特征是,步驟三中,當(dāng)擴(kuò)散步求解完成之后,進(jìn)入投影步的求解過程時(shí),使用基于數(shù)據(jù)驅(qū)動(dòng)的投影步求解方法:此時(shí)僅需要記錄此方程求解所需的已知量,輸入到已經(jīng)訓(xùn)練好的人工神經(jīng)網(wǎng)絡(luò)中,僅再需要進(jìn)行一次前向傳遞過程,將人工神經(jīng)網(wǎng)絡(luò)的輸出層各個(gè)節(jié)點(diǎn)值重新組合成輸出向量,避免了耗時(shí)迭代的數(shù)值求解過程?!疚臋n編號(hào)】G06T13/00GK106023286SQ201610351638【公開日】2016年10月12日【申請(qǐng)日】2016年5月25日【發(fā)明人】楊成,楊旭波,肖祥云【申請(qǐng)人】上海交通大學(xué)
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1