单张图片使用CNN进行天气分类——文献笔记

论文:WEATHER CLASSIFICATION WITH DEEP CONVOLUTIONAL NEURAL NETWORKS

作者:Mohamed Elhoseiny1 Sheng Huang2 Ahmed Elgammal

论文链接https://www.researchgate.net/publication/280218749

出处:ICIP2015

数据库:http://www.cse.cuhk.edu.hk/leojia/projects/weatherclassify/index.htm

作者所用数据库是香港中文大学的Cewu Lu 提供的,他在CVPR2014和TPAMI2017分别发表了两篇关于两类天气分类的文章,前者用SVM分类,后者引入了CNN特征。但具体内容还没有看!

发现的问题:只对晴天和多云进行分类,如果加入雨雾等天气,数据库从哪里选?只讨论了分类精度,没有提到检测时间的问题

 

摘要:本文利用卷积神经网络(CNNs)研究了图像的天气分类。我们的方法在天气分类任务中超过了当前先进的技术。我们的方法达到了82.2%的标准化分类精度,而不是的53.1%。(54.8%的相对改进。)我们还研究了卷积神经网络的所有层的行为,讨论了有趣的发现。

关键词:Deep Learning, Weather Classification,Image Classification, Convolutional Neural Networks, Image Convolutional Activation Feature

 

一、介绍

对比文献:

[1] Cewu Lu, Di Lin, Jiaya J ia, and Chi-Keung Tang,“Two-class weather classification,” in IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2014, pp. 3718–3725.

[2] Martin Roser and Frank Moosmann, “Classification of weather situations on single color images,” in IEEE Intelligent Vehicles Symposium, 2008, pp. 798–803.

[3] Xunshi Yan, Yupin Luo, and Xiaoming Zheng, “Weather recognition based on images captured by vision system in vehicle,” in Advances in Neural Networks, pp. 390–398. 2009.

[4] Zichong Chen, Feng Yang, Albrecht Lindner, Guillermo Barrenetxea, and Martin Vetterli, “How is the weather:Automatic inference from images,” in IEEE International Conference on Image Processing (ICIP), 2012,pp. 1853–1856.

1、发现的问题:

大部分天气分类的方法分三步:1.提取天气图像感兴趣的区域;2.使用一些直方图描述子来表示不同的ROIs 3. 不同的分类器。

对于依赖天空特征的分类器在野外就不能进行很好的分类出来;需要预处理

很难捕捉到分类流形分线性

2、选择CNN的理由:

选择CNN的三个理由:1).捕获不同特征空间之间的非线性映射;2).深度CNN在广泛的图像表示和分类任务中展示了强大的鉴别能力;3).CNNs是一种简单而明确的端到端卷积架构,它可以简化天气分类,而不需要工程特性

3、天气分类和其他检测识别工作的区别。它更敏感的因素,如照明条件和天空和阴影的状态,而不是物体相关的信息,如形状和纹理。

4、创新点

本文重点研究了CNN在天气分类任务中不同层次引入的特征空间。

1).为解决天气分类问题,预训练的CNN在不同层面的表现如何?

2).为天气分类数据集优化的预训练CNN的精调将如何影响网络每一层的表示?

3).空间相干性在基于cnn的天气分类中有多重要?

二、方法

图1:天气预报cnn -体系结构(我们的神经网络遵循Alex et al[5]在前7层的cnn层规范,而输出层(第8层)被两个节点所取代,一个节点表示多云,一个节点表示晴)

图1构建两类天气任务。其中,前7层由5个卷积/池化层和三个完全连接层。相对文献【5】,第8层为两个节点。

1、损失函数

将正确标签的对数概率的平均值最大化作为最优化的CNN参数。We denote

the softmax(柔性最大值传输函数) loss of a training example image x with label l ∈ {Sunny, Cloudy} as loss(x, l).

2、训练及测试

采用批量随机梯度下降(批量大小= 50幅图像)的反向传播算法对气象分类cnn模型进行训练,使软最大损失最小化

输出层参数的学习率被赋值为剩余层参数学习率的十倍,剩余层参数的学习率被赋值为基础学习率。

输出层参数是随机初始化的,其他层参数是在ImageNet 的CNN预训练的。

这种方法从一个预先训练好的网络开始,并将其应用到一个新的任务中,比如我们的天气分类,叫做精调。精调(Fine-tuning)已被证明在其他任务如对象识别中是成功的。

使用Caffe框架进行训练和测试。

训练阶段:从缩减的大小为256*256的图像中随机采样227*277个补丁

3、研究层

We denote these layers in order as: Pool1, Pool2, Conv3, Conv4,Conv5, Pool5, FC6, FC7, FC8

为了研究这些层,我们提取这些层的激活作为给定图像(每个层的特征向量)的学习表示。

前7层,SVM;8层,直接预测分类。

另一方面,我们学习SVM分类器在ImageNet-CNN FC8层,其中包含对应于有语义含义的ImageNet视觉对象的1000维。这个实验的目的是观察这些语义维度是否有助于进行天气分类。

三、实验

1、实验设置

数据库,两类天气识别(晴天、多云),80%训练20%测试

我们以相同的百分比创建了5个随机训练测试分片,并报告了归一化精度的平均值比5个分片。

2、CNN模型层分析

我们做了几个实验,对天气- cnn模型和ImageNet-CNN模型在天气分类任务上进行逐层分析。

图2图3结果显示weathercnn特征优于ImageNet-CNN的特征

1)weathercnn更适应于天气分类;

2)天气- cnn相对于ImageNet-CNNs的改善在高层层中显著增加。因为随着层数越高,ImageNet-CNNs性能有所下降;

3)天气- cnn层数越多,性能最好。原因:低空层次善于描绘局部的细节特征,如边缘、角点、原始形状图案等,这是大多数图像所共有的。而更高层次的层更关注于捕获抽象的和特定于任务的信息,例如对象部分。天气- cnn相关高层次信息。

3、研究图像空间畸变对ImageNet-CNN层的影响

目的,前面研究表明,ImageNet-CNN在低层次性能好,高层次性能差。

具体见论文

4、与现有方法的比较

常用特征(GIST、HOG、混合特征)与天气- cnn的比较。CNN善于发现非线性映射;CNN在100万张图片(使用ImageNet数据)上进行了预先训练,这需要考虑到广泛的因素,包括低级抽象。

比较了weather - cnn和ImageNet-CNN以及其他最先进的天气分类方法;

 

四、结论

分类时,选用天气CNN做为训练集与image-NetCNN相比的优势

研究了各层在空间畸变下的性能下降

分类结果的提高

  • 0
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值