我的世界老虎机视频:ENVI中利用矢量边界裁剪栅格数据详解

来源:百度文库 编辑:中财网 时间:2024/04/30 00:28:17
   

     以前在论坛和群里面看到过很多人问如何在ENVI中利用不规则边界来裁剪栅格影像,都只是告诉他们将矢量数据转为ROI然后再Subset就可以。今天又碰到了,就将在ENVI中裁剪栅格的步骤写下来,以方便参考:

   注:此处用到的数据是群里一位朋友的,在此作为一个例子来说明如何裁剪数据。

   数据:矢量数据为SHP格式,面状(多边形)特征文件  test.tif。栅格数据为TIFF格式  testshp.shp 。

   1、打开栅格数据:通过 File -- Open Image

                    或者 File -- Open External File -- Generic Formats -- TIFF/GeoTIFF

   2、打开矢量数据:通过 File -- Open Vector

                    或者 Vector -- Open Vector,选择 文件类型 Shapefile(*.shp) ,选择矢量文件 testshp.shp,注意在弹出的Import Vector Files Parameters 对话框选择正确的投影类型。然后OK之后ENVI自动将矢量文件转为EVF格式。

     这里要注意栅格数据和矢量数据的投影系统必须一致。如果不一致就需要重投影使其一致。

   3、将矢量数据转为ROI:在Availabel Vectors List选择数据,在 File 选择 Export Layers to ROI,然后在Select Data File to Associate with new ROIS 中选择需要裁减的栅格数据,再在Export EVF Layers to  ROI中选择Convert all records of an EVF layer to one ROI,点击OK。

   4、裁剪栅格数据:在ENVI主菜单Basic Tools 中选择Subset Data via ROIs,在Select Input File to Subset via ROI 中选择需要裁减的栅格数据,OK。然后出现Spatial Subset via ROI Param...对话框,在Slect Input ROIs 中选择建立的 ROI。最后选择输出结果到文件还是内存即可。

    ** 这里需要注意 Mask pixels outside of ROI ?这个选项,如果选择 No ,则是以包括ROI在内的最小矩形范围裁剪,得到的结果数据也是矩形。如果选择Yes,则需要在 Mask Background Value 后给出 ROI 范围外的数据值,默认是0 (该值自己随意设定),这样得到的结果就是大家想要的不规则边界裁剪结果。   

    ** 另外矢量数据必须是多边形类型,如果是线类型裁剪,在想要得到按照边界裁剪时就会出错。

 

图1原始数据,红色为矢量边界

图2裁减结果

 

其实这类型的裁剪和前面的帖子,在ArcGis中裁剪栅格是一样的。

 

:以上步骤在ENVI4.3种完成,其它版本可能稍有不同,请注意!