ENVI5.3於2015年8月3日正式發佈。在ENVI5.3版本中,支持更多的傳感器和數據格式,新增和改進圖像處理算法,更加人性化操作界面,面向對象特徵提取工具FX整合激光雷達處理功能,與ArcGIS一體化集成,全新的攝影測量擴展模塊,更方便快捷ENVI二次開發。ENVI5.3主要有以下幾個方面的改進:
-
傳感器和數據格式
-
圖像處理和界面改進
-
FX集成激光雷達處理功能
-
全新的攝影測量擴展模塊
-
ENVI二次開發
1. 傳感器和數據格式
ENVI5.3新增如下傳感器和數據格式
-
Pleiades & SPOT tiled NITF
-
Deimos-2
-
DubaiSat-2
-
SkySat-1/2新的Google數據產品("Image Frames" & "Geo Imagery")
-
Sentinel-2A (哨兵2A)MSI Level 1C
-
OGC GeoPackage (GPKG)矢量的輸入
2. 圖像處理和界面改進
(1)改進頭文件編輯器
升級了之前編輯頭文件(Edit Header)的功能,更加方便增加、修改和刪除圖像文件元數據信息。
(2)改進的時空分析工具
可自定義像元大小,可按照柵格數據的獲取時間繪製出一個像元的時間剖面曲線。
(3)分類後小斑塊處理工具
全新的小斑塊處理工具對分類後的結果進行小斑塊處理,可自動預覽結果。
(4)光譜指數工具的改進
-
新增兩個光譜指數——歸一化淤泥指數(Normalized Difference Mud Index ——NDMI),用來突出顯示淤泥/淺水像元;改進的歸一化水體指數(Modified Normalized Difference Water Index ——MNDWI)增強開闊水域特徵,來抑制建築,植被和土壤的影響;
-
優化了光譜指數工具,根據輸入數據的波長情況只顯示可計算出的光譜指數
(5)QUAC大氣校正算法改進
快速大氣校正算法有所改進,提高了校正的精度
-
應用mud filtering剔除高度結構化的材料;
-
對於大多數傳感器,基於可用波段的一小部分選擇端元;當傳感器跨可見光和近紅外短波紅外譜範圍,該算法不包括波段中的可見區域;
-
當波長低於 650 毫微米,將會約束增益曲線爲常數;
-
抑制茂密的植被的影響;
-
對於高光譜傳感器水分吸收波段(940 to 1020 nm),移除雲端元;
-
可使用掩膜文件,並支持NoData值、NaN值、無窮大/小值的輸入設置
(6)Geospatial PDF改進
可以將整個視圖的圖層輸出爲Geospatial PDF文件。
(7)圖像分類文件的編輯
在顯示圖像分類文件的圖層上,右鍵選擇Edit Class Names and Colors,可以修改分類名稱和顏色。
(8)曲線平滑
在ENVI曲線窗口中新增曲線平滑功能,可以平滑波譜曲線、時間序列曲線等。
(9)空間子區與掩膜功能
在文件選擇對話框中,可以根據柵格文件、矢量文件、ROI、地理座標等確定空間子區。也可以選擇掩膜文件。
(10)支持GMTED2010 DEM數據的下載
最新的GMTED2010全球高程數據,分辨率是7.5秒
圖5 更高分辨率的全球DEM數據
(11)處理性能提升
-
可批量處理多景數據
-
多時相、多波段數據顯示性能有顯著提升
-
CADRG讀寫速率和輸出質量提升
3. FX集成激光雷達處理功能
ENVI FX面向對象信息提取工具集成了ENVI LiDAR模塊,可進行3D點雲特徵提取,該模塊實現了2D+3D的一體化,ENVI 的點雲可視化和分析工具可以:
-
File > Open... 或通過拖拽文件的方式打開點雲數據
-
生成地表DEM和DSM
-
生成正射影像
-
生成等高線和地形TIN
-
可視域分析
4. ENVI攝影測量模塊
原先的正射校正擴展模塊改名爲攝影測量模塊,新增從立體像對中提取3D信息的功能,從星載數據中獲取點雲數據降低了成本,可用現有的大量的商業衛星數據,對機載LiDAR覆蓋不到的區域生成點雲數據,可高性能的處理得到高精度的點雲數據,並可利用ENVI的點雲可視化、分析和產品生產功能。
-
可從衛星傳感器EO/IR平臺立體像對中經過像元校正提取3D點雲信息。
-
用(SGM)算法做密集影像匹配
-
傳感器定位元數據用來約束沿極限維度的搜索
-
每一個像素都會對應生成一個三維點形成點雲
-
輸出強度或RGB文件的編碼的LAS文件用於匹配
-
傳感器支持:
-
帶有RPC模型的ENVI標準格式數據
-
WorldView-1/2/3
-
GeoEye-1 in DigitalGlobe (.til) and PVL formats
-
IKONOS
-
Pleiades-1 & SPOT-6/7
-
QuickBird
5.二次開發
新增54個ENVITask接口、13個對象&方法、12個Lidar相關ENVITask/對象&方法,以及9個處理狀態信息的對象&方法。詳細見下面四個表。、
表1--54個新增ENVITask接口:
功能描述 |
|
對具有加法噪聲的柵格圖像進行Lee自適應濾波 |
|
對具有加法和乘法噪聲的柵格圖像進行Lee自適應濾波 |
|
對柵格圖像進行二值化,大於閾值賦予1,小於閾值賦予0 |
|
對柵格圖像進行二值化,大於閾值賦予0,小於閾值賦予1 |
|
對柵格圖像進行Bit Error自適應濾波 |
|
對多幅柵格圖像進行無縫鑲嵌 |
|
獲取柵格圖像增益和偏移值,用於快速大氣校正(QUAC) |
|
根據一組特定的數組值對柵格圖像進行掩膜 |
|
對柵格圖像進行方向濾波 |
|
定義方向濾波窗口大小和方向,默認3×3,0° |
|
對柵格圖像進行增強型Frost自適應濾波,減少斑點噪聲,同時保留邊緣特徵 |
|
對柵格圖像進行增強型Lee自適應濾波,減少斑點噪聲,同時保留紋理特徵 |
|
輸出柵格圖像密度分割.dsr文件 |
|
對柵格圖像進行Frost自適應濾波,減少斑點噪聲,同時保留邊緣特徵 |
|
對柵格圖像進行Gamma自適應濾波,減少斑點噪聲,同時保留邊緣特徵 |
|
對柵格圖像進行高斯高通濾波 |
|
定義高斯高通濾波窗口大小,默認3×3 |
|
對柵格圖像進行高斯低通濾波 |
|
定義高斯低通濾波窗口大小,默認3×3 |
|
利用兩幅或多幅圖像生成3D點雲(基於密度圖像匹配算法) |
|
將GeoJSON轉換爲ROI |
|
將GeoPackage轉換爲Shapefile |
|
從.dsr文件中獲取柵格圖像密度分割範圍和顏色 |
|
從光譜庫中獲取特定地物的光譜信息 |
|
將柵格圖像進行高閾值裁剪,大於設定閾值的賦予該閾值,小於設定閾值則不變 |
|
對柵格圖像進行高通濾波 |
|
定義高通濾波窗口大小,默認3×3 |
|
對柵格圖像進行Kuan自適應濾波 |
|
對柵格圖像進行Local Sigma自適應濾波 |
|
對柵格圖像進行拉普拉斯濾波 |
|
定義拉普拉斯濾波窗口大小,默認3×3 |
|
將柵格圖像進行低閾值裁剪,小於設定閾值的賦予該閾值,大於設定閾值則不變 |
|
對柵格圖像進行低通濾波 |
|
定義低通濾波窗口大小,默認3×3 |
|
對柵格圖像進行掩膜(基於閾值) |
|
對柵格圖像進行中值濾波 |
|
對具有乘法噪聲的柵格圖像進行Lee自適應濾波 |
|
對柵格圖像進行掩膜(基於ROI) |
|
獲取光譜庫中所有地物光譜名稱 |
|
查詢指定Task描述信息 |
|
查看所有可用Task列表 |
|
對柵格圖像進行卷積運算 |
|
計算柵格圖像直方圖 |
|
獲取柵格圖像特定元數據信息 |
|
重投影一系列柵格爲一個同樣的空間格網,使用自定義的grid |
|
對柵格圖像進行重投影 |
|
對地物光譜進行重採樣 |
|
對柵格圖像進行羅伯特濾波 |
|
設置柵格圖像元數據信息並生成.hdr頭文件(之前無頭文件;若柵格圖像本身具有頭文件,則覆蓋掉原來數據) |
|
對柵格圖像進行Sobel濾波 |
|
ENVISpectralAdaptiveCoherenceEstimator |
使用子空間背景統計的均值和方差,進行Adaptive Coherence Estimator (ACE)目標檢測分析 |
排除異常值像元計算背景統計信息 |
|
對柵格圖像進行掩膜處理(基於矢量,如shapefile) |
|
根據矢量記錄生成對應ROIs |
表2 新增13個對象&方法
Object/Method |
Description |
對象:二值化虛擬柵格(大於閾值賦予1,小於閾值賦予0) |
|
對象:二值化虛擬柵格(大於閾值賦予0,小於閾值賦予1) |
|
對象:數組掩膜時生成的虛擬柵格 |
|
對象:同時對柵格數據進行輻射定標和閾值裁剪時生成的虛擬柵格 |
|
對象:高閾值裁剪時生成的虛擬柵格(大於閾值的像素賦予該閾值) |
|
對象:返回JagwireServer對象引用,基於該引用可以進行如下操作:查詢JagwireServer上的柵格數據集哈希表,獲取數據集元數據哈希表,關閉JagwireServer連接 |
|
對象:低閾值裁剪時生成的虛擬柵格(小於閾值的像素賦予該閾值) |
|
對象:快速大氣校正(QUAC)生成的虛擬柵格 |
|
對象:重投影生成的虛擬柵格 |
|
方法:返回柵格數據ROI邊界像素座標 |
|
對象:返回光譜庫對象的引用 |
|
方法:根據視圖對柵格圖像進行裁剪(虛擬柵格) |
|
方法:根據視圖對柵格圖像進行裁剪(文件) |
表3 新增12個Lidar相關ENVITask/對象&方法
Object/Method/Task |
描述 |
打開單個或多個點雲數據(.las、.laz、.ntf,.sid,.txt,.bin)和工程文件(.ini),同時進行點雲格式優化 |
|
打開單個點雲數據(.las、.laz、.ntf,.sid,.txt,.bin),不進行點雲格式優化 |
|
將ENVI LiDAR工程分解爲若干個子工程,用於ESE並行處理 |
|
返回點雲對象引用,基於該引用可以進行如下操作: – 獲取圓形區域、矩形區域、多邊形區域點雲數據 – 保存點雲對象,輸出點云爲一個新的.las文件 – 關閉點雲對象等 |
|
對點雲進行特徵提取,比如:提取建築物、樹木和電力線等 |
|
對點雲數據進行過濾 |
|
獲取點雲元數據信息 |
|
存儲點雲特徵提取Task獲取的產品完整信息 |
|
返回ENVI::QueryPointCloud對象引用,基於該引用可以進行如下操作:獲取特定範圍已分類點雲數據,關閉點雲對象 |
|
點雲數據空間參考對象,基於該對象可以進行如下操作:點雲數據地理座標系與投影座標系相互轉換,投影座標系之間相互轉換 |
|
啓動ENVI LiDAR並初始化一個ENVI LiDAR對象,基於該對象可以進行如下操作:打開點雲數據,打開shapefile文件,獲取已經打開的點雲對象,獲取和設置視圖範圍,設置進度條在視圖中的位置,關閉視圖 |
|
對點雲數據進行空間裁剪 |
表4 新增9個處理狀態信息的對象&方法
對象&方法 |
描述 |
該方法返回一個對象引用系統的廣播通道 |
|
如果有中止請求時候,使用此類進行通信 |
|
當編寫自定義Task時候,使用此基類可以實現帶有中止選項的進度條,可以設置三個方法: PreExecute, DoExecute, PostExecute |
|
這是廣播通道的引用,包括以下三個方法: · 發送消息: Broadcast method · 訂閱:Subscribe method · 取消訂閱: Unsubscribe method |
|
抽象類,用於其他信息類的超類。 |
|
抽象類,用於其他信息類的超類。如ENVIBroadcastChannel 調用ENVIMessageHandler::OnMessage 方法用於把消息轉發給所有的用戶 |
|
這個函數是用於構建一個ENVIStartMessage 對象送到ENVIBroadcastChannel. 如果一個ENVI用戶界面運行,一個處理進度條將會出現。 |
|
這個函數是用於構建一個ENVIProgressMessage對象送到ENVIBroadcastChannel. 如果一個ENVI用戶界面運行,處理進度條將會更新進度。 |
|
這個函數是用於構建一個ENVIFinishMessage 對象送到ENVIBroadcastChannel. 如果一個ENVI用戶界面在有進度條的情況下運行,對話框將會關閉。 |