高光谱成像(一)高光谱图像是什么?
摘要:新分类关于高光谱成像,是近期的主要长篇内容。 1. 什么是高光谱图像? 1.1 RGB 图像 在日常生活以及之前的 CV 相关内容里,我们演示使用的图像数据都是 RGB 图像,在之前的图像处理基础中我们也介绍过这一点。 再简单复述一下要点:
新分类关于高光谱成像,是近期的主要长篇内容。
1. 什么是高光谱图像?
1.1 RGB 图像
在日常生活以及之前的 CV 相关内容里,我们演示使用的图像数据都是 RGB 图像,在之前的图像处理基础中我们也介绍过这一点。
再简单复述一下要点:大量出现在我们日常生活中的彩色图像基本都是 RGB 图像,这类图像的每个像素可以看作堆叠在一起的三个通道,分别代表图像在红、绿、蓝三个维度上的亮度,三者组合才形成了我们肉眼中的彩色图像。
在专业领域里 RGB 图像也有直观的体现,比如在网页设计或图像编辑软件中常见的“取色器”。
当我们使用取色器点击某一个像素时,软件通常会给出一个类似 #FF5733 这样的颜色代码。这个看似复杂的字符串,本质上只是 三通道亮度的十六进制表示。
具体来说:
前两位 FF 表示红色通道的强度。
中间两位 57 表示绿色通道的强度。
后两位 33 表示蓝色通道的强度。
因此,RGB 图像的每一个像素都可以看作一个三维向量:
\[(R,G,B)
\]
再扩展到整幅图像:在计算机的视角里,一幅 RGB 图像其实就是一个三维数组。
到这里,便不难理解在深度学习中对 RGB 图像的学习逻辑,以最常见的图像分类为例:模型学习图像分类,实际上就是在红、绿、蓝三个维度上学习空间结构与颜色分布的规律,并通过反向传播迭代参数进行拟合。
于是,一个想法便油然而生:如果我们能使用更多维度来表示图像,是不是就能丰富图像的信息,帮助相关应用呢?
这便涉及到 RGB 在光学中的实质:压缩后的可见光波段。
1.2 高光谱图像(hyperspectral image)
在物理上,我们知道:光本质上是一种电磁波,不同颜色对应不同的波长。比如红光波长较长,而蓝光波长较短等。
我们人眼只能感知可见光的一小段波长范围(大约 400–700 nm),具体如图:
而 RGB 图像之所以只有 3 个通道,本质上是因为相机把连续的可见光波段压缩成了 3 个宽波段:
一个覆盖红光区域。
一个覆盖绿光区域。
一个覆盖蓝光区域。
简单展开一下这部分的原理:相机中的传感器本质上是由硅材料制成的光电器件。它的作用是“把光强转换为计算机能理解的亮度数值。”
传感器对可见光范围内的大多数波长都具有响应能力,但光是混合的,如果不做处理,传感器只能记录“总光强”,而无法区分颜色。
于是,为了实现颜色成像,我们在传感器上方人为设计覆盖了一层滤色阵列:这些滤色片分别只允许特定波长范围的光通过,例如红、绿、蓝三个波段。红色滤色片只允许较长波长通过、绿色滤色片允许中间波段通过,蓝色滤色片允许较短波长通过。
每个像素在滤色片的作用下,只记录某一段波长范围内的光强。经过插值重建后,最终形成 RGB 三通道图像。
这种三通道设计并非随机,而是为了贴近我们的人眼效果。
涉及到很多生物物理知识,我们简单总结:RGB 图像之所以流行,是因为我们的人眼结构选择了这 3 个宽波段,而相机为了实现人眼看到的成像效果,才有了相应的设计。
到这里就会发现:光谱中实际上藏着更多可分析的信息,而 RGB 只是为了配合我们的视觉效果。
而如果我们不局限于三宽波段,而是采集几十甚至上百个窄波段,记录连续光谱信息,那么得到的图像就是高光谱图像。
2. 高光谱图像特点
2.1 高光谱图像的视觉效果
如果说 RGB 图像是为了配合我们的视觉效果而忽视了部分光谱信息,那么高光谱图像就是为了更完整地采集光谱信息,而不再过多关注图像的视觉表现形式。
举个例子,假定我们现在采集了一张拥有 100 个窄波段光谱信息的高光谱图像。
从数据结构上看,每个像素就不再是一个三维向量 (R, G, B),而是一个 100 维向量:
\[(I_1, I_2, I_3, \dots, I_{100})
\]
其中每一个 \(I_k\) 表示光在某一个窄波段上的反射强度。
这时,如果我们把 100 个波段的光强简单相加:
\[I = \sum_{k=1}^{100} I_k
\]
那么我们实际上做的事情是把所有波长的信息压缩成一个“总强度”。 只反映光的能量大小,不再区分波长差异。
因此,直接叠加光谱维度,得到的必然是一幅灰度图像。
就像这样:
(图像来源)
高光谱图像不能直接显示成符合我们视觉效果的色彩分布,其根本原因是因为我们的视觉系统本身是三维的,而高光谱数据是高维的。
因此,为了可视化能够观察高光谱图像,我们有这样几种方法:
单波段显示:选择某一个波段,显示为灰度图,分析某个特定波长下的反射特征。
真彩色合成:选择接近红、绿、蓝波段的三个窄波段,组合成 RGB 图像,这种方式可以得到接近人眼观感的效果。
