IDL矢量裁剪影像(解决复杂多边形、空心、岛等裁剪问题)

本文介绍了在ENVI中使用IDL处理复杂多边形裁剪影像时遇到的问题,特别是涉及空心和岛状区域的裁剪不准确。通过分析和对比ENVI自带的功能,提出了利用ENVITASK VectorMaskRaster解决此类问题的代码实现。同时,代码中包含了进度条功能,以提高用户体验。讨论了ENVI 5.0前后版本在裁剪逻辑上的差异,并对两种方法的优缺点进行了探讨。
摘要由CSDN通过智能技术生成

    IDL矢量裁剪影像的代码已经有不少人写了,之前的项目中,同事也是参考了ENVI官博中的写法。后来,客户那边反馈裁剪的不准,才发现了问题,就是这些代码用简单的矢量裁剪影像没有问题,但客户那边的是河流的矢量(如下图),中间有些挖空,在转换为ROI的时候,往往不能正确裁剪。

                        矢量              代码裁剪结果             正确裁剪结果

    可以看出,ROI处理的时候把三个多边形都保留了,就导致了裁剪不能去掉中间空心的内容。把同样的数据放到ENVI中裁剪,可以得到正确裁剪结果,看来ENVI是对这种含有内外环的复杂多边形转换ROI时做了处理。话不多说,下面给出解决思路和代码。

     写在前面:

1、项目环境为ENVI5.3.1、IDL8.5,测试数据影像为GF2影像、部分河流矢量,投影均为UTM50N

2、项目需要不启动ENVI,执行裁剪,但希望包含进度

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值