多波段栅格数据的显示

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

在具体说这样的渲染在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. tftp简单文件传输协议搭建

    TFTP 简单文件传输协议     安装     sudo apt-get install tftp  tftpd openbsd-inetd     需要tftp tftpd openbsd-ine ...

  2. php实现页面跳转的几种方式

    PHP中实现页面跳转有一下几种方式,看了几个人写的不是很条理,自己整理一下 在PHP脚本代码中实现 <?php header("location:url地址") ?> ...

  3. 洛谷 P2982 [USACO10FEB]慢下来Slowing down

    题目描述 Every day each of Farmer John's N (1 <= N <= 100,000) cows conveniently numbered 1..N mov ...

  4. Canvas 动态小球重叠效果

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  5. P5020 货币系统 (NOIP2018)

    传送门 BFS解法 显然如果一个面额A可以被其他面额表示出来 那么这个面额A就没用了 且如果A不能被其他面额表示,那么A一定有用(A本身的值只有自己可以表示) 发现面额最大不超过 25000 那么设 ...

  6. Codeforces Round #482 (Div. 2) C 、 Kuro and Walking Route(dfs)979C

    题目链接:http://codeforces.com/contest/979/problem/C 大致题意 给出n个点,有n-1个边将他们链接.给出x,y,当某一路径中出现x....y时,此路不通.路 ...

  7. 74th LeetCode Weekly Contest Number of Subarrays with Bounded Maximum

    We are given an array A of positive integers, and two positive integers L and R (L <= R). Return ...

  8. python3 + pycharm+requests+HTMLTestRunner生成不了测试报告html

    生成不了测试文件,是运行的方式不对.因为在运行的时候,pycharm默认使用unit-test运行,所以没有生成测试报告.至于为什么会这样子,我就不清楚了,不过想了解更多的朋友,可以百度一下. 解决的 ...

  9. 使用Spring和JQuery实现视频文件的上传和播放

    Spring MVC可以很方便用户进行WEB应用的开发,实现Model.View和Controller的分离,再结合Spring boot可以很方便.轻量级部署WEB应用,这里为大家介绍如何使用Spr ...

  10. java中所有开源注解收集

    @resource: resource全名为@Resource ,用来激活一个命名资源(namedresource)的依赖注入,在JavaEE应用程序中,该注解被典型地转换为绑定于JNDI conte ...