| 前言:比較 ArcGIS QGIS FME ENVI 這四種專業(yè)軟件工具的柵格鑲嵌速度,幫助你做出最好的選擇。到底誰最快,快來看一看... |
比較說明說明“執(zhí)行柵格鑲嵌完成后,將結果完整保存下來。”這是一個完整的測試過程,必須將鑲嵌完成的結果保存到本地才行。另外保存下來的柵格像元輸出類型都設置為16位的無符號整型格式,即 16bit unsigned ;配置情況使用的是自己的舊筆記本,已經是時代的眼淚了。不過也要開啟倔強的性能模式。CPU i5-7300HQ 基準頻率2.5GHz,睿頻3.2GHz;版本號ArcGIS 10.3 版本 未開啟64位 gp,啟動硬件加速模式ENVI 5.3.1 64位 非 Classic 版本
數據處理SRTM 數據,就是高程柵格, 文件后綴為 HGT。由于不知道是什么原因,ENVI5.3 sp1 暫時無法打開 HGT 格式的文件。為了讓每個軟件工具都能打開文件,所以現(xiàn)在要將所有 HGT 格式轉換為最為常見的 tif 格式。使用 ArcPy 進行批量轉換,代碼量也很?。?/span># -*- coding:utf-8 -*- # ------------------------------------------- # Name: readraster # Author: Hygnic # Created on: 2021/4/19 23:31 # Version: # Reference: """ Description: 將Hgt文件轉換為柵格tif Usage: """ # ------------------------------------------- from __future__ import absolute_import from __future__ import unicode_literals import os import arcpy
arcpy.env.workspace = r"E:\MyD\dem\chengdu\t" arcpy.env.overwriteOutput = True
class HGT2TIF(object): def __init__(self, hgt): self.hgt = hgt # function self.convert()
def convert(self): raster = arcpy.Raster(self.hgt) name = os.path.basename(self.hgt) # N28E104.hgt purename = os.path.splitext(name)[0] raster.save("{}.tif".format(purename)) if __name__ == '__main__': dir_path = r"E:\MyD\dem\chengdu\H48" hgt_files = os.listdir(dir_path) for hgt in hgt_files: hgt_path = os.path.join(dir_path, hgt) HGT2TIF(hgt_path)使用 arcpy.Raster 創(chuàng)建柵格對象,與柵格對象關聯(lián)的柵格可使用 save 方法保存。
ArcGIS 柵格鑲嵌 第一個測試的就是大家使用非常多的 ArcGIS desktop 軟件,這個軟件自然不必多說。其實我更想使用 ArcGIS pro 不過沒有錢買不起,也無法破解。使用鑲嵌至新柵格工具進行鑲嵌。該工具位于數據管理工具->柵格->柵格數據集->鑲嵌至新柵格。所以使用 ArcGIS 執(zhí)行柵格鑲嵌的時間就是7秒多。
QGIS 柵格鑲嵌 QGIS,目前最火熱、社區(qū)最活躍的開源 GIS 平臺。該工具來自于 GADL 包。位于QGIS 右側工具欄,GDAL->Raster miscellaneous->Merge。| Note: 該功能需要開啟核心插件 GDAL 工具,該插件默認開啟。但是如果找不到該工具的話就去設置中開啟該核心插件。 | 其運行時間在2.4~2.57秒之間,速度完全秒殺了 ArcGIS,當然情理之中,畢竟一個20歲年輕人打一個60歲的中老年人。
ENVI 柵格鑲嵌ENVI 是圖像處理和分析的行業(yè)標準軟件。圖像分析人員、GIS 專業(yè)人員和科學家可以使用它從地理空間影像中提取及時、可靠、準確的信息。ENVI 的各種功能經過科學驗證,并且易于使用,同時與 Esri 的 ArcGIS 平臺緊密集成。作為專精遙感影像處理的 ENVI 來說,在柵格數據處理的強大不必多說。在主界面的右邊找到 Seamless Mosaic 工具,單擊打開,進行鑲嵌操作。由于現(xiàn)這個版本不會顯示工具運行的時間,故運行時間使用手機秒表計算。但是 ENVI 柵格鑲嵌方面的選項是最多的,同時各種效果和輔助線能幫助操作人員更精細化的操作。
FME 柵格鑲嵌按照官網的話來說,F(xiàn)ME(Feature Manipulation Engine) 是一個對空間數據有著廣泛支持的數據整合平臺,是加拿大Safe Software公司開發(fā)的空間數據轉換處理系統(tǒng)。FME 不僅能在數百種空間數據和非空間數據之間進行轉換,還能在空間數據的基礎上對其進行空間分析、投影變換、計算等。無需用戶在不同的數據格式之間解碼轉換,即可構建自動化的工作流。 打開 FME workbench 直接搜索 mosaic,然后選擇 RasterMosaicker 轉換器(只要是柵格鑲嵌,如果記不到名字,進入軟件直接搜 mosaic 就行,這些軟件關于柵格鑲嵌工具的名稱基本都是這個)。添加一個讀取器(黃色部分),讀入 tif 文件,然后連接上左側的 RasterMosaicker。添加一個輸出轉換器,設置輸出地址和輸出格式,輸出柵格名稱為 all_fme。點擊上方 按鈕,運行柵格鑲嵌工作流,運行時間如下:
結論鑲嵌結果4種軟件工具最后鑲嵌的成果基本一致,如下圖,所以放上一張展示一哈:時間比較一個程序運行的時間是分為幾部分了,有單純的 CPU 計算工作的時間,也包括了各種系統(tǒng)調用的消耗。同時由于測試的數據量不大,測試結果不能100%代表這4個程序在運行大量級柵格時的表現(xiàn)。ArcGIS desktop 10.3 版本已經很老了,歷史很長,為了維護整個系統(tǒng)的穩(wěn)定一定也有了很重的歷史包袱 。所以時間較長可以理解;Ersi 公司已經推陳出新,投入到了新一代的 ArcGIS pro,相信 ArcGIS pro 的速度不會讓人失望。ENVI 在內部實現(xiàn)柵格鑲嵌時的判定應該比較多吧,畢竟選項最多??墒?0s的速度還是讓我比較失望,可能 ENVI 在大量級數據處理上表現(xiàn)會好些吧;盡管如此,使用 ENVI 提取、分析、計算遙感影像的數據依然是非常熱門的選擇。QGIS,開源軟件,沒有 ArcGIS 的歷史負擔。前進勢如破竹,其高性能表現(xiàn)讓人驚訝。FME 作為商業(yè)軟件,行業(yè)級別的協(xié)議和標準。同時深耕于數據領域,在這方面的速度當然不會讓人失望。所以呢,綜上所述,需要進行大批量的柵格鑲嵌推薦使用 FME,畢竟是商業(yè)軟件,穩(wěn)定性不會太差。如果是好用免費的話推薦使用 QGIS。
結束語日新月異,希望大家不要再抱著 ArcGIS desktop 不放,如今當 ArcGIS 已經廣泛應用于政府單位的時候,你更應該朝前看,去學習擁抱更新、更先進的東西。
|