1、基于深度学习与高光谱数据的人造目标检测# 摘要高光谱遥感,基于其内在能力来捕捉描述材料的光谱信息,对于目标检测与识别有独特的能力。在这篇文章中,我们使用深度学习分类框架与高光谱数据处理了人造目标检测问题。通过对卷积神经网络的有效探索,我们编码像素的光谱信息和空间信息,使用多层感知机完成分类任务。在广泛使用的高光谱数据中获得的实验结果和性能定量验证,证明了提出的方法对于正确率和人造目标自动检测。的良好性能。# 简介自动提取人造目标,比如建筑、建筑群或者马路,是一些政府活动的重要支持,比如城市计划、地籍管理和自然保护区域监视, 环境监测和多种 GIS 应用比如地图绘制和更新。因此,从高光谱遥感数据
2、中进行人造目标的提取成为遥感领域、摄影测量法与计算机视觉的一个重要话题,至今已活跃了至少 20 年。今天,人造目标检测依旧是一个活跃的研究领域,研究热点从目标细节表示到使用多传感器的数据和通用的包含空间信息的正确率算法设计。最近国际摄影测量与遥感学会的研究成果显示,在城市目标检测与 3D 建筑重构方面的 benchmark 显示,在 2D 方面,可以有效地识别与分离建筑与其他地形目标,然而,这里有个成果改进了对于小目标结构的检测与建筑物边界的精确描绘。许多研究机构努力考虑在他们的人造目标检测架构上的分类方法, ,检测是主要基于卫星多光谱数据集上。对于多时间数据高效计算是一个前提。然而,由于最近
3、的光子学、光学和纳米技术高光谱卫星和空气数据变得越来越可用和便宜,同时,新的目标检测算法被引入和验证。通常,对于遥感应用和高光谱数据分类,深度学习算法比起其他效果好的方法有更低的错误率。与遵循传统的范例的模式识别的方法,包括从原始输入数据构造复杂的人工制作的特性相比,深度学习模型是一类可以从低层特征构建高层特征的信息处理模型,可以自动处理特征重构,更多的是,人类大脑可以很好的完成目标检测任务,因为人类可以从视网膜到大脑皮层完成多重信息处理。与此相似,具有多层信息处理结构的机器学习结构可以组织更加抽象和泛化的特征,因此被认为比起传统的浅层结构,具有获得高的分类正确率的能力。比如卷积神经网络,层叠
4、自动编码机,深度信念网络,以及其他包括深度模型的例子。我们使用高光谱数据,通过深度学习分类架构解决人造目标检测问题,尤其,通过开发卷积神经网络(CNN) ,我们同时对光谱信息和空间信息进行编码,通过 MLP,玩成分类任务。在广泛使用的高光谱数据中获得的实验结果和性能定量验证,证明了提出的方法对于正确率和自动人造目标检测的巨大潜能。其余文章将从如下几个方面组织,章节 2 通过描述深度学习架构的基础知识和它在高光谱图像数据上的分类简述了我们的方法。章节 3 描述了我们提出的系统的结构,章节 4 是实验结果和对照,章节 5 完成了工作总结# 卷积神经网络基础# 卷积神经网络基础一个卷积神经网络包含了
5、一些卷积层和子采样层,输入卷积层的数据是 3D数据(hwc ), h, w, c 表示输入的高度,宽度和通道数。卷积层包含 C 个维度为(m*m*q)的可训练滤波器,m 小于 h 和 w, q 通常等于 c。每个滤波器是一个小的区块,但是它在全通道上扩展了输入,生成了 2D 特征图。直观地,当看到在它的输入中一些空间位置出现了特定的特征类型时。网络的滤波器会被激活。所有的滤波器激活的特征图在深度方向堆叠之后,构成最终的输出。输出是 3D 数据(h m + 1 w m + 1 C) ,卷积层的输入边界不予考虑。卷积层最终的输出卷积层最终的输出与非线性函数(比如 Sigmoid,TanH 等)结合
6、,再与偏置项求和,实现了输入数据的非线性变换。卷积层输出之后接子采样层,每个特征图在 kk 区域内使用最大值池化算法。深度学习结构可能包含很多卷积层和子采样层,最后一个子采样层通常连接到 MLP,解决分类或回归任务。整个深度学习结构使用经典的 BP 算法进行训练。# 针对高光谱数据的卷积神经网络一幅高光谱图像被表示为 3 维张量,维度为(h*w*c),h, w, c 表示输入的高度,宽度和通道数。和之前提到的一样,卷积神经网络生成全局图像特征。然而,人造目标检测可以视作基于像素的分类问题。为了能够使用 CNN 做人造目标检测,我们必须分解捕获的高光谱图像为区块,每个区块包含了特定像素的光谱信息
7、和空间信息。更特殊地,为了分类位于图像平面坐标 的像素 ,和成功融合( x, y) p(x,y)光谱信息和空间信息,我们使用具有相同中心坐标 的方形区域。我们( ss)标记 是 处坐标的类别标签, 是以 为中心的区块。然lx,y (x,y) tx,y px,y后我们可以组织数据集 。D=(tx,y,lx,y),x=1,2,.,w;y=1,2,.,h区块 是一个 3D 数据,维度为 ,包含了坐标为 的像素的光tx,y (ssc) (x,y)谱信息和空间信息。更多地,张量 被划分为 c 个 ss 的矩阵,作为 CNN 的输入,在tx,y层次上构建表征像素 的包含光谱信息和空间信息的高层次特征。这些
8、特px,y征会被送进 MLP,完成分类任务。对于这一点,不得不提的是,在训练深度学习结构之后,完成的是对于区块分类而不是对于像素分类。我们假设在图像平面中中心坐标为 的区块的标签一定与相同位置的像素标签相同。尽管这(x,y)是一个强假设,但是对于这个即将到来的特殊的问题,对于广阔的大多数的像素,这是有效的。# 系统结构这一节将描述系统结构,首先介绍我们提出的把输入数据降维的方法,然后介绍 CNN 和 MLP 的结构# 对原始输入数据进行降维操作CNN 可以自动提取高层次特征。结构特征是 2D 网络输入和可训练滤波器的卷积结果,占据了整个训练过程。对比具有三个色彩通道的 RGB 图像,几百个通道
9、(网络输入)遍及高光谱图像的整个光谱维度,可能会使训练和预测的过程中占据的计算开销变得不可接受。然而,材料的光谱信息非常特殊。描述了相同材料的像素应当具有非常相似的谱信息。甚至,对于像素的光谱信息,通过一个简单的统计学分析,我们发现两件事,首先,描述相同材料的像素的光谱信息,方差非常小。其次,描述不同材料的像素,他们在相同波段的响应或在不同波段的响应是非常不同的。这两个观察提示我们高光谱图像的光谱维度包含很多冗余信息,因此,我们可以使用降维操作来降低输入数据的维度,来加速训练和预测的过程。对于降维操作,Randomized Principal Component Analysis(R-PCA)
10、被引入,作用于光谱维,用来压缩图像信息。PCA 把数据降维到低维空间,去掉比较小的特征值对应的数据,保留最大的方差信息。R-PCA 限制计算,做精度估计,执行数据变换。因此,比 PCA 的计算要高效的多,更加适合大尺度的数据集,比如高光谱数据。必须要说的是,这一步计算了光谱信息,但是 R-PCA 是作用于整个光谱维度的,空间信息完整地得到了保留。为了保留至少 99.9%的最初信息,在使用了 R-PCA 之后的主成分数量,视具体的数据集而定。这非常重要,因为降维操作要求指定最大允许的信息损失,主成分的数量并不是一个固定不变的数字。在整个实验过程中,在广泛使用的高光谱数据集上,99%的信息被保留,
11、使用前面的 RPCA 算法,保留 10-20 主成分,执行 20 次# 检测结构在降维之后,每个区块都是一个 3D 张量 。参数 等于主成( sscr) cr分的数量,保留了至少 99.9%的初始信息。同时,参数 决定了在分类任务中会被计算的临近像素的数量。利用一个像素的临近像素来表示它的空间信息。在整个实验过程中,我们为了考虑像素最近的 24 个像素,设置参数 ,。通过增加 s 参数的值,被计算的临近像素的数量也会增加,因此计算s=5开销也会增加。同时,设定参数值 s 大于 5,在所有的实验中,分类正确率都没有提升。相反的是,当 s 增加至 13 时,分类正确率反而降低了。事实验证了我们之前
12、的假设,我们假设在图像平面中心坐标为 的区块的标签一定与相(x,y)同位置的像素标签相同,当 s 比较大时这个假设不再成立。在估计了 和 的值之后,我们就可以开始设计 CNN 结构了。第一层是s cr一个卷积层,卷积核数量为 个可训练滤波器,维度为 33。这一C1= 3*cr层输出为 C1 个 33 矩阵(在卷积过程中我们不考虑边界块) 。不同于传统的CNN,我们在卷积层之后不使用子采样层,因为我们不想引入任何变换及尺度不变性。因此第一层卷积层之后跟随第二层卷积层 个可训练滤波C2=3 C1器,滤波器是 33 矩阵。第二个卷积层输出一个具有 个元素的向量,作为 MLP 分类器的输入。C2MLP
13、 隐藏层单元的数量比输入维度要小。特别地,我们设置隐藏层单元数量为 。 为了训练深度网络结构,我们使用标准的 BP 算法进行训练。为了学6cr习优化模型参数,最小化负对数似然函数,对于数据集在模型参数之下,通过MLP 的权值和滤波器的权值。完整的系统结构见图 1。# 实验结果和验证这一节我们讲述实验结构。尤其,我们展示数据描述,与其他技术做对比,预测该方法的功能。# 验证该方法的数据集在我们的学到系中,我们试验和验证了广为认知的方法,在 ROSIS 高光谱数据集上。特别的是,我们使用了 Pavia Centre 和 Pavia University 数据集,波段数分别是 102 和 103。P
14、avia Centre 是一个 10961096 的图像,Pavia University 是一个 610610 的图像。两张图像中的一些样本没有包含任何信息,在分析之前被丢弃掉。地理分辨率为 1.3M。地面实况中白色的像素是没有注释的。两个数据集和他们的地面实况和描述具体材料的标签在图 2 中描述。这篇文章中,我们关注人造目标的探测。因此,我们把 描述人造目标的像素与其他的像素聚集在一起。不带注释的像素在分类问题中不予考虑。对于 Pavia University 数据集,描述人造目标的像素被标记为 *asphalt*,*metal sheets*,*bricks*,*bitumen*,对于
15、Pavia Centre 数据集,描述人造目标的像素被标记为 *asphalt*,*tiles*,*bricks*,*bitumen*,被标记为*shadows*的像素在分类任务中不予考虑,因为它们是否是人造目标尚存疑问。我们使用监督训练完成描述人造和非人造目标的像素的分类。特别地,我们分割上述的数据集中的有标记的部分为 3 部分,训练、验证和测试集。在整个实验过程中,为了验证这个系统的分类正确率,我们测试了不同的分割比例。为了量化系统的正确率,我们在测试集上使用误分类率。最终使用验证集在训练过程中实现早停。# 定量评价我们的方法将于 RBF-SVM 方法和 Linear SVM 方法做对比,
16、为了进行公平的比较,在训练过程中,SVM 也应当同时利用像素的空间信息和谱信息。由于这个原因,每个像素被他自己和他周围的 个像素的光谱信息同( ss-1)时决定。换句话说,位于图像平面坐标 的像素被以它为中心的像素块所( x,y)代表。尽管这种表示对应的是 3D 数据,我们把它拉平为 1D 向量,为了用于训练 SVM。我们在两个数据集上分别独立地得到了实验结果,在整个实验过程,我们组织了 6 个尺寸的训练集,范围从整个数据集的 5%到 75%。由于训练集、验证集、测试集是依据预先确定的分割比例随机选择的,我们把每个实验重复了25 次,因此,分类错误率相当于平均错误率,分类正确率相当于平均正确率
17、。表格 1 和表格 2 表示了我们与基于 SVM 的方法的定量评价。我们的方法在两个数据集上,在全尺度的训练集上,都有比基于 SVM 的方法有更好的效果。我们可以在很小的训练集上实现很高的正确率,同时当使用大训练集时可以避免了过拟合。 。图片 3 按照分类正确率显示了结果。# 预测能力更多地,我们检查分类正确率通过透视图,使用全部的像素,在每一张图片上。换句话说,像素,与注释和未注释的源一致,对每一张高光谱图像使用我们的分类器进行分类。通过设置分类区间为 5%到 75%,获得分类结果。在应用这个框架之后的分类结果被表示在图 4 中,两个数据集的分类结果图随着 Ground Truth 一同显示
18、。绿色和红色的像素 分别与人造目标和非人造目标相一致,Ground Truth 中的蓝色像素与未标记像素相一致。我们可以看到,通过对于每一个像素混合光谱信息和空间信息,分类结果形成更紧凑的区域,避免了嘈杂的噪声散点,同时保留了描述目标的形状和细节。最终,随着训练集的增加,区域的一致性变得更加强壮。# 结论在这篇文章中,我们提出了一种基于深度学习的方法,使用高光谱数据做人造目标探测。通过深度学习,我们的方法分层次构造了高层特征,编码了像素的光谱信息和空间信息。实验验证了这个方法,并且在与基于 SVM 的方法的对比中 ,展示了人造目标检测系统更高的潜力。最终,在未来,这种方法可以用来从高光谱视频序列中探测人类行为。