ArcGIS ArcMap中修改栅格图的像元值.docx

上传人:b****1 文档编号:13210577 上传时间:2023-06-12 格式:DOCX 页数:11 大小:1.37MB
下载 相关 举报
ArcGIS ArcMap中修改栅格图的像元值.docx_第1页
第1页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第2页
第2页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第3页
第3页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第4页
第4页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第5页
第5页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第6页
第6页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第7页
第7页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第8页
第8页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第9页
第9页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第10页
第10页 / 共11页
ArcGIS ArcMap中修改栅格图的像元值.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

ArcGIS ArcMap中修改栅格图的像元值.docx

《ArcGIS ArcMap中修改栅格图的像元值.docx》由会员分享,可在线阅读,更多相关《ArcGIS ArcMap中修改栅格图的像元值.docx(11页珍藏版)》请在冰点文库上搜索。

ArcGIS ArcMap中修改栅格图的像元值.docx

ArcGISArcMap中修改栅格图的像元值

 在处理图象数据时,我们经常会碰到要求修改栅格图象象元值的问题,比如说DEM图的部分数据错误,我们要进行修改;再比如说栅格图象中有些与周围均匀色彩不一致的错误斑块要更正等等,那我们如何来处理这一类问题呢?

现我以一DEM栅格图(名字为eldodem)为例,现在我要修改它的部分象元值,总结出以下三种方法,大家可以参考一下。

第一种方法不大实用,但可借鉴,第二三种方法针对的条件不一致,大家可以在具体情况下进行选择。

 

 

一、直接运用转换,思路简单,易操作,但实用性

1、栅格——ascii文件——栅格这种方法是先将栅格图用工具  

 

直接转成ascii文件,然后在ascii文本文件中直接修改需要修改的象元的值,修改好后又用工具  

 

 

转换成栅格图。

这种方法可行,但是不实用,因为我们要搜索到指定的象元好像不是那么简单。

那么有没有别的比较好的方法呢?

二、在栅格计算器中操作,方法灵活,可操作性强,实用性强

准备工作

先要在option中设置保留的栅格范围,通常情况下默认的为相交后的部分,这里我们要保留整个DEM,所以要改为以下设置:

 

   

 

2、通过点的位置修改点象元值

2.1*问题一 、要是我想修改图象中的指定的行列的点的象元值(比如说把第100行,200列的点的值修改为0),那该如何操作呢?

这时候我们可以在栅格计算器中输入以下公式:

1.con(($$rowmap==99&$$colmap==199),0,[eldodem.img])

(栅格图的编号是从0行0列开始的)

  

  

2.2*问题二、那若是要修改指定行列范围内的栅格的象元值,比如说把第101行,251列到第401行,301列的部分的象元值改为0,又改如何进行呢?

1.con(($$rowmap<400&$$rowmap>100&$$colmap<300&$$colmap>250),0,[eldodem.img])

  结果如下

 

  

2.3*问题三、这些行和列是给定的,但是实际情况往往不是这样的,那若看到一些要修改的点,我如何通过以上的方法来修改它的属性值呢,这时要解决的首要问题是如何获知这个点的行列值,我们可以通过以下方法来解决:

(1)准备工作,设置spatialanalyst中的option,设置所需范围,象素以及捕捉

  

 

 

 

  这个确定后再次打开设定捕捉,使生成的栅格和原栅格象元重合

 

(2)在栅格计算器中分别做出对应的行列栅格图

行栅格图的生成:

在栅格计算器中输入以下公式——

1.r=$$rowmap

1.c=$$colmap

(在这里r---行,c------列)

 

(3)然后可以用identify工具, 对要修改的点的行列号进行查询

 

  

如图,所要修改的点位于第166行,129列,若要修改此点象元值为6,可以在栅格计算器中输入以下公式:

1.con(($$rowmap==165&$$colmap==128),6,[eldodem.img])

3、通过点面文件来修改象元值

*问题、现在我们有一幅栅格图,由于某种需要要修改其中的部分点单元格的象元值或者是修改部分斑块的象元值,这时候该如何实现呢?

本人觉得以下方法可行。

思路主要是

(1)先建一点shp或面shp图层,

(2)然后在点或面图层上数字化需要修改的点或面,(3)接着将点或面转换成栅格图,(4)在栅格计算器中进行替换运算。

现我仍以eldodem为例,假设其中有部分象元的值是错误的,要对其进行修改,(同时进行点面转换操作)

具体步骤如下:

(1)新建一点文件point_11,然后在上面数字化出需要修改的点。

新建一面文件eldodem,数字化出需要修改的面。

 

 

    

(2)将point_11和eldodem在featuretoraster工具中分别转换成栅格文件poin1和

和eldo1.

(3)在栅格计算器中进行运算

假设现在要把个别点象元值修改为0,我们在栅格计算器中填入以下的公式:

1.con(IsNull([poin1]),[eldodem.img],0)

 

  

然后点右下角的Evaluate运行

因为点象元值很小,放大可以看到我们修改后的微小的黑点

对于面状象元值的修改,相似的,输入以下公式:

1.con(IsNull([eldo1]),[eldodem.img],0)

 

 

然后运行,得到的图如下

  

(大家很可能得到的图与此图有异,要在属性的symbol里设置一下,使其为拉伸样式)

 

  可以看到,修改过的部分变为黑色。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2