1序
1963年,加拿大測量學家羅傑·湯姆林森(Roger Tomlinson)首先提出了GIS這一術語,並建成世界上第一個GIS(加拿大地理信息系統CGIS),用於自然資源的管理和規劃。湯姆林森提倡使用計算機進行空間分析的先見之明以及他在建立CGIS過程中的領導角色,爲他贏得了“GIS之父”的光榮稱號。
到如今,GIS經歷了50多年的發展歷程,這個期間計算機也有了革命性的變化,CPU、顯卡、存儲的革新促使一大堆GIS軟件的誕生,如:ArcGIS、GoogleEarth、SuperMap、LocaSpace等 不同的GIS產品和平臺對數據的支持也各有不同,在此期間逐漸形成了一些規範化的標準,有了更多的通用格式,這裏就簡單介紹一下。
以下整理主要來自於網絡,如果錯誤以及不當之處請及時指出,會第一時間處理。
1.1什麼是GIS
地理信息系統(Geographic Information System或 Geo-Information system,GIS)有時又稱爲“地學信息系統”。它是一種特定的十分重要的空間信息系統。它是在計算機硬、軟件系統支持下,對整個或部分地球表層(包括大氣層)空間中的有關地理分佈數據進行採集、儲存、管理、運算、分析、顯示和描述的技術系統
簡單來說GIS就是一堆座標相關的數據的組織和渲染展示。
2常見GIS數據格式
2.0 GIS基本數據元素
•一切都從地球(Globe)說起
•用Globe來模擬一個地球
•用圖層(Layer)來抽象表達地物的集合
–圖層是某一類地物的集合,例如道路圖層,河流圖層,房屋圖層。
•用要素(Feature)來表達地物,例如一個公交站用一個點標註來表示
•用符號(style)來標識地物分類
要素:
•GSOFeature代表一個要素(地物)
•每個Feature都包含一個Geometry對象
•可以是點、線、面、模型等對象
要素的本身:是地理座標(經度、緯度、高度),與屬性(顏色、樣式、描述、體積、長度、面積等)的綜合體。
具體體現形式可以是
txt
excel
csv
json
xml
sql字段
kml、shpfile、gpx等
看一個展現形式:
線:
樣式:
•符號樣式類
•每一個Geometry對象都有一個GSOStyle,來設置對象的表現方式,例如,點的圖標,字體。線面的寬度、顏色。三維模型的顏色等等。
feature(元素)符號化(可視化)的詳情,參考:
【https://blog.csdn.net/baidu_39476236/article/details/80045970】
【https://www.jianshu.com/p/e7d3080894de】
2.1矢量數據格式
2.1.1 ShapeFile
參考地址:【http://www.cppblog.com/alantop/archive/2008/08/14/58880.html】
Shapefile文件是美國環境系統研究所(ESRI)所研製的GIS文件系統格式文件,是工業標準的矢量數據文件。 Shapefile將空間特徵表中的非拓撲幾何對象和屬性信息存儲在數據集中,特徵表中的幾何對象存爲以座標點集表示的圖形文件—SHP文件,Shapefile文件並不含拓撲(Topological)數據結構。一個Shape文件包括三個文件:一個主文件(*.shp),一個索引文件(*.shx),和一個dBASE(*.dbf)表。主文件是一個直接存取,變長度記錄的文件,其中每個記錄描述構成一個地理特徵(Feature)的所有vertices座標值。在索引文件中,每條記錄包含對應主文件記錄距離主文件頭開始的偏移量,dBASE表包含SHP文件中每一個Feature的特徵屬性,表中幾何記錄和屬性數據之間的一一對應關係是基於記錄數目的ID。在dBASE文件中的屬性記錄必須和主文件中的記錄順序是相同的。圖形數據和屬性數據通過索引號建立一一對應的關係。
Shapefile中座標文件(.shp)由固定長度的文件頭和接着的變長度空間數據記錄組成。文件頭由100字節的說明信息組成的(附表 1),主要說明文件的長度、Shape類型、整個Shape圖層的範圍等等,這些信息構成了空間數據的元數據。在導入空間數據時首先要讀入文件頭獲取Shape文件的基本信息,並以此信息爲基礎建立相應的元數據表。而變長度空間數據記錄是由固定長度的記錄頭和變長度記錄內容組成,其記錄結構基本類似,每條記錄都有記錄頭和記錄內容組成(空間座標對)。記錄頭的內容包括記錄號(Record Number)和座標記錄長度(Content Length)兩個記錄項,Shapefile文件中的記錄號都是從1開始的,座標記錄長度是按16位字來衡量的。記錄內容包括目標的幾何類型(ShapeType)和具體的座標記錄(X,Y),記錄內容因要素幾何類型的不同,其具體的內容和格式都有所不同。對於具體的記錄主要包括空Shape記錄,點記錄,線記錄和多邊形記錄,具體的記錄結構如附表 2所示。
屬性文件(.dbf)用於記錄屬性信息。它是一個標準的DBF文件,也是由頭文件和實體信息兩部分構成。其中文件頭部分的長度是不定長的,它主要對DBF文件作了一些總體說明(附表 3),其中最主要的是對這個DBF文件的記錄項的信息進行了詳細的描述(附表 4),比如對每個記錄項的名稱,數據類型,長度等信息都有具體的說明。屬性文件的實體信息部分就是一條條屬性記錄,每條記錄都是由若干個記錄項構成,因此只要依次循環讀取每條記錄就可以了。
索引文件(.shx)主要包含座標文件的索引信息,文件中每個記錄包含對應的座標文件記錄距離座標文件的文件頭的偏移量。通過索引文件可以很方便地在座標文件中定位到指定目標地座標信息。索引文件也是由文件頭和實體信息兩部分構成的,其中文件頭部分是一個長度固定(100 bytes)的記錄段,其內容與座標文件的文件頭基本一致。它的實體信息以記錄爲基本單位,每一條記錄包括偏移量(Offset)和記錄段長度(Content Length)兩個記錄項。附表 5給出了具體的描述。
個人理解:shp作爲GIS當中十分常用的一種格式,有必要了解一下它的一些特性:
1.shp文件只能存儲點、線、面中的一種類型,要麼裏面存儲的全是點,要不全是線、要麼全是面,不存在混合存在的狀態
2.shp可以設置很多字段屬性,比如一個管線文件,你可以定義管徑、顏色、埋深、歸屬、修建時間等等。。。
3.shp可以設置不同的投影信息,投影是很多人比較頭疼的問題經常搞不明白是怎麼回事,經常出現拿兩個不同投影,不同座標系統的數據相互疊加發現不能疊加成功,而任何一個數據都沒有錯誤,這方面的問題可以參考【地理座標系與投影座標系的區別】
2.1.2 KML/KMZ
-參考百度百科
KML 是由開放地理空間聯盟(Open Geospatial Consortium, Inc.,簡稱 OGC)維護的國際標準。
KML,是標記語言(Keyhole Markup Language)的縮寫,最初由Keyhole公司開發,是一種基於XML 語法與格式的、用於描述和保存地理信息(如點、線、圖像、多邊形和模型等)的編碼規範,可以被 Google Earth 和 Google Maps 識別並顯示。Google Earth 和 Google Maps 處理 KML 文件的方式與網頁瀏覽器處理 HTML 和 XML 文件的方式類似。像 HTML 一樣,KML 使用包含名稱、屬性的標籤(tag)來確定顯示方式。因此,您可將 GoogleEarth和 Google Maps 視爲 KML文件瀏覽器。2008年4月微軟的OOXML成爲國際標準後,Google公司宣佈放棄對KML的控制權,由開放地理信息聯盟(OGC)接管KML語言,並將“Google Earth”及“Google Maps”中使用的KML語言變成爲一個國際標準。
KMZ文件是壓縮過的KML文件。由於 KMZ 是壓縮包,因此,它不僅能包含 KML文本,也能包含其他類型的文件。如果您的地標描述中鏈接了本地圖片等其他文件,建議您在保存地標時,保存類型選 KMZ 而不選 KML,Google Earth 會把您鏈接的圖片等文件複製一份夾 KMZ 壓縮包中。這樣,您就可以將包含豐富信息的地標文件發給朋友,一起分享了。
個人理解:KML作爲GIS當中十分常用的一種格式,有必要了解一下它的一些特性:
1.kml是xml文本,本身沒有什麼特殊性可言
2.支持點、線、面等要素,並可以設置屬性信息。
3.支持文件夾結構,可以通過內建文件夾來管理大量的數據
下圖是LocaSpaceViewer加載kml的效果圖
2.1.3 DXF/DWG
有時客戶需要提供dxf的文件格式,不知道dxf文件與dwg文件有什麼區別各有什麼特點?
拿着自己的dxf文件不知道該怎麼打開?更不知道如何在GIS當中使用?
dxf和dwg的區別這裏引用一篇文章裏的內容來做介紹【http://www.civilcn.com/autocad/cadaz/1342667542163919.html】
dwg文件:*.dwg是AutoCAD的圖形文件,是二維或三維圖形檔案。其與dxf文件是可以互相轉化的。
dxf文件:*.dxf是Autodesk公司開發的用於AutoCAD與其它軟件之間進行CAD數據交換的CAD數據文件格式。DXF是一種開放的矢量數據格式,可以分爲兩類:ASCII格式和二進制格式;ASCII具有可讀性好,但佔有空間較大;二進制格式佔有空間小、讀取速度快。由於Autocad現在是最流行的cad系統,DXF也被廣泛使用,成爲事實上的標準。絕大多數CAD系統都能讀入或輸出DXF文件。 DXF文件可以用記事本直接打開,編輯相應的圖元數據.換句話說,如果你對DXF文件格式有足夠了解的話,甚至可以在記事本里直接畫圖。DWG的來繪圖更直觀(DXF圖紙中線條的相交處都會有個小圓),而用於數控加工的圖紙則必須是DXF文件(操機者必須把DWG轉換成DXF後纔可加工)如快走絲。dxf是工業標準格式的一種。所以這也是它們用途的區別。
autocad是一個非常優秀的繪圖軟件,已經融入到大學的課堂裏,同時工業製造和很多設計行業都使用cad進行圖紙的繪製,範圍的廣泛性就不做說明了。
dxf和投影的關係
對於文件本身的介紹上述應該就夠了,這裏補充一點dxf和投影的一些關係,即dxf在gis當中的使用
參考內容【AutoCAD DXF 圖形的批量無損投影轉換方法】
原理:在CAD當中任何圖形均由點、線、面圖元組成,如CAD的直線、射線、多義線、Spline曲線、多邊形、面域、填充面等,由線性組成的圖元在DXF文件記錄中表現爲以點或線的拐點、或曲線的控制點、擬合點座標記錄形式[2],讀取、處理這些圖元座標數據無需特別處理,只要讀取座標數據轉換即可。
常規:因此很多和規劃以及地圖相關的CAD文件,CAD的圖框上大多相關的地理和投影座標信息,一般在左下角會有投影座標信息,比如北京1954座標,圖框的格網線附近還會有相應的分帶,帶號信息,找到這些信息以後,就可以進行投影定義了。對於投影的定義,推薦使用.prj文件。如何確定prj文件當中所需的投影信息,如何確定EPSG號,等更多關於CAD當中配置prj文件的詳情參考【使用LocaSpaceViewer編輯規劃用的CAD文件,配置CAD文件投影信息】
如果以上信息都沒有,那就只能是硬加載然後進行平移操作了。這個過程當中如果最終結果和gis數據無法套和或者差距甚遠,大多是轉換過程當中出了錯誤。
2.1.4 GPX
參考【http://www.51bike.com/thread-73964-1-1.html】【http://blog.csdn.net/gdp12315_gu/article/details/51823486】
GPX是比較標準的GPS信息交互文件,當然其他公司還有自己的格式。GPX採用XML語言,所以顯得稍微有點臃腫,壓縮後就很小了。
GPX, 或稱 GPS exchange 格式, 是一種用於存儲座標數據的 XML 文件格式。它可以儲存在一條路上的路點,軌跡,路線,且易於處理和轉換到其他格式。OpenStreetMap 使用的所有 GPS 數據要轉換爲 GPX 格式才能上傳。
GPX包含 帶有正確時間戳的軌跡點。創建GPX文件,使用有效的schema. 如果包括編碼標籤,可以是’UTF-8’, 而不能是’utf8’。
2.1.5 lgd/ldl
對於lgd文件,很多人可能會比較陌生,很多人可能用了,但也並不知其所以然,這裏也稍加解釋。
lgd文件和ldl文件是配套的,是一個矢量數據存儲交換格式。
數據格式發明者:蘇州中科圖新網絡科技有限公司
文件特性:
a.支持點、線、面、圓形、矩形、橢圓、軍標、水面、粒子特效等矢量數據。
b.二進制流文件,體積小,壓縮比高,可適用於pc、移動端等,在pc和移動端做數據交互。
c.有自己的內置索引文件,查詢、檢索效率極高。且可用於服務器數據發佈(和LocaServer配套使用)
文件缺點:不支持文件夾結構。
彙總:上述文件格式各有各的優勢,這麼多的矢量數據格式基本都是可以相互轉換的。
2.2 影像數據格式
關於影像數據的一些說明
2.2.1 tif
標籤圖像文件格式(Tagged Image File Format,簡寫爲TIFF) 是一種主要用來存儲包括照片和藝術圖在內的圖像的文件格式。它最初由 Aldus公司與微軟公司一起爲PostScript打印開發。
TIFF與JPEG和PNG一起成爲流行的高位彩色圖像格式。TIFF格式在業界得到了廣泛的支持,如Adobe公司的Photoshop、The GIMP Team的GIMP、Ulead PhotoImpact和Paint Shop Pro等圖像處理應用、QuarkXPress和Adobe InDesign這樣的桌面印刷和頁面排版應用,掃描、傳真、文字處理、光學字符識別和其它一些應用等都支持這種格式。從Aldus獲得了PageMaker印刷應用程序的Adobe公司現在控制着TIFF規範。
tif可以有8位,24位等深度,一般真彩色是24位,而地形數據只有一個高度值,採用8位。
目前很多衛星影像數據的存儲格式都是tif。包括目前流行的傾斜攝影生成的正射影像一般也以tif格式存儲。
2.2.2 img
參考【http://d.wanfangdata.com.cn/Periodical/kjf201224062】【百度百科】
IMG文件格式是一種可存儲多種類型數據、應用廣泛的圖像數據格式.IMG文件採用HFA結構組織數據,HFA是一種樹狀結構,各種數據(圖像教據、統計數據、投影信息、地理數據等)佔據“樹”的各個節點.本文詳細介紹了Img文件格式的結構,Img存儲信息的重要特點是分塊存儲,並且提供了對Img文件讀取的方法,此方法讀取效率高,可以根據需要分塊讀取,只讀取需要的塊信息,大大的提高了讀取速度.
IMG是一種文件壓縮格式(archive format),主要是爲了創建軟盤的鏡像文件(disk image),它可以用來壓縮整個軟盤(通常指軟軟盤,Floppy Disk或Diskette)或整片光盤的內容,使用".IMG"這個擴展名的文件就是利用這種文件格式來創建的。
提示:一般spot衛星的影像是img格式
2.2.3 lrp
lrp格式,影像、地形數據存儲格式。很多使用過LocaSpaceViewer的人,應該已經見識過他的好處了。
數據格式發明者:蘇州中科圖新網絡科技有限公司
文件特性:
a.支持地形、影像。
b.二進制流文件,根據不同的數據類型使用不同的壓縮算法,體積小。
c.自帶分級(LOD)有自己的內置索引文件,查詢、檢索效率極高。且可用於服務器數據發佈(和LocaServer配套使用)
2.3 地形數據格式
2.3.1 tif
同影像
2.3.2 img
同影像
2.3.3 lrp
同影像
2.3.4 grd
.grd是純文本的Arc/Info Grid數據的交換文件.
對於存儲地形的grd文件可以使用 LocaSpaceViewer、GlobalMapper、或者在arc/info中使用asciigrid命令可以把它轉成grid,用grid模塊或arcview顯示
這裏使用LocaSpaceViewer的提取高程功能生成一個grd文件如下:
1.DSAA是Surface的標準
2.8 11代表橫向(緯度方向)有8個點,縱向(經度方向)有11個點
3.102.6605598899 102.7420948899代表最小經度,最大經度
4.25.0562111272 25.1499849210代表最小緯度和最大緯度
5.1891.8906134325 2239.4623230170代表範圍內的最小高程值和最大高程值
6.橫向(緯度方向)上的第一列所有點值,一共8個點
7.以此類推。。。
2.3.5 .dem
參考:【http://www.360doc.com/content/14/0316/23/7669533_361161590.shtml】
*.dem有兩種格式,NSDTF和USGS。
SGS-DEM(USGS是美國地質調查局(U.S.GeologicalSurvey)的英文縮寫,是一種公開格式的DEM數據格式標準,使用範圍較廣格式的。
NSDTF-DEM是中華人民共和國國家標準地球空間數據交換格式,是屬於格網數據交換格式,一般的GIS軟件都不支持這種格式。
這裏介紹如何使用LocaSpaceViewer打開NSDTF-DEM格式的grd數據
如果我們將上面的NSDTF格式的頭文件改爲Grid的頭文件格式,其中高程值不變,就完全可以在LocaSpaceViewer中查看這個*.dem。(最好將後綴名改爲*.grd。改了頭文件之後,該文件已經變成grid文件)。這樣通過修改這個*dem的頭文件就可以直接將它轉換爲grd文件。
2.4 傾斜攝影數據:
--------------一次內部分享的記錄。
關於地形數據的一些說明:
數據精度
數據級別
3.ArcGis相關數據格式
ArcGIS、超圖、SkyLine等作爲GIS裏面的巨頭,也都形成了很多自己的數據格式,部分開放規則,部分不開放。
有關coverage(aux、rrd、adf、dat、nit、dir)的數據格式說明,可以參考:coverage的理解
未完待續...(後續會繼續增加:.dem,.adf,.idr,.sid,.ecw,.ers,hdr,.gft,.mif,.vec等等)