基于ENVINet5的高分辨率遥感影像稀疏塑料大棚提取研究
1.
2.
Research on the Sparse Plastic Shed Extraction from High Resolution Images Using ENVINet 5 Deep Learning Method
1.
2.
通讯作者:
收稿日期: 2020-05-27 修回日期: 2021-04-15 网络出版日期: 2021-09-26
基金资助: |
|
Received: 2020-05-27 Revised: 2021-04-15 Online: 2021-09-26
作者简介 About authors
郑磊(1986-),男,山东荣成人,工程师,主要从事地理信息系统应用研究E⁃mail:
关键词:
Keywords:
本文引用格式
郑磊, 何直蒙, 丁海勇.
Zheng Lei, He Zhimeng, Ding Haiyong.
1 引 言
中国是农业大国,使用塑料大棚种植经济作物是现代农业的重点发展方式之一。塑料大棚是一种用骨架和塑料薄膜搭建的设备,其内部具有保湿控温的效果。通过塑料大棚可以生产出反季节、健康并且卖相良好的蔬菜和花卉等农作物和经济作物,在我国农村地区应用广泛。高效精准农业的发展需要将新技术与现代农业结合,以便高效管理农业资源。农业设施进行有效管理的过程中,塑料大棚的空间分布特征和占地面积是必备数据之一。但是塑料大棚分布稀疏、材质多样、颜色各异,通过人工进行面积测算难度大,消耗大量的人力物力,难以进行全局监测和管理。
通过遥感手段获取塑料大棚的面积须分析多时相、大范围、高精度的遥感影像。传统的机器学习分类方法需要对水体、林地、房屋、道路等进行标记,这对于提取稀疏分布的塑料大棚提取比较繁琐。传统方法不仅提取繁琐,而且某些影像30 km2范围内只有0.03 km2的大棚,样本量极少。传统的遥感图像分类方法不仅时间花费较长、人力消耗大,而且分类得到的总体精度不高,如周洁等使用监督分类提取单幅影像中的蔬菜大棚得到了68.3%的总体精度[3]。赵璐等[4]使用GF-2号卫星数据进行面向对象分类,总体精度为91.62%,Kappa系数为0.895。传统的目视解译方法和基于统计分类的方法虽然简单易行,但是在直接应用时存在较多困难[5]。因此深度学习算法为高分辨率遥感影像数据目标识别与提取提供了更好的解决方案[6]。
从2015年以来由于GPU的广泛应用使得人工智能快速发展,其中机器学习是通过训练让机器模拟人脑去学习、判别,通过训练提升性能。机器学习中,算法并不能得到最优的参数组合,只能使该参数以最大概率收敛于最优值[7]。常用的机器学习模型有K均值算法(K-mean算法)[8]、人工神经网络(Artificial Neural Networks,ANN)、最邻近算法(KNN)、朴素贝叶斯(Naïve Bayes)[9]、支持向量机(SVM, Support Vector Machine)[10]、BP神经网络[11]、卷积神经网络[12-13](CNN,Convolutional Neural Network)等。其中ANN是人工建立的以有向图为拓扑结构,通过响应连续或断续的输入状态进行信息处理的动态系统。如杨艳青等[14]使用改进的ANN算法进行遥感影像分类研究得到了总体精度高达93.91%的结果。赵建鹏等[15-16]均使用SSD网络进行研究,赵建鹏在GF-2卫星影像制作大棚标签,提取得到随机样本点的总体精度为 84.5%,Kappa系数0.831。而CNN是使用卷积核对影像进行卷积,获取图像在不同尺度上的特征;用池化方法进行特征选择。CNN通过共享卷积核处理高维数据,不仅可以获得图像的光谱信息,而且可以提取到卷积核范围内的纹理信息。通过CNN可以对图像进行解译、提取和分类,实现计算机自动特征提取。关于CNN的应用研究有很多,如Kussul等[17]使用CNN方法、传统的全连通多层感知器(MLP)和随机森林算法进行比较,CNN方法取得了更好的结果。Kavita等[18]采用参数优化组合的CNN方法对印度松树进行提取,准确率为97.58%。随着CNN的发展,还衍生出了更多效果优异的网络,如陈敏等[19]使用VGGNet与R-CNN方法进行建设用地检测得到分类精度为97.44%,其对非结构化数据和小数据集都有很好的实际应用效果。陈妮等[20]使用U-Net对土地利用信息进行提取,Kappa系数达到了0.86。
TensorFlow是Google Brain团队开发的软件库,现在被广泛用于深度学习搭建框架。TensorFlow框架是一个非常灵活的编码框架,它能够运行在个人计算机或者服务器的单个或多个CPU和GPU,甚至是移动设备上[21]。集成后的框架使构建神经网络变得更加高效。
以浙江省桐庐县的高分辨率遥感影像为数据源,使用ENVINet 5深度学习方法、U-net方法和支持向量机算法对塑料大棚进行识别与提取,对比3种方法在塑料大棚提取方面的优劣性。
2 深度学习
U-net网络是2015年Ronneberger等[15]提出一种深度学习神经网络,该网络最早应用在医学领域的细胞切割上,对小样本数据有较高的准确率。网络的组成主要分为两部分:编码过程和解码过程。在网络编码过程中,使用最大值池化来进行下采样,逐层加深特征深度,每次池化缩小影像大小为原始影像的一半。通过4次下采样图像尺寸缩小为原来的1/16。在解码过程中,将下采样过程中的特征图层合并到上采样特征图中,减少细节损失。利用ReLU函数作为激活函数,即:
其中:W为权重,x为来自上一层神经网络的输入向量,b为偏移量。
ENVI最新版本的深度学习模块使用了ENVINet 5架构,此架构是基于Ronneberger、Fischer和Brox(2015)开发的U-net架构构建的网络。该网络架构通过逐层传递得到了每一层级的特征,再将高维和低维的特征进行融合。上采样时使用与下采样相同大小的卷积核,确保了输入层与输出层的分辨率一致。每一层级之间的横向连接避免了下采样导致的特征损失和梯度消失。对位于特征金字塔顶层的相关参数进行了优化,自带的目标搜索和滑动窗口设计使用户处理大尺寸影像不用进行人工裁剪。
U-net[22-23]是通过全卷积神经网络[24] (Fully Convolutional Networks,FCN)改进而来,其将输出的一维向量转变为二维特征向量图。此后发展出来的网络,如DeepLab[25]、Dilation[26]等进行语义分割时利用的信息不仅提取了光谱信息,也使用卷积逐层提取了空间特征。宋灿等[27]分别使用自己提出的网络、DeepLab、PSPNet和U-net进行大棚提取,U-net网络提取结果仅次于自己提出的原创网络。为方便对照,本研究选择使用更广泛的U-net作为深度学习网络的对照组。通过U-net对塑料大棚进行提取,需要对影像上的大棚建立标签用于训练深度学习算法。计算机将自动裁剪图像为标签影像对—patch。训练模型前先初始化一个空的基于掩码的模型,将patch输入网络进行训练。每次将patch输入由27个卷积层组成的5层网络(图1)。输入patch后使用多次卷积运算不断减少像元数量,提取不同层级的特征后传递到解码层,减少特征丢失。
图1
图1
ENVINet5架构数据处理流程图
Fig.1
Flowchart of data processing in ENVINet5 architecture
3 数据及实验
为对比深度学习和支持向量机对稀疏分布的塑料大棚提取的准确度和效率,使用相同的训练集和测试集分别测试了ENVINet 5框架、U-net模型和支持向量机进行高分辨率遥感影像中的塑料大棚识别与提取实验。
3.1 高分辨率遥感影像
以杭州市桐庐县及其周边地区卫星遥感正射影像作为研究数据(图2),图像选用的3个波段是可见光波段中波长为0.625~0.78 m的作为红色波段、0.5~0.65 m的作为绿色波段、0.4~0.85 m的作为蓝色波段,空间分辨率为0.5 m。数据获取时间2017年8月至12月,经过几何校正、辐射校正、正射校正、分幅和裁剪等处理,得到了102张影像组成数据集。
图2
实验区域为浙江省杭州市桐庐县全县及其周边部分地区,119°7′~119°53′ E,29°33′~30°7′ N。桐庐县位于浙江省西北部,富春江斜贯县境,地处钱塘江中游,属于亚热带季风气候、四季分明、日照充足、降水充沛,全县面积1 829.59 km2,以丘陵山区为主。
3.2 ENVINet5分类
将准备好的影像按照图3流程进行处理。原始影像有102幅,每幅尺寸约为10 000×10 000,普通深度学习方法在输入时要求尺寸不能太大,但ENVINet 5会自动裁剪为合适尺寸patch输入网络。塑料大棚种类包括7种样式,挑选20张涵盖了所有大棚种类和颜色的影像,用于建立标签并建立解译标志。
图3
由于EVNINet5抗干扰性较好,不需要完全标记,标记方式有3种:线状标记、面状标记和点状标记。面状标记选取容易选择到混合像元,导致分类效果不佳。点状标记和线状标记效果相当,但是线状标记的勾选效率较高,因此使用线状标记。
参数的选择取决于原始影像和目标地物,因此确定合适的地物参数比较困难。实验结合先验知识与试验来确定参数,针对塑料大棚,需要确定的参数有以下7个。
Number of Bands是由数据源决定的,实验使用的是RGB的3波段数据。
Patch size由于电脑限制设定在了572,此值与GPU显存有关,值越大效率越高,但是对显存要求也越高。
Number of Epoch表示在调整偏差之前训练了多少个patch。
Number of Patches per Epoch是每一个Epoch使用的patch数。Batch是指在一次训练迭代中使用的训练patch集。一个Epoch中,输入Batch进行训练直到patch数达到或超过设定值。已知此值一般在200~1 000之间而且训练数据集数量越少,设置此值越小。由于我们选择了7个训练样本和3个测试样本,这个值的初始值定在400。
Patch Sampling Rate是切片采样比率,当特征稀疏时和切片大小较小时,需要增加该值。塑料大棚分布在全县各个区域,稀疏分布但是相对集中,为此选取5作为该参数的初始值。
Solid Distance固定距离,是针对宽度一致的线性特征(如道路)或尺寸一致的紧凑型特征(汽车和停车标志)。塑料大棚不同种类有不同的宽窄度,选取默认值对网络进行训练。
表1是基于先验知识设置的一套预设参数,当进行某个参数修正测试时其余参数以及训练样本不变。
表1 参数预设置
Table1
参数 | 数值 |
---|---|
Patch Size | 572 |
Number of Epoch | 30 |
Number of Patches per Epoch | 400 |
Number of Patches per Batch | 16 |
Patch Sampling Rate | 5 |
Solid Distance | 空 |
Blur Distance | Min:1,Max :3 |
由图4可以看出,当Number of Epoch值为20时,由于迭代次数不够,错分和漏分现象较多,有的属于大棚的区域没有被提取出来,有的道路被误标记为大棚。而当参数值为40时,有大棚区域的有一部分被划分为不是大棚的情况,而且有的零散不规则的小型大棚漏分比较严重。
图4
Number of Patches per Epoch值为500、比值为300时的分类更确定,误分的道路更少,效果更好。
Number of Patches per Batch值为5时比值为4时有更好的整体性。
Patch Sampling Rate值为16时大棚区域出现整块标记,有零星的大棚被剔除在外。值为17时虽然大棚分割清晰了一些,但是道路和水面的高光不容易与大棚区别出来。经过尝试后发现20是最合适的数值。
Solid Distance更多地限定了大棚的宽度,由于最小值设为2会让很多细小的大棚不被正确分类,经过目视结果对比1~5是最全面和完整的提取参数。
经过分析对比,确定表2的参数作为分类大棚的最优参数。
表2 最优参数
Table 2
参数 | 数值 |
---|---|
Patch Size | 572 |
Number of Epoch | 30 |
Number of Patches per Epoch | 500 |
Number of Patches per Batch | 5 |
Patch Sampling Rate | 16 |
Solid Distance | 6 |
Blur Distance | Min:1,Max :5 |
3.3 U-net分类
将上文准备好的训练集和测试集裁剪为512×512的影像对。由于U-net网络最开始是用来处理医学影像的,支持输入的是8位黑白影像。网络输出大小为512×512,而输出大小为256×256,不方便和ENVINet 5网络的结果进行对比,因此输出结果前重采样为512×512,与输入影像大小一致。
制作训练样本时将20张影像标签完善和裁剪,为避免正负样本分布过于不均,将大棚占比过低的子影像去除,余下数据按1∶9划分为训练数据集和验证数据集。
针对本次分类,在U-net网络中将输出图层的激活函数更换为Tanh函数。
选择Tanh函数是由于0均值有利于提高训练效率,而Sigmoid输出在0~1之间且总是正数,训练过程中参数的梯度值为同一符号,这样更新的时候容易出现zigzag现象,不容易到达最优值。
使用准备好的训练样本和表3所设定的参数进行训练,训练处模型后需检查分类是否达到要求。
表3 U-net网络的训练参数
Table 3
参数 | 数值 |
---|---|
Batch Size | 2 |
Number of Epoch | 30 |
Number of Steps per Epoch | 1000 |
3.4 SVM分类
首先标记影像中的大棚类别和其他地物类别。标记其他地物需要注意标记的多样性、种类的齐全性,因为SVM需要计算几何间隔最大的分离超平面导致计算过程中非常耗时,选择过多的样本会产生过拟合、训练时间过长运行速度很慢内存溢出等问题。标记完成后根据表4参数进行分类并且进行进度评价。
表4 SVM的训练参数
Table 4
参数 | 数值 |
---|---|
Kernel Type | Radial Basis Function |
Gamma in Kernel Function | 0.333 |
Number of Steps per Epoch Penalty Parameter | 100 |
Pyramid Levels | 0 |
Classification Probability Threshola | 0 |
4 结果与讨论
3种网络的提取结果如图5所示。
图5
图5
U-net、ENVINet5和SVM分类结果对比
Fig.5
Comparison of classification results between u-net、 ENVINet5 and SVM
4.1 ENVINet5提取结果
使用ENVINet5模型得到结果的像素值在0~1之间,表示每个像元属于目标地物(大棚)的概率,像素值越大表示模型认为更有可能是目标地物,对影像进行密度分割时设定像元值在0.7~1范围内的像元属于大棚。
精度评价采取计算混淆矩阵以及总体精度常规评价指标来评价结果,总体精度结果为97.84%,Kappa系数结果为0.81。
图6
4.2 U-net提取结果
对U-net提取结果进行精度评价,总体精度和Kappa系数分别为96.22%和0.79。
分析发现,U-net网络噪声点较多,边缘提取欠佳,有平地误分为大棚,部分道路和大棚难以区分,但是能顺利区分黑色大棚、白色大棚和白色细棚。相对而言ENVINet5的分类结果干净、噪点少,更清晰准确地表现大棚位置。
实验过程需要将原始影像裁剪成比较小的尺寸才能输入模型,进行批量操作对计算机显存要求偏高。在本实验中计算机配置为一台内置64位Windows10系统,显卡型号为NVIDIA GeForce GTX 960M的笔记本电脑为试验平台,训练阶段的耗时与模型复杂程度成正比,U-net和ENVINet 5模型分别耗费3.5 h和8.2 h,但模型训练完成后使用模型进行分类时间只需要几秒。
4.3 SVM提取结果
对SVM提取结果进行精度评价,总体精度和Kappa系数分别为92.74%和0.694。
由于SVM是基于像素的分类,对空间位置关系不敏感,容易出现“椒盐”现象。而且处理大幅影像时对电脑配置要求很高,分类结果受标记质量影响很大。
对比3种网络可知SVM噪点最多,不能区分道路和大棚,在复杂区域缺陷更加明显,存在大量误分、漏分现象,两种深度学习网络效果比起SVM有全面提升。U-net分类结果中还存在部分对道路的误判,ENVINet 5已经基本克服,且U-net中还存在少量噪点,目视效果稍差。
ENVINet5网络是最适合大面积复杂环境的高分辨率遥感影像塑料大棚分类的方法。使用该模型对全县影像进行分类后,进行拼接、裁剪,得到桐庐县的大棚分布图(图7),统计出桐庐县大棚面积为2.887 8 km2。
图7
5 结 论
利用高分辨率遥感影像数据方便快速地提取塑料大棚是农业遥感中的重要应用。而传统基于像元的分类方法在高分辨率遥感影像中稀疏分布的塑料大棚提取方面不仅消耗的时间太长、需要逐幅标记、精度低,而且批处理困难。对比了两种基于深度学习的方法和一种基于机器学习方法,选择其中效果最好的ENVINet5网络对浙江省桐庐县0.5 m空间分辨率遥感影像进行塑料大棚提取,得到大棚面积与分布情况。结果表明使用深度学习的方法可以实现标签较少的情况下获取塑料大棚的空间分布及面积信息。
在提取塑料大棚的实验中,深度学习方法不仅性能优于机器学习,而且训练好的模型可以反复使用,可以及时更新数据。ENVINet 5不仅精度高于U-net网络,而且操作便利,而且可以直接输入大尺寸影像,不用考虑正负样本均衡问题,适合进行大面积少目标的分类。
参考文献
Application of chinese High-resolution remote sensing data in urban forest resources monitoring
[J]. ,
国产高分辨率遥感数据在城市森林资源监测中的应用
[J].,
Crop classification based on bulti-temporal features and convolutional neural network
[J]. ,
基于多时序特征和卷积神经网络的农作物分类
[J]. ,
on the method of UAV remote sensing in plastic greenhouse recognition
[J].,
无人机遥感在塑料大棚识别中的方法研究
[J].,
Retrieval of agriculture greenhouse based on GF-2 remote sensing images
[J].,
基于高分二号遥感数据的农业阳光大棚提取
[J].,
The development of plastic greenhouse index based on Logistic regression analysis
[J].,
基于Logistic回归分析的塑料大棚遥感指数构建
[J].,
Review on the classification methods of land use/cover based on remote sensing image
[J],
遥感影像土地利用/覆盖分类方法研究进展
[J].,
Machine learning research
[J]. ,
机器学习研究
[J].,
Research on data clustering and image segmentation based on K-means algorithm
[J]. ,
基于K均值算法的数据聚类和图像分割研究
[J].,
Semi-supervised learning remote sensing image classification based on Naive Bayesian
[J].,
基于朴素贝叶斯的半监督学习遥感影像分类
[J].,
Land cover remote sensing classification method based on semi supervised ensemble support vector machine
[D].
基于半监督集成支持向量机的土地覆盖遥感分类方法研究
[D].
Multi-resolution remote sensing images classification and comparison analysis based on improved BP neural network
[J]. ,
基于改进BP神经网络的多分辨率遥感图像分类及对比分析
[J].,
Object-oriented open pit extraction based on convolutional neural network
[J]. ,
基于卷积神经网络的面向对象露天采场提取
[J]. ,
Aircraft detection in remote sensing image based on optimized Faster-RCNN
[J]. ,
基于优化Faster-RCNN的遥感影像飞机检测
[J]. ,
The research on remote sensing image classification based on Artificial Neural Network
[J]. ,
基于人工神经网络法的遥感影像分类研究
[J].,
Research on extraction method of agricultural greenhouse based on GF-2 remote sensing image
[D].
基于GF-2遥感影像提取农业大棚方法研究
[D].
Detection of tailings pond in Beijing—Tianjin—Hebei region based on SSD model
[J]. ,
基于SSD模型的京津冀地区尾矿库检测
[J]. ,
Deep learning classification of land cover and crop types using remote sensing data
[J].,
Evaluation of deep learning CNN model for land use land cover classification and crop identification using Hyperspectral remote sensing images
[J]. ,
High resolution remote sensing image construction land detection combined with VGGNet and Mask R-CNN
[J]. ,
结合VGGNet与Mask R-CNN的高分辨率遥感影像建设用地检测
[J]. ,
Research on land use information extraction based on U-Net
[J]. ,
基于U-Net的高分辨率遥感图像土地利用信息提取
[J].,
Application of google tensorflow machine learning framework
[J].,
谷歌TensorFlow机器学习框架及应用
[J].,
U-Net: convolutional networks for biomedical image segmentation
[C]∥
High precision building detection from aerial imagery using a U-Net like convolutional architecture
[J]. ,
Fully convolutional networks for semantic segmentation
[C]∥
DeepLab: semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected CRFs
[J]. ,
Multi-scale context aggregation by dilated convolutions
[C]∥
/
〈 | 〉 |