黎嘉明 付紅彬 張志敏
(廣東省環(huán)境信息中心,廣州 510308)
“重點城市群大氣復(fù)合污染綜合防治技術(shù)與集成示范”(Synthesized Prevention Techniques for Air Pollution Complex and Integrated Demonstration in Key City-Cluster Region ,英文簡寫為3c-star,以下簡稱“項目”)是中國“十一五”期間,由國家高技術(shù)研究與發(fā)展計劃(863)設(shè)立的一個項目,以增強城市群區(qū)域大氣復(fù)合污染控制能力,參與的單位包括北京大學(xué)、清華大學(xué)、中科院等著名院校及科研部門,也包括廣東及京津地區(qū)政府環(huán)保部門,以使這些項目的成果能更好地在實際應(yīng)用部門“落地”。作者所在的廣東省環(huán)境信息中心承擔(dān)了項目中的《區(qū)域大氣環(huán)境綜合管理和輔助決策系統(tǒng)》的研發(fā)工作,工作的目標(biāo)是將項目中各個課題的研究成果與廣東省環(huán)保廳的業(yè)務(wù)需求相結(jié)合,讓研究成果可以應(yīng)用到實際工作中。本文闡述的大氣污染預(yù)測數(shù)據(jù)可視化動態(tài)展示技術(shù)結(jié)合了項目中北京大學(xué)、中科院大氣所的研究成果,研究適合在現(xiàn)代網(wǎng)絡(luò)和移動終端中可視化展示的方法和技術(shù)。
項目中由中科院大氣所研發(fā)的大氣污染預(yù)測模式生成的數(shù)據(jù)是三維的網(wǎng)格數(shù)據(jù),格式為NetCDF,數(shù)據(jù)描述在一個立體空間里面,由高到低分成20個平面,每個平面會分成多個小方塊,每個小方塊的大小為3km×3km,共120×100個,方塊包含20多個變量,每次預(yù)測的時間為72個小時。這種數(shù)據(jù)的時序變化比較好的方法是使用動畫來展示,而且因為它是平面的數(shù)據(jù),數(shù)據(jù)范圍超過以往監(jiān)測點的數(shù)據(jù),如果能結(jié)合GIS一起展示會有更好的效果。雖然在科學(xué)研究領(lǐng)域中,已經(jīng)有一些科學(xué)軟件可以對NetCDF格式的數(shù)據(jù)進行圖像渲染,這些軟件可將NetCDF格式數(shù)據(jù)生成二維圖片、圖表、甚至gif動畫等等,但是這些軟件多是基于Linux工作站的商業(yè)軟件,無法在網(wǎng)絡(luò)環(huán)境中實現(xiàn)多用戶的互動可視化,更不能與GIS平臺集成。因此需要針對現(xiàn)有的網(wǎng)絡(luò)環(huán)境以及地理信息系統(tǒng)平臺,結(jié)合應(yīng)用部門的需求。我們希望通過研究新的技術(shù)很好地解決以上的問題。為此制定了以下的研發(fā)目標(biāo):
(1)實現(xiàn)污染物濃度值和評價值以多色漸變、多色梯度、單色漸變、單色梯度以及等值線等方式進行可視化渲染;
(2)實現(xiàn)大氣污染預(yù)測數(shù)據(jù)的時間演變動畫,動畫實時生成,可以由用戶“互動”檢索(快進、回退、調(diào)整播放速度、查看任意位置的數(shù)值);
(3)實現(xiàn)模式域任意縱向剖面的狀態(tài),需要研究如何從NetCDF中快速地獲取一個縱向剖面的數(shù)據(jù)進行可視化顯示;
(4)更好地關(guān)聯(lián)顯示氣象因素,使氣象與大氣污染的變化可以緊密集成;
(5)基于WebGIS,可疊加更多的業(yè)務(wù)數(shù)據(jù)(例如污染源數(shù)據(jù)、空氣實時監(jiān)測數(shù)據(jù))。
為了實現(xiàn)以上的研發(fā)目標(biāo),我們將項目分解為多個技術(shù)研究的任務(wù),其中取得比較大的技術(shù)進步的有以下幾個:
要實現(xiàn)研發(fā)目標(biāo),抽取NetCDF數(shù)據(jù)是首要任務(wù)。由于現(xiàn)有的工具大多是linux命令行模式的程序,不適合我們的應(yīng)用服務(wù)器整合,因此需要開發(fā)軟件直接對NetCDF文件進行解析讀取。NetCDF數(shù)據(jù)格式屬于自解釋格式,它的存儲是按照時間對每一個變量進行分塊存儲,對于單時間整塊數(shù)據(jù)可以很快地進行定位讀取,但是對于多時間數(shù)據(jù)的讀取,需要從NetCDF文件所有塊中分別讀取數(shù)據(jù),而這些數(shù)據(jù)在物理磁盤上是分開存放,磁盤IO花費的時間很大,造成讀取效率低下。因此我們引入一種新的數(shù)據(jù)存儲格式對數(shù)據(jù)進行轉(zhuǎn)換,這個轉(zhuǎn)換工作放在模式計算完成后自動執(zhí)行,在數(shù)據(jù)轉(zhuǎn)換的同時也對多個模式的數(shù)據(jù)進行綜合平均,并計算API、RAQI等評價結(jié)果。
由于數(shù)據(jù)需要在GIS平臺上展示,要求NetCDF數(shù)據(jù)的空間參考與GIS平臺一致,從預(yù)測模式生成的NetCDF數(shù)據(jù)所使用的坐標(biāo)系為蘭伯特投影,GIS平臺使用的則是WGS1984麥卡托投影,這需要在可視化之前對多維數(shù)據(jù)集先進行投影變換,多維數(shù)據(jù)集不是GIS圖層,無法使用現(xiàn)有地理信息系統(tǒng)的投影變換功能,因此需要獨立開發(fā)軟件,編寫變換算法。對于預(yù)測模式來講,源清單的投影以及模式域一旦確定下來,一般不會經(jīng)常改變,這就可以將空間變換的參數(shù)當(dāng)作一個靜態(tài)數(shù)據(jù),通過現(xiàn)有的GIS軟件將之每個格網(wǎng)的坐標(biāo)變換到目標(biāo)坐標(biāo)系下,并將坐標(biāo)對應(yīng)關(guān)系存儲在數(shù)據(jù)庫中,在可視化時通過查數(shù)據(jù)庫的方式間接地實現(xiàn)投影變換。這種技術(shù)經(jīng)過實驗證明可行,可以非??焖俚貙etCDF的數(shù)據(jù)映射到GIS上。
以上的數(shù)據(jù)轉(zhuǎn)換、處理工作均在后臺服務(wù)器端自動運行,而為了實現(xiàn)用戶“互動”檢索功能,還需要自己開發(fā)前臺客戶端軟件,實現(xiàn)數(shù)據(jù)的展現(xiàn)和查詢。為了實現(xiàn)這一目標(biāo),我們使用Silverlight前端技術(shù),結(jié)合Esri ArcGIS的WebGIS平臺,以地圖層的方式展示大氣污染預(yù)測數(shù)據(jù),并可以與其他的業(yè)務(wù)數(shù)據(jù)層一起整合。
為了更好地展示氣象因素與大氣污染的變化的關(guān)聯(lián),我們進一步在以上的基礎(chǔ)上加以改進,引入新的技術(shù)和方法,研究出一套新的制作大氣污染預(yù)測數(shù)據(jù)時序變化動畫的技術(shù),要點如下:
(1)使用插值的方法將動畫由每小時1幀變?yōu)槊啃r12幀,以提高動畫的流暢度。經(jīng)過多次的實驗,我們發(fā)現(xiàn)固定位置的數(shù)值時序變化的插值,并不能達到預(yù)期的效果。傳統(tǒng)上表現(xiàn)風(fēng)力和方向的方法,是在小方格上畫一個矢量箭頭,箭頭的方向和長短根據(jù)風(fēng)力的方向和長短而變化。但是這個風(fēng)也是“固定位置”的,需要有一種新的技術(shù)來實現(xiàn)“移動位置的時序變化”。
(2)引入粒子系統(tǒng)技術(shù)來展示大氣的流動。“粒子系統(tǒng)技術(shù)”是計算機圖形學(xué)中模擬一些特定的模糊現(xiàn)象的技術(shù),這些現(xiàn)象用其他傳統(tǒng)的渲染技術(shù)難以實現(xiàn)。例如:火、爆炸、煙、水流、火花、落葉、云、霧、雪、塵、流星尾跡或者像發(fā)光軌跡這樣的抽象視覺效果等。利用粒子系統(tǒng)技術(shù),結(jié)合大氣污染預(yù)測數(shù)據(jù)中風(fēng)力的數(shù)據(jù),模擬出空氣流動的變化,既解決了動畫插值的流暢度的問題,也同時實現(xiàn)了氣象數(shù)據(jù)與大氣污染數(shù)據(jù)的關(guān)聯(lián)展示,從動畫中可以非常直觀地看出大氣污染帶隨氣流的漂移、污染帶在停滯的氣流環(huán)境下的累積等現(xiàn)象,這些都是在傳統(tǒng)的展示技術(shù)中難以實現(xiàn)的。
(3)使用32bit的計算機圖形格式,基于Alpha通道實現(xiàn)多層圖形數(shù)據(jù)的無損疊加,可實現(xiàn)GIS地圖層、標(biāo)注層和其他業(yè)務(wù)數(shù)據(jù)的疊加,更容易實現(xiàn)業(yè)務(wù)管理的需要,利用這種技術(shù)我們開發(fā)出應(yīng)用服務(wù),每天緊接著大氣預(yù)測模式運行,自動生成預(yù)測數(shù)據(jù)的動畫文件(MP4格式,可直接在網(wǎng)絡(luò)瀏覽器和移動終端上播放),效果如下圖所示:
本文闡述的“基于WebGIS和粒子系統(tǒng)的大氣污染預(yù)測數(shù)據(jù)展示技術(shù)”是國家“863”項目“重點城市群大氣復(fù)合污染綜合防治技術(shù)與集成示范”(3c-star)的重點科研成果之一。與以往使用科學(xué)計算工具對預(yù)測數(shù)據(jù)進行分析的工作不同,此項技術(shù)是國內(nèi)首個對預(yù)測數(shù)據(jù)進行底層的、深入的全面的分析、處理、展示的技術(shù)。該技術(shù)已運用于具有自主知識產(chǎn)權(quán)的“區(qū)域大氣環(huán)境綜合管理和輔助決策系統(tǒng)”,并運行于廣東省環(huán)境保護廳的內(nèi)部信息平臺上,其效果獲得國內(nèi)外專家的好評。
[1] NetCDF Documentation (http://www.unidata.ucar.edu/software/netcdf/#documentation).