基于ArcGIS的栅格图像平滑处理(转)
基于ArcGIS的栅格图像平滑处理
栅格数据获取的途径多种多样,造成了栅格数据质量的很大差异,一些质量较差的栅格数据存在大量“噪音”象元,即在表达同类型的地理要素时,出现个别像元值与周边像元不一致的情况,数据中噪音栅格象元的存在为数据的使用和分析带来了极大的不便,因此经常需要对栅格进行平滑的预处理操作。
在ArcGIS软件的空间分析工具箱中,提供了大量的栅格数据处理工具,其中对栅格数据进行平滑处理的工具在去除图像上的椒盐噪音的处理中有非常重要的作用
1. 主滤波工具
1.1 主滤波工具原理
主滤波工具的原理是根据像元邻域内的众数值来替换像元。主滤波需要满足两个条件才能发生替换。首先,相同值的邻近像元的数量必须多到可以成为众数值,或者至少一半的像元必须具有相同值。即,如果指定的是众数参数,则四分之三或八分之五的已连接像元必须具有相同的值;如果指定的是半数参数,则需要四分之二或八分之四的已连接像元具有相同的值。其次,那些像元必须与指定的滤波器的中心相邻(例如,四分之三的像元必须相同)。第二个条件与像元的空间连通性有关,目的是将像元的空间模式的破坏程度降到最低。如果不满足这些条件,将不会进行替换,像元的值也将保持不变。
在下图中,主滤波应用于输入栅格,使用最近的四个像元(四个正交的相邻像元)作为滤波器,并要求众数(四分之三的像元)值是相同的,才能更改相应像元的值。仅更改那些被三个或三个以上值相同的(正交)像元包围的像元。
输入栅格输出栅格
在下图中,应用了主滤波,使用最近的八个像元作为滤波器,并要求至少一半的值(八分之四的像元)相同,才能更改像元的值,此时的平滑效果更佳。
输入栅格输出栅格
1.2 主滤波工具应用
在“ArcToolbox工具箱——空间分析工具——栅格综合——众数滤波”路径下找到工具双击打开,工具界面如下图所示:
要使用的相邻要素数:
确定在滤波器核中使用的相邻像元数。
FOUR — 滤波器内核将是与当前像元直接相邻(正交)的四个像元。这是默认设置。
EIGHT — 过滤器内核将是距当前像元最近的八个相邻像元(3 × 3 窗口)。
替换阈值
在进行替换之前指定必须具有相同值的相邻(空间连接)像元数。
MAJORITY — 多数像元必须具有相同值并且相邻。四分之三或八分之五的连接像元必须具有相同值。
HALF — 半数像元必须具有相同值并且相邻。四分之二或八分之四的连接像元必须具有相同值。使用 HALF 选项可获得更平滑的效果。
为加强栅格处理效果,可反复调用滤波工具,并将上一次输出作为下一次输入,反复处理后,栅格图像的效果会有很大改善。
2. 焦点统计工具
2.1 焦点统计工具原理
焦点统计工具也可以实现对栅格数据进行平滑的效果,且效果优于主滤波工具。该工具用于计算输出栅格数据的邻域运算,各输出像元的值是其周围指定邻域内所有输入像元值的函数。对输入数据执行的函数可得出统计数据,例如最大值、平均值或者邻域内遇到的所有值的总和。
工具在执行过程中,算法将访问栅格中的每个像元,并且根据识别出的邻域范围计算出指定的统计数据。要计算统计数据的像元称为处理像元。处理像元的值以及所识别出的邻域中的所有像元值都将包含在邻域统计数据计算中。各邻域可以重叠,因此一个邻域中的像元也可以包含在其他处理像元的邻域中。
通过下图中值为 5 的处理像元可演示出焦点统计的邻域处理过程。指定一个 3 x 3 的矩形像元邻域形状。邻域像元值的总和 (3 + 2 + 3 + 4 + 2 + 1 + 4 = 19) 与处理像元的值 (5) 相加等于 24 (19 + 5 = 24)。因此将在输出栅格中与输入栅格中该处理像元位置相同的位置指定值 24。
输入栅格输出栅格
上图演示了如何对输入栅格中单个像元执行计算。而在下图中,将显示出所有输入像元的计算结果。以黄色高亮显示的是上例中所述处理像元及其邻域。
输入栅格输出栅格
2.2 焦点统计工具应用
在“ArcToolbox——空间分析——邻域分析——焦点统计分析”路径下找到工具并双击打开,工具界面如下图所示“
邻域分析
邻域的形状可以是环形(圆环)、圆形、矩形或楔形。通过使用核文件,也可定义自定义邻域形状,以及在计算统计数据之前将不同的权重分配给领域中的各个特定像元。
统计类型
可用的焦点统计统计数据包括众数、最大值、平均值、中值、最小值、少数、范围、标准差和总和。默认统计类型为平均值。
处理结果对比图:
原始栅格
主滤波工具处理后的栅格
焦点统计工具处理后的栅格
(作者:赵立超)
来自:http://www.higis.cn/Tech/tech/tId/33
基于ArcGIS的栅格图像平滑处理(转)的更多相关文章
- 基于ArcGIS Viewer for Flex开发的一款跨平台的应用程序
特点: 1.基于ArcGIS Viewer for Flex开发的一款跨平台的应用程序: -(IBAction) showTOC:(id)sender { if (_tocViewController ...
- 基于ArcGIS JS API的在线专题地图实现
0 引言 专题地图是突出而深入的表示一种或几种要素或现象,即按照地图主题的要求,集中表示与主题有关内容的地图.专题地图的专题要素多种多样,分类方法也多种多样,根据专题地图表现数据的特点可分为定 ...
- 基于 ArcGIS Silverlight API开发的WebGIS应用程序的部署
部署流程概述 在微软的iis服务器上部署基于ArcGIS Silverlight API的应用程序,主要包括以下几个步骤: 1)(可选)部署GIS服务 如果需要将GIS服务也部署在Web服务器上,则 ...
- 点聚合功能---基于ARCGIS RUNTIME SDK FOR ANDROID
一直不更新博客的原因,如果一定要找一个,那就是忙,或者说懒癌犯了. 基于ArcGIS RunTime SDK for Android的点聚合功能,本来是我之前做过的一个系统里面的一个小部分,今天抽出一 ...
- 基于ArcGIS for Server的服务部署分析 分类: ArcGIS for server 云计算 2015-07-26 21:28 11人阅读 评论(0) 收藏
谨以此纪念去年在学海争锋上的演讲. ---------------------------------------------------- 基于ArcGIS for Server的服务部署分析 -- ...
- 基于ArcGIS的CAD数据向GIS数据转换方法(转)
基于ArcGIS的CAD数据向GIS数据转换方法 1 CAD数据与ArcGIS数据介绍 地图数据来源多种多样,大多数使用的是计算机辅助设计软件(CAD)制作的数据,CAD软件制图自动化程度高,操作简单 ...
- 基于GDAL的栅格图像空间插值预处理
转自 基于GDAL的栅格图像空间插值预处理——C语言版 基于GDAL的栅格图像预处理 前言 栅格数据和矢量数据构成空间数据的主要来源,怎样以开源方式读取并处理这些空间数据?目前有多种开源支持包,这里只 ...
- (转) 基于Arcgis for Js的web GIS数据在线采集简介
http://blog.csdn.net/gisshixisheng/article/details/44310765 在前一篇博文“Arcgis for js之WKT和geometry转换”中实现了 ...
- 基于ArcGIS Flex API实现动态标绘(1.0)
标绘作为一种数据展示形式,在多个行业都有需求. 基于ArcGIS Flex API(3.6)实现标绘API,当前版本号1.0 alpha,支持经常使用几种标绘符号,包含: 圆弧.曲线.圆形.椭圆.弓形 ...
随机推荐
- android之APN
APN全称是Access Point Name,中文即接入点,是通过手机上网时必须配置的一个参数,它决定了手机通过哪种接入方式来访问网络. android系统把所有的APN都保存在数据库中,数据库绝对 ...
- 【JMeter】JMeter在linux下运行
之前在用JMeter做性能测试时基本都用自己的笔记本电脑. 考虑到网络传输和占用系统资源情况时进行了以下分析: 1 在笔记本上,开始-cmd "ping 服务器",得到传输时间.在 ...
- 查表法计算CRC16校验值
CRC16是单片机程序中常用的一种校验算法.依据所采用多项式的不同,得到的结果也不相同.常用的多项式有CRC-16/IBM和CRC-16/CCITT等.本文代码采用的多项式为CRC-16/IBM: X ...
- C程序内存分配
在多任务操作系统中的每一个进程都运行在一个属于它自己的内存沙盘中.这个沙盘就是虚拟地址空间(virtual address space),在32位模式下它总是一个4GB的内存地址块.这些虚拟地址通过页 ...
- 【转载】高性能I/O设计模式Reactor和Proactor
转载自:http://blog.csdn.net/roger_77/article/details/1555170 昨天购买了<程序员>杂志 2007.4期,第一时间去翻阅了一遍,其中有一 ...
- 【poj2478】Farey Sequence
题意: 求前n项的欧拉函数之和 题解: 预处理出所有欧拉函数 赤裸裸的模版题- - 没什么好说的 代码: #include <cstdio> typedef long long ll; ; ...
- 关于 Java Collections API 您不知道的 5 件事,第 1 部分
定制和扩展 Java Collections Java™ Collections API 远不止是数组的替代品,虽然一开始这样用也不错.Ted Neward 提供了关于用 Collections 做更 ...
- WebApi Json格式化
两种转换方式: 1.全局设定,针对GlobalConfiguration.Configuration.Formatters.JsonFormatter做设定,位于Global.asax 如: var ...
- 命令删除visualstudio.com云端项目(TFS)
1.运行命令行 2.tfsdeleteproject /collection:https://域名.visualstudio.com/DefaultCollection “项目名称”
- 剑指OFFER之从上往下打印二叉树(九度OJ1523)
题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印. 输入: 输入可能包含多个测试样例,输入以EOF结束.对于每个测试案例,输入的第一行一个整数n(1<=n<=1000, : ...