ENVI裁剪

  1. 云栖社区>
  2. 博客>
  3. 正文

ENVI裁剪

橘子红了呐 2017-11-06 01:23:00 浏览933
展开阅读全文

一、basic tools-->resize data进行规则裁剪

虽然是进行图像重采样工具,但也可以用于简单快速的裁剪
1、 选中要裁剪的图像;

  对话框下面选择spatial subset(构建空间子集_就是裁剪图像)(另spectral subset-构建波谱子集)

2、提供多种裁剪方式:
(1)直接输行列裁剪,这样裁剪的前提是你要预告查看需要图像所占的行列是多少。
(2)image裁剪,可以输入需要裁剪图像的大小,然后鼠标可以拖动图中所选区域的位置直到合适的位置。
(3)或者是使用map、file、ROI/evf等方式进行裁剪。但map、file两种方式个人感觉都不方便,roi/evf方式方便,但这里只能进行规则裁剪。

二、basic tools-->subset data via rois进行规则和不规则裁剪
首先必须建立裁剪所需的ROI(感兴趣区),即需要进行裁剪的范围。
建立感兴趣区,下面介绍了三种方式
1、通过主图像窗口-->tools-region of interest-->roi tool,然后自己在图像上定义出一块感兴趣区(实际中难于确定严格准确的裁剪界限)。
2、打开外部确定好的矢量裁剪范围(矢量文件必须是区文件),并将其加载到图像上(load selected),方便后面的裁剪。
3、加载矢量范围后图像,然后将矢量范围转为感兴趣区(file-export active layer to rois)。

4、如果矢量文件包含多个区,这里可以选择每个EVF to a new roi,并可以在attribute column to use for name后选择矢量区的一个属性做为标志,这里我选择ID,这适用于后面将要对每个区进行统计分析的处理,如果仅仅是简单的裁剪,多个区可以转为一个感兴趣即可。
5、basic tools- subset data via roi-选择要裁剪的图像-OK跳出图8对话框,设置好即可进行不规则或者是规则的裁剪了。
注:

1、如果有多个rois,一定要选择要用到的ROI,可以按CTRL进行不连续的多个ROI的选择,如果全需要,干脆select all items。
2、mask pixels outside of roi一项非常重要,如果选择no,裁剪后的范围将是能容纳不规则的矢量范围的最小的一个矩形范围,即仍然是规则的裁剪结果。如果选择YES,则可以设置mask background value(即矢量文件范围外的值,根据实际情况设定,此处设为0),裁剪后的结果将是不规则矢量范围的结果,即进行的是不规则的裁剪。

补充一点:前面看到有人说ENVI打开窗口太多,查找相应窗口比较麻烦,实际上也可以打开主菜单--> window --> window finder功能可以快速查找相应窗口。

 

ENVI下裁剪栅格影像图的步骤

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

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

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。最后选择输出结果到文件还是内存即可。

   补充:在Erdas下利用*.shp数据进行裁剪时,把shp转换成AOI的步骤:

    1)、使用Vector打开shp文件,在Vector下使其变成可编辑状态

    2)、在Vector Attribute属性表中选择所有的多边形,Edit>Copy,然后在Aoi下选择“copy selection to AOI...”,最后在File>Save aoi layer as...”。

    这里需要注意 Mask pixels outside of ROI ?这个选项,如果选择 No ,则是以包括ROI在内的最小矩形范围裁剪,得到的结果数据也是矩形。如果选择Yes,则需要在 Mask Background Value 后给出 ROI 范围外的数据值,默认是0 (该值自己谨慎设定,尤其是分类图像中0作为一个类别时,应该赋予其它值,否则会造成统计混乱),这样得到的结果就是大家想要的不规则边界裁剪结果。   

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

 

如何在ERDAS中实现用矢量县界裁切遥感影像

1、  启动ERDAS软件

2、  打开一个viewer,并在其中打开要进行裁剪的遥感图像;

3、  在上面的窗口中同时打开县界矢量图,shape格式的;

4、  在矢量图上,用鼠标点中你要裁切的县,并点击“AOI”菜单下的“Tools…”子菜单,调出AOI工具栏;

5、  利用AOI工具条上的AOI转换工具(带右箭头的工具),将选中的县界转换为AOI,并选中该AOI;

6、  “Data Preparation”中点击“Subset Image…”,启动图像裁切窗体。接下来,选择好要裁切的遥感影像,点击窗体上的“AOI…”按钮,选中“Viewer”选项,点击“OK”按钮,这时 可以看到要输出的图像两角坐标较原图发生了相应的改变。然后给出裁切后输出图像的存放位置和文件名,这时点击“OK”按钮,从而实现最终的裁切。

7、  程序运行完后,点击“ok”按钮。同时,启动另外一个“Viewer”窗体,在该窗体中打开刚才的裁切结果文件,进行查看,这样整个的裁切过程就完成了。

 

 

参考文章

1. PrinceJJ003ENVI裁剪经验

 

没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。



  本文转自wenglabs博客园博客,原文链接:http://www.cnblogs.com/arxive/p/5087295.html,如需转载请自行联系原作者

网友评论

登录后评论
0/500
评论
橘子红了呐
+ 关注