ArcMap、ENVI中矢量裁剪栅格图象
ArcMAP用矢量图层来作影像裁剪
(1) 是否需要裁剪栅格图象区域通过一个面状的shapefile表达出来?如果可以,那么就很简单了。
在ArcMap中,调用空间分析扩展模块,将你感兴趣区的shapefile多边形图层设置为掩膜,然后在栅格计算器中重新计算一下你的图象,它就会沿掩膜裁出。设置掩膜:空间分析工具条的下拉菜单>option里面设置mask图层,范围,cell尺寸,用栅格计算器计算:图层名.shape*1,然后evaluation,OK!
或者:ArcToolbox-->Spatail Analyst Tools-->Extraction (2) 用任意多边形剪切栅格数据(矢量数据转换为栅格数据)
2.1在ArcCatlog下新建一个要素类(要素类型为:多边形),命名为:ClipPoly.shp 2.2在ArcMap中,加载栅格数据:例如 xXx.img、和ClipPoly.shp
2.3打开 编辑器 工具栏,开始编辑 ClipPoly ,根据要剪切的区域,绘制一个任意形状的多边形。打开属性表,修改多边形的字段“ID”的值为1,保存修改,停止编辑。 2.4打开 空间分析 工具栏 执行命令:<空间分析>-<转换>—<要素到栅格> 指定栅格大小:查询要剪切的栅格图层kunming的栅格大小,这里假设指定为1 指定输出栅格的名称为路径
2.5执行命令: <空间分析>-<栅格计算器>
2.6构造表达式:[xXx]*[polyClip4-polyclip4] ,执行 栅格图层:xXx和 用以剪切的栅格 polyClip4 之间的 相乘运算
(3)如果不要求一定要多边形裁剪的话,建议使用clip。
data management toolbox---clip。这个工具可以保持原有像元信息,但是这里
arcmap只提供了矩形切割。这个约束应该不会影响一般的应用,否则的话建议使用图像处理软件中的mask裁剪。
另外上面大家说得mask什么的方法,只能出来灰度图,可能原先是设计成处理grid的数据吧
ENVI用矢量图层来作影像裁剪 1、打开要裁剪栅格数据;
2、打开矢量数据,注意矢量图的投影与栅格要一致才可以,在加载栅格的窗口中加载;
3、将矢量数据转为ROI: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 中选择需要裁减的栅格数据。在Slect Input ROIs 中选择建立的AOI,注意Mask pixels outside of ROI ?这个选项,如果选择 No ,则是以包括ROI在内的最小矩形范围裁剪,得到的结果数据也是矩形。如果选择Yes,则需要在 Mask Background Value 后给出 ROI 范围外的数据值,默认是0 (该值自己随意设定)。选择保存路径,OK。