ENVI扩展工具:基于矢量或ROI的图像裁剪工具
在 ENVI 5.6及以前版本,有这样一个工具,可以基于矢量或ROI对图像进行裁剪:
-
Toolbox/Regions ofInterest/Subset Data from ROIs
很遗憾的是,在 ENVI 5.6.1 版本将此工具移除了。如果想要实现上述工具的功能,需要如下操作步骤:
1) 打开主菜单 File >Save As > Save As… (ENVI, NITF, TIFF, DTED);
2) 在弹出对话框中,选中待裁剪图像,点击 Spatial Subset,在右侧点击Subset by Vector…或 Subset by ROI… (如下图所示)确定裁剪矩形范围;

3) 在同一窗口下方点击 Mask…,弹出对话框中选择矢量或 ROI。点击OK。

4) 点击OK,设置输出参数即可。
以懒人自居的我实在无法接受这样的操作方式,只能写一个工具了。 ENVI 5.6 及以前版本使用自带 Subset Data from ROIs 工具即可。
1 下载安装
方法1:使用 ENVI App Store 进行 ENVI 扩展工具的安装与管理。
App Store 下载地址:envi.geoscene.cn/appstore
方法2:手动下载 https://envi.geoscene.cn/appstore/subttrrnew
下载 zip 压缩包并解压,将得到的 extensions 和 custom_code 文件夹拷贝到如下 ENVI 安装路径,覆盖同名文件夹即可:
-
ENVI 5.5 及以上 - C:\Program Files\Harris\ENVI5x\
重启 ENVI 即可使用。
注:本工具支持 ENVI 5.5 及更高版本,使用 ENVI 5.6.1 测试。
2 使用说明
工具位于:Toolbox/Extensions/Subset Data from ROIs [NEW]

参数说明:
· Input Raster:输入待裁剪图像。选择图像时可以进行空间裁剪和波段裁剪。
· Input Vector:输入矢量文件。
· Input ROIs:输入感兴趣区域。
注:Input Vector 和 Input ROIs 两个参数需要设置至少一个用于裁剪。当矢量和 ROI 均设置时,裁剪结果将取交集。
· Inverse Mask:是否反转裁剪。默认为否;矢量或ROI范围内图像将保留。若设置为是,则范围外图像将保留。
· Data Ignore Value:忽略值。若设置,则以设置值为准;若不设置,当输入图像自带忽略值时,以此忽略值为准,否则默认为0。
· Output Raster:输出图像,设置输出路径。
3 接口调用
接口调用示例如下,同时此ENVITask可用于ENVI Modeler。
Task = ENVITask('ENVISubsetDatafromROIsNew')
Task.INPUT_RASTER = raster
Task.INPUT_VECTOR = ovecter
Task.INPUT_ROIS = orois
Task.DATA_IGNORE_VALUE = 0
Task.OUTPUT_RASTER_URI = 'C:\temp\sub.dat'
Task.Execute
output_raster = Task.OUTPUT_RASTER
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)