用深度学习来探索地球,你信吗?

最近深度学习在计算机视觉领域取得了巨大的突破,更是随着AlphaGo与李世石的大战被普通老百姓所津津乐道。传统的遥感影像识别势必会在深度学习的影响下向前进一步发展,用深度学习来探索地球在不远的将来也将成为现实。

什么是深度学习

深度学习实际上依赖的是深度神经网络。最近在计算机视觉上取得重大突破的是一种称为深度卷积神经网络的结构。科学研究表明,人的大脑里面有成百上千亿个神经元,这些神经元组成的网络支持着大脑的识别、分析等活动。深度卷积神经网络正是对大脑神经元结构的一种仿生工程。

cnn_brain

拿图像识别为例。假设墙上挂有一副画,我们观察这幅画时,图像通过反射的光线进入到眼睛的成像系统,进而传给V1结构,V1结构包含大量的神经元,然后进入V4结构识别复杂的纹理,最后到达大脑皮层得出识别结果。

大脑在识别这幅画的时候,是以一种分层的方式来逐步识别的,比如我们可能最开始注意到这是一幅森林的图像,然后再注意到图像里的一些比较锐利的线段、细微的纹理变化等等。最后我们就可以一一识别图像里的物体,比如树木、动物等。

受人脑识别图像的启发,深度卷积神经网络也是由许多神经元组成,并且神经元分层排布。把图像里的所有像素作为输入,每一层的神经元都会去观测图像里的不同模式的特征,层数越深,观测的特征就越抽象,因为下一层的观测是在上一层观测的基础之上进行的。到最后一层,神经网络也被设计为输出图像里的物体类别。

在使用神经网络分类之前,要使用大量的样本数据去训练神经网络,经过训练的神经网络知道哪些特征(或者特征的组合)对于分类的作用最为显著,在输入一个新的图像时,就可以用学习到的特征对图像进行分类。

cnn

上图表示的是深度卷积神经网络识别图像的过程。最左边的鸟类图像是输入,最右边一层输出这个图像分别属于哪些类别的概率,从图中可以看出,这个图像属于bird这个类别的概率最大,说明神经网络成功识别出了图像。二者中间的许多层就是神经网络识别出来的不同的特征,在上图中,只把每层中最显著的10个特征可视化出来,实际上每一层的特征数量要远远大于10个。可以看出,层数越深,识别出来的特征就越抽象,这符合大脑的认知模式。

深度卷积神经网络之所以能取得媲美人类大脑的分类精度,在于它和人脑一样,可以同时观测图像里不同模式的特征,并且分层处理。而传统的图像分类手段只是采取单一的特征去分类,因此精度远不如深度神经网络。为了让大家理解深度卷积神经网络同时观测的特征之多,我们可以做一个简单的计算:假设深度卷积神经网络第一个卷积层观测了12个特征,第二个卷积层在上一个卷积层的基础上观测了28个特征,那么总共就是28x12=336个特征,如果第三个卷积层在上一个卷积层的基础上观测128个特征,那么总共就是336x128=43008个特征……而现在最多的深度卷积网络已经超过了上百层,可想而知观测的特征是极其庞大的,所以说用“上帝之眼”来形容深度卷积网络识别图像的过程一点都不为过。而这也是深度卷积网络获得成功的关键所在。在这么多特征中,总能找到能够很好分类图像的显著特征。

深度学习在影像识别中的应用

传统的影像解译主要是根据影像中的色调、几何形态、纹理等特征来识别物体,而深度学习可以自动地观测数量庞大的特征来进行识别。遥感影像和普通的图片相比有优点也有缺点,优点是遥感影像不局限于普通彩色图片的RGB三个波段,越多的波段能够观测的特征就越多,也就越容易进行识别;而缺点则是遥感影像的分辨率一般没有图片那么高,但是现在随着越来越多的高精度传感器被发射升空,未来这个缺点将会被逐步克服。

借助深度学习网络,我们就可以自动化地对影像进行识别、甚至是搜索。下面是我在公司做的一个 demo 视频:

你也可以尝试这个交互demo来识别你感兴趣的地区。

除了分类,深度卷积神经网络还可以对原始图像进行分割。下面的demo可以从你选择的矩形范围内分割出其中的建筑出来。

如果我们能够对遥感影像进行分类和分割,那可以应用在哪里呢?

首先是识别,这个应用场景是我们要寻找某个区域内的地物的时候,比如马航失事飞机的搜索、战时敌军机场的寻找等等。除了简单的搜索,还可以进行相似地物的搜索,正如上面分类 demo 展示的,当你选中一个地物时,我们可以搜索出和这个地物相似的其它地物。

其次是数据采集,矢量地图往往无法包含所有要素信息,并且更新间隔较长。如果能够从卫星影像中提取出矢量信息,补充到矢量数据库中,则可以极大减少人力采集数据的成本和数据更新的时间。比如,上面的建筑分割 demo ,我们可以很容易通过分割的方式统计某个城市建筑的面积。将来,如果分割精度进一步提高,完全可以自动化地提取全国的建筑矢量图层。

最后是监控,卫星在空中每天围绕着地球转,利用它拍摄的影像来监控目标是十分合适的。比如,监控工地的建设进度、城市建成区的拓展、农作物的生长情况、河流的萎缩情况以及野生动物的活动等等,而这一切都要建立在影像自动识别的前提之下。

当然,这里列出的并不完全,可以利用影像去做的事情还有更多!