專利名稱:基于相似變換模型的柵格數(shù)據(jù)坐標轉(zhuǎn)換并行方法
技術(shù)領(lǐng)域:
本發(fā)明屬于高性能地理計算領(lǐng)域,特別是涉及一種基于相似變換的柵格數(shù)據(jù)坐標轉(zhuǎn)換的柵格數(shù)據(jù)處理方法。
背景技術(shù):
柵格數(shù)據(jù)是以二維矩陣的形式來表示地物或現(xiàn)象的數(shù)據(jù)組織方式,每個矩陣單位稱為一個柵格單元,柵格的每個數(shù)據(jù)表示地物或現(xiàn)象的屬性數(shù)據(jù)。作為空間數(shù)據(jù)最基本的組織方式之一,柵格數(shù)據(jù)在空間數(shù)據(jù)動態(tài)更新、地理信息系統(tǒng)時空數(shù)據(jù)分析、時空數(shù)據(jù)共享等方面都發(fā)揮這重要的作用。隨著對地觀測技術(shù)的迅速發(fā)展,為開展區(qū)域地理過程的研究,將獲取多尺度、多時相的柵格數(shù)據(jù)。然而,這些柵格數(shù)據(jù)的坐標參照系往往會有差異,這給地理數(shù)據(jù)集成、地理計算、地理過程分析等帶來了困難,甚至會引發(fā)分析結(jié)果的錯誤,因此有必要對這些柵格數(shù)據(jù)進行坐標轉(zhuǎn)換。坐標參照系是提供系統(tǒng)原點、尺度、定向及其時間演變的一組協(xié)議、算法和常數(shù)。坐標系是一種在給定維數(shù)空間中用坐標來表示點的方法。坐標轉(zhuǎn)換的目的是將具有不同坐標參考系的數(shù)據(jù)統(tǒng)一到同一坐標參考系中。坐標參考系的差異主要來自于坐標參考系定義的差異,即基準、坐標原點位置、坐標軸定向和尺度定義的差異。國內(nèi)外諸多研究機構(gòu)和學者已開展了大量的坐標轉(zhuǎn)換的研究工作。坐標轉(zhuǎn)換的包括同一基準下和不同基準地心坐標系、大地坐標系、投影坐標系間的轉(zhuǎn)換,其中同一基準下大地坐標系到地心坐標系的轉(zhuǎn)換常采用解析法,地心坐標系到大地坐標的轉(zhuǎn)換多采用近似計算法,數(shù)值迭代法和直接法。其中,近似計算法包括BoWringl976年在期刊 Survey Review, 23 卷,181 號發(fā)表的“TRANSFORMATION FROM SPATIAL TO GEOGRAPHICAL COORDINATES” 一文中提出的近似計算公式,Toms, R. 1996年在會議Proceedings on Standards for the Interoperability of Distributed Simulation 上的 “An Improved Algorithm for Geocentric to Geodetic Coordinate Conversion,,一文中提出的近似計算公式等;數(shù)值迭代法有Laskowski Piotr 1991年在期刊Bulletin Geodesique 第 65,第 I 集中發(fā)表的“Is Newton’ s iteration faster than simple iteration for transformation between geocentric and geodetic coordinates,,一文中提出的 Bowring公式的迭代算法,J. Pollard2002年發(fā)表在期刊Journal of Geodesy第76卷I 號的 “Iterative vectormethods for computing geodetic latitude and height from rectangular coordinates” 一文中提出的迭代算法等;直接法有H. Vermeille2002年發(fā)表在期干丨J Journal of Geodesy 第 76 卷 8 號的“Direct transformation from geocentric coordinates to geodetic coordinates”中提出的直接算法等。不同基準的坐標系間的轉(zhuǎn)換最為常用的為相似變換模型,相似變換是指在各個方向上變換的比率必須相同的一種比例變換,即變換前后圖形的形狀不變(大小可變)。坐標變換中常涉及的是平移、旋轉(zhuǎn)、縮放三種基本的相似操作,七參數(shù)模型(7-parameter Helmert模型或Bursa-Wolf模型等)、三參數(shù)模型(Geocentric Translations 等)都屬于相似變換模型,EPSG(EPSG: The EuropeanPetroleum Survey Group)在其 Surveying and Positioning Guidance Note Number 7, part 2-Coordinate Conversions and Transformations including Formulas 對坐標變換中涉及的模型賦予了標識碼并對模型原理做了詳細描述。雖然坐標轉(zhuǎn)換方法的研究較為充分,但現(xiàn)有研究多是針對單機硬件環(huán)境,立足于桌面型軟件系統(tǒng),側(cè)重于算法精度、適用性的提升,側(cè)重于單機環(huán)境下算法處理效率的研究。面對海量柵格數(shù)據(jù),尤其是坐標轉(zhuǎn)換這種高密度計算,為達到柵格數(shù)據(jù)處理對數(shù)據(jù)量及速度的要求,應(yīng)進行并行方法的設(shè)計與實現(xiàn),充分發(fā)揮并行集群與多核處理器的高性能計算優(yōu)勢。并行計算是指在并行機上,將一個應(yīng)用分解成多個子任務(wù),分配給不同的處理器, 各個處理器之間相互協(xié)同,并行地執(zhí)行子任務(wù),從而達到加速求解速度,或者求解應(yīng)用問題規(guī)模的目的。
發(fā)明內(nèi)容
I.發(fā)明要解決的技術(shù)問題
本發(fā)明針對現(xiàn)有的柵格數(shù)據(jù)坐標轉(zhuǎn)換串行算法模式和傳統(tǒng)的硬件平臺難以支撐海量柵格數(shù)據(jù)快速坐標轉(zhuǎn)換的需求的問題,本發(fā)明提供了一種基于相似變換模型的柵格數(shù)據(jù)坐標轉(zhuǎn)換并行方法,該方法在處理的數(shù)據(jù)量和效率上可以得到比較滿意的結(jié)果,并具備良好的通用性。2.本發(fā)明的技術(shù)方案如下
原理在本發(fā)明中,柵格數(shù)據(jù)的坐標轉(zhuǎn)換總體上采用間接法,即首先根據(jù)源文件屬性及目標參考系等參數(shù)生成一個具有目標坐標參考系的初始目標文件,然后計算該初始文件中的每一像元的值。本發(fā)明主要采取數(shù)據(jù)并行策略,由于計算涉及目標文件中每一像元,同時考慮負載均衡,將數(shù)據(jù)平均劃分并行計算?;谙嗨谱儞Q模型的柵格數(shù)據(jù)坐標轉(zhuǎn)換并行方法,其步驟為(步驟流程圖見圖I) 步驟I :并行初始化,即完成MPI (Message Passing Interface)的初始化和GDAL
(Geospatial Data Abstraction Library)的格式驅(qū)動的注冊。本方法使用MPI作為并行編程工具,需要注明并行開始的位置,并獲取并行處理的總進程數(shù)和當前運行的進程號。此外,本方法是基于GDAL完成柵格的讀寫操作,需要注冊GDAL的格式驅(qū)動。步驟2 :用戶以命令行形式輸入?yún)?shù),參數(shù)包括源文件名及路徑、目標文件名及路徑、目標坐標參考系。如源文件坐標參考系缺失或錯誤,則參數(shù)還應(yīng)包括源坐標參考系。坐標參考系的表達方式可以為以下幾種中的一種EPSG碼,PRO J. 4定義(PRO J. 4 : Cartographic Projections library), WKT 定義(WKT :We 11 Known Text)。步驟3 :調(diào)用GDAL數(shù)據(jù)讀寫數(shù)據(jù)函數(shù),將源文件作為GDALDataset類的對象,獲取屬性信息。如用戶自定義了源坐標參考系,則源文件的坐標參考系為用戶自定義源坐標參考系。步驟4 :根據(jù)源坐標參考系和目標坐標參考系確定坐標轉(zhuǎn)換類型及轉(zhuǎn)換步驟。具體方法為如源坐標參考系與目標參考系的基準相同,坐標系不同,則坐標轉(zhuǎn)換的類型為坐標系轉(zhuǎn)換,坐標系類型有地心坐標系、大地坐標系、投影坐標系,三種坐標系兩兩間有算法實現(xiàn)轉(zhuǎn)換,轉(zhuǎn)換的步驟即為柵格數(shù)據(jù)行列坐標轉(zhuǎn)為投影坐標,投影坐標與于其他兩類坐標進行轉(zhuǎn)換。如源坐標參考系與目標參考系的基準不相同,則為基準轉(zhuǎn)換,源坐標參考系的數(shù)據(jù)向目標坐標參考系的轉(zhuǎn)換步驟為源坐標參考系的行列坐標一源坐標參考系的投影坐
標-源坐標參考系的大地坐標-源坐標參考系的地心坐標-WGS84地心坐標-目
標參考系的地心坐標-目標參考系的大地坐標-目標參考系的投影坐標-目標參
考系的行列坐標,目標參考系的數(shù)據(jù)向源坐標參考系的轉(zhuǎn)換與上述步驟相反。步驟5 :對源文件的邊界進行采樣,對采樣點進行源坐標參考系到目標坐標參考系的坐標變換,坐標轉(zhuǎn)換的步驟已由步驟4確定,坐標轉(zhuǎn)換的原理將在步驟9中詳細描述, 獲得目標文件的地理范圍,目標文件的分辨率與源文件的分辨率相同,目標文件的所有像元的值均為0,計算行列坐標到投影坐標的仿射變換參數(shù)集,從而建立一個初始的目標文件。步驟6 :根據(jù)通信域中的進程數(shù),對目標文件平均分塊,各進程根據(jù)其進程編號, 獲取相應(yīng)數(shù)據(jù)塊及其在目標文件中的位置信息和數(shù)據(jù)塊的大?。?br>
步驟7 :各進程對數(shù)據(jù)塊的邊界進行采樣,對采樣點進行目標坐標參考系到源坐標參考系的坐標變換,確定該數(shù)據(jù)塊在源文件中對應(yīng)的范圍,坐標轉(zhuǎn)換的步驟已由步驟4確定, 坐標轉(zhuǎn)換原理將在步驟9中詳細描述。步驟8 :讀取數(shù)據(jù)塊數(shù)據(jù),存入一個長度為m的一維數(shù)組(m=數(shù)據(jù)塊行數(shù)X數(shù)據(jù)塊列數(shù)X波段數(shù)),讀取源文件中與數(shù)據(jù)塊對應(yīng)范圍內(nèi)的數(shù)據(jù),存入一個長度為η的一維數(shù)組(η=范圍內(nèi)行數(shù)X范圍內(nèi)列數(shù)X波段數(shù)),數(shù)組的元素為文件中某一像元在某一波段的值;
步驟9 :對數(shù)據(jù)塊中每一像元的坐標進行由目標參考系到源目標參考系的轉(zhuǎn)換,轉(zhuǎn)換步驟已在步驟4中確定,具體轉(zhuǎn)換原理為(步驟流程圖見圖2)
1)行列坐標轉(zhuǎn)換為投影坐標根據(jù)文件的行列坐標到投影坐標的仿射變換參數(shù)集進行仿射變換,公式為
Xp = padfTransform[O] + P^padfTransform[I] + L^padfTransform[2];
Yp = padfTransform[3] + P^padfTransform[4] + L^padfTransform[5];
其中padfTranSform為含6個元素的一維數(shù)組,存儲行列坐標到投影坐標的仿射變換所需的6個參數(shù);P為像元在柵格文件中所在行號,L為像元在柵格文件中所在列號,行列號均由零開始;Xp, Yp為像元的投影坐標;
2)投影坐標轉(zhuǎn)換為大地坐標,是投影的逆過程;
3)將大地坐標轉(zhuǎn)換為地心坐標,轉(zhuǎn)換公式為
N:
■e sin
X = (AT+//) cos J cos £
Y= (N^-H)CosBsm L Z = [iV(l-e2) + //]sin B
其中a為參考橢球的長半軸,6為參考橢球的短半軸,見e為中間參數(shù),沒為大地經(jīng)度, L為大地緯度,"為大地高,(B, L, H)為大地坐標,(X, Y, Z)為地心坐標;
4)不同基準的地心坐標的轉(zhuǎn)換,轉(zhuǎn)換的參數(shù)由用戶輸入的目標坐標參照系或源坐標參照系的表達式獲得,如果用戶以EPSG碼形式輸入目標坐標參考系或源坐標參考系,則轉(zhuǎn)換參數(shù)將從EPSG相關(guān)的文件gcs. csv、pcs. csv中獲得,轉(zhuǎn)換模型為相似變換模型,根據(jù)參數(shù)
7個數(shù)采用相應(yīng)的三參數(shù)模型或七參數(shù)模型
三參數(shù)模型三參數(shù)模型假設(shè)轉(zhuǎn)換過程只進行了平移操作,公式為
權(quán)利要求
1.基于相似變換模型的柵格數(shù)據(jù)坐標轉(zhuǎn)換并行方法,其步驟為步驟I :并行初始化,即完成MPI的初始化和GDAL的格式驅(qū)動的注冊,本方法使用MPI 作為并行編程工具,需要注明并行開始的位置,并獲取并行處理的總進程數(shù)和當前運行的進程號;此外,本方法是基于GDAL完成柵格的讀寫操作,需要注冊GDAL的格式驅(qū)動;步驟2 :用戶以命令行形式輸入?yún)?shù),參數(shù)包括源文件名及路徑、目標文件名及路徑、 目標坐標參考系;如源文件坐標參考系缺失或錯誤,則參數(shù)還應(yīng)包括源坐標參考系;坐標參考系的表達方式可以為以下幾種中的一種EPSG碼,PR0J.4定義,WKT定義;步驟3 :調(diào)用GDAL數(shù)據(jù)讀寫數(shù)據(jù)函數(shù),將源文件作為GDALDataset類的對象,獲取屬性信息;如用戶自定義了源坐標參考系,則源文件的坐標參考系為用戶自定義源坐標參考步驟4 :根據(jù)源坐標參考系和目標坐標參考系確定坐標轉(zhuǎn)換類型及轉(zhuǎn)換步驟;具體方法為如源坐標參考系與目標參考系的基準相同,坐標系不同,則坐標轉(zhuǎn)換的類型為坐標系轉(zhuǎn)換,坐標系類型有地心坐標系、大地坐標系、投影坐標系,三種坐標系兩兩間由算法實現(xiàn)轉(zhuǎn)換,轉(zhuǎn)換的步驟即為柵格數(shù)據(jù)行列坐標轉(zhuǎn)為投影坐標,投影坐標與其他兩類坐標進行轉(zhuǎn)換;如源坐標參考系與目標參考系的基準不相同,則為基準轉(zhuǎn)換,源坐標參考系的數(shù)據(jù)向目標坐標參考系的轉(zhuǎn)換步驟為源坐標參考系的行列坐標-源坐標參考系的投影坐標-源坐標參考系的大地坐標-源坐標參考系的地心坐標-WGS84地心坐標-目標參考系的地心坐標一目標參考系的大地坐標一目標參考系的投影坐標一目標參考系的行列坐標,目標參考系的數(shù)據(jù)向源坐標參考系的轉(zhuǎn)換與上述步驟相反;步驟5 :對源文件的邊界進行采樣,對采樣點進行源坐標參考系到目標坐標參考系的坐標變換,坐標轉(zhuǎn)換的步驟已由步驟4確定,坐標轉(zhuǎn)換的原理將在步驟9中詳細描述,獲得目標文件的地理范圍,目標文件的分辨率與源文件的分辨率相同,目標文件的所有像元的值均為0,計算行列坐標到投影坐標的仿射變換參數(shù)集,從而建立一個初始的目標文件; 步驟6 :根據(jù)通信域中的進程數(shù),對目標文件平均分塊,各進程根據(jù)其進程編號,獲取相應(yīng)數(shù)據(jù)塊及其在目標文件中的位置信息和數(shù)據(jù)塊的大小;步驟7 :各進程對數(shù)據(jù)塊的邊界進行采樣,對采樣點進行目標坐標參考系到源坐標參考系的坐標變換,確定該數(shù)據(jù)塊在源文件中對應(yīng)的范圍,坐標轉(zhuǎn)換的步驟已由步驟4確定, 坐標轉(zhuǎn)換原理將在步驟9中詳細描述;步驟8 :讀取數(shù)據(jù)塊數(shù)據(jù),存入一個長度為m的一維數(shù)組,m=數(shù)據(jù)塊行數(shù)X數(shù)據(jù)塊列數(shù)X波段數(shù),讀取源文件中與數(shù)據(jù)塊對應(yīng)范圍內(nèi)的數(shù)據(jù),存入一個長度為η的一維數(shù)組,η= 范圍內(nèi)行數(shù)X范圍內(nèi)列數(shù)X波段數(shù),數(shù)組的元素為文件中某一像元在某一波段的值; 步驟9 :對數(shù)據(jù)塊中每一像元的坐標進行由目標參考系到源目標參考系的轉(zhuǎn)換,轉(zhuǎn)換步驟已在步驟4中確定,具體轉(zhuǎn)換原理為I)行列坐標轉(zhuǎn)換為投影坐標根據(jù)文件的行列坐標到投影坐標的仿射變換參數(shù)集進行仿射變換,公式為Xp = padfTransform[O] + P^padfTransform[I] + L^padfTransform[2];Yp = padfTransform[3] + P^padfTransform[4] + L^padfTransform[5];其中padfTranSform為含6個元素的一維數(shù)組,存儲行列坐標到投影坐標的仿射變換所需的6個參數(shù);P為像元在柵格文件中所在行號,L為像元在柵格文件中所在列號,行列號均由零開始;Xp, Yp為像元的投影坐標;2)投影坐標轉(zhuǎn)換為大地坐標,是投影的逆過程;3)將大地坐標轉(zhuǎn)換為地心坐標,轉(zhuǎn)換公式為
2.根據(jù)權(quán)利要求I所述的基于相似變換模型的柵格數(shù)據(jù)坐標轉(zhuǎn)換并行方法,其特征在于步驟4中利用并行計算集群與多核處理器架構(gòu),采用數(shù)據(jù)并行的策略,在對目標文件的處理中,將目標文件進行分塊。
全文摘要
本發(fā)明公開了基于相似變換模型的柵格數(shù)據(jù)坐標轉(zhuǎn)換并行方法,屬于高性能地理計算領(lǐng)域。其步驟為步驟1并行初始化;步驟2用戶輸入?yún)?shù);步驟3調(diào)用GDAL數(shù)據(jù)讀寫數(shù)據(jù)函數(shù);步驟4確定坐標轉(zhuǎn)換類型及轉(zhuǎn)換步驟;步驟5進行源文件邊界采樣及坐標變換;步驟6對目標文件平均分塊;步驟7各進程對數(shù)據(jù)塊的邊界進行采樣及坐標變換;步驟8讀取數(shù)據(jù)塊數(shù)據(jù)、源文件中與數(shù)據(jù)塊對應(yīng)范圍內(nèi)的數(shù)據(jù),存入數(shù)組;步驟9對數(shù)據(jù)塊中每一像元的坐標進行由目標參考系到源目標參考系的轉(zhuǎn)換;步驟10計算像元在各波段的值并賦給數(shù)組中該像元點相應(yīng)元素;步驟11將數(shù)據(jù)塊數(shù)組寫入目標文件。本發(fā)明可有效提高柵格數(shù)據(jù)坐標轉(zhuǎn)換數(shù)據(jù)量和效率。
文檔編號G06F19/00GK102591622SQ201110441700
公開日2012年7月18日 申請日期2011年12月27日 優(yōu)先權(quán)日2011年12月20日
發(fā)明者劉永學, 李滿春, 李飛雪, 蒲英霞, 陳沖, 陳振杰, 靳志賓, 黃濤 申請人:南京大學