最近因為pm一句話:
可不可以自動化把福衛二號的圖改發佈成 tiles
於是就上網google,沒多久就找到了 gdal 原本內鍵就有 gdal2tiles.py 的工具可以用
總之安裝也很簡單
linux下的話,可以找看看gdal-python 或python-gdal 直接 yum、apt 裝一裝就可以
( 通常用 python 內鍵的 pip install 或 easy_install 會失敗 )
然後要記得額外安裝proj4-nad 然後把台灣3825~3828、3857 google、900913常用的坐標系統加進去,這邊就不多寫,以前討論區有寫過
/usr/share/proj4/epsg ....
如果是windows,python 建議用 2.7 (32或 64)都ok
http://www.lfd.uci.edu/~gohlke/pythonlibs/xmshzit7/GDAL-1.11.3-cp27-none-win_amd64.whl
http://www.lfd.uci.edu/~gohlke/pythonlibs//xmshzit7/GDAL-1.11.3-cp27-none-win32.whl
用 pip install 或 easy_install 直接裝上面人家包好的最快
(自己去gdal\swin\python 裡面 python build setup.py 一定是自討苦吃…失敗機率100%)
先測試看看你的python有沒有裝好gdal
python
import gdal
如果沒有錯誤訊息,就代表成功
總之會找到 gdal2tiles.py
通常在 python2.7/site-packages 裡找看看就有,也有可能在 /usr/bin
(用原生的這支就輸了,請到 https://github.com/commenthol/gdal2tiles-leaflet )
抓人家改過的 gdal2tiles-multiprocess.py
支援多核心、多執行緒,只有猛
使用方法很簡單
比如你有一張 geotiff 要發布 tiles
例如: FS2_G036_MS_L4_20150902_020414_ot.tif
最簡單的方式就是
python gdal2tiles-multiprocess.py -e -z 1-15 FS2_G036_MS_L4_20150902_020414_ot.tif
【參數-e 是指切過的不會重切,所以不會因為電腦當機就要重切這種事】
【參數-z 是指作出1~15階的tiles】
而且還會很貼心的附給你 openlayers.html、googlemaps.html 的範例
作出一張25kmx25km (1~15階 51mb) 大概只要2分鐘
作出一張25kmx25km (1~19階 1GB) 大概要30分鐘
全台本島的衛星照片共 106 張,如果用一堆電腦同時切,相信很快就可以切完 :)
Sample URL :
15階範例:http://sunnyriver.3wa.tw/demo/php/map/gtifftowmts/FS2_G036_MS_L4_20150902_020414_ot/openlayers.html
19階範例:http://140.110.223.21/AIQS/TEST_WMTS/FS2_G036_MS_L4_20150902_020414_ot/openlayers.html
參考看看,網路上也有很多人改良 gdal2tiles 的像是轉發成 XYZ的、tms、tileserver-php
要將ECW→GeoTiff→Tiles→tilesindex,都可以靠gdal的基本指令組合出來