專利名稱:一種對數(shù)據(jù)進行可視化處理的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機處理技術(shù)領(lǐng)域,尤其涉及一種對數(shù)據(jù)進行可視化處理的方法及系統(tǒng)。
背景技術(shù):
科學(xué)計算可視化技術(shù)在醫(yī)學(xué)、分子化學(xué)和生物學(xué)、計算流體動力學(xué)、有限元分析、氣象、地球物理等科學(xué)研究和國民經(jīng)濟領(lǐng)域有著重要應(yīng)用。由于可視化是數(shù)據(jù)和計算密集型應(yīng)用,在可視化技術(shù)的早期研究中,并行和分布技術(shù)就開始得到使用。早期的并行體繪制一般使用高端并行計算機和圖形工作站。進入20世紀90年代中后期,PC逐漸普及,PC圖形硬件的繪制能力不斷提高,網(wǎng)絡(luò)技術(shù)飛速發(fā)展,PC集群和聯(lián)網(wǎng)PC (特別是PC集群)逐步取代了傳統(tǒng)的高端并行機而成為并行可視化應(yīng)用的理想平臺。而Internet的興起使得可視化應(yīng)用利用Internet范圍的存儲、計算和繪制資源,并在Internet范圍內(nèi)提供服務(wù)成為一種可能和現(xiàn)實的需求。傳統(tǒng)的網(wǎng)絡(luò)可視化研究沒有考慮面向Internet的異構(gòu)性、互操作性、動態(tài)性和可擴展性。而從集中到分散、從緊耦合到松耦合、從小范圍到大范圍是并行計算機和網(wǎng)絡(luò)技術(shù)的發(fā)展趨勢。網(wǎng)格技術(shù)正是在這種條件下產(chǎn)生的一種前瞻性的面向互聯(lián)網(wǎng)的分布式計算方式,它是傳統(tǒng)的并行計算和分布式計算在深度和廣度上的拓展。雖然網(wǎng)格技術(shù)仍在發(fā)展之中,但是它所提供的資源匯聚、自治協(xié)調(diào)等功能將使得可視化應(yīng)用在更廣的范圍內(nèi)進行數(shù)據(jù)存儲和計算,更好地與科學(xué)計算程序集成,并讓更廣范圍的用戶通過網(wǎng)絡(luò)以遠程或協(xié)作方式使用可視化應(yīng)用。現(xiàn)有的可視化處理是在結(jié)構(gòu)上分為用于數(shù)據(jù)處理的計算服務(wù)器和用于用戶指定規(guī)則顯示的客戶端。計算服務(wù)器主要依次完成如下步驟生成數(shù)據(jù)網(wǎng)絡(luò),科學(xué)計算涉及到的數(shù)據(jù)不僅參數(shù)個數(shù)本身兩大而且所采集的數(shù)據(jù)量也是海量的;求解物理方程,在經(jīng)過數(shù)據(jù)的網(wǎng)格化處理之后,進行物理方程的求解;生成結(jié)果數(shù)據(jù)并將數(shù)據(jù)存盤。在客戶端,首先用戶應(yīng)該明確自己應(yīng)該看的數(shù)據(jù),所以先設(shè)定可視化的參數(shù),比如視點,結(jié)果集的大小等等;根據(jù)用戶的需求客戶端從服務(wù)器的硬盤中讀取出相應(yīng)的結(jié)果數(shù)據(jù)加載到內(nèi)存中;最后進行可視化繪制和顯示,其相應(yīng)的步驟參見圖I中所示。由于計算結(jié)果先被存儲到硬盤中,然后再圖形工作站中或者普通的PC機終端對其進行可視化,但是工程數(shù)據(jù)有時非常龐大,特別是隨時間可變的大規(guī)模數(shù)據(jù)場,這時的終端經(jīng)常沒有那么大的空間來存儲原始數(shù)據(jù),同時也沒有那么大的內(nèi)存對其進行可視化。這樣,將經(jīng)常出現(xiàn)內(nèi)存不足的提示,甚至不能可視化。本方法在實施過程中對結(jié)果數(shù)據(jù)并沒有優(yōu)化、簡化,可視化和數(shù)值計算想分離,數(shù)據(jù)量的大小還直接影響到端到端的通信負載,若網(wǎng)絡(luò)不穩(wěn)定,將嚴重的影響到可視化部分的運作。
發(fā)明內(nèi)容
本發(fā)明的目的是提出一種對數(shù)據(jù)進行可視化的方法及系統(tǒng),能夠完成數(shù)據(jù)的網(wǎng)格化和采用多種形式將數(shù)據(jù)可視化,滿足客戶的多種需求,進行有效的負載均衡處理,有效加快了處理速度和系統(tǒng)穩(wěn)定性。基于上述問題,本發(fā)明實施例提供了一種對數(shù)據(jù)進行可視化處理的方法,,包括如下步驟采用趨勢面和殘差疊加法實現(xiàn)數(shù)據(jù)的網(wǎng)格化;對網(wǎng)格化的數(shù)據(jù)采用相應(yīng)的可視化技術(shù);采用邏輯簡化、紋理簡化和編碼壓縮對數(shù)據(jù)進行去重留精;對數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成; 將可視化數(shù)據(jù)進行顯示。所述采用趨勢面和殘差疊加法實現(xiàn)數(shù)據(jù)的網(wǎng)格化包括根據(jù)實際需要選定一個m值,用于后面擬合多次曲面需要;利用趨勢面擬合法,擬合出一個m次趨勢面;作出數(shù)據(jù)點值與該趨勢面之間的殘差;將網(wǎng)格點上的趨勢值和殘差擬合值相加,作為網(wǎng)格點值。所述對網(wǎng)格化的數(shù)據(jù)采用相應(yīng)的可視化技術(shù)包括標量數(shù)據(jù)場的并行可視化、矢量和張量數(shù)據(jù)場的并行可視化、基于特征分析的可視化。所述采用邏輯簡化、紋理簡化和編碼壓縮對數(shù)據(jù)進行去重留精包括邏輯簡化,采用形式推理和演算將模塊中的數(shù)據(jù)的邏輯關(guān)系明確,通過分析來自不同管道的數(shù)據(jù)關(guān)系,去除重復(fù)數(shù)據(jù)和可以直接生成的數(shù)據(jù);紋理簡化是針對一些紋理圖像進行的一項簡化技術(shù),通常紋理都是具有規(guī)律的重復(fù)出現(xiàn)的,這時利用這種屬性保持一次紋理屬性,每次需要再現(xiàn)時只需要直接提取即可;數(shù)據(jù)壓縮是在字節(jié)級別的數(shù)據(jù)壓縮方法,采用赫夫曼編碼壓縮編碼或者其他可變長編碼算法實現(xiàn)。所述對數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成包括數(shù)據(jù)格式的解析負責(zé)接受來自不同遠端傳來的數(shù)據(jù),對其進行解碼、格式解析,還原需要顯示的數(shù)據(jù);邏輯關(guān)系的組裝是對并行數(shù)據(jù)之間內(nèi)在邏輯的一種建立,采用預(yù)定義好的邏輯術(shù)語,每個數(shù)據(jù)都映射到一類邏輯類型,同時也需要聲明它前后所需要相連的邏輯術(shù)語;根據(jù)不同的顯示設(shè)備對數(shù)據(jù)的格式要求,轉(zhuǎn)化成不同的數(shù)據(jù)格式。所述將可視化數(shù)據(jù)進行顯示包括將需要可視化的數(shù)據(jù)和特定渲染技術(shù)相結(jié)合的預(yù)處理過程;采用OpenGL技術(shù)實現(xiàn)數(shù)據(jù)的移植性;將硬件資源抽象成一個對象,屏蔽頂層細節(jié),使得上層開發(fā)人員不必知道底層各種技術(shù)細節(jié),而是提供一種統(tǒng)一的編程接口 ; 將數(shù)據(jù)交由硬件進行顯示。相應(yīng)的,本發(fā)明實施例還提供了一種對數(shù)據(jù)進行可視化處理的系統(tǒng),包括數(shù)據(jù)網(wǎng)格化模塊,用于采用趨勢面和殘差疊加法實現(xiàn)數(shù)據(jù)的網(wǎng)格化;
可視化模塊,用于對網(wǎng)格化的數(shù)據(jù)采用相應(yīng)的可視化技術(shù);簡化模塊,用于采用邏輯簡化、紋理簡化和編碼壓縮對數(shù)據(jù)進行去重留精;
組裝模塊,用于對數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成;基本顯示模塊,用于將可視化數(shù)據(jù)進行顯示所述可視化模塊采用的可視化技術(shù)包括標量數(shù)據(jù)場的并行可視化、矢量和張量數(shù)據(jù)場的并行可視化、基于特征分析的可視化。本發(fā)明提出了一種大規(guī)模數(shù)據(jù)場的并行可視化系統(tǒng),包含從數(shù)據(jù)的網(wǎng)格化到最終的終端顯示一整套流程。在數(shù)據(jù)的網(wǎng)格化模塊中采用趨勢面和殘差疊加的方法,兼顧了素具的全局和局部特性;在可視化模塊采用了多種可視化技術(shù)相結(jié)合,互補互成,包含了標量、矢量和張量的數(shù)據(jù)場的并行可視化方法;為了達到更好的成像質(zhì)量,我們還采用了機遇特征分析的技術(shù),讓可視化的質(zhì)量更加的逼真;負載均衡是并行系統(tǒng)運行效率的一個重要影響因素。本發(fā)明采用一種任務(wù)池的技術(shù)能夠很好的解決系統(tǒng)中負載均衡。然后,簡化模塊去重存精,將所需往下一模塊的數(shù)據(jù)簡直最少,減少數(shù)據(jù)傳輸量;組裝模塊負責(zé)裝配來自不同遠端的并行數(shù)據(jù),最后交由基本顯示模塊進行顯示。通過多種可視化技術(shù)相結(jié)合能夠很好的適合不同的數(shù)據(jù)場,包括矢量、張量和標量;在基本的可視化技術(shù)上再結(jié)合機遇特征分析的可視化技術(shù),能夠進一步提升可視化的質(zhì)量,同時計算量也不大;在并行框架中,為了達到并行性能的高效率,采用任務(wù)池技術(shù)對一個大的任務(wù)進行分割,由一群子線程來分別完成任務(wù),能夠很好的將負載均衡化。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其它的附圖。圖I是現(xiàn)有技術(shù)中的數(shù)據(jù)可視化處理的流程圖;圖2是本發(fā)明實施例中的對數(shù)據(jù)進行可視化的系統(tǒng)架構(gòu)圖;圖3是本發(fā)明實施例中的疊加法做數(shù)據(jù)網(wǎng)格化流程;圖4是本發(fā)明實施例中的可視化模塊結(jié)構(gòu)示意圖;圖5是本發(fā)明實施例中的張量場的可視化流程圖;圖6是本發(fā)明實施例中的任務(wù)池動態(tài)任務(wù)分配流程圖;圖7為本發(fā)明實施例中的簡化模塊結(jié)構(gòu)示意圖;圖8為本發(fā)明實施例中的組裝模塊結(jié)構(gòu)示意圖;圖9為本發(fā)明實施例中的基本顯示模塊結(jié)構(gòu)示意圖。
具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。本發(fā)明的目的是提出一種能夠高效并行處理大規(guī)模數(shù)據(jù)場的數(shù)值計算和數(shù)據(jù)可視化的系統(tǒng),系統(tǒng)能夠完成數(shù)據(jù)的網(wǎng)格化和采用多種形式將數(shù)據(jù)可視化,滿足客戶的多種需求,進行有效的負載均衡處理,有效加快了處理速度和系統(tǒng)穩(wěn)定性。 本發(fā)明實施了例中提供的對數(shù)據(jù)進行可視化處理的方法,包括如下步驟采用趨勢面和殘差疊加法實現(xiàn)數(shù)據(jù)的網(wǎng)格化;對網(wǎng)格化的數(shù)據(jù)采用相應(yīng)的可視化技術(shù);采用邏輯簡化、紋理簡化和編碼壓縮對數(shù)據(jù)進行去重留精;對數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成;將可視化數(shù)據(jù)進行顯示。一個完整的大規(guī)模數(shù)據(jù)場的并行可視化系統(tǒng)至少包含兩個主機一個是性能較高的、并行性好的計算主機,另一個是用戶所用的一般PC機,用于顯示所需要的結(jié)果;系統(tǒng)的絕大多數(shù)工作都集中在前者。如圖2所示的對數(shù)據(jù)進行可視化處理的系統(tǒng),該體系框架包含數(shù)據(jù)網(wǎng)格化模塊、可視化模塊、簡化模塊、組裝模塊和基本顯示模塊。其在高性能并行計算機上完成計算和可視化過程,但輸出可視圖形元素,而不是結(jié)果圖像,從而在用戶端可設(shè)置視點、光源、光照模型等等,最后得到可視化圖像;在計算服務(wù)器上,用戶僅在控制文件中定義采用的可視化方法,如剖面繪制、等值面繪制、流線繪制等。因為可視化過程和計算過程均在同一計算機上同時進行,不必將計算結(jié)果保存在盤上,從而避免了存儲空間的限制;同時可充分利用計算服務(wù)器的海量內(nèi)存完成可視化,最后的可視化結(jié)果通常比原始計算數(shù)據(jù)量要小得多。我們還根據(jù)用戶的時間要求以及終端計算機內(nèi)存和硬盤的限制,用并行簡化模塊減少輸出到用戶端的可視圖形元素的數(shù)量以達到實時顯示要求。本發(fā)明的數(shù)據(jù)的網(wǎng)格化模塊采用一個既能反應(yīng)數(shù)據(jù)的局部特征又能反應(yīng)全局特性的方法,趨勢面和殘差疊加法(簡稱疊加法)。具體參見圖3。疊加法做數(shù)據(jù)的網(wǎng)格化的具體步驟如下Stepl :用戶根據(jù)實際需要選定一個m值,用于后面擬合多次曲面需要,轉(zhuǎn)Step2 ;Step2 :利用趨勢面擬合法,擬合出一個m次趨勢面,轉(zhuǎn)Step3 ;St印3 :作出數(shù)據(jù)點值與該趨勢面之間的殘差,轉(zhuǎn)Step4 ;Step4 :將網(wǎng)格點上的趨勢值和殘差擬合值相加,作為網(wǎng)格點值。在疊加法中涉及到的趨勢面分析是地學(xué)領(lǐng)域常用的數(shù)學(xué)方法,它可以把長周期的趨勢性變化和短周期的局部性變化分開,根據(jù)趨勢性變化可以總結(jié)規(guī)律,根據(jù)局部性變化可以發(fā)現(xiàn)異常。從計算機制圖角度看,趨勢面分析是用簡單的冪級數(shù)多項式來擬合復(fù)雜的地學(xué)曲面,有削平、填平實際曲面的作用??梢暬K采用對不同數(shù)據(jù)采用不同的可視化技術(shù),主要包括標量數(shù)據(jù)場的并行可視化、矢量和張量數(shù)據(jù)場的并行可視化、基于特征分析的可視化。具體如圖4所示。在標量數(shù)據(jù)場的并行可視化中我們采用剖面繪制技術(shù)。剖面繪制是可視化中最常采用的技術(shù),由于它簡單、高效,每一種可視化軟件都提供了該技術(shù)。本發(fā)明還結(jié)合并行等值面、體繪制、區(qū)間繪制技術(shù)。由于等值面繪制方法僅能揭示一小部分場的信息,所以通過采用并行體繪制方法,通過體光照模型直接從三維數(shù)據(jù)場中繪制出各種物理量的分布情況,從而可視化了整個數(shù)據(jù)場。進一步以區(qū)間體繪制相輔助,在繪圖的效率上比單純的體繪制方法效率上又更為進一步的提高。在矢量場的可視化模塊中我們采用流線技術(shù),并將該技術(shù)擴展到并行環(huán)境中。為了揭示更多的三維信息,將流線上的每個點根據(jù)矢量的大小賦予半徑值,形成流管,從而可通過光照亮度的變化反映出更多的三維旋轉(zhuǎn)信息,同時半徑和顏色值可反映兩個物理量,比原來的流線繪制多表達了一維信息。由于流線方法建立在對流場離散采樣的基礎(chǔ)上,其可視化的質(zhì)量嚴重依賴于種子點的選取。如果種子點選取得過于密集,則可能導(dǎo)致可視混舌L但若選取得過于稀疏,又有可能漏掉流場中重要的結(jié)構(gòu)和細節(jié)?;诩y理的方法則可較好地解決這個問題,由于它在每個象素處均進行亮度計算,因而可避免采樣的問題,同時借助于紋理的變形,矢量的方向可視清楚地揭示出來,因此基于紋理的方法是目前最有潛力的矢量場可視化方法。本發(fā)明采用該技術(shù)作為矢量場模塊的技術(shù)實現(xiàn)。
張量場在工程中非常普遍,但由于其包含9個分量,很難在二維屏幕上將如此多的信息表達出來,因此張量場的可視化一直是可視化中極具挑戰(zhàn)性的一個研究領(lǐng)域。超流線(Hyperstream lines)方法由于能在一條連續(xù)的三維路徑上同時揭示出張量的9個分量。所以采用超流線方法能夠很好的可視化張量場數(shù)據(jù)。超流線法可視化張量場可參見圖5,具體步驟如下Stepl :將張量的9個分量分解為3個特征向量,按其相應(yīng)特征值的大小依次稱為主特征向量、次特征向量、最小特征向量,轉(zhuǎn)Step2 ;St印2:選定種子點,然后從種子點出發(fā)根據(jù)主特征向量的方向生成軌跡線,轉(zhuǎn)Step3 ;Step3 :在該軌跡線的每個點上附加一橢圓形成流管,橢圓的長軸和短軸方向分別反映了次特征向量和最小特征向量的方向,其長軸和短軸長度則為其對應(yīng)向量的大小,然后轉(zhuǎn)Step4 ;Step4 :將主特征向量的大小映射為流管面上相應(yīng)點的顏色,至此,3個特征向量就同時顯示來。為了提高可視化的質(zhì)量,系統(tǒng)進一步采用了特征分析的技術(shù)。如前所述,用流線、超流線可視化矢量場、張量場時,其質(zhì)量嚴重依賴于種子點的選取,應(yīng)該盡量選取能更多地反映數(shù)據(jù)場特征的種子點。但用戶在可視化之前,通常對場的特性并不是非常了解,因此系統(tǒng)自動獲取場的特征就變得非常重要。本系統(tǒng)采用矢量場的拓撲特性分析技術(shù)。首先對場進行特征提取,找到特征點、特征面,然后根據(jù)這些特征點和面自動決定種子點的密度和位置。使得流線和超流線在場中有合理、有效的分布。為了提高并行效率,在種子點的選取上還同時考慮了使它們相對均衡地分布在各處理器上。有時用戶也許會對并不重要的區(qū)域感興趣,因此我們還同時提供了多種方便的方式允許用戶自己定義種子點,如輸入點的坐標,輸入網(wǎng)格單元(或網(wǎng)格節(jié)點)的全局編碼,輸入網(wǎng)格單元(或網(wǎng)格節(jié)點)所在的處理器號及其局部編碼等等。此外,我們還將矢量場的拓撲特征分析技術(shù)用于加速矢量場紋理圖像的生成,根據(jù)矢量場的特征,計算場中各點的重要性值,由其重要性值決定紋理計算的精細程度以及選取不同的紋理粒度,從而加速圖像的生成,并可突出矢量場的重要特征。因為紋理的密集性,將基于紋理的矢量場可視化方法擴展到三維體繪制時常常難以得到較好的效果,可以用場的特征控制體繪制的轉(zhuǎn)換函數(shù),改善體繪制圖像的質(zhì)量。負載均衡是提高體繪制并行效率的重要途徑。本發(fā)明采用一種任務(wù)池的技術(shù)能夠很好的解決負載均衡的問題,如圖6所示。具體步驟如下Stepl :平臺初始化,啟動主線程,并做初始的內(nèi)存分配等工作,轉(zhuǎn)Step2 ;Step2 :初始化子線程群,包括每個線程所需要的內(nèi)存空間、資源等,轉(zhuǎn)Step3 ;
Step3 :將任務(wù)分成一些子任務(wù),然后將各個子任務(wù)派發(fā)給各個子線程,轉(zhuǎn)Step4 ;Step4 :等待子任務(wù)的結(jié)果,判斷任務(wù)池是否已空,若沒有空轉(zhuǎn)Step5,否則轉(zhuǎn)Step6 ;Step5 :分配一個子任務(wù)給返回的空閑子線程,轉(zhuǎn)Step4 ;St印6 :殺死返回的子線程,判斷是否所有子線程都已經(jīng)死亡,若是則轉(zhuǎn)Step7,否則轉(zhuǎn)Step4 ;Step7 :組裝并顯示,結(jié)束。 簡化模塊簡化模塊是對數(shù)據(jù)進行去重留精的模塊,主要應(yīng)用邏輯簡化、紋理簡化和編碼壓縮三方面簡化技術(shù)來實現(xiàn)。邏輯簡化,采用形式推理和演算將模塊中的數(shù)據(jù)的邏輯關(guān)系明確,通過分析來自不同管道的數(shù)據(jù)關(guān)系,去除重復(fù)數(shù)據(jù)和可以直接生成的數(shù)據(jù)。紋理簡化是針對一些紋理圖像進行的一項簡化技術(shù)。通常紋理都是具有規(guī)律的重復(fù)出現(xiàn)的,這時可以利用這種屬性保持一次紋理屬性,每次需要再現(xiàn)時只需要直接提取即可。數(shù)據(jù)壓縮是在字節(jié)級別的數(shù)據(jù)壓縮方法,可以采用現(xiàn)行成熟的壓縮算法,例如赫夫曼編碼壓縮編碼或者其他可變長編碼算法實現(xiàn)。其結(jié)構(gòu)可參見圖7所示。組裝模塊,其構(gòu)成如圖8所示。組裝模塊實現(xiàn)將并行數(shù)據(jù)的組裝。大規(guī)模數(shù)據(jù)常通常來自不同端的數(shù)據(jù)之間需要進行組裝來完成可視化工作,而組裝工作就是數(shù)據(jù)融合的過程。組裝模塊包含數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成三部分。數(shù)據(jù)格式的解析負責(zé)接受來自不同遠端傳來的數(shù)據(jù),對其進行解碼、格式解析,還原需要顯示的數(shù)據(jù)。解碼需要和簡化模塊中的編碼壓縮模塊想對應(yīng),如果編碼壓縮模塊采用的赫夫曼編碼,那么在這里也需要采用赫夫曼解碼,如果采用的是其他編碼算法,則需要其對應(yīng)的解碼算法,這里我們?nèi)笔∏闆r采用赫夫曼編碼即可。邏輯關(guān)系的組裝是對并行數(shù)據(jù)之間內(nèi)在邏輯的一種建立,采用預(yù)定義好的邏輯術(shù)語,每個數(shù)據(jù)都映射到一類邏輯類型,同時也需要聲明它前后所需要相連的邏輯術(shù)語。此外,在組裝過程中除了邏輯術(shù)語還有邏輯策略,邏輯策略在多種組裝方式都可行的時候可以根據(jù)策略的偏向進行不同的邏輯優(yōu)化。最后將并行數(shù)據(jù)進行組裝生成組裝后的數(shù)據(jù),數(shù)據(jù)需要送往下一基本顯示模塊,根據(jù)不同的顯示模塊對數(shù)據(jù)的格式要求,需要轉(zhuǎn)化成不同的數(shù)據(jù)格式,至此,組裝模塊的工作完畢。基本顯示模塊是負責(zé)將許可視化的數(shù)據(jù)進行顯示的,如圖9所示。它可以采用DirectX技術(shù)或者OpenGL技術(shù),為了實現(xiàn)更好的移植性,我們采用OpenGL技術(shù),而且OpenGL也大有成為學(xué)術(shù)和工業(yè)標準的趨勢?;撅@示模塊的構(gòu)成如圖8所示。數(shù)據(jù)預(yù)處理模塊是將需要可視化的數(shù)據(jù)和特定渲染技術(shù)相結(jié)合的預(yù)處理過程,這里采用的OpenGL技術(shù),所以我們需要將數(shù)據(jù)進行和OpenGL匹配的格式,例如將點類型的數(shù)據(jù)轉(zhuǎn)換成Vertex類型,如果采用了頂點緩沖區(qū)和所以緩沖區(qū)相結(jié)合的,則需要根據(jù)原來的頂點列表生成相應(yīng)的索引列表,并且改變頂點列表,使得列表中每個頂點都是獨一無二的。OpenGL庫是圖形渲染庫,是學(xué)術(shù)界和工業(yè)界專業(yè)的圖形顯示庫,我們可以根據(jù)需要對其進行定制,移植到我們的平臺中來。OpenGL并不直接和硬件打交道,而是和硬件抽象層聯(lián)系。硬件抽象層將硬件資源抽象成一個對象,屏蔽頂層細節(jié),使得上層開發(fā)人員不必知道底層各種技術(shù)細節(jié),而是提供一種統(tǒng)一的編程接口。硬件抽象層通常是根據(jù)系統(tǒng)平臺的不同而命名上有所差異,但基本策略和架構(gòu)都是一樣的,目的都是為了屏蔽底層的差異性。驅(qū)動程序是直接和硬件打交道的,它是由硬件制造商提供的,它遵循硬件抽象層的規(guī)則,向上提供服務(wù)。最后顯示模塊將數(shù)據(jù)交由硬件進行顯示。總而言之,本發(fā)明提出了一種大規(guī)模數(shù)據(jù)場的并行可視化系統(tǒng)??蚣馨瑥臄?shù)據(jù)的網(wǎng)格化到最終的終端顯示一整套流程。在數(shù)據(jù)的網(wǎng)格化模塊中采用趨勢面和殘差疊加的方法,兼顧了素具的全局和局部特性;在可視化模塊采用了多種可視化技術(shù)相結(jié)合,互補互成,包含了標量、矢量和張量的數(shù)據(jù)場的并行可視化方法;為了達到更好的成像質(zhì)量,我們還采用了機遇特征分析的技術(shù),讓可視化的質(zhì)量更加的逼真;負載均衡是并行系統(tǒng)運行效率的一個重要影響因素。本發(fā)明采用一種任務(wù)池的技術(shù)能夠很好的解決系統(tǒng)中負載均衡。然后,簡化模塊去重存精,將所需往下一模塊的數(shù)據(jù)簡直最少,減少數(shù)據(jù)傳輸量;組裝模塊負責(zé)裝配來自不同遠端的并行數(shù)據(jù),最后交由基本顯示模塊進行顯示。 通過多種可視化技術(shù)相結(jié)合能夠很好的適合不同的數(shù)據(jù)場,包括矢量、張量和標量;在基本的可視化技術(shù)上再結(jié)合機遇特征分析的可視化技術(shù),能夠進一步提升可視化的質(zhì)量,同時計算量也不大;在并行框架中,為了達到并行性能的高效率,采用任務(wù)池技術(shù)對一個大的任務(wù)進行分割,由一群子線程來分別完成任務(wù),能夠很好的將負載均衡化。以上對本發(fā)明實施例所提供的對數(shù)據(jù)進行可視化處理的方法及系統(tǒng)進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1.一種對數(shù)據(jù)進行可視化處理的方法,其特征在于,包括如下步驟 采用趨勢面和殘差疊加法實現(xiàn)數(shù)據(jù)的網(wǎng)格化; 對網(wǎng)格化的數(shù)據(jù)采用相應(yīng)的可視化技術(shù); 采用邏輯簡化、紋理簡化和編碼壓縮對數(shù)據(jù)進行去重留精; 對數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成; 將可視化數(shù)據(jù)進行顯示。
2.如權(quán)利要求I所述的對數(shù)據(jù)進行可視化處理的方法,其特征在于,所述采用趨勢面和殘差疊加法實現(xiàn)數(shù)據(jù)的網(wǎng)格化包括 根據(jù)實際需要選定一個m值,用于后面擬合多次曲面需要; 利用趨勢面擬合法,擬合出一個m次趨勢面; 作出數(shù)據(jù)點值與該趨勢面之間的殘差; 將網(wǎng)格點上的趨勢值和殘差擬合值相加,作為網(wǎng)格點值。
3.如權(quán)利要求2所述的對數(shù)據(jù)進行可視化處理的方法,其特征在于,所述對網(wǎng)格化的數(shù)據(jù)采用相應(yīng)的可視化技術(shù)包括 標量數(shù)據(jù)場的并行可視化、矢量和張量數(shù)據(jù)場的并行可視化、基于特征分析的可視化。
4.如權(quán)利要求3所述的對數(shù)據(jù)進行可視化處理的方法,其特征在于,所述采用邏輯簡化、紋理簡化和編碼壓縮對數(shù)據(jù)進行去重留精包括 邏輯簡化,采用形式推理和演算將模塊中的數(shù)據(jù)的邏輯關(guān)系明確,通過分析來自不同管道的數(shù)據(jù)關(guān)系,去除重復(fù)數(shù)據(jù)和可以直接生成的數(shù)據(jù); 紋理簡化是針對一些紋理圖像進行的一項簡化技術(shù),通常紋理都是具有規(guī)律的重復(fù)出現(xiàn)的,這時利用這種屬性保持一次紋理屬性,每次需要再現(xiàn)時只需要直接提取即可; 數(shù)據(jù)壓縮是在字節(jié)級別的數(shù)據(jù)壓縮方法,采用赫夫曼編碼壓縮編碼或者其他可變長編碼算法實現(xiàn)。
5.如權(quán)利要求4所述的對數(shù)據(jù)進行可視化處理的方法,其特征在于,所述對數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成包括 數(shù)據(jù)格式的解析負責(zé)接受來自不同遠端傳來的數(shù)據(jù),對其進行解碼、格式解析,還原需要顯示的數(shù)據(jù); 邏輯關(guān)系的組裝是對并行數(shù)據(jù)之間內(nèi)在邏輯的一種建立,采用預(yù)定義好的邏輯術(shù)語,每個數(shù)據(jù)都映射到一類邏輯類型,同時也需要聲明它前后所需要相連的邏輯術(shù)語; 根據(jù)不同的顯示設(shè)備對數(shù)據(jù)的格式要求,轉(zhuǎn)化成不同的數(shù)據(jù)格式。
6.權(quán)利要求5所述的對數(shù)據(jù)進行可視化處理的方法,其特征在于,所述將可視化數(shù)據(jù)進行顯示包括 將需要可視化的數(shù)據(jù)和特定渲染技術(shù)相結(jié)合的預(yù)處理過程; 采用OpenGL技術(shù)實現(xiàn)數(shù)據(jù)的移植性; 將硬件資源抽象成一個對象,屏蔽頂層細節(jié),使得上層開發(fā)人員不必知道底層各種技術(shù)細節(jié),而是提供一種統(tǒng)一的編程接口 ; 將數(shù)據(jù)交由硬件進行顯示。
7.—種對數(shù)據(jù)進行可視化處理的系統(tǒng),其特征在于,包括 數(shù)據(jù)網(wǎng)格化模塊,用于采用趨勢面和殘差疊加法實現(xiàn)數(shù)據(jù)的網(wǎng)格化;可視化模塊,用于對網(wǎng)格化的數(shù)據(jù)采用相應(yīng)的可視化技術(shù); 簡化模塊,用于采用邏輯簡化、紋理簡化和編碼壓縮對數(shù)據(jù)進行去重留精; 組裝模塊,用于對數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成; 基本顯示模塊,用于將可視化數(shù)據(jù)進行顯示。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述可視化模塊采用的可視化技術(shù)包括標量數(shù)據(jù)場的并行可視化、矢量和張量數(shù)據(jù)場的并行可視化、基于特征分析的可視化。
全文摘要
本發(fā)明實施例公開了一種對數(shù)據(jù)進行可視化處理的方法,包括如下步驟采用趨勢面和殘差疊加法實現(xiàn)數(shù)據(jù)的網(wǎng)格化;對網(wǎng)格化的數(shù)據(jù)采用相應(yīng)的可視化技術(shù);采用邏輯簡化、紋理簡化和編碼壓縮對數(shù)據(jù)進行去重留精;對數(shù)據(jù)格式的解析、邏輯關(guān)系的組裝和可視化數(shù)據(jù)的生成;將可視化數(shù)據(jù)進行顯示。本發(fā)明實施例還公開了一種對數(shù)據(jù)進行可視化處理的系統(tǒng),本發(fā)明實施例,通過多種可視化技術(shù)相結(jié)合能夠很好的適合不同的數(shù)據(jù)場,在基本的可視化技術(shù)上再結(jié)合機遇特征分析的可視化技術(shù),能夠進一步提升可視化的質(zhì)量,同時計算量也不大。
文檔編號G06F9/44GK102622198SQ20121004937
公開日2012年8月1日 申請日期2012年2月29日 優(yōu)先權(quán)日2012年2月29日
發(fā)明者曾金龍, 王若梅, 陳湘萍 申請人:中山大學(xué)