图像处理一定要用卷积神经网络?这里有一个另辟蹊径的方法

近年来,卷积神经网络(CNN)以其局部权值共享的特殊结构在语音识别和图像处理等方面得到了快速发展,特别是大型图像处理方面,更是表现出色,逐渐成为了行业内一个重要的技术选择。

不过,好用并不代表万能。这里雷锋网从一个卫星图像分析的具体实例出发,介绍了CNN建模和本地拉普拉斯滤波这两种分析技术的效果对比,最终我们发现,本地拉普拉斯滤波的效果反而更好。

  卷积神经网络

为了从卫星图像中分析和评估一项自然灾害造成的损失,首先需要得到相关地理区域实时的高分辨率的卫星图像,这是进行后续所有分析的数据基础。目前,除了Google Earth之外,最方便也最经济的数据来源就是OSM(OpenStreetMap)开源地图计划。该计划于2004年在美国创立,类似于维基百科,鼓励全球用户自由无障碍地分享和使用地理位置数据。

由于OSM提供的是矢量数据(Vector Data),为了便于空间分析和地表模拟,因此需要利用GDAL(Geospatial Data Abstraction Library)库中的 gdal_rasterize 工具将其转化为栅格数据(Raster Data)。

雷锋网注:矢量数据和栅格数据都是地理信息系统(GIS)中常见的分析模型。其中栅格结构是以规则的阵列来表示空间地物或现象分布的数据组织,组织中的每个数据表示地物或现象的非几何属性特征。特点是属性表现明显,便于空间分析和地表模拟,但定位信息隐含。而矢量数据结构是通过记录坐标的方式尽可能精确地表示点、线和多边形等地理实体,坐标空间设为连续,允许任意位置、长度和面积的精确定义。特点是定位信息明确,但属性信息隐含。

得到栅格数据之后,下一步是利用Caffe开源框架和CNN模型对系统进行训练。如图所示为CNN模型的一种参数设置。

CNN模型的一种参数设置

利用大量数据训练得到的卷积神经网络模型处理灾后的图像,识别出的受灾房屋情况如图所示(图中白色色块代表房屋,具体可对比后面拉普拉斯滤波的处理结果)。

CNN的分析结果,左图为灾前的图像,右图为灾后的图像

  拉普拉斯滤波

另一种方式是跨过GDAL转换,利用拉布拉斯滤波直接在矢量数据的基础上进行分析。

具体方法是:对比灾前和灾后两张图像,识别房屋的变化和两个图像的重叠部分,从而对受灾程度做出评估。本例中将对比阈值设为10%,即如果灾后图像中某个房屋的面积小于灾前面积的10%,那么就判定这一房屋已经被损毁。

需要注意的是,这里用到了两个重要的滤波器。一个是拉普拉斯滤波,作用是识别出图像中所有突出的不平整的部分(这里即所有的房屋轮廓),然后将其标记并绘制出来。另一个是设置为10%的“噪声”滤波,即对比灾前和灾后的图像,按照10%的阈值过滤出受灾的房屋。

相比CNN的方法,这里用到了该问题的一个独特属性,即房屋总是高于地面的,而且利用多边形方块可以清晰地标出其轮廓。

拉普拉斯滤波模型

如图所示为 Matlab 建模的本地拉普拉斯滤波窗口,其中“img”变量为包含4个通道的原始图像,其中除了RGB三原色通道外,还有一个额外的 Alpha 通道,用来标明每个像素点的灰度信息。而变量“img1”是与“img”完全相同的图像,只是被滤除了 Alpha 通道。

拉普拉斯滤波结果,红色色块为房屋

OpenCV滤波模型

如图所示是利用OpenCV开源计算机视觉库实现的第二个滤波器,以及滤波结果,可以看到受灾房屋被清晰地滤出了(相对CNN来说)。

OpenCV滤波结果

如图所示为两个滤波器的作用效果。

两个滤波器的综合作用结果

在输出结论前,还需要将此时的滤波结果与灾前图像进行最后的对比,用14%的面积阈值判定最终的受灾房屋情况,以避免此前计算中引入的误差。

14%面积的阈值判定

如图所示,其中黄色为拉普拉斯滤波的结果,绿色为灾前图像。

识别出受损房屋之后,借助灾前OSM数据库的帮助,还可以通过QGIS工具方便地导出每间受损房屋的地址列表信息。具体步骤是:首先将灾前OSM数据导入QGIS平台最为底层信息,然后导入之前的分析结果,通过对比得到受损房屋的具体位置,然后导入一份XML格式的拓扑结构说明文件,接着利用SpatiaLite数据库管理平台就能根据需要导出一份具体房屋和地址相对应的列表信息。

利用 QGIS 和 SpatiaLite 导出地址列表

最终对比发现,以CNN技术为核心的受灾房屋识别准确率只有78%,而拉布拉斯滤波则高达96.3%。另外,拉布拉斯滤波的这一优势在灾前建筑的识别上也得到了延续,其正常建筑的识别准确率高达97.9%,而相比之下CNN只有93%。到这里结论已经很明显了:基于平整度识别的拉普拉斯滤波最终效果要优于基于大数据训练的CNN卷积神经网络。

需要指出的是,上文提到的拉普拉斯滤波法的重要意义并不局限于其技术实现本身,这种根据特殊问题采取特殊处理方法的应对策略,也同样值得我们思考。

来源:medium,由雷锋网(公众号:雷锋网)编译

本文作者:恒亮

本文转自雷锋网禁止二次转载,原文链接

时间: 2025-01-18 22:47:46

图像处理一定要用卷积神经网络?这里有一个另辟蹊径的方法的相关文章

深度卷积神经网络CNNs的多GPU并行框架及其应用

[编者按]深度卷积神经网络有着广泛的应用场景,本文对深度卷积神经网络Deep CNNs的多GPU模型并行和数据并行框架做了详细的分享,通过多个Worker Group实现了数据并行,同一Worker Group内多个Worker实现模型并行.框架中实现了三阶段并行流水线掩盖I/O.CPU处理时间:设计并实现了模型并行引擎,提升了模型并行计算执行效率:通过Transfer Layer解决了数据存储访问效率问题.此框架显著提升了深度卷积神经网络训练速度,解决了当前硬件条件下训练大模型的难题. 以下为

机器视觉与卷积神经网络

根据2016年嵌入式视觉联盟进行的嵌入式视觉开发者调查2,77%的受访者表示目前正在或计划将要利用神经网络来处理分类工作.卷积神经网络并不是一个最近才出现的新概念.但是随着机器视觉的发展,卷积神经网络的应用也变得越来越重要了. 机器视觉卷积神经网络.jpg 早在1968年,加拿大神经生物学家David Hubel与瑞典神经生理学家Torsten Wiesel针对猫科动物视觉皮层进行了合作研究.视觉皮层是大脑皮层中主要负责将视觉数据处理成可用信息的部分.因此他们的目标是寻求如何从大脑接受到眼睛所采

卷积神经网络CNN总结

从神经网络到卷积神经网络(CNN) 我们知道神经网络的结构是这样的:  那卷积神经网络跟它是什么关系呢? 其实卷积神经网络依旧是层级网络,只是层的功能和形式做了变化,可以说是传统神经网络的一个改进.比如下图中就多了许多传统神经网络没有的层次. 卷积神经网络的层级结构 数据输入层/ Input layer 卷积计算层/ CONV layer ReLU激励层 / ReLU layer 池化层 / Pooling layer 全连接层 / FC layer 1.数据输入层 该层要做的处理主要是对原始图

卷积神经网络(CNN)新手指南

卷积神经网络(Convolutional Neural Network,CNN)新手指南 引言 卷积神经网络:听起来像是生物与数学还有少量计算机科学的奇怪结合,但是这些网络在计算机视觉领域已经造就了一些最有影响力的创新.2012年神经网络开始崭露头角,那一年Alex Krizhevskyj在ImageNet竞赛上(ImageNet可以算是竞赛计算机视觉领域一年一度的"奥运会"竞赛)将分类错误记录从26%降低到15%,这在当时是一个相当惊人的进步.从那时起许多公司开始将深度学习应用在他们

卷积神经网络新手指南之二

卷积神经网络新手指南之二 引言 本文将进一步探讨有关卷积神经网络的更多细节,注:以下文章中部分内容较为复杂,为了保证其简明性,部分内容详细解释的研究文献会标注在后. 步幅和填充 让我们看回之前的转换层,在第一部分中我们提到过过滤器.接受场.现在,我们可以通过改变2个主要参数来校正每一层的行为.在选择过滤器大小之后,我们也必须选择"步幅"和"填充". 步幅控制着过滤器如何进行卷积.在第一部分中我们有提到一个例子,过滤器围绕输入体量通过一次移动一个单位进行卷积.过滤器移

Top100论文导读:深入理解卷积神经网络CNN(Part Ⅰ)

更多深度文章,请关注:https://yq.aliyun.com/cloud 作者信息 Adrian Colyer:morning paper编辑.Accel Partners投资合伙人.SpringSource首席技术官.VMware技术总监. 领英:http://www.linkedin.com/in/adriancolyer/ Twitter:https://twitter.com/adriancolyer 本文介绍清单" Top100深度学习论文" 中几篇文章,现在将从&quo

前 Google 科学家林德康详解:卷积神经网络如何应用于文本分类 | AI 研习社

提起卷积神经网络(Convolutional Neural Network, CNN),大部分人首先会想到图像识别.图像分类.图像处理等视觉应用场景.的确,CNN 在计算机视觉领域做出了巨大贡献,是当今绝大多数计算机视觉系统的技术核心,在谷歌 AlphaGo.ImageNet 图像分类和 Facebook 图像自动标记等场景得到了广泛应用. 但其实,把模型的输入元素从像素点换成文本集,CNN 还可以应用在自然语言处理(Natural Language Processing,NLP)场景中,例如文

CVPR2017精彩论文解读:用于生物医学图像分析的精细调节卷积神经网络

雷锋网(公众号:雷锋网)AI科技评论按:虽然CVPR 2017已经落下帷幕,但对精彩论文的解读还在继续.下文是宜远智能的首席科学家刘凯对此次大会收录的<用于生物医学图像分析的精细调节卷积神经网络:主动性&增量性>(Fine-tuning Convolutional Neural Networks for Biomedical Image Analysis: Actively and Incrementally)一文进行的解读. 文章介绍: 这篇主要针对医学图像处理领域标注数据匮乏的问题

卷积神经网络算法的简单实现

前言 从理解卷积神经到实现它,前后花了一个月时间,现在也还有一些地方没有理解透彻,CNN还是有一定难度的,不是看哪个的博客和一两篇论文就明白了,主要还是靠自己去专研,阅读推荐列表在末尾的参考文献.目前实现的CNN在MINIT数据集上效果还不错,但是还有一些bug,因为最近比较忙,先把之前做的总结一下,以后再继续优化. 卷积神经网络CNN是Deep Learning的一个重要算法,在很多应用上表现出卓越的效果,[1]中对比多重算法在文档字符识别的效果,结论是CNN优于其他所有的算法.CNN在手写体