文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.170294
中文引用格式: 梁青青,李暉,周彧,等. FastSky:巡天數(shù)據(jù)的天圖系統(tǒng)[J].電子技術應用,2017,43(11):116-119,123.
英文引用格式: Liang Qingqing,Li Hui,Zhou Yu,et al. FastSky:sky map system based on survey data[J].Application of Electronic Technique,2017,43(11):116-119,123.
0 引言
隨著科學技術的進步和大批巡天觀測項目的實施,當前的天文數(shù)據(jù)正呈現(xiàn)爆炸式的增長,天文學正進入一個數(shù)據(jù)富庶的時代[1]。各大虛擬天文臺均致力于將整理完善的天文數(shù)據(jù)公開,提供給全球的用戶進行訪問,促進了全球天文數(shù)據(jù)資源的共享。
天文愛好者和天文學家均可通過對公開的巡天數(shù)據(jù)的研究分析,從而挖掘出數(shù)據(jù)中的有用信息,因此越來越多的天文分析輔助工具應運而生。
目前,國外已有很多優(yōu)秀的可視化工具,如具有星表和圖片服務器訪問功能的ESO圖像顯示工具Skycat[2],它結合了圖像可視化和天文數(shù)據(jù)歸檔功能;法國斯特拉斯堡數(shù)據(jù)中心開發(fā)的數(shù)據(jù)整合工具Aladin[3],在天體多波段交叉證認方面具有優(yōu)越性;具有高互動性的天文圖像分析工具GAIA[4]提供圖像分析擴展功能[5]。這些工具的數(shù)據(jù)處理功能各具特色,但對用戶及安裝環(huán)境要求較高,且彼此之間無法協(xié)同工作,不利于科學家研究工作的開展。為了解決這一問題,本文研究并實現(xiàn)的FastSky系統(tǒng),只需在網(wǎng)頁中加載所需數(shù)據(jù),即可進行各種操作,大大降低了使用者的計算機技術要求和軟件的運行環(huán)境要求,并且數(shù)據(jù)分析功能豐富,可滿足大部分的工作需求。
FastSky系統(tǒng)部分借鑒了Aladin Lite[6]的設計,并進行了擴展?;贖ealpix球面分割的HiPS[7]技術,實現(xiàn)對天文數(shù)據(jù)的層級式展示、星表數(shù)據(jù)的表格展示和排序、求距、提取等高線等功能;其他核心功能還包括坐標線的繪制、天球坐標系統(tǒng)轉換、窗口縮放等。FastSky目前已被FAST工程科學部列為巡天數(shù)據(jù)科學研究的支撐軟件,在FAST巡天數(shù)據(jù)科學研究規(guī)劃中應用。
1 FastSky的設計
FastSky系統(tǒng)采用B/S模式,通過AJAX訪問各個巡天數(shù)據(jù)庫并獲取數(shù)據(jù);利用HiPS技術劃分天區(qū),構建層級式巡天窗口;實現(xiàn)了多種天文計算算法,用戶可完成基本的數(shù)據(jù)處理。
目前,F(xiàn)astSky系統(tǒng)可訪問的數(shù)據(jù)庫包括Simbad[8]、NED[9]、VizieR[10]和Aladin HiPS服務器,操作的數(shù)據(jù)主要有3種類型:星圖、星表和圖形元素,這些數(shù)據(jù)都展示在視圖窗口中。
系統(tǒng)架構如圖1所示,F(xiàn)astSky天圖系統(tǒng)主要包含6個子系統(tǒng),其核心服務主要是巡天數(shù)據(jù)的可視化和數(shù)據(jù)處理。其中,視圖層主要負責構建視圖窗口、展示天文數(shù)據(jù)處理結果以及監(jiān)聽窗口中的事件;天區(qū)索引構建器負責對Healpix天區(qū)索引初始化,并維護窗口的可見天區(qū)索引列表;URL構建器負責構建所需下載的天文數(shù)據(jù)的URL地址,包括天區(qū)索引式構建和用戶參數(shù)式構建兩種類型;對象生成器用于解析所下載的天文數(shù)據(jù)文件格式,并生成數(shù)據(jù)對象,包括星圖對象HpxImage、星表對象Catalog和圖形對象Overlay;函數(shù)庫是系統(tǒng)中最基礎的計算模塊,它實現(xiàn)了一些天文數(shù)學計算方法,供其他模塊調用。
2 FastSky的關鍵技術
本節(jié)將對支撐FastSky系統(tǒng)的天圖數(shù)據(jù)可視化和巡天數(shù)據(jù)處理的關鍵技術Healpix和HiPS進行詳細介紹。
2.1 Healpix
多級等面積同緯度劃分法Healpix[11](Hierarchical Equal Area isoLatitude Pixelisation),它是一種天文中常見的球面索引方法。Healpix的分割方式是對天區(qū)進行遞歸的多層次四邊形劃分,按照四叉樹進行層次迭代。
圖2為Healpix方法劃分天球0級~3級的劃分情況。首先將全天區(qū)進行8等分,再將每個四邊形繼續(xù)4等分,依此進行層級遞歸,經過n級劃分后,天區(qū)被劃分為12×4n個塊。編碼時,通過遞歸,子塊將繼承上一級父塊的編碼并作為前綴。
2.2 HiPS
在傳統(tǒng)的數(shù)據(jù)訪問中,系統(tǒng)常因為天文數(shù)據(jù)過大而不堪重負,而其中的大部分數(shù)據(jù)并不需要。所以將數(shù)據(jù)分割成塊,按需加載顯得尤為重要。
HiPS是基于Healpix索引的數(shù)據(jù)分層存儲技術,它將數(shù)據(jù)按照Healpix天區(qū)級別分割成塊,存儲在對應級別的目錄中,當用戶瀏覽某些天區(qū)時,只需計算該天區(qū)的存儲位置,即可訪問數(shù)據(jù)。
HiPS的存儲結構中的幾個重要的結構含義如下:
Norder:是指劃分的天區(qū)級別,從0級開始用8個等面積的菱形劃分天球,一個四邊形代表一個天區(qū),劃分下一級時,每個天區(qū)被細分為4個等面積天區(qū),以此遞歸。
Npix:是指天區(qū)的編碼,Heapix中有nested和ring兩種編碼方式,本文采用的是nested編碼方式。
Dir:是一個中間級存儲結構,隨著天區(qū)級別的逐漸增加,天區(qū)塊的數(shù)會呈指數(shù)上升,為避免目錄中的數(shù)據(jù)量過多,建立了一層中間級存儲結構,即將10 000個天區(qū)存儲在一個dir目錄中。
3 FastSky的功能實現(xiàn)
下面重點介紹FastSky系統(tǒng)的天圖可視化和數(shù)據(jù)處理的關鍵流程。
3.1 可視化流程
FastSky系統(tǒng)的可視化是一種特殊的數(shù)據(jù)處理,主要是針對星圖星表數(shù)據(jù),將數(shù)據(jù)進行一系列處理后無縫拼接展示到視圖窗口中,易于瀏覽觀測。
FastSky系統(tǒng)的可視化處理流程如算法1所示。
算法1 可視化流程
Algorithm:Visualization(target,fov,view)
Input:target為天體目標,位于視圖窗口的中心;fov為視場角大小。
Output:view為繪制好數(shù)據(jù)的視圖窗口對象。
Body:
(1)view()//創(chuàng)建一個具有三層畫布的視圖窗口,然后添加窗口的監(jiān)聽事件
(2)list=getVisibleCells(target,fov)//計算窗口中的可見天區(qū)的索引號列表list
(3)data=URLBuilderByIndex(list)//采用索引方式構建數(shù)據(jù)塊的URL地址,并下載數(shù)據(jù)
(4)Draw(data)//解析下載的數(shù)據(jù)data,建立相應的數(shù)據(jù)對象數(shù)組存儲數(shù)據(jù),并將數(shù)據(jù)繪制到窗口中
3.2 數(shù)據(jù)處理
FastSky的數(shù)據(jù)處理模塊功能包括坐標轉換、求距計算、提取等高線、目標名解析等。下面將重點介紹前述四個功能的實現(xiàn)。
3.2.1 坐標轉換
在本系統(tǒng)中,主要涉及到了兩個重要的坐標系,一個是天球坐標系,即用赤經赤緯來表示天體在天球上的位置;另一個是窗口坐標系,用于定義元素所要繪制的位置。其轉換過程如下:
(1)將極坐標轉為直角坐標。
(3)使用正弦投影將三維直角坐標投影到SH空間中。
(4)根據(jù)窗口計算繪制位置vx、vy。
3.2.2 目標名解析
目標名解析是指輸入天體目標名稱,即可獲取該天體在J2000坐標系下的赤經赤緯位置。它是其他系統(tǒng)功能的基礎。本系統(tǒng)對目標名的解析采用的是訪問CDS的Sesame天體目標名解析器,獲取結果。通過AJAX訪問Sesame服務器,訪問成功,則返回天體的赤經赤緯位置。
3.2.3 測距
測距是指根據(jù)用戶點擊的兩個點的位置,計算它們之間的天體距離。設兩個點的位置分別為p1(x1,y1),p2(x2,y2),則距離公式為:
3.2.4 提取等高線
提取等高線是一種常見的圖像處理方法,首先獲取圖像灰度值,進行平滑處理和降噪處理,然后根據(jù)不同級別的灰度閾值分別計算對應的輪廓線,并繪制。求解輪廓線采用的是SNYDER W V的Contour plotting[12]經典算法。提取等高線的流程偽代碼如算法2所示。
算法2 提取等高線流程
Algorithm:getContour(pimg,levels,useSmoothing,smoothingLevel,reduceNoise,view)
Input:pimg為圖像的灰度值,levels為灰度閾值,useSmoothing為是否平滑處理,smoothingLevel為平滑處理級別,reduceNoise為是否進行降噪處理。
Output:view為已繪制好等高線的視圖窗口對象。
Body:
(1) get pimg,levels
(2) if useSmoothing
(3) makeSmoothing( )//進行平滑處理
(4) adjustLevels( )//調整灰度閾值
(5) else if reduceNoise
(6) reduceNoise( )//進行降噪處理
(7) for each level
(8) for each pimg
(9) line=computeLine( )//計算等高線
(10) drawLine(line )//繪制線段
(11) return view
4 FastSky系統(tǒng)實例
本節(jié)將主要介紹FastSky系統(tǒng)在天文可視化領域的實例應用。
圖3是系統(tǒng)界面的布局設計圖,主要包括菜單欄、視圖窗口、工具箱、功能標簽頁、星表表格五大部分。
(1)Healpix Grid:HealpixGrid網(wǎng)格線的繪制效果如圖4所示,當縮放窗口時,窗口中的網(wǎng)格線會根據(jù)縮放層次實時繪制,其中每個網(wǎng)格中的文字格式為“天區(qū)級別/天區(qū)編號”。
(2)測距:測距功能是指用戶通過鼠標點擊窗口輸入兩個點的位置,系統(tǒng)則根據(jù)測距公式計算兩點間的天體距離,并將結果展示到窗口中。測距公式在系統(tǒng)實現(xiàn)部分已給出,實現(xiàn)效果如圖5所示。
(3)等高線:等高線功能是對視圖窗口中的圖像進行等高線的提取。實現(xiàn)效果如圖6所示。
(4)星表可視化:所謂星表可視化,是指加載當前窗口中的星體數(shù)據(jù),并使用符號把星體繪制到窗口中。繪制效果如圖7所示。
5 結束語
隨著虛擬天文臺的相關服務發(fā)展日益完善,使得天文數(shù)據(jù)和相關資源的獲取也更加方便。在基于巡天數(shù)據(jù)驅動的天文科學研究中,研究人員要從大量的數(shù)據(jù)中提取有用的信息,了解數(shù)據(jù)之間的相互關系[13],將數(shù)據(jù)進行可視化并進行探索式數(shù)據(jù)處理是最為有效的途徑之一。本文研發(fā)的FastSky天圖系統(tǒng)操作直觀,使用簡便,支持訪問各個公開的巡天數(shù)據(jù)庫,并提供了常用的天圖數(shù)據(jù)可視化展現(xiàn)和天文數(shù)據(jù)分析功能,具有較強的實用性。FastSky目前已被FAST工程科學部列為巡天數(shù)據(jù)科學研究的支撐軟件,在FAST巡天數(shù)據(jù)科學研究規(guī)劃中應用。
參考文獻
[1] 桑健,趙永恒,崔辰州.中國虛擬天文臺數(shù)據(jù)訪問服務[J].天文研究與技術:國家天文臺臺刊,2004,1(3):216-228.
[2] ALBRECHT M A,BRIGHTON A,HERLIN T,et al.Access to data sources and the eso skycat tool[C].Astronomical Data Analysis Software and Systems VI.1997,125:333.
[3] BONNAREL F,ZIAEEPOUR H,BARTLETT J G,et al.The Aladin interactive sky atlas[M].New Horizons from Multi-Wavelength Sky Surveys.Springer Netherlands,1997:469-470.
[4] DRAPER P W,GRAY N,BERRY D S,et al.GAIA-Graphical astronomy and image analysis tool[Z].Astrophysics Source Code Library,2014,1:03024.
[5] 高丹,張彥霞,趙永恒.中國虛擬天文臺交叉證認工具的開發(fā)和應用[J].天文學報,2008,49(3):348-358.
[6] BOCH T,F(xiàn)ERNIQUE P.Aladin Lite:Embed your sky in the browser[C].Astronomical Data Analysis Software and Systems XXIII.2014,485:277.
[7] FERNIQUE P.HiPS-Hierarchical progressive survey[Z].2015.
[8] WENGER M,OCHSENBEIN F,EGRET D,et al.The SIMBAD astronomical database-the CDS reference database for astronomical objects[J].Astronomy and Astrophysics Supplement Series,2000,143(1):9-22.
[9] FADDA D,MAZZARELLA J M,OGLE P M,et al.NED in the era of very large extragalactic surveys[C].American Astronomical Society Meeting Abstracts # 223,2014.
[10] OCHSENBEIN F,F(xiàn)ERNIQUE P,ORTIZ P,et al.The VizieR system, a unified interface to astronomical catalogs[J].Future Generation Computer Systems,1999,16(1):39-48.
[11] HIVON E,HANSEN F K,BANDAY A J.The healpix primer[Z].arXiv preprint astro-ph/9905275,1999.
[12] SNYDER W V.Algorithm 531:contour plotting[J6][J].ACM Transactions on Mathematical Software(TOMS),1978,4(3):290-294.
[13] 邵惠娟,趙永恒.中國虛擬天文臺可視化服務[J].天文研究與技術:國家天文臺臺刊,2004,1(2):152-159.
作者信息:
梁青青1,2,李 暉1,2,周 彧1,2,陳 梅1,2,朱 明3
(1.貴州大學 貴州省先進計算與醫(yī)療信息服務工程實驗室,貴州 貴陽550025;
2.貴州大學 計算機科學與技術學院,貴州 貴陽550025;3.國家天文臺 中國科學院,北京100016)