不知不觉,深度学习已经改变了传统方法的研究路线,大家一窝蜂的研究这个方法了,事实证明,这个方法,确实是目前最有效的视觉方法。。。虽然有点,就不说了!
利用深度学习进行遥感影像全自动变化检测,这两年飞速发展,精度与效率已经远超传统方法,但是真正将深度学习方法用到实际生产工作,几乎少有人做,目前在做的几个单位,无非就是中科院遥感所,自然资源部国土卫星中心,武汉大学等等。我自己也是这里面的一个,把深度学习方法真正落到实际生产作业中,根据一线作业人员的反馈,虽然不能100%准确,但是可以节省大部分人工工作量了,我还是很欣慰的,靠人工去自动勾变化图斑,量大,人累。做了这么些工作,用一句话可以概括,“科技是第一生产力!”
下面我以两期多时相影像,利用深度学习方法做的全自动变化监测,并最终输出变化图斑,整个技术流程简单介绍一下:
图 实验区域与检测结果(黄色为自动检测出的变化图斑,蓝色为训练样本)
更多的局部图斑细节:
图 道路区域变化监测结果
图 林地变化提取结果
图 建筑物变化提取结果
唉,再次吐槽一下博客园的编辑系统,实在是太差了,编辑太不方便了,而且美观性也不行。。。算了。我是随意选取的几种变化检测提取结果,从这个
结果可以看出,基本上变化图斑均能发现,但是边界并不十分完美,因此后面需要人工进行边界修正等,还有一些伪图斑删除,如下面的云覆盖区域,误识别
成变化图斑,因此需要后期删除:
图 伪变化图斑情况
看完了结果,下面我说一下这个技术流程,总得来说分为以下几个思路:
1. 影像预处理。如何大规模镶嵌影像数据集,这是一个关键技术问题,我这里是调用的arcgis镶嵌工具,效率较低,对于上百景影像则会效率很低,不知道大家有没有
什么好的方法,可以一起讨论讨论;
2.分块处理。深度学习方法输入一般是规则的整数块,如1000*1000等,这个可以用GPU计算解决。
3.栅格矢量化,平滑。这个可以调用一些开源工具集解决,但是我自己是用的自己开发的平滑算法,效果就是上面大家看到的了,视觉上还是不错的。
关于我用的模型,我这里贴出来,给大家看一下关键部分:
图 深度模型关键部分
我这里是改进的一个轻量级语义分割算法,用了四层并联的空洞卷积,加上一个平均池化层,最后用cat方式融合多特征,所有卷积全部采用可分离卷积,
这个好处,就是训练很快,参数极少,我的参数量一起是32MB,比较小了,在很差的笔记本上cpu计算都可以。
我们再来测试一下,大规模场景如何,我选择深圳作为测试区域,样本大概选了20个左右,全为336*336大小,技巧上采用通用的tricks就差不多了,
我们来看看效果:
总共发现了2688个变化,我肉眼对比了下,基本上搞出了变化,结果还是非常不错的。。。
在图像预处理方面,输入均为525*525大小,好吧,先写到这里,如果大家需要我的全套代码,请联系qq1044625113,加时请备注:深度变化检测。