多波段栅格数据的显示

我上面说了这么多,可能有的人会觉得平时也根本用不上。自然,说起影像数据,大家接触到对多的就是最最常见的航片或卫片。对于这种栅格数据呢,大多数的场景下,都只需实现一个效果,就是最接近真实视觉效果,跟到实际的地方亲眼所见一样。

在具体说这样的渲染在ArcGIS中怎么实现的,有什么地方可以调优之前,我们还需要回顾一下前文提到的一个概念,波段。我们有说过单波段的影像一般是灰度图,而全彩色的都是多波段的影像。那么为什么彩色的影像都是有3个或者更多波段组成,还有多个灰度图是如何渲染成彩色的呢?

同彩色照片的打印,彩色电视的成像原理一样,在ArcGIS中也是通过RGB这三基色来对栅格进行渲染的。具体点说,就是将三个波段的栅格分别通过红Red绿Green蓝Blue三个通道加载,彩色的栅格就被渲染出来了。也可以这样简单理解,通过红色通道加载会将灰度图变成红色,绿色通道加载后变成绿色等,而他们混合起来的时候,就像小时候玩过的调色板,按不同比例混合的三种颜色会变成其它各种各样的颜色,如下图所示。这就是为什么我们在ArcCatalog中查看彩色影像时,可以在属性中看到Number of Bands都是大于或者等于3的。在ArcMap中使用Identify 按钮,在彩色的栅格上点击,也会返回三个值,例如Red 168,Green 132,Blue 113。

为什么我们通过这种方式来显示彩色的栅格的时候,能够得到与我们在真实世界里看到的差不多的颜色呢?

简单讲一个遥感的小常识。在我们眼中看到的花红柳绿,碧海白沙,这些事物颜色上的区别全部都是由于这些物体对太阳光中不同波段的光的反射与吸收的差异形成的。通过相机或者遥感传感器将物体对不同光的反射值分别记录下来,就有了不同的波段数据。比如我们得到的Landsat卫星遥感影像一景包含有7个栅格,每个栅格分别对应同一位置上的物体对该波段光谱的反射值, 包括蓝,绿,红,近红外,中红外,热红外和微米全色。之所以记录这么多波段的反射值,是为了在数据分析中起到重要的作用的。关于传感器的内容和一些遥感方向的应用在以后的扩展性章节中还会再讲到。

现在回到栅格渲染这个话题中。那么我们如何确定这个真实世界的色彩被还原呢?

首先,依照上文的小常识,可以肯定的是,通过传感器得到的RGB的值必须通过对应的RGB的通道加载,这样组合渲染出来才能还原出我们在真实世界中人眼所观察到的景象。对于巨大多数航拍回来的影像,都是已经处理完成的,在ArcMap中加载就可以正常显示,不需要单独设置了。可是对于卫星影像来说,由于其一般包含4个或更多的波段,我们在加载的时候就需要注意通过元数据,或者传感器信息来确认加载的顺序。如果第一次加载错了,还可以通过直接双击图层列表中的RGB的符号来进行设置,或者在Symbology中的下来菜单中重新定义顺序。

还有一种情况是这样,我们在拿到数据方提供的卫星影像时,是7个分开存储的单波段的影像,在ArcMap中全部加载进来也还是灰色的。如何将多个单独的灰色影像以真彩色的方式渲染出来呢?

首先要注意的一点是,与专业的遥感软件不同,ArcGIS中不提供直接在一个栅格上叠加其他栅格来进行渲染,也就是说不能简单在Symbology中设置一下来实现RGB的渲染,只能通过事先将不同波段的影像数据组合在一起,然后在进行加载。

另外,由于不能在指定的波段上选择Load Data,所以也不能通过导入数据库的方式将不同波段的栅格组合在一起。到10.1版本为止,只有两种方式可以将多个单波段的数据进行RGB的渲染,这两种方式都是通过同一个原理来实现的,见下图。一种是通过工具Composite Bands,在Data Management Tools的工具箱中可以找到。另外一种则是在Image Analysis Window中通过栅格函数(Function)来实现。关于影像处理窗口的内容我们将在下面的下面的章节中展开了说,这里就先不罗嗦了。

明天晚些时候将会更新拉伸的内容, 阅读后可以有效的解决图像太暗或或者是黑色的问题。敬请期待~~\(≧▽≦)/~

栅格那点儿事(四B)---多波段栅格数据的显示的更多相关文章

  1. 栅格那点儿事(四E)

    栅格金字塔   如果上面的部分都已经看过了,那么如何在ArcMap中更好的渲染一个栅格数据你已经知道了.可仅展示好一个栅格数据是不够的,我们还需要知道如何快速的展示一个栅格数据. 讲金字塔之前,先解释 ...

  2. 栅格那点儿事(四D)

    统计值与空值 在上一篇的内容里反复提到了一个统计值.那这个统计值是怎么来的,具体是干嘛用的呢? 统计值主要就是用于栅格数据的显示和重分类,顾名思义就是一个波段中所有像元值的一个统计信息,最大值,最小值 ...

  3. 栅格那点儿事(四C)

    栅格渲染之拉伸(Stretch) 现在我们知道如何在ArcGIS中渲染栅格数据了,但是还有一个常常会碰到的问题,尤其是在使用老版本的ArcGIS的时候,为啥我加了一个栅格数据进来,啥也看不见,是黑色的 ...

  4. 栅格那点儿事(四A)---栅格的显示与渲染

    栅格的显示与渲染 通过前两章的学习,应该对栅格这个东西不那么陌生了.在这一个部分,我们来看看如何展示出栅格数据最美丽的地方,在ArcGIS中栅格的显示与渲染.在进入细节之前,先来看看在ArcGIS中都 ...

  5. 栅格那点儿事(二)---细看Raster属性

    细看Raster属性 如果你已经看完了上一章,你已经了解了栅格数据是由一个个像元(Cell)按照行列方式构成的,每一个像元都有自己的像元值,并且这些像元值根据栅格类型的不同,可以代表反射值,或高程值, ...

  6. 栅格那点儿事(一)---Raster是个啥子东西

    Raster是个啥子东西 现如今,不仅是在遥感应用中能看到花花绿绿的影像了,在GIS应用中也能随处看到她们的身影.在各种在线地图中,卫星影像作为底图与矢量的道路层叠加:高程DEM作为高程来源实现地形的 ...

  7. linux查看目录的四种方法(ls只显示目录)【转】

    1.ls -d * amosli@amosli-pc:~$ ls -d * %APPDATA% develop many sorted.txt workspace bank Documents Mus ...

  8. ArcGIS 栅格数据教程

    ArcGIS 栅格数据教程 全部8个教程,带详细操作步骤和原始数据. 技术咨询:谢老师,135_4855_4328,xiexiaokui#139.com ArcGIS 10.5 此教程中的练习将使用样 ...

  9. 聊聊GIS数据的四个分层与GIS服务

    本篇不讨论矢量栅格数据的结构,也不讨论矢量与栅格的区别(即设定读者有这方面的基础). 版权声明:原创.博客园/B站/小专栏/知乎/CSDN @秋意正寒 转载请标注原地址并声明转载: https://w ...

随机推荐

  1. 5分钟构建无服务图片鉴黄web应用(基于FunctionGraph)

    函数工作流(FunctionGraph,FGS)是一项基于事件驱动的函数托管计算服务,托管函数具备以毫秒级弹性伸缩.免运维.高可靠的方式运行.即使在一些复杂的web应用场景中,函数工作流也能发挥出令人 ...

  2. Julia体验 语言基础

    以前听说过Julia,不过那时候官网还处于时不时宕机状态,最近Julia发布了1.0 released版本到处都是它的资讯,官网良心自带简体中文,趁着热度我也来试试,顺便聊记一二. 关于Julia J ...

  3. git 日常使用从入门到真香

    目录 git 日常使用从入门到真香 一.Git简介 二.Git常用命令 三.git操作流程 四.报错处理 git 日常使用从入门到真香 一.Git简介 Git是一个开源的分布式版本控制系统,可以有效. ...

  4. django终端打印Sql语句

    LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console':{ 'level':'DEBU ...

  5. 隐藏win10中“此电脑”里的6个子文件夹

    删除点击此电脑后6个子文件夹 运行regedit: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Fold ...

  6. jinkens 'python' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    jinkens执行构建时报错 解决方法,就是指定路径.python的安装目录和被执行文件的的目录

  7. python3 生成器笔记

    #生成器def MyDemo(M): for i in range(M): yield i**2for item in MyDemo(9): print(item) # #生成器import sysa ...

  8. 3.数据校验和SpringEL

    1.数据验证 数据验证不应该被限定在web层去处理,他应该在任何需要做数据验证的地方做验证: 基于以上考虑,Spring设计了一个既方便又可以在所有层使用的Validator接口 Spring提供了V ...

  9. spring @Transactional事务失效

    不开事务几种情形 ① @Transactional写在了private方法上 org.springframework.transaction.interceptor.AbstractFallbackT ...

  10. python : No such file or directory

    windows上写的python脚本,在linux上执行时报: No such file or directory 解决方法一# sed -i 's#\r##' mysqlchk.py 解决方法二脚本 ...