1. 引言
滑坡是一种频发的自然灾害现象,其具有损毁性大、危害性大等特点 [1] 。中国是滑坡灾害频发的国家,地质灾害灾情的统计数据显示2021年中国发生滑坡灾害的数量占地质灾害数量的48.93% [2] ,且滑坡数量仍在不断增加。滑坡不仅会对居民建筑、道路等服务设施造成损害,还会对人身安全造成重大危害 [3] ,其危害不容小觑,其影响不可忽视。因此,进行滑坡检测对于提前预防、保证人身安全及财产安全等具有重要意义,也对滑坡发生后能及时进行抢险应急指挥具有重要意义。
滑坡检测的技术不断发展,至今已经历了五个阶段,分别为:人工目视判读 [4] [5] 、基于像素检测方法 [6] 、基于对象检测方法 [7] 、基于机器学习技术检测方法 [8] [9] [10] [11] 、基于深度学习技术检测方法 [12] - [20] 。人工目视判读 [4] 的结果更依赖专业人员的主观性且费时费力。虎振兴 [6] 等运用基于像素的方法通过比较滑坡区域和非滑坡区域的植被恢复速率进行滑坡检测。张毅 [7] 等运用面向对象分类法对滑坡信息进行提取,在一些地形复杂的区域实验效果不理想。张福浩 [8] 等运用XGBoost模型并综合多种地理因子数据进行滑坡识别。巨袁臻 [14] 等运用深度学习技术对谷歌地球影像数据进行检测,实现了对黄土地区滑坡的自动识别,该方法局限于黄土地区的滑坡识别。
从人工判读到基于机器学习技术检测的过程中,对图像中滑坡区域检测的准确率不断提高、检测的时间不断减少,但这些仍不能满足现实情况的要求。近年来深度学习技术不断发展,将其应用到遥感图像检测中成为了一种趋势。利用深度学习技术进行检测,是以遥感影像中的滑坡作为目标区域,以卷积神经网络为基础,不断改进模型的网络结构,旨在能更加有效地挖掘出滑坡图像中的深层特征信息,以此实现检测精度增加、花费时间减少的效果。
2. 模型基础
基于深度学习的目标检测算法较好地解决了传统算法存在的复杂度较高、窗口冗余等问题 [21] [22] ,目前基于深度学习的目标检测算法 [23] [24] 主要分为单阶段和双阶段检测算法。单阶段目标检测算法的检测速度快、检测精度相对较低,包括YOLO [25] 、SSD [26] 等。双阶段目标检测算法相对于单阶段算法虽然检测速度会降低,但检测精度有明显提高,包括RCNN [27] 、Fast RCNN [28] 、Faster RCNN [29] 等。其中,Fast RCNN弥补了RCNN的不足之处,而Faster RCNN基于Fast RCNN进行了改进,在精度和检测速率上明显得到了提高,并且Faster RCNN和YOLO、SSD相比,鲁棒性更强,占用的空间更小,但深度学习的网络模型不够新颖等问题,仍导致模型对滑坡的检测准确率较低。此外,在现有的滑坡检测实验中存在着使用的部分遥感影像数据分辨率较低等情况,这也影响着滑坡检测的准确率,因此,本文以双阶段的Faster RCNN算法作为基础模型并对其进行改进,以期提高对滑坡检测的精度及准确率。
Faster RCNN是Ren在RCNN和Fast RCNN基础上提出的一种深度学习模型,该模型网络包括从图像中获取图层信息,框选出候选区域,对候选框中的内容进行回归和分类等操作。Faster RCNN进行滑坡图像的检测流程,首先将要检测的图片输入到骨干网络中,骨干网络会从输入的图片中提取特征地图,根据网络建议框选出目标候选框,并对候选框中是否有滑坡进行验证分类。Faster RCNN网络模型图如图1所示。

Figure 1. Network model diagram of Faster RCNN
图1. Faster RCNN的网络模型图
具体步骤如下:
1) 滑坡隐患特征提取
利用主干特征提取网络获得图片不同特征层的信息。对于输入网络的每张图片,Faster RCNN网络首先需要对输入进行一系列的卷积和池化操作,生成该输入对应的特征图。
2) RPN检测
区域建议网络(RPN)主要通过神经网络处理,获取准确的候选区域,采用多任务损失,损失函数的公式为:
(1)
(2)
(3)
其中,参数R为smooth函数,表达式为:
(4)
3) ROI Pooling
ROI Pooling (感兴趣区域池化)是依据确定的滑坡精确位置,从特征图中选择用于分类的目标数据,利用pooling修改图片尺寸大小,然后输入全连接层进行分类和回归。
4) 分类和回归
主要利用softmax函数进行分类,判断候选框中的物体是否为滑坡,并多次精细调整候选区域位置,获取最终目标检测结果。
5) 残差注意力模块
本文采用ResNet50网络提取图像特征。ResNet50的网络架构如图2所示。

Figure 2. ResNet50 network architecture
图2. ResNet50的网络架构
当网络层数增多时,对图像的特征信息提取效果越好,模型性能越好。但当网络深度到一定水平时,其性能会变差,这是由于梯度消失和梯度爆炸导致模型训练困难,残差网络可以很好地解决网络深化带来的问题。
注意力机制通过专注于感兴趣的区域而忽略其他背景信息来模仿人类视觉,从而达到提高深度学习模型性能的效果。大量实验表明,添加注意力机制后模型的准确性将大大提高。协同注意力机制可以同时关注位置信息和信道信息,并且给网络带来更少的开销,可以分别从水平和垂直两个方向聚合要素。它不仅可以在捕获通道信息时保留关键位置信息,还可以捕获远程相关信息。
为了深化网络,同时提高模型获取位置信息和信道信息的能力,将协同注意力机制与残差模块相结合,形成残差注意力模块,将其添加到特征提取网络中以更加充分地提取滑坡特征。残差注意力模块的结构如图3所示。
(a) 残差模块
(b) 残差注意力模块
Figure 3. Structure of residual attention module
图3. 残差注意力模块的结构
3. 实验数据
3.1. 训练数据集
训练数据集用于训练本文提出的改进模型,包含滑坡样本和非滑坡样本,数据集中的图像由自己收集得到,在充分考虑滑坡类型和分布多样性的前提下选取了15个研究区域,并利用Google Earth软件提取了这些区域的光学遥感图像,选择了500张包含山体滑坡的图像作为滑坡样本,选择了500张不包含山体滑坡的图像作为负样本,最后,由专家对上述研究样本进行视觉解读,以确保图像类别的准确性。阴性样本用于提高模型对滑坡和非滑坡的分类能力,包括山脉、丘陵、农田、河流、道路和城市等。
3.2. 测试数据集
测试数据集用于测试改进模型的性能及不同模型间的对比分析,使用毕节市公开的滑坡数据集 [30] ,该数据集的研究区域覆盖毕节市全境,面积26,853平方公里。毕节市位于中国贵州省西北部,地处高原向丘陵的过渡地带,地质不稳定,山坡多,是我国滑坡最严重的地区之一。该数据集中滑坡图像的收集主要是通过以下两种方法:① 通过卫星光学图像和DEM进行室内人工判读,再进行实地测量;② 通过居民汇报进行测量。数据集包含滑坡图像和非滑坡图像两类,其中滑坡图像有770张,非滑坡图像有2000张。本文的研究选取其中770张滑坡图像和500张非滑坡图像构成测试数据集。毕节市地形图如图4所示。
选取了测试集和训练集共45张图像,对滑坡图像将其中的滑坡区域边界框出。训练集和测试集的图像如图5所示。
另外,为进一步增大样本量,更好地训练模型,在训练和测试时采用了图像翻转的数据增强策略,包括水平、垂直、水平垂直等三种翻转。

Figure 5. Images from training and testing sets. The landslide image contains one or more landslides, while negative samples do not include landslides. Training set samples (a1~a15), landslide samples from test set (b1~b15), and non landslide samples from test set (c1~c15)
图5. 训练集和测试集图像。滑坡图像包含一个或多个滑坡,而负样本是不包含滑坡。训练集样本(a1~a15)、测试集的滑坡样本(b1~b15)、测试集的非滑坡样本(c1~c15)
4. 实验与分析
4.1. 实验设备
为了验证本文提出的改进Faster RCNN算法模型的性能,分别采用基础的Faster RCNN算法、VGG16算法、inception v3算法与改进的Faster RCNN算法进行对比。所有实验均在处理器AMD Ryzen7 5800HS Creator Edition 3.20 GHz下进行,算法的实验环境为torch1.12.1和tensorflow1.13.2。
4.2. 评价指标
本文采用精度(Precision)、召回率(Recall)和准确率(Accuracy)作为模型性能的评价指标。精度表示模型预测为滑坡样本中真正是滑坡样本的比例。召回率是模型预测为滑坡样本占所有滑坡样本的比例。准确率表示正确预测的样本占所有样本的比例。
精度P、召回率R、准确率A可分别表示为:
(5)
(6)
(7)
TP是图像实际是滑坡样本,并且模型认为图像是滑坡样本的例子;TN是图像实际是非滑坡样本,并且模型认为图像是非滑坡样本的例子,FP是图像实际是非滑坡样本,但是模型认为图像是滑坡样本的例子,FN是图像实际是滑坡样本,但是模型认为图像是非滑坡样本的例子。
4.3. 实验流程及结果
实验的整体流程分为三个步骤:① 收集高分辨率图像,对收集到的图像进行裁剪等预处理,将其处理为相同大小,并对图像进行翻转等数据增强操作,以增加训练样本的容量;② 对训练数据集进行划分,其中70%对改进的Faster RCNN模型进行训练,30%用于测试。设置100轮次,训练过程和测试过程的损失值如图6所示。由实验结果可看出,训练和测试结果都较好的情况(Best Point)在第80~100轮次之间,经验证第94轮为最好情况,保留此次训练的参数值并进行后续模型对比;③ 使用改进的Faster RCNN、Faster RCNN、VGG16、inception v3等四种模型对毕节市滑坡数据集的图像进行特征提取,得出实验结果并分析四种模型的表现。
本文整体的实验流程图如图7所示。
本文的实验结果如图8所示,主要分为单一目标区域、多目标区域、较昏暗区域等三种情况。由于篇幅限制,所以每种情况只选取了其中三张原始图像和实验结果展示。
正确实验的实验结果分为三种情况,单一目标区域、多目标区域、较为昏暗区域,经实验证明,三种图像中的滑坡区域均可以被很好地检测出来,但仍存在部分错误识别和未识别区域。本文提出的改进算法的准确率为98.5%,与其他三种算法相比对遥感影像中的滑坡检测具有更高的准确性。
对存在错误识别的滑坡区域进行对比、分析得出结论:多数错误预测的图像位于滑坡边缘类似的梯田或山脊交汇地带,这些地方纹理特征复杂,地表较为裸露,易导致错误识别。
对部分未识别出的滑坡区域进行对比、分析得出结论:未被识别的图像主要是两种特征,第一种特征是滑坡区域与周围环境相似,且边界比较模糊;第二种特征是滑坡区域处在山脊或坡顶的地方,阳光照射下被阴影覆盖,显得十分昏暗的区域。

Figure 6. Loss values during training and testing processes
图6. 训练过程和测试过程的损失值

Figure 8. Experimental results of single target, multiple targets, and darker areas
图8. 单一目标、多目标、较昏暗区域的实验结果
本文分别从Precision、Recall和Accuracy三个评价指标对改进的Faster RCNN、Faster RCNN、VGG16、inception v3等四种算法模型进行对比。对比结果如表1所示。

Table 1. Comparison of results of four models
表1. 四种模型结果对比
综上,改进后的模型在增加网络深度和宽度的同时尽可能地减少了网络层数,具有更高的效率与提取精度,对大规模滑坡识别提供了技术支撑。在实验过程中发现,滑坡具有多样性的特点,全面详尽地提取滑坡的特征会较困难,因此,会存在部分滑坡未检测成功的现象。
5. 结束语
国产高分辨率卫星技术、深度学习技术、计算机硬件设备不断快速发展,为滑坡图像智能识别提供高分辨的数据资料、更简洁高效的网络结构和更强的硬件性能。本文在基础的Faster RCNN目标检测算法中加入inception模块和残差注意力网络进行改进,采用自己采集到的1000张遥感影像数据并对其进行数据增强操作后对模型进行训练。此外,还使用毕节市公开的滑坡数据集进行测试,准确率为98.5%。本文的研究共得到以下两点主要结论:
a) 采用改进的Faster RCNN滑坡检测模型能有效地识别滑坡隐患,可提高滑坡图像的检测精度和准确率,可有效减少实地巡查,节约了人力物力,对滑坡隐患的巡排查有重要的指导意义。
b) 改进的滑坡检测模型对地表特征较明显的滑坡具有较高的识别率,但对滑坡不完整、光线较弱等图像的检测精度较低。如:位于滑坡边缘类似的梯田或山脊交汇地带,易错误识别;位于山脊或坡顶的被阴影覆盖十分严重的区域,不能检测出滑坡。
以上问题发生的原因可能是由于模型训练效果不够好,后续会继续改进网络,尝试向网络中引入多模态实例分割技术,来解决对于滑坡边缘区域、存在遮挡及存在阴影区域不能检测或错误检测的问题,以此来提高模型的检测精度及准确率。
基金项目
河北省重点研发计划项目(项目名称:基于时空大数据及深度学习的地质灾害风险识别关键技术研究,编号:22375415D)、河北地质大学第十九届学生科技基金科研项目(项目名称:基于深度学习技术的滑坡图像检测算法研究,编号:KAY202334)。