ENVI5.6/IDL8.8新特性介绍

ENVI 5.6/IDL 8.8于2020年8月正式发布。

ENVI 5.6

本版本ENVI包含了很多新增和改进的功能。主要包含如下内容:

  • 新增ENVI Server:能够在后台和并行运行tasks和model。或设置远程服务器,进行分布式处理。
  • 软件库得到更新,提高了ENVI运行时的性能。
  • ENVI新增支持GOES-17和珠海一号高光谱数据。
  • 性能改进:ENVI打开、显示、读取和处理NITF文件的速度提高了50%。QUAC大气校正效率也得到了提升,是因为在分块处理时能更高效率地访问数据。
  • ENVI光谱库新增USGS V7版本光谱库。
  • ArcGIS集成:ENVI支持与较新版本的ArcGIS软件匹配使用,可以将矢量文件上传到ArcGIS Portal或ArcGIS Online帐户。
  • ENVI对OGC WCS数据集有更好的支持。
  • 视图改进:新增视图布局选项,链接视图时可同步旋转。并且工具预览效果得到提升。
  • ROI改进:新增键盘和鼠标快捷键、魔术棒工具、ROI中的掩膜像素以及其他新功能。
  • 新增4种矢量工具,可用于处理shapefile。
  • “GO TO”工具现在支持地理查找表(GLT)空间参考坐标。
  • ENVI二次开发新增API,支持创建工作流程序。
  • 新增一些API和ENVITask,以及原有API增强。

        ENVI Server

从ENVI 5.6开始,可以将ENVI安装升级为ENVI Server,这将允许我们在后台并行运行ENVI任务和模型。安装了ENVI和Geospatial Services Framework(GSF)的任何Windows或Linux机器都被视为ENVI Server。我们可以监视作业状态,并在每个作业完成后查看结果。还可以设置远程机器作为ENVI Server,以实现分布式处理。

ENVI Modeler的Iterator节点新增一个按钮 ,可以设置一个或多个ENVI Server用来执行多个批处理工作。

同时提供ENVIServer API,可以配置ENVI Server,并支持后台、并行、分布式运行任务。

        软件库更新

IDL和ENVI使用许多底层的第三方软件库,这些库需要不断的更新和维护。其中大部分已更新到最新版本。这样提高软件运行性能。有关库更新的完整列表,请参阅ENVI 5.6发行说明。

        新增USGS光谱库

ENVI 5.6提供USGS V7版本以及以前可用的其他光谱库。第7版共包含2457个来自人工材料、涂料、液体、矿物、有机物、土壤和植被的单个光谱。第7版存放于ENVI安装路径的\resource\speclib\usgs_v7目录中。有关这组光谱库的更多信息,请参见自述文件.txt文件。

2007年的第6版仍然可以在\resource\speclib\usgs_v6目录中找到。

使用Spectral Library Viewer可以访问并绘制USGS第7版光谱图,以及ENVI提供的其他光谱库。 

        ArcGIS集成

ENVI 现在支持与ArcGIS Pro 2.5以及ArcMap 10.8匹配使用。

        OGC WCS 支持改进

ENVI的远程数据连接器(Remote Connection Manager)和ENVI::OpenRaster API支持OGC WCS 1.1.x和2.0.1;具体为GeoServer、MapServer、Jagwire、ArcGIS Server 10.7/8。

        视图改进

菜单File > Views & Layers被重命名为File > ENVI Session。

在Views菜单下提供4种新的布局风格,如下图所示。

如下图为4个横向分布视图效果:

视图像素链接和地理链接现在可以同步旋转。

基于ENVITask的工具,例如QUAC、Spectral Indices等,预览功能得到改进,现在可以在平移、缩放和旋转时预览结果,而且预览刷新效率有明显提升。

        ROI改进

对于多边形ROI,可以使用快捷键以一定角度绘制矩形,方法如下:单击两个顶点以定义矩形的一侧。这两点决定了绘制矩形的角度。然后按住Shift键并将预览的矩形拖动到对象位置。当确认无误时单击鼠标即可完成绘制。

可以按如下方法旋转ROI:绘制一个形状,然后右键单击视图并选择“Complete shape type”。将光标移到中心附近,然后单击Shift键。此时会出现一个旋转图标。根据需要单击并拖动以旋转对象,完成时释放鼠标键即可。

新增Magic Wand工具,能够从一个或多个“种子”像素增长为ROI多边形。此工具有助于绘制复杂对象(如云、树冠和湖泊)的ROI多边形。打开ROI工具后,按住Ctrl键并单击对象内部的像素,将绘制初始多边形,并显示Magic Wand Parameters对话框。可以调整“阈值”并试验其他参数,以更好地细化对象的形状。

如果一个或多个ROI包括图像中被掩膜的像素(比如设置了Data Ignore Value),统计结果新增”Mask Count”列以显示ROI中掩膜的像素个数。

 

对于multi-part 的ROI,右键菜单新增Remove Holes选项。

        矢量处理工具

ENVI工具箱中提供了四种新的工具:

Filter Vector:将包含在指定的最小值和(或)最大值范围内的矢量记录输出为一个新的矢量文件。

Smooth Vector:减少多段线或多边形矢量的顶点数。输出一个新的矢量文件。

Vector to Bounding Box:创建矢量记录的边界框,输出为新的多边形矢量文件。

Vector to Centroid:计算矢量记录的质心,输出为新的点矢量文件。

下图此图显示飞机周围的边界框和质心:

        二次开发

9.1      工作流API

可以使用ENVIAPI创建工作流,工作流由多个步骤组成,这些步骤以用户界面(UI)对话框的形式呈现,这些对话框指导用户完成一系列数据处理操作。

 

通过工作流,可以在完成每个步骤时与ENVI进行交互。工作流步骤基于ENVITasks,其中每个任务执行一个功能。界面中会显示一个时间轴,展示当前所处的步骤,以根据需要在步骤之间来回移动。

以下是用于创建工作流的程序和方法:

Workflow 程序/方法

描述

ENVIUI::CreateWorkflowDialog

该方法用于显示工作流程序界面。

ENVIWorkflow

该程序创建包含多步骤的图像处理工作流。

ENVIWorkflowStep

该函数定义工作流中的具体步骤。

9.2      新增程序和方法

程序/方法

描述

ENVIDataContainer

数据容器。可以包含数据对象(例如raster、vector),或者任意数据类型的变量(比如字符串、数字等)。数据容器可以保持跟踪数据对象的状态。这样可以关闭或保存数据对象,或在需要时检索它。

ENVIParameterUI

是所有用户界面(UI)类的基类。

ENVIUI::RunTask

该方法可以显示ENVITask的用户界面。与ENVIUI::SelectTaskParameters方法不同,该方法将在点击OK按钮后自动开始运行。并且该方法显示的界面不会打断操作ENVI,还可以选择在ENVI Server中运行该任务。

ENVIUI::ShowJobConsole

此方法显示ENVI Server Job Console,用于监视提交到ENVIServer的作业。

ENVIServer

此函数可以创建ENVIServer对象,以便可以在后台、并行或分布式运行多个并发的ENVI任务。

9.3      新增ENVITasks

可以使用这些新的ENVITasks在自己的ENVI+IDL程序中执行数据处理操作。它们也可用作ENVI Modeler中的任务节点,以便将它们与其他任务组合起来,构建自定义的数据处理工作流。

ENVITask

描述

ENVIClassificationToPixelROITask

由分类图像创建像素ROI

ENVIClassificationToPolygonROITask

由分类图像创建多边形ROI

ENVIExtractColumnFromArrayTask

从数组中提取单列数据

ENVIExtractRowFromArrayTask

从数组中提取单行数据

ENVIFeatureCountToROITask

由特征计数文件(Feature Count .efc)创建点ROI

ENVIFilterVectorTask

执行矢量过滤功能

ENVISmoothVectorTask

执行矢量平滑功能

ENVIUploadVectorToArcGISPortalTask

将shapefile由ENVI上传到ArcGIS Portal或ArcGIS Online帐号。

ENVIVectorRecordsToCentroidTask

计算矢量质心,并输出新的矢量文件

ENVIVectorRecordsToBoundingBoxTask

计算质量边界框 ,并输出新的矢量文件

9.4      其他API更新

ENVI对象的LAYOUT属性新增4中视图布局选项。

ENVIView::GeoLink和ENVIView::PixelLink方法新增两个关键字,ROTATE_LINK和UPDATE_ROTATE_LINK,允许同步旋转选定的视图。

新增以下用户界面API类,ENVI程序员可以使用这些类在程序中显示对话框:

  • IDLContainer_UI:这是一个包含多个UI类的容器,以便可以一次显示它们。
  • IDLPassword_UI:显示一个对话框,供用户输入带有隐藏字符的密码。

IDL 8.8

        新特性

1.1      IDL工作台

在IDL工作台中可以安装Eclipse Marketplace Client,该客户端能够浏览和安装基于Eclipse的插件。有关步骤请参阅帮助文档的Install the Marketplace Client and Plug-ins章节。

现在可以修改IDL工作台主题。比如可以切换为暗黑模式。详细信息可查看帮助中的Change the Workbench Theme章节。

主菜单新增 File > Restart选项,可以重启IDL工作台。

编辑器视图可以取消停靠,也可以移动到单独的显示器上。

1.2      SOBOLSEQUENCE

新增SOBOLSEQUENCE函数支持从Sobol序列生成数值。Sobol序列是一种低差分拟随机序列。Sobol序列被设计成比完全随机抽样更均匀的方式填充空间。

        更新

2.1      IDL Workbench语言包

IDL工作台以前包括几种不同的语言;在这个版本中,需要从Eclipse的Babel Language Pack 中安装新的语言包。详细信息请查看Install the Marketplace Client and Plug-ins Set IDL Workbench Internationalization

2.2      EIGENQL增加关键字

EIGENQL增加关键字SYMMETRY_RTOL。使用关键字指定一个值,该值表示在验证数组是否对称时允许的最大可接受相对公差。

2.3      新增数据格式

IDL现在支持以下视频格式:

Data Type

Read

Write

File to Select

DV (Linux only)

.dv

RAW

.raw


IDL可以读写MPEG-2 Part 2 文件(.mpeg, .mpg, .mp2, .mpg2, .mpeg2, .mpv, .m2v)。同样可以读写Matroska视频文件 (.mkv) 。

IDL现在支持以下视频编解码器格式:

Name

Description

Read

Write

BMP

Bitmap (Windows only)

 

HEVC

High Efficiency Video Coding

 

VC-1

Microsoft codec, also known as SMPTE 421M

 

VP8

Google codec

 


IDL现在可以读写RAW解码器视频文件。还可以读写MSMPEG4V1解码器格式的视频文件。

        库更新

下面列出的第三方库已更新为新版本:

· ANTLR, 2.7.5

· Apache Commons Logging, 1.1.3

· Chromium Embedded Framework, 79.1.35

· CLL, 4.1.1

· cURL, 7.70.0

· DXF, 2.003

· Eclipse CVS Client, 1.4.1200.v20191210-0610

· HDF5, 1.10.5

· IDL Python Bridge now supports 3.7 and 3.8

· JPEG was replaced with JPEG-turbo library 2.0.3

· libxml2, 2.9.9

· netcdf, 4.7.1

· OpenSSL, 1.1.1g

· Proj 6.2.0

此版本中添加了以下第三方库:

· AdoptOpenJDK 11.0.6

· AdoptOpenJDK JRE 11.0.6

· ecCodes 2.15.0

· Esri Projection Engine and data 10.7.0

· GCTP2 2

· jaxb-api 2.3.1

· Mesa Open GL Utility 9.0.1

· MGRS 1.3.4

· NumPy 1.18.1

· Openmp 9.0.1

· TBB 4.4.5

· TinyXML2 8.0.0

· wglext.h 23

此版本中已删除以下第三方库:

· Anaconda

· Apache HTTP Client

· CBLAS

· Apache Commons Validator

· F2CMath

· GEOS

· Google GSON

· GRIB API

· libiconv

· MODTRAN

· ogr2ogr

· SpatialLite

· Zulu

posted @ 2022-09-05 10:21  ENVI-IDL技术殿堂  阅读(3499)  评论(0编辑  收藏  举报