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