ENVI 5.4.1新功能
ENVI5.4.1于2017年8月份正式发布,有以下一些新功能和增强:
- 传感器和数据支持
- 显示工具
- 图像处理
- 二次开发
1 传感器和数据支持
- ADS80 Level-2产品(ENVI先前版本支持Level-1产品)
- Landsat 8 Surface Reflectance数据
- PlanetScope数据
- Sentinel-2 Level-2A,包括Amazon Web Services分发的文件
- 哨兵-3海洋和陆地彩色仪(OLCI)和海陆地表温度辐射计(SLSTR)数据
- UrtheCast Theia数据
- 使用DoD插件,ENVI可以读取带有RSM空间参考的NITF数据,同时可将RSM空间参考保存到ENVI头文件,并且支持使用相同的空间参考信息填充新的NITF文件。
- 将ADS80分块文件作为一个组合影像而不是单独的TIFF文件打开。
- 读取SPOT-7和Pleiades DIMAP V2影像反射率增益和偏移,进而可以使用辐射校正工具将影像定标为大气表观反射率(top-of-atmosphere reflectance)。
图:Sentinel-3 陆地地表温度产品的支持
2 显示工具
设置ENVI格式的影像默认拉伸时,可指定最小/最大值。若未指定,则使用图像直方图中的2%和98%为最小/最大值。此功能原只应用于线性拉伸,现同样适用于平方根、高斯、均衡化和对数拉伸等。
3 图像处理
- ENVI支持ArcGIS ® 10.4和10.5版本。
- ADS80影像可以与ENVI摄影测量扩展模块一起使用。
- Generate Point Clouds and DSM by Dense Image Matching工具(集成于ENVI摄影测量扩展模块)新增两个参数:
-
Terrain Type:选择输入影像大部分为平坦或多山地形。相应的ENVIGeneratePointCloudsB yDenseImageMatchingTask同样具有新的TERRAIN_TYPE参数。 -
Refine Point Clouds:如果设置为“是”,输出点云将具有平滑的高度值,但不包含任何强度或颜色信息。相应的ENVIGeneratePointCloudsB yDenseImageMatchingTask具有新的REFINE_POINT_CLOUDS参数。
- 掩膜更新
-
将影像保存到磁盘时,可以在Save File As Parameters对话框中设置Data Ignore Value 字段,设置该属性可以在处理或统计影像时忽略特定的像素值。同时,单击Find Suitable Data Ignore Value按钮,可根据影像统计信息和数据类型自动寻找适合的忽略值。 -
Apply Mask工具从ENVI工具箱中移除,可使用File Selection对话框中的Mask按钮选择待掩膜影像。Build Mask工具已重命名为Build Raster Mask。 -
新的Masks主题描述了如何在ENVI用户界面和API中创建和应用掩膜。 -
大多数ENVITask现支持使用掩膜。
4 二次开发
- ENVI API编程指南新增关于如何使用ENVI API创建“a task of tasks”的示例。
- ENVI函数接口新增API_VERSION属性,其值代表ENVI API的语义版本,需注意此语义版本号与销售版本号不同(例如5.4.1)。另外,通过X.Y.Z可快速提取新版本软件信息,其中:
-
X代表主要版本。增加的值表示API添加和更新向下不兼容。 -
Y代表次要版本。增加的值表示API添加和更新向下兼容。 -
Z代表补丁编号。增加的值表示不影响API的错误修复。
- 向下兼容性注释:
-
IDL 8.6.1引入更好的错误消息机制。该功能从IDLffJson类引入了一个新的成员变量,这可能会导致在使用IDL 8.6或更早版本编译sav文件时出错:在使用先前版本IDL编译的文件中若包含JSON_PARSE或JSON_SERIALIZE函数,则在将该文件加载到IDL 8.6.1中将使用旧版本的IDLffJson类的定义,从而导致调用JSON_PARSE和JSON_SERIALIZE报错。解决方法时利用IDL 8.6.1重新构建sav文件或在构建sav文件时使用/ SKIP_EXISTING关键字显式调用RESTORE,以防止类替换。 -
Task模板中的schema默认值更改为envitask_3.1,该模式允许设置API输出参数(基于URI)的uri_param属性。uri_param名称设置为输入的ENVI_URI或ENVI_RUI数组相关联的输出参数名称。该属性在ENVIUI :: SelectTaskParameters方法在显示URI参数交互界面时自动填充。schema3.1先前版本不支持uri_param属性设置。
- 新增对象
对象名称 |
描述 |
ENVICastRaster |
栅格数据类型转换对象,如无符号整型->浮点型 |
ENVINITFCSMRasterSpatial |
NITF数据RSM模型(replacement sensor model)空间参考对象的引用,只适用于分类的ENVI DoD插件 |
- 新增ENVITasks
Task名称 |
功能 |
ENVIBinaryMorphologicalF |
二进制形态滤波 |
ENVICastRasterTask |
转换数据类型 |
ENVIExtractRastersFromRa |
从ENVIRasterSeries中提取单个栅格 |
ENVIGrayscaleMorphologic |
灰度形态滤波 |
ENVIPixelwiseBandMathRas |
进行像素级数学运算 |
ENVIROIStatisticsTask |
统计一个或多个ROI信息 |
- 新增参数类
以下是ENVI不同数据类型的新参数类,该类对Task模板中的DEFAULT或VALUE参数进行了优化。高级ENVI API程序员可以使用这些对象为ENVITasks创建自定义数据类型。
-
ENVIParameterENVIAbortab le -
ENVIParameterENVIClassif ier -
ENVIParameterENVIClassif ierArray -
ENVIParameterENVIConfusi onMatrix -
ENVIParameterENVIConfusi onMatrixArray -
ENVIParameterENVICoordSy s -
ENVIParameterENVICoordSy sArray -
ENVIParameterENVIExample s -
ENVIParameterENVIExample sArray -
ENVIParameterENVIGCPSet -
ENVIParameterENVIGCPSetA rray -
ENVIParameterENVIGeoJSON -
ENVIParameterENVIGLTRast erSpatialRef -
ENVIParameterENVIGLTRast erSpatialRefArray -
ENVIParameterENVIGridDef inition -
ENVIParameterENVIGridDef initionArray -
ENVIParameterENVIPointCl oud -
ENVIParameterENVIPointCl oudBase -
ENVIParameterENVIPointCl oudProductsInfo -
ENVIParameterENVIPointCl oudQuery -
ENVIParameterENVIPointCl oudSpatialRef -
ENVIParameterENVIPointCl oudSpatialRefArray -
ENVIParameterENVIPseudoR asterSpatialRef -
ENVIParameterENVIPseudoR asterSpatialRefArray -
ENVIParameterENVIRaster -
ENVIParameterENVIRasterA rray -
ENVIParameterENVIRasterM etadata -
ENVIParameterENVIRasterM etadataArray -
ENVIParameterENVIRasterS eries -
ENVIParameterENVIRasterS eriesArray -
ENVIParameterENVIROI -
ENVIParameterENVIROIArra y -
ENVIParameterENVIRPCRast erSpatialRef -
ENVIParameterENVIRPCRast erSpatialRefArray -
ENVIParameterENVISpectra lLibrary -
ENVIParameterENVISpectra lLibraryArray -
ENVIParameterENVIStandar dRasterSpatialRef -
ENVIParameterENVIStandar dRasterSpatialRefArray -
ENVIParameterENVITaskCat alog -
ENVIParameterENVITaskInf o -
ENVIParameterENVITiePoin tSet -
ENVIParameterENVITiePoin tSetArray -
ENVIParameterENVITime -
ENVIParameterENVITimeArr ay -
ENVIParameterENVITrainer -
ENVIParameterENVITrainer Array -
ENVIParameterENVIVector -
ENVIParameterENVIVectorA rray