Python中调用ENVI功能—ENVIPyEngine介绍、安装和示例

一.ENVI Py Engine简介

ENVI Py Engine提供了一个名为envipyengine的Python安装包,基于ENVI Py Engine,通过几行简单的Python代码,即可调用ENVI提供的强大数据处理、分析功能(ENVITasks),极大的方便了基于Python的遥感数据处理和分析。以下介绍如何安装并使用ENVI Py Engine。

二.ENVI Py Engine安装

软件要求:

ENVI:ENVI5.4及以上

Python:文章使用版本为3.6.2,其它版本未知。

 

启动CMD命令,输入:

pip install envipyengine

三.ENVI Py Engine使用

3.1 运行环境确认

确认当前目录有写入权限,若无写入权限,请切换至其它目录,如:

cd /d D:\ ENVIpyengine

 

切换至python:

python

 

确认envipyengine运行环境:

>>> import envipyengine
>>> engine = envipyengine.config.get('engine')

 

若上述命令报错,则需手动指定taskengine.exe完整路径(分隔符使用\\),以ENVI55为例:

>>> envipyengine.config.set('engine', 'C:\\ProgramFiles\\Harris\\ENVI55\\IDL87\\bin\\bin.x86_64\\taskengine.exe')

3.2 在Py中查询ENVITask列表

创建Engine class 实例并查询当前所有可用ENVITask。

>>> from envipyengine import Engine
>>> envi_engine = Engine('ENVI')
>>> envi_engine.tasks()

3.3 在Py中初始化一个ENVITask对象

初始化一个Task,以快速大气校正为例:

>>> task = envi_engine.task('QUAC')

查询该Task参数

>>> task.parameters

3.4 在Py中执行一个Task

>>> input_raster = dict(url='C:\\ProgramFiles\\Harris\\ENVI55\\data\\qb_boulder_msi',factory='URLRaster')
>>> parameters = dict(INPUT_RASTER=input_raster,OUTPUT_RASTER_URI='D:\\quac.dat')
>>> task.execute(parameters)

 

英文原版链接:http://envi-py-engine.readthedocs.io/en/latest/

IDL 8.5中的Python Bridge:https://www.cnblogs.com/enviidl/p/16377779.html

posted @ 2022-05-27 18:08  ENVI-IDL技术殿堂  阅读(3391)  评论(0编辑  收藏  举报