我們之前為大家分享過在三維地球開源平台離線加載衛星影像的方法,主要包括基于桌面端的OsgEarth開源三維地球和基于Web端的Cesium開源三維地球等平台的局域網離線影像加載。
另外,也為大家分享過在二維開源平台離線加載衛星影像的方法,主要包括基于OpenLayers的内網WebGIS離線部署、基于MapBox的内網WebGIS離線部署和基于 GoogleMap 離線 API 在内網中加載離線衛星地圖等具體操作方法。
但由于有客戶咨詢過如何在QGIS中離線加載谷歌衛星影像的問題,因此覺得有必要再針對這個問題為大家作一下分享。
那麼什麼是QGIS呢? QGIS原稱為Quantum GIS,是一個用戶界面友好的開源桌面端軟件,支持數據的可視化、管理、編輯、分析以及印刷地圖的制作,并支持多種矢量、栅格與數據庫格式及功能。
你也可以簡單粗暴地把它理解為是一個開源且免費的ArcGIS,因為它和ArcGIS一樣都有着很多非常強大的GIS功能。
2. 準備工作在開始之前,需要先準備離線數據發布軟件、離線衛星影像示例數據、QGIS安裝包和本機IP地址等。
地圖發布軟件:需要在内網發布離線衛星影像,請确保地圖發布服務中間件版本為4.0.6以上,如果低于該版本,請通過私信并回複"中間件"免費獲取最新版本安裝包,也可以直接在水經注官方網站下載。
離線示例數據:本文提供的離線示例數據包括墨卡托投影和WGS84投影的衛星影像與地名标簽數據,由于這裡主要是為了進行功能性演示,因此隻提供了前10級影像數據。
衛星影像示例數據
在安裝軟件之前,請從私信“示例數據”獲取地址,下載示例數據。
QGIS軟件安裝包:QGIS安裝包可以從QGIS官方網站下載,也可以通過私信回複"QGIS"即可獲取百度網盤下載地址,這裡提供的是64位版本。
本機IP地址:由于會用到本機IP作為訪問地址,可以通過在DOS窗口中運行"IPConfig"命令或其它方式獲取本機IP地址以備用,如下圖所示。
獲取本機IP地址
3. 設置QGIS界面為中文QGIS的的默認用戶界面是英文版本的,安裝啟動之後如下圖所示。
QGIS界面
如果不習慣使用英文界面,可以設置為中文界面。
首先,點擊"Settings\Options..."菜單,如下圖所示。
選擇菜單
然後,在顯示的"Options-General"對話框中,點擊"General"選項。
配置對話框
最後,勾選"Override System Locale"複選框,并在"User interface translation"中選擇"簡體中文"即可,如下圖所示。
配置中文界面
保存語言配置後,重新啟動軟件,就可以看到軟件是中文版的了,如下圖所示。
中文界面
4. 墨卡托投影衛星影像離線發布軟件的安裝方法,請參閱"全球衛星影像離線發布神器《水經注地圖發布服務中間件4.0》正式發布"一文。
由于這裡隻演示衛星地圖的調用方法,因此這裡暫不需要發布高程DEM數據。
但需要注意的是發布的衛星影像和設置的投影務必要保證統一,且端口号沒有被其它程序占用,如下圖所示。
安裝配置
安裝完成後,會顯示如下圖所示信息。
安裝完成
打開Windows任務管理器,如果WeServer服務的狀态顯示"正在運行",則說明中間件服務安裝成功并已經正常運行,如下圖所示。
服務運行正常
确保服務運行正确後,可以在浏覽器中打開"Z=7/Y=48/X=105"的标簽瓦片地址檢驗發布成果,示例地址如下所示:
http://192.168.0.10:8519/WeServer/wmts/1.0.0/acimage/default/mercator/7/48/105.jpg
注:上述URL地址中的IP和端口号需要與WeServer中的配置保持一緻。
如果無異常,則将會顯示北京位置區域的衛星影像瓦片,如下圖所示。
衛星影像瓦片
同樣地,也可以通過在本機浏覽器中打開"Z=7/Y=48/X=105"的地名标簽瓦片地址檢驗發布成果,示例地址如下所示:
http://192.168.0.10:8519/WeServer/wmts/1.0.0/aclabel/default/mercator/7/48/105.png
注:上述URL地址中的IP和端口号需要與WeServer中的配置保持一緻。
如果無異常,則将會顯示地名标簽結果,如下圖所示。
地名标簽瓦片
在微圖中打開瓦片網格顯示功能,我們可以看到上文中的瓦片"Z=7/Y=48/X=105",在微圖中對應的是"Z=8/X=49/Y=106"瓦片。
也就是說,微圖軟件中的瓦片編号是從1開始的,因此行列号都會比WeServer大1,且它的編号顯示順序為ZXY,而WeServer發布時的順序為ZYX,如果你了解它們的區别,會有助于你在調用WeServer發布的瓦片時進行調試。
微圖中的瓦片編号
5. 在QGIS中離線加載墨卡托衛星影像地圖上文已經說明了如何通過WeServer在内網發布離線的衛星影像與檢測發布結果的方法,現在我們來講一下在QGIS中離線加載墨卡托衛星影像地圖的方法。
請确保通過上文中說明的方法,已經成功離線發布了墨卡托衛星影像。
然後,在QGIS中新建"XYZ Tiles"地圖數據源連接,操作如下圖所示。
新建連接
在顯示的地圖對話框中,輸入任意圖層名稱,網址則務必需要輸入正确的瓦片發布地址:
http://192.168.0.10:8519/WeServer/wmts/1.0.0/acimage/default/mercator/{z}/{y}/{x}.jpg
配置影像瓦片地址
用上述同樣的方法,添加地名标簽瓦片地址:
http://192.168.0.10:8519/WeServer/wmts/1.0.0/aclabel/default/mercator/7/48/105.png
配置瓦片地址
雙擊添加後的圖層名稱,會加載顯示WeServer發布的墨卡托衛星影像,如下圖所示。
墨卡托影像離線加載結果
6. WGS84經緯度直投的衛星影像離線發布由于之前發布的是墨卡托衛星影像,因此發布WGS84衛星影像時需要重新對WeServer的數據源與坐标投影進行配置。
設置數據源與坐标投影除了可以在安裝界面中配置外,還可以通過修改配置文件的方式設置。
在WeServer安裝路徑中,有一個用于配置WeServer參數的"WeServerConfig.ini"文件,如下圖所示。
WeServer配置文件
在配置文件中,重新設置衛星影像路徑和地名标簽路徑,然後将投影設置為"WGS_84",即經緯度投影,如下圖所示。
設置WGS84投影參數
在"WeServerConfig.ini"文件中完成相關參數配置并保存後,雙擊"WeServer.exe"文件,會重新啟動服務并使配置參數生效。
配置參數生效
在确保服務運行的情況下,可以在浏覽器中打開"Z=7/Y=35/X=210"的标簽瓦片地址檢驗發布成果,示例地址如下所示:
http://192.168.0.10:8519/WeServer/wmts/1.0.0/acimage/default/wgs84/7/35/210.jpg
注:上述URL地址中的IP和端口号需要與WeServer中的配置保持一緻。
如果無異常,則将會顯示北京位置區域的衛星影像瓦片,如下圖所示。
衛星影像瓦片
同樣地,也可以通過在本機浏覽器中打開"Z=7/Y=35/X=210"的地名标簽瓦片地址檢驗發布成果,示例地址如下所示:
http://192.168.0.10:8519/WeServer/wmts/1.0.0/aclabel/default/wgs84/7/35/210.png
注:上述URL地址中的IP和端口号需要與WeServer中的配置保持一緻。
如果無異常,則将會顯示地名标簽結果,如下圖所示。
地名标簽瓦片
在微圖中打開瓦片網格顯示功能,我們可以看到上文中的瓦片"Z=7/Y=35/X=210",在微圖中對應的是"Z=9/X=211/Y=36"瓦片。
也就是說,微圖軟件中的瓦片的層級比WeServer發布的層級大2,行列号比WeServer大1,且它的編号顯示順序為ZXY,而WeServer發布時的順序為ZYX,如果你了解它們的區别,會有助于你在調用WeServer發布的瓦片時進行調試。
微圖中的瓦片編号
7. 在QGIS中加載WGS84離線衛星影像理論上如果QGIS中的"XYZ Tiles"瓦片加載功能支持WGS84坐标系的話,同樣地可以通過瓦片地址進行加載。
WGS84衛星影像瓦片發布地址為:
http://192.168.0.10:8519/WeServer/wmts/1.0.0/acimage/default/wgs84/{z}/{y}/{x}.jpg
WGS84地名标簽瓦片發布地址為:
http://192.168.0.10:8519/WeServer/wmts/1.0.0/aclabel/default/wgs84/{z}/{y}/{x}.png
但經過研究,QGIS的"XYZ Tiles"功能好像并不支持WGS84的瓦片加載,但并未作過于深入的研究。
不過由于WeServer發布的離線瓦片支持WMTS服務,因此我們可以在QGIS中新建"WMS/WMTS"地圖服務鍊接,如下圖所示。
新建WMS/WMTS服務
在顯示的新建鍊接對話框中,名稱可以任意輸入,網址需要輸入WeServer發布的WMTS瓦片地圖服務地址:
http://192.168.0.10:8519/WeServer/wmts?Service=WMTS&Request=GetCapabilities
新建WMTS瓦片服務
地圖連接添加成功後,通過雙擊"acimage"和"aclabel"圖層,即可加載顯示WeServer在内網發布WGS84衛星影像地圖與地名标簽,如下圖所示。
WGS84衛星影像加載效果
這裡順便提一下,為什麼通過加載上述網址就可以加載WeServer發布的瓦片地圖呢?
那是因為通過訪問以上網址,WeServer會向請求端返回一個地圖發布瓦片相關的信息,包括發布的數據坐标範圍、瓦片地址的格式、瓦片的坐标投影和每一個圖層的分辨率等詳細信息。
在浏覽器中打開上述的網址,可以查看地圖瓦片的描述信息,如下圖為墨卡托投影瓦片發布的相關參數。
墨卡托瓦片發布參數
下圖為發布WGS84瓦片的相關參數,同樣包括了數據坐标範圍、瓦片地址的格式、瓦片的坐标投影和每一個圖層的分辨率等。
WGS84瓦片發布參數
也就是說,凡是支持加載WMTS的GIS平台,都可以通過上述方式加載WeServer在内網離線發布的衛星影像地圖數據。
8. 總結以上就是基于 QGIS 在内網中離線加載衛星地圖方法的全部說明,主要包括了墨卡托與WGS84衛星影像的發布、發布瓦片地址的有效性檢測和在QGIS中進行加載顯示等内容。
最後,由于本文中提供的數據為示例數據,旨在說明地圖發布服務中間件的内網離線發布功能,因此衛星影像數據和地名标簽都僅僅提供全球前10級數據。
如果需要發布高清衛星影像數據,你可以通過關注私信回複"免費數據",領取一個省的高清衛星影像數據,然後更新到對應的數據目錄即可!
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!