首先,我们贴上一幅遥感3通道(3个波段)的图像,来看其在计算机中是如何表示的。然后再介绍一下多波段数据的几种存储方式。
用matlab的筒子一定很清楚这种表示方法,也就是一个波段对应一个矩阵。
多波段数据的存储方式
多波段数据的存储方式主要有3种:
1. 逐波段存储BSQ
2. 逐行存储BIL
3. 逐像元存储BIP
逐波段存储BSQ
逐波段存储就是将一个波段的数据存储在一起,这样的话对于要一次性读取一个波段的操作较好,可是要是每次操作都涉及到几个波段的数据,这样的存储方法就对内存的占用比较大。也就是说逐波段存储对处理空间信息有利。示例图如下:
逐像元存储BIP
逐像元存储将一个像元的数据先存储起来,然后再存储其他像元的数据,也就是说同一个像元的光谱信息被存在了一个连续的地址,这样对于操作像元光谱信息频繁的操作来说十分方便快捷。
逐行存储BIL
逐行存储是一种介于逐波段存储和逐像元存储的方法,它将各通道的每一行存储在一起,具体来说,就是存好了1通道的第1行,接着2通道的第1行,然后3通道的第1行,……,当第1行都存储完毕就去存储第2行的数据。
总结方法的优劣
对于上面的方法做一个总结:
逐波段存储(BSQ)有利于图像空间分布信息的显示与处理。
逐像元存储(BIP)有利于图像元光谱信息的显示与处理。
逐行存储(BIL)兼顾了图像空间分布信息与像元光谱信息的显示与处理。