首页 PaddleCV 帖子详情
基于深度学习实现高尔夫球场的遥感检测
收藏
快速回复
PaddleCV 文章目标检测 3584 5
基于深度学习实现高尔夫球场的遥感检测
收藏
快速回复
PaddleCV 文章目标检测 3584 5

基于PaddlePaddle实现高尔夫球场的遥感检测

 

1 . 背景及意义

随着高尔夫球运动在我国的兴起,关于高尔夫球场大量占用土地资源、污染环境、耗水量大且公益性差的争议越来越多。国家从2004年开始制定一系列相关政策文件来控制高尔夫球场过度投资,2017年国家部委联合公布的高尔夫球场清理整治结果表明,我国高尔夫球场为683家。开展高尔夫球场用地监测,对发现新增高尔夫球场、核查清理整治效果具有重要意义。

高尔夫球场用地监测的核心问题在于球场检测。高尔夫球场用地量少面广,球场用地监测需要高频次、全覆盖数据支持。随着我国遥感技术的发展,大量的国产高分辨率光学遥感影像为场检测提供了有力数据支持。近年来,以卷积神经网络(Convolutional Neural Network, CNN)为代表的深度学习模型在遥感图像理解中得到广泛应用,具体到目标检测领域,基于区域建议的Faster R-CNN是当前主流算法框架之一。使用PaddlePaddle将Faster R-CNN应用于高尔夫球场遥感检测,并针对目标——高尔夫球场和数据——遥感影像开展优化,可为高尔夫球场检测与提供半自动化技术手段。

 

2 . 影像获取与处理
2.1 数据获取
标准高尔夫设施是指3杆洞、4杆洞的9洞或18洞等拥有传统长度和杆数的球场,其中9洞高尔夫球场面积在200亩以上,18洞高尔夫球场达900亩以上。标准球场一般包括会所区、球道区与管理区3个部分。

遥感影像数据收集前,应确定数据源、空间、时间、季节、质量要求等要素。

(1)数据源

数据源选择应遵循的原则为:在保证标准高尔夫球场检测精度的前提下有更大的幅宽。考虑到球场在8m分辨率多光谱中清晰可见,且高分一号A/B/C/D和高分六号均具可获取8m多光谱影像,因此本应用选择高分一号PMS多光谱影像开展球场检测。

(2)空间范围

以中国大陆地区为空间范围开展影像收集。

(3)时间范围

根据高尔夫球场数量2014年顶峰、2015年开始减少的情况,以2014年为主、其他年份影像为辅开展影像收集。

(4)季节

高尔夫球场受植被物候影响较大,考虑到我国南北差异,以省级行政区为单位,每个省级行政区内影像至少覆盖该地区春季、秋季两个时相,并以部分冬季数据作为补充数据。

(5)质量要求

影像尽量保证无云、无雾、无霾,目标地物形状清晰可见。

根据以上原则,共收集 2013-2017年409景高分一号PMS多光谱影像,其中2013年42景,2014年248景,2015年52景,2016年64景,2017年3景,影像可覆盖中国大陆地区高尔夫球场。不同背景中高尔夫球场影像如图1所示。

图1 不同背景地物下的高尔夫球场(标准假彩色合成)

 

2.2 影像处理
(1)影像预处理

影像预处理的目的是消除卫星传感器、大气或者地形等造成的影像辐射与几何误差。本应用中预处理主要为正射校正。同时,为保证高尔夫球场面积统计准确性,选取Albers等积圆锥投影。

(2)球场标注

对影像中的高尔夫球场进行标注产生目标真值框,即利用目视解译勾绘高尔夫球场边界范围。标注时包含了每景影像内所有的高尔夫球场,同时保证了球场完整性。球场标注情况如图2所示(绿色框表示标注的高尔夫球场外接矩形)。

图2 高尔夫标注示意图(标准假彩色合成)

 

(3)影像裁剪

包括波段裁剪和空间裁剪。波段裁剪方面,高尔夫球场以植被为主体(约占70%),植被在近红外波段具有高反射特征,因此保留影像绿、红与近红外波段而形成3波段影像数据。空间裁剪方面,以球场为中心,在影像与目标地物边界的控制下,裁切出包含目标地物的1200×1200影像块。此外,通过最优线性拉伸生成8位影像数据。高尔夫球场训练影像裁切示意图如图3所示。

图3 裁切影像及其目标地物边框示意图

 

(4)样本增强

卷积神经网络是数据饥渴型模型,需要大规模样本进行训练,当训练数据较少时可通过裁剪、旋转、改变对比度、加噪声等方法扩充数据集样本的数量,对提高模型检测性能和泛化能力有着重要的作用。高尔夫球场数据增强主要采用的是多长宽比裁剪和多尺寸旋转两种方法,数据增强效果如图4所示。

图4 数据增强效果示意图

 

利用上述增强算法,共形成662张裁切训练影像,经过多长宽比裁剪得到9000张小影像,然后再进行多角度旋转得到86963张小影像,最后训练集总共增广得到96625张小影像及对应标注文件(VOC2007格式)。

 

3 . 高尔夫球场检测方法
3.1 Faster R-CNN
Faster R-CNN可以看作特征提取网络、Fast R-CNN和区域建议网络(Region Proposal Network, RPN)的组合。

(1)特征提取网络VGG16

特征提取网络选择常用的VGG16,VGG16由牛津大学于2014年提出,该网络由5组卷积层、2个全连接层和1个全连接分类层构成,基本结构如图5所示。VGG16共有13个卷积层、3个全连接层,故称为VGG16。

图5 VGG16模型结构

 

(2)Fast R-CNN

Faster R-CNN结合了R-CNN与Fast R-CNN的优势,使用RPN直接预测建议框,把目标检测中特征提取、候选框生成、分类、预测框回归这四个基本步骤统一到一个网络框架中。候选区域生成由RPN完成,特征提取由VGG16完成,分类与预测框回归依旧沿用了Fast R-CNN,Fast R-CNN基本结构如图6所示。

图6 Faster R-CNN模型结构

 

(3)区域建议网络RPN

用RPN代替Fast R-CNN中的Selective Search是Faster R-CNN的核心内容,RPN的结构如图7所示。在RPN设计中,Faster R-CNN在特征图上采用滑动窗口,在这些滑动窗口中利用anchor产生建议区域,并且考虑到对应不同尺寸的物体,anchor共有9种不同的类型(如图8所示)。这些窗口经过卷积形成256维的向量,最终通过分类挑选出300个得分最高的窗口作为建议框。RPN卷积与Fast R-CNN权值共享,目标检测的速度被大幅度提升。

图7 RPN结构示意图

图8 anchor示意图

 

(4)训练与检测基本过程

Faster R-CNN训练与检测的基本过程如下:①将原始整张图像输入网络利用VGG16进行特征提取;②利用RPN生成建议框,每张图像都生成300个建议框;③把这些建议框映射到特征提取最后一层卷积的特征图上;④通过RoI池化层使每个RoI生成固定尺寸的特征图;⑤利用Softmax Loss和Smooth L1 Loss对分类概率和边框回归进行联合训练;⑥测试时,用边框回归值校正原建议框,最终生成预测窗口。实际工程应用中,可选择分阶段训练方法,也可选择速度更快的端到端训练方法。

 

3.2 anchor参数优化
对Faster R-CNN进行参数优化,可使其能更加有效地应用于高尔夫球场检测。RPN中的anchor是9个不同尺度不同长宽比的矩形框,这些矩形框进入RPN的两条路线,一条路线利用softmax判断矩形框属于目标还是背景,另一条路线利用外接框回归修正矩形框的位置。原生Faster R-CNN模型anchor的尺度为1282、2562、5122,长宽比为1:1、1:2、2:1。RPN网络生成的anchor数量与种类很大程度上影响着检测精度,anchor与检测目标越接近,检测精度越高。

对标准高尔夫球场的面积特征、长宽比特征进行统计(如图9所示),统计结果为anchor尺寸与长宽比设置提供依据。由图9可以可知高尔夫球场规模差距巨大,标准高尔夫球场面积集中在75000个像元以下,最大值为237573个像元,最小值为640个像元;同时,球场长宽比集中在0.2-2.0之间,最大值为4.38,最小值为0.19,说明球场形状多变,没有规则的外形特征。

图9 高尔夫球场样本特征统计图

基于统计结果,原生Faster R-CNN所采用的默认最小尺度为1282的anchor对球场检测而言过大,因此增加了642尺度。如图10所示,左右两张图中绿色框分别是anchor尺度为1282和642对应的候选框,默认的最小尺度1282得到的正例框中包含了大量背景,而642的anchor对应正例框则与真实球场吻合较好。

图10 1282、642尺寸anchor对比

 

考虑到部分滨河高尔夫球场形状狭长,默认的anchor长宽比不足以覆盖整个高尔夫球场样本空间,因此在anchor默认长宽比的基础上增加了1:3、1:4、1:5、3:1、4:1、5:1多种比例。如图11所示,左右两张图中绿色框分别是anchor长宽比为1:2和1:5时得到的正例框,1:2长宽比并不能完全覆盖高尔夫球场,而1:5长宽比则可以包含整个高尔夫球场。

图11 1:2、1:5长宽比anchor对比

 

4 . 训练与检测
4.1 训练与检测策略
训练验证数据集为3波段8位影像,共计96625张1200×1200影像块(其中662张为原影像,95963张为样本增强数据),训练样本约为70%,验证样本约为30%。测试影像检测数据为3波段8位影像,共52景尺寸约为5000×5000的整景高分一号PMS多光谱影像,其中覆盖了津京冀地区全部的标准高尔夫球场。采用滑窗检测方式,滑窗大小为1200×1200,滑动步长为600。

该训练与检测任务选用PaddlePaddle作为深度学习框架,设置基础学习率为0.01,每5万次迭代学习率降低一个数量级,共迭代共进行18万次。编程语言为python2.7,软件环境为:Windows7 64位、VS2013、cuda8.0、cudnn5.1。硬件环境包括:Intel 8核CPU、NVIDIA GTX 1070 GPU、16G内存。

4.2 精度评价
精度评价方法包括主观与客观两种:主观评价以人眼视觉效果为原则,将球场检测结果与人机交互勾绘的真值框进行对比,判断目标预测框与真值框的吻合程度;客观评价从误检与漏检两个方面对目标检测效果进行定量评价,选择的指标包括recall(检测率)、precision、虚警率、F-Mearsure与mAP。

(1)主观评价

基于优化的Faster R-CNN模型用于整景测试影像的球场检测工作,部分检测结果如图12所示,图中绿色框表示模型检测形成的预测结果。

图12 检测结果图(标准假彩色合成)

可以看出,优化的Faster R-CNN模型对不同时相、不同形态的球场均具有较好的检测效果,预测框与目视球场边界吻合良好。

 

(2)客观评价

对于二类分类问题,目标地物作为正样本,背景地物作为负样本,假设正样本共P个,负样本共N个,正负样本的对应关系如表1所示。

recall指检测正确的目标地物占所有真值样本的比例;precision指检测正确的目标地物占所有检测结果的比例;F-Measure综合召回率与预测率,可衡量检测总体精度。recall(检测率)、precision、虚警率、F-Measure计算公式如下:

mAP指标按照预测值置信度对预测结果降序排列,即选择不同的置信度阈值,AP为不同置信阈值下recall所对应的precision平均值,可表示为recall与precision曲线下的面积,mAP即为所有类别的AP平均值,本应用只有高尔夫球场一类目标,因此mAP与AP相等。依照基于VOC2007数据集目标检测精度评价的常用模式,选用11个不同的置信阈值,AP可用下式表示:

将原始Faster R-CNN与调参后的模型检测精度进行对比,结果如图13所示。图中检测方法1-4分别表示原Faster R-CNN(迭代9万次)、修改anchor参数(迭代9万次)、修改anchor参数与样本增强(迭代9万次)与修改anchor参数与样本增强(迭代18万次)的检测相关精度。从图中可以明显看出,原网络对的球场检测精度较低,优化的Faster R-CNN模型检测精度显著提高。

图13 检测精度

将不同置信阈值下获得的召回率与预测率绘成曲线,如图14所示。可以看出,随着网络模型的优化,曲线整体在y轴正方向不断提高,说明检测精度不断提高。并且曲线下降趋势有所减缓,曲线更为平直,表示在不同置信阈值下检测精度较为稳定。曲线与坐标轴围合的面积,即AP值不断提高。

图14 precision-recall曲线

 

(3)误差分析

本应用在高尔夫球场的检测方面虽取得了一定效果,但仍存在球场漏检与误检现象。总体而言,漏检现象较少,误检是影响其球场检测精度的主要因素。城区内的误检主要来自于与球场具有相似形态的城市绿地公园,部分建筑物也对球场检测造成一定干扰,山区球场影像中地形纹理导致的的误检较多,耕地也存在部分误检。高尔夫球场误检情况如图15所示。

图15 误检情况(标准假彩色合成)


5 . 总结
本应用以标准高尔夫球场为研究对象,综合考虑高尔夫球场特征及遥感卫星影像特点,基于高分一号8m多光谱影像构建了全国标准高尔夫球场遥感数据集,通过样本增强扩大样本规模,并基于优化的Faster R-CNN实现了对京津冀地区标准高尔夫球场的检测:

(1)全国标准高尔夫球场遥感数据集构建。该数据集共获取409景影像的 865个多时相球场样本,覆盖了全部中国大陆地区标准高尔夫球场。

(2)标准高尔夫球场检测Faster R-CNN模型。以原生Faster R-CNN为基础模型,通过样本增强扩大样本规模,基于样本统计结果优化anchor参数,实现了对标准高尔夫球场的自动检测。

此外,您还可以访问【PaddlePaddle官网】,或者扫码进入PaddlePaddle的公众号,第一时间获取最新的资讯信息。

【PaddlePaddle官网】:http://www.paddlepaddle.org/


 

2
收藏
回复
全部评论(5)
时间顺序
c
chen7754
#2 回复于2020-08

可以提供下数据集吗?

0
回复
c
chen7754
#3 回复于2020-08

非常感谢

0
回复
The Dawn
#4 回复于2020-11

同问是否可以公开数据集

0
回复
thinc
#5 回复于2020-11
同问是否可以公开数据集

https://aistudio.baidu.com/aistudio/datasetlist/2

可以去AI Studio的数据集找找

1
回复
The Dawn
#6 回复于2020-11
thinc #5
https://aistudio.baidu.com/aistudio/datasetlist/2 可以去AI Studio的数据集找找

谢谢,我去找找看

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户