X C O S M I C

深度学习遥感分类处理流程


主要流程:
1.找样本点,点shape格式
2.由点shape得到固定大小的影像,如1000*1000,同时得到同样大小的shape面
3.在shape面基础上勾画要提取的地物,如建筑、道路等
4.勾好的shape栅格化,作为标签数据,举例:如果只提建筑,背景值为0,建筑值为1
5.样本规范化处理,用于深度学习的输入
6.网络训练
7.网络预测(影像分类)
8.精度评价

说明:
本实例中基本数据处理(勾图等)主要以MHMapGIS软件为例,在ArcGIS也有类似功能。
MHMapGIS软件下载:MHMapGIS

具体方法:
1、找样本点
新建shape文件,选择点得到样本点的shape文件。
详见:找点方法
2、由点shape得到固定大小的影像。
如1000*1000,同时得到同样大小的shape面
详见:样本区自动裁剪方法
3、矢量化,以道路为例
目标:最终要得到的shape是画好的图,shape空间范围与原影像一致,且shape属性里有区分道路和背景。
3.1 通过软件矢量化,包括以下步骤:
(1)新建shape,这里需要将新建的shape命名为原shape名加_label,如原来shpe名为abc_clip1.shp,新建shape名为abc_clip1_label.shp(在本实例中,这一点还是比较重要的)。
空间参考设置为与原影像一致(设置为与原影像一致,不是与原shape一致,不然会有些小问题)。
新建shape和勾图方法,详见:矢量勾绘方法
这里注意的是,道路里有很多平行面,因此可以用平行面工具,简单方便:平行面勾绘方法
注意:如果部分内容画到了影像范围以外,如下图,也不要紧,后续处理会自动裁剪掉。

3.2 设置属性
如果新建了shape,添加字段(属性表右键添加),整型或实数型,名称可以是label,或者其他,自己定义,只需要设置勾的道路值为1,可以批量设置。
属性编辑器里可以把所有勾画的图属性值全部设为1。(选中所有矢量,然后打开属性修改器)
3.3 shape合成
新建shape并画完图以后,需要与原shape框组合,时期得到最终的shape,我写了一个脚本(ArcGIS脚本),可以一步完成。
下载:DeepLearning.tbx
ArcGIS里把有工具箱的文件夹连接进来,打开里面的PowerUnion工具。
外框矢量文件位置:就是原来的那个shape(只有框的那个)所在的文件夹
勾绘矢量文件位置:画图时新建的shape所在的文件夹
输出矢量文件位置:结果输出的文件夹
该工具在所有图勾画完后使用,批量完成裁剪、合并过程,且生成的字段属性符合要求。
本工具原理示意图:
4、得到的矢量进行栅格化
5、样本规范化处理,配置对应文件
对样本进行处理,使其满足深度学习输入要求,之前样本数据已经处理好了,这里只需要放到相应位置,设置好对应关系。
6、神经网络训练
将准备好的数据输入到深度卷积神经网络中训练。
例子:DeepLab v3+ 训练数据
附:深度学习环境配置
7、网络预测
得到网络输出的分类结果
8、精度评价:
计算精确率、召回率、F1得分等

评论 点赞