Ground-based Cloud Recognition Based on Lightweight Neural Network
-
摘要:
针对目前云识别效率低下,同时缺乏公认且严谨、公开的地基云数据集问题,利用专业设备结合人工标注和迁移学习,构建了目前规模最大且符合国际气象组织标准的云公开数据集HBMCD,并且在此基础上,利用深度可分离卷积、膨胀卷积等技巧构建基本单元,通过组合不同的基本单元构建了轻量级云图分类模型LCCNet.经过多组对比实验,证明了LCCNet不仅参数量低、运算复杂度低,而且针对HBMCD数据集具有高达97.35%的准确率,为设备集成与实际应用提供了可能性.
Abstract:In view of the current low efficiency of cloud identification and the lack of recognized and rigorous open cloud dataset, the largest open cloud dataset HBMCD was constructed by professional equipment combined with manual annotation and transfer learning. It conformed to the standards of the international meteorological organization under the guidance of professionals. On the basis of this, the basic unit by means of depth separable convolution and expansion convolution was constructed, and the light cloud image classification model LCCNet was established by repeating different basic units. Through enough comparative experiments, it is proved that LCCNet not only has low level at parameters and operation complexity, but also has a high accuracy (97.35%) for HBMCD data set, which provides a possibility for equipment integration and practical application.
-
云是地球热力平衡和水气循环的重要组成部分,云的形状和形态反映了大气运动的稳定程度和天气特征,是预示未来天气变化的主要特征之一. 根据国际气象组织的标准[1],基于云的高度和形状,云分为3族10属29类,其中云属是本文关注的重点,它具有10个类别标签. 不同类别的云具有不同的形态,准确地识别云对提升天气预报的准确性、气候模型预测的有效性以及理解全球气候变化具有重要的意义.
目前,大多数气象站对云的识别依赖于气象观测员人工目测识别[2],但人工识别易受到观测员的心情、观测经验等主观因素的影响,此外,由于云的形状变幻莫测,人工观测工作量巨大,难以保证长时间不间断的观测,制约了云识别的准确性和连续性. 近年来,随着数字图像处理和模式识别技术的飞速发展,基于云图片的自动化识别技术已成为气象学方面的研究热点. 云自动化识别技术分为2个方向[3]:卫星云图云识别和地基云图云识别. 地基云图较卫星云图而言,具有更高的空间分辨率及更丰富的局部信息,因此,基于地基云图的云自动化识别更受到研究人员的关注. 但由于云的非刚体结构以及其多变的特性,利用经典图像特征建立地基云图识别模型的实验效果并不理想. 例如:李晨溪等[4]对云图的灰度数据进行扩展自相似(extended self-similar,ESS)模型标度分析,利用不同云系的标度特征对5类共150张云图进行识别,准确率接近90%,但由于测试样本数量有限,无法验证算法的鲁棒性. 张弛等[5]提出一种基于可见光-红外图像信息融合的云状识别方法,对5种云图进行识别,平均准确率为82%,但此算法需综合考虑全天空云图及红外云图,适用性不高. 因此,利用深度学习自动提取云的特征完成云识别是一个有效的途径.
近年来,随着数据集的产生、计算性能的提升、各类机器学习算法的发展,利用深度学习处理具体问题越来越受到关注. 2012年,Google公开的ImageNet[6]数据集使得研究人员拥有了训练、测试以及竞赛的素材. 此后,AlexNet[7]、GoogleNet[8]、ResNet[9]等经典的网络依次出现,一次次地刷新了各类比赛的记录,甚至完成了人力都无法实现的分类任务. 目前,基于深度学习的分类网络的研究方向主要有2个:一个是追求模型的准确性,因此,为了拟合大量的数据通常添加各种复杂的技巧,使模型的参数量和计算量变大,增加了实际部署网络模型的困难,典型的有Inception-V3[10]、DenseNet[11]等;另一个是追求模型的轻量化,通过一些技巧让模型的参数大幅度减少,同时尽可能保证准确率,典型的有Xception[12]、MobileNet-V2[13]、ShuffleNet[14]等. 云识别的任务核心为对云图片进行分类,因此,这些成熟的研究成果均可以作为构建模型的参考.
目前,已有部分学者公开了自己的云数据集并提出了相应的分类方法. 这些数据集针对不同的应用场景进行图像采集并加以筛选,包括SWIMCAT[15](Singapore whole-sky imaging catagories database)、HUST[16](Huazhong University of Science and Technology)和MGCD[17](multimodal groud-based cloud datobase). 其中,SWIMCAT用WAHRSIS设备在新加坡采集784张图片,并且将云分为5类(非国际气象组织标准类别). Dev等[15]使用了传统的方法,即提取颜色和结构特征用于分类,准确率达到了95%;HUST利用自己的设备采集了1 231张图片,并分为8类云与1类无云,同时提出了颜色统计转换(color census transform,CCT)结合支持向量机(support vector machine,SVM)的方法进行云分类,准确率达到了79.8%;MGCD采集了共8 000张图片,分为5类云、1类混合云以及1类晴空,并利用分层多模态融合(hierarchical multimodal fusion,HMF)进行分类,达到了87.9%的准确率. 可以看到,这些数据集均不是按照国际气象组织的标准严谨分类的,不具有应用的泛化性. 在这3个数据集的基础上,CCSN[18](cirrus cumulus stratus nimbus)利用自己的设备以及互联网采集了2 543张图片,标注为标准的10类云以及额外1类航迹云. 基于此数据集,Zhang等[18]提出了一种深度学习网络模型CloudNet,其结构与AlexNet十分相似,准确率达到了91%. CCSN虽然具有全部的类别,但是其图片有很多是通过互联网获取的,图片质量参差不齐,因此,基于此数据集训练出来的模型难以实际部署至具体设备以实现产业化. 另外,目前的大多数方法都处于实验阶段,没有考虑模型的参数量及计算量,导致模型过大,通常只能本地测试而无法集成于算力较小的设备. 此外,赵亮亮[19]利用图像与辐射信息融合识别方法也取得了很好的效果.
本文利用华云升达(北京)气象科技有限公司的全天空成像仪采集了大量高质量地基云图片,并且利用经典算法将原始图片进行畸变校正预处理. 通过人工标注与迁移学习辅助验证对校正后的图片进行分类,构建了地基云图片数据集HBMCD(Huayun BJUT-MIP cloud dataset),涵盖标准10类云和无云,数量达到了25 119张. 基于此数据集,本文提出了一种轻量级的云识别网络LCCNet,通过多组实验证明,LCCNet在保证分类准确率的同时大幅度降低了模型的参数量以及运算量.
1. 地基云图数据集HBMCD
1.1 地基云的分类和特点
根据国际气象组织标准,按照云的形状、形成原因,云分为积雨云、雨层云、卷云、高层云、层积云、卷层云、层云、卷积云、高积云和积云10个云属. 云属分类及其特点如表 1所示. 本文以此表为依据,对收集到的图片进行筛选及分类.
表 1 云的基本信息Table 1. Basic information of cloud学名 简写 云状特征 积云 Cu 具有圆拱形向上凸起的顶部;云团大小与拳头类似;边缘清晰 积雨云 Cb 云体浓厚,呈花椰菜状;边缘轮廓模糊 层积云 Sc 云块分布松散;呈群、行、波状分布;常呈灰色或灰白色 层云 St 云体均匀成层;覆盖面积大,几乎布满天空;多呈灰色. 雨层云 Ns 云体低而漫无定型;常布满天空;云层蓬松,呈暗灰色 高层云 As 云体较厚,布满天空;太阳透过几乎没有光晕;云体常具有条纹结构,呈灰白色或灰蓝色 高积云 Ac 云块较小,轮廓分明;薄的云块呈白色,能见日月轮廓,厚的云块呈暗灰色,日月轮廓分辨不清;云体呈椭圆形、瓦块状、鱼鳞片或水波状分布 卷云 Ci 薄而透光性较好;洁白而亮泽;云体呈丝缕结构,似马尾 卷层云 Cs 云底具有丝缕的结构;云体较薄,能透过日、月的光;在太阳照耀下有明显的光晕 卷积云 Cc 云块发白、发亮;呈白色细鳞片状;常成群排列 1.2 HBMCD构建方法
1) 图像采集与预处理
本文采集地基云图的设备是全天空成像仪,如图 1所示. 这是一套全自动、全色彩的天空成像系统,其成像部分是一套具有高性能电荷耦合器(charge coupled device,CCD)镜头的数字成像系统,能够定时拍摄全天空可见光图像,并且可利用太阳追踪装置转动镜头来阻挡太阳直射的入射光.但是由于CCD镜头的光学特性,原始地基云图成像会发生切向畸变,成像看起来就像将一张正常的图片包裹在一个球体里,如图 2所示. 因此,常用的图像识别方法在处理畸变图像时会因为其角度、亮度、黑色边缘等原因发生误检. 为校正原始地基云图的畸变,本文采取张正友相机标定法[20],结合图像裁切、亮度调节等操作对图片进行预处理,预处理效果如图 3所示,图像已恢复至正常的视觉观感.
2) 人工标注与辅助验证
因为数据量庞大,人工分类易出现错误,本文利用2个步骤对地基云图进行标注.
第1步对部分预处理的图片进行人工分类,形成原始数据集,并利用原始数据集进行迁移学习得到迁移学习模型,如图 4(a)所示;第2步利用迁移学习模型对数据集进行辅助验证,将分类错误的图片以及分类置信率低的图片筛选出来并进行重新确认类别,如图 4(b)所示. 然后逐次加入其他图片,重复上述步骤,直至构建成完整的数据集.
具体的方法如下.
在第1步中,首先对预处理的图片进行了筛选,尽量使图片均匀分布在不同的条件,如光照、天气状况、季节等. 然后选取其中一部分图片进行人工标注,标注的类别为国际气象组织标准的10类云属以及1类无云. 接着利用迁移学习对已分类图片进行辅助验证,为了保证更高的准确率,本文对比了5种经典的模型:VGG16、VGG19、Inception-V3、ResNet-152、DenseNet-201,测试迁移学习准确率. 测试结果见表 2,通过对比可知,DenseNet-201的准确率最高,达到了96.50%,因此,选择此网络进行第2步的辅助验证.
表 2 迁移学习模型准确率对比Table 2. Comparison of transfer learning model accuracy模型 准确率/% DenseNet-201 96.50 VGG19 86.10 VGG16 91.30 Inception-V3 93.30 ResNet-152 96.10 在第2步中,设置DenseNet-201中SoftMax输出的最大概率为此图片在模型的置信度. 具体的辅助验证方法为:将一张图片输入至网络,将预测结果与实际标签对比,若分类错误,则再次确认其标签;若分类正确,则观察其置信度是否大于0.95,若大于则暂且认为此图片分类正确,若分类错误则再次确认其标签.
接着逐步添加其余图像,重复上述过程,对初步获得的数据集进行扩大和筛选,不断提高数据集的置信率直到构建成完整的数据集. 在筛选过程中,初次置信率未达标的图像分布如表 3所示.
表 3 未达标图像分布Table 3. Distribution of the error images类别 分布/% Ac 8 As 9 Cb 12 Cc 14 Ci 17 Cs 18 Cu 8 No 1 Ns 1 Sc 11 St 1 最终得到的数据集各类别的图片数量如表 4所示,图片共25 119张.
表 4 HBMCD数据集信息Table 4. Information of HBMCD类别 数量 Ac 2 256 As 2 584 Cb 1 392 Cc 1 302 Ci 3 075 Cs 2 638 Cu 3 100 No 3 804 Ns 1 236 Sc 2 148 St 1 584 总计 25 119 数据集公布的网址如下,可供下载研究.
https://github.com/SadaharuZL/HuaYun-BJUT-MIP-Cloud-Dataset.
1.3 数据集对比
表 5对比了上文提到的4种数据集的类别、数量以及类别标签,可以看到,本文构建的HBMCD数据集种类齐全,符合国际气象组织标准,并且数量最多,几乎是CCSN的10倍,图像质量也较之更高.
表 5 数据集对比Table 5. Comparison of datasets数据集 类别数量 图片数量 种类 HBMCD 11 25 119 Ac、As、Cb、Cc、Ci、Cs、Cu、No、Ns、Sc、St CCSN 11 2 543 Ac、As、Cb、Cc、Ci、Cs、Cu、Ct、Ns、Sc、St HUST 9 1 231 Ac、As、Cc、Ci、Cs、Cu、No、Sc、St SWIMCAT 5 1 013 No、pattern、thick-dark、thick-white、veil 2. 轻量级分类模型LCCNet
基于上文提出的HBMCD数据集,本节通过重复多个轻量化的基本单元构建了一种轻量级的神经网络模型LCCNet.
2.1 建模分析
云体的层次结构极为丰富,因此,为使网络更适用于提取云的特征,所设计的网络模型需要在同一层具有不同的感受野,从而保证在网络同一层的特征图中的信息尽可能被利用到,实现对云体特征的全方面、精确的提取.
同时,由于多次重复一个相同结构的基本单元构建的网络具有易实现性及可拓展性,越来越多的网络模型采用这种结构,如ResNet、DenseNet、ShuffleNet等. 通常而言,这种基本单元的内部特征图尺寸在运算中会保持不变,有额外的一个模块对特征图进行通道扩增或降采样. 因此,这种基本单元可以总结为一个提取特征单元(extract-unit)和一个降采样单元(down sample-unit)的组合,本文也将采取这种模式.
2.2 基本单元
在提取特征单元中,本文利用了4种技巧,即深度可分离卷积(depthwise separable convolutions, DWConv)、逐点卷积(pointwise convolutions)、通道打乱(channel shuffle)、膨胀卷积(dilated convolution)[21].
首先,为了降低标准卷积运算的复杂度,根据分组卷积(group convolutions)的思想,Xception使用了深度可分离卷积进行逐通道地卷积. 如图 5(b)所示,这种方法通过将输入通道拆分并与卷积核逐通道地进行卷积,理论上减小了卷积核的尺寸进而大幅度地降低模型的宽度. 同时,逐点卷积利用1×1的卷积核进行通道间的信息融合以及通道的扩张,如图 5(c)所示. 这种方法既保留了提取特征单元的宽度与深度,又能大大地降低了模型的参数量.
然后,为了更充分地利用各个通道进行特征提取,弥补模型宽度的降低,ShuffleNet提出了利用通道间的转置将通道打乱的方法,如图 6所示. 这种方法通过打乱通道间的信息,对信息在通道间进行了一次人为的融合,使模型的理解能力增强.
最后,为了降低模型的深度,本文采用了不同膨胀率r的膨胀卷积. 如图 7(b) (c)所示,膨胀卷积使得相同尺寸的卷积核拥有了更大的感受野,因此,适当地利用这种卷积核可保证在提取相同层次的特征时降低模型的深度. 将这3种技巧组合,形成了本文的特征提取单元.
结合上述4种技巧,本文的特征提取单元如图 8(a)所示. 它的流程为:首先,将输入的特征拆分为4组通道,其中第1组通道利用短链(short-cut)实现残差的提取,第2组通道利用标准深度可分离卷积和逐点卷积的组合进行特征提取,第3组与第4组通道的结构和第2组相同,但是它们的卷积核使用的是不同膨胀率的膨胀卷积,具有更大的感受野,使得几组通道获得不同感受野的信息,以便对云这种层次丰富的物体进行特征提取. 然后,将这4组通道连接,将通道打乱以发挥通道的表征能力,弥补通道宽度变窄的损失. 最后,利用全局池化以及2个全连接层对相连的通道进行整体特征的提取,结果与原通道的特征图中每个元素相乘,实现对通道的权重分配,这种方法被称为通道的注意力机制(attention mechnism)[22],它能让模型知道哪些通道的特征图更值得关注.
在降采样单元中,如图 8(b)所示,首先,利用一个逐点卷积对打乱的通道进行信息间的整合;然后,分别利用3×3的平均池化和最大池化完成空间尺度的降采样,前者可以提取局部区域的整体信息,后者可以提取局部区域的轮廓信息;最后,将二者的通道相连,这样就实现了增加通道的宽度.
将重复不同次数的提取特征单元与降采样单元相结合,形成了本文的一个基本单元,本文称之为Stage. 下面利用不同的Stage构建LCCNet.
2.3 模型结构
LCCNet的结构如表 6所示,首先经过一层普通的3×3卷积层和池化层提取浅层信息,然后利用4个不同的Stage提取特征,其中D为上文所说的降采样单元,E为提取特征单元. 最后经过全局池化和一层全连接层实现特征分类.
表 6 模型结构Table 6. Model structure层 输出尺寸 核尺寸 步长 重复次数 输出通道数 输入图像 224×224 3 Conv1 224×224 1×1 1 1 24 MaxPool 112×112 3×3 2 Stage2 D 56×56 1 48 E 56×56 2 Stage3 D 28×28 1 96 E 28×28 3 Stage4 D 14×14 1 192 E 14×14 4 Stage5 D 7×7 1 384 E 7×7 3 Conv6 7×7 1×1 1 1 256 Global Pool 1×1 7×7 1 Fc 11 表中Stage的数量、输出通道数以及各模块重复次数等参数是通过多组对比实验选出的最优方案,保证准确率的同时最大程度压缩模型的规模.
3. 实验设置与结果
本节将介绍具体的实验内容,包括实验配置、模型的可视化、实验结果及分析.
3.1 实验配置
本文首先将按照8∶1∶1的比例分成训练集、验证集和测试集,然后对数据集进行数据增强,即通过图像旋转、裁切等方式使数据集规模进一步扩大,然后进行训练与测试,并且使用交叉验证将上述操作重复6次取实验结果的平均值. 本文使用Pytorch框架对LCCNet进行搭建,损失函数为交叉熵函数,优化器为Adam,迭代次数设置为100,初始学习率为0.01.
3.2 模型可视化
本文尝试了用Grad-Cam[23]方法对模型进行可视化,如图 9所示. Grad-Cam的步骤为:选取特定目标层数,对此层数的所有通道进行加权平均,并以热力图的方式展现模型的提取特征能力. 本文选取了Stage4作为目标层数.
在图片上,选取了3种基本形状的云图,即卷云、积云、层云以及1类无云,在模型上选取了Stage4层. 可以看到,在卷云的Grad-Cam中,模型更注重右上部分的图像特征. 观察原图,在右上角确实有非常明显的马尾状的卷云. 在积云图片的Grad-Cam中,模型更注重中左侧部分的图像特征,观察原图确实是整块浓积云的主体. 在层云图片的Grad-Cam中,模型更注重中左上部分的图像特征. 观察原图,虽然层云几乎充满了整张图片,但是最清晰的部分集中于中左上部分. 而在无云中的Grad-Cam中,模型只关注了太阳附近的区域,而其他没有云的区域没有关注. 通过这4种基本形状的云图,可以看到LCCNet确实可以提取到图片有效特征以实现对云状的分类.
3.3 实验结果
1) 混淆矩阵
混淆矩阵如图 10所示. 可以看到11个类别的整体实验结果都比较好,而其中卷积云、卷层云、卷云3个种类之间较容易发生混淆. 事实上,这3种云之间的变换非常频繁,因此,在图像上经常存在这2种甚至3种云,而在数据集中本文依据某种云分布区域的大小来决定这个图片的标签,当这几种云的占比相似时,模型可能会模糊不清,而人工判定也可能出现混淆,如图 11所示.
由表 3可发现,在构建数据集时初次未达标的图像种类的分布也与混淆矩阵的结果一致,即卷积云、卷层云、卷云三者出现未达标的概率较大,需多次重复校验.
但为了使数据集更具有实用性和可靠性,并没有将这些图片删除. 另外,还有2组云,即积云和积雨云,也较容易发生混淆,这2种云在地对空的角度拍摄的图片中很难分辨,因此,数据集自身就有混淆的成分.
2) 单类的评价指标
针对单独的每类云,本文测试了查准率(precision)P、召回率(recall)R和F1三个指标,结果如表 7所示. P、R、F1的定义分别为
$$ P = \frac{{{t_{\rm{p}}}}}{{{t_{\rm{p}}} + {f_{\rm{p}}}}} $$ (1) $$ R = \frac{{{t_{\rm{p}}}}}{{{t_{\rm{p}}} + {f_{\rm{n}}}}} $$ (2) $$ {F_1} = 2\frac{{PR}}{{P + R}} $$ (3) 式中:tp为被模型分类正确的正样本数量;fp为被模型分类错误的负样本数量;fn为被模型分类错误的正样本数量.
表 7 单类评价指标Table 7. Single class evaluation index% 类别 F1 P R Cc 92 90 94 Cu 98 98 98 Ns 97 95 100 Sc 96 98 95 Cs 92 92 91 Cb 96 98 94 St 100 100 99 Ac 97 95 98 No 99 99 99 As 96 97 96 Ci 92 93 92 3) 多类的评价指标
为了验证模型的整体性能,计算了宏观(macro)和微观(micro)的准确率和召回率. macro指对每个类求出某个指标,然后对这些指标进行算术平均;micro指将所有类视为一个查询,将各种情况求和,进行指标的计算. 它们的计算公式分别为
$$ {P_{{\rm{macro}}}} = \frac{1}{n}\sum\limits_1^n {P\left( i \right)} $$ (4) $$ {R_{{\rm{macro}}}} = \frac{1}{n}\sum\limits_1^n {R\left( i \right)} $$ (5) $$ {P_{{\rm{micro}}}} = \frac{{{{\bar t}_{\rm{p}}}}}{{{{\bar t}_{\rm{p}}} + {{\bar f}_{\rm{p}}}}}, {\rm{ }}{R_{{\rm{micro}}}} = \frac{{{{\bar t}_{\rm{p}}}}}{{{{\bar t}_{\rm{p}}} + {{\bar f}_{\rm{n}}}}} $$ (6) 式中:tp、fp、fn分别为11个种类相应指标的算术平均;i=0, 1,…, n(n=11).
结果如表 8所示,可以看到模型4个指标的平均值为96.0%,证明其有较高的可靠性.
表 8 多类评价指标Table 8. Multiple classes evaluation index% Pmacro Rmacro Pmicro Rmicro 平均 95.8 96.1 96.0 96.0 96.0 4) 与其他方法的对比
本文与现有其他的地基云识别算法以及产业中常用的几种模型在准确率、参数量、浮点运算次数上进行了对比,结果如表 9所示. 其中准确率的计算方法为
$$ A = \frac{{\sum\limits_1^n {{t_{\rm{p}}}\left( i \right)} }}{T} $$ (7) 式中: A为准确率;i=0, 1,…, n(n=11);T为所有图片的总数量.
表 9 结果对比Table 9. Comparison of results算法模型 A/% 参数量 浮点运算次数 ESS[9] 32.10 CNN with TDLBP[12] 67.10 3.06×107 7.00×1010 CloudNet[13] 77.32 4.00×108 8.92×1010 DenseNet-201 96.50 2.00×108 4.30×109 VGG19 86.10 1.97×108 1.97×1011 VGG16 91.30 1.55×108 1.56×1011 Inception-V3 93.30 2.72×108 2.85×109 ResNet-152 95.36 1.16×108 1.16×1011 MobileNet-V2 94.02 2.24×106 3.19×1010 ShuffleNetV-2 94.35 1.26×106 1.50×1011 LCCNet 97.35 0.44×106 8.72×108 相较于现有其他的地基云图识别算法,本文的方法无论是准确率还是参数量都具有大幅度的优势. 相较于其他经典的图像识别算法,对于较大的模型,采取迁移学习的方式拟合本文的数据集,如DenseNet-201、VGG19、VGG16、ResNet-152、Inception-V3、ResNet-152、CloudNet. 对较小的模型,如MobileNet-V2、ShuffleNet-V2[24],选择重新训练,并且实验配置与LCCNet一致. 实验结果显示,LCCNet的参数量几乎是最小模型ShufflenetV2的1/3,运算复杂度几乎是它的一半,但是准确率却是所有模型中最高的,证明LCCNet的设计确实降低了复杂度并且保证了提取图片特征的能力.
4. 结论
1) 利用全天空成像仪,通过图像预处理、人工标注和迁移学习等步骤,构建了涵盖11个标准类、2万余张地基云图的数据集,并在云图种类、云图的规范性上与现有公开数据集进行了比对,表明本文构建的数据集具有规模大、种类全、分辨率高、角度固定等优点,为后续基于该数据集进一步开展云状分类计数研究奠定了基础.
2) 基于重复提取特征单元及降采样单元,构建了轻量级云图分类模型LCCNet. 在分类准确度上,将本文模型与现有其他方法以及多种经典模型进行了比对,准确度最高,达到了97.35%;在轻量级程度上,与现有的MobileNet-V2等轻量级模型进行了比较,参数量及运算次数几乎达到了ShuffleNet-V2的1/3. 大量实验数据验证了本文所构建的LCCNet的高效性,为专属设备的集成提供了可能性.
3) 目前的数据集中依然存在着容易混淆的几类图片,在实际应用中依然存在着误检问题,因此,需要研究多标签的地基云图方法,将混淆图片中的云全部识别以解决此问题. 下一步会将算法模型与具体的设备结合在一起,进行更有实践性的测试.
-
表 1 云的基本信息
Table 1 Basic information of cloud
学名 简写 云状特征 积云 Cu 具有圆拱形向上凸起的顶部;云团大小与拳头类似;边缘清晰 积雨云 Cb 云体浓厚,呈花椰菜状;边缘轮廓模糊 层积云 Sc 云块分布松散;呈群、行、波状分布;常呈灰色或灰白色 层云 St 云体均匀成层;覆盖面积大,几乎布满天空;多呈灰色. 雨层云 Ns 云体低而漫无定型;常布满天空;云层蓬松,呈暗灰色 高层云 As 云体较厚,布满天空;太阳透过几乎没有光晕;云体常具有条纹结构,呈灰白色或灰蓝色 高积云 Ac 云块较小,轮廓分明;薄的云块呈白色,能见日月轮廓,厚的云块呈暗灰色,日月轮廓分辨不清;云体呈椭圆形、瓦块状、鱼鳞片或水波状分布 卷云 Ci 薄而透光性较好;洁白而亮泽;云体呈丝缕结构,似马尾 卷层云 Cs 云底具有丝缕的结构;云体较薄,能透过日、月的光;在太阳照耀下有明显的光晕 卷积云 Cc 云块发白、发亮;呈白色细鳞片状;常成群排列 表 2 迁移学习模型准确率对比
Table 2 Comparison of transfer learning model accuracy
模型 准确率/% DenseNet-201 96.50 VGG19 86.10 VGG16 91.30 Inception-V3 93.30 ResNet-152 96.10 表 3 未达标图像分布
Table 3 Distribution of the error images
类别 分布/% Ac 8 As 9 Cb 12 Cc 14 Ci 17 Cs 18 Cu 8 No 1 Ns 1 Sc 11 St 1 表 4 HBMCD数据集信息
Table 4 Information of HBMCD
类别 数量 Ac 2 256 As 2 584 Cb 1 392 Cc 1 302 Ci 3 075 Cs 2 638 Cu 3 100 No 3 804 Ns 1 236 Sc 2 148 St 1 584 总计 25 119 表 5 数据集对比
Table 5 Comparison of datasets
数据集 类别数量 图片数量 种类 HBMCD 11 25 119 Ac、As、Cb、Cc、Ci、Cs、Cu、No、Ns、Sc、St CCSN 11 2 543 Ac、As、Cb、Cc、Ci、Cs、Cu、Ct、Ns、Sc、St HUST 9 1 231 Ac、As、Cc、Ci、Cs、Cu、No、Sc、St SWIMCAT 5 1 013 No、pattern、thick-dark、thick-white、veil 表 6 模型结构
Table 6 Model structure
层 输出尺寸 核尺寸 步长 重复次数 输出通道数 输入图像 224×224 3 Conv1 224×224 1×1 1 1 24 MaxPool 112×112 3×3 2 Stage2 D 56×56 1 48 E 56×56 2 Stage3 D 28×28 1 96 E 28×28 3 Stage4 D 14×14 1 192 E 14×14 4 Stage5 D 7×7 1 384 E 7×7 3 Conv6 7×7 1×1 1 1 256 Global Pool 1×1 7×7 1 Fc 11 表 7 单类评价指标
Table 7 Single class evaluation index
% 类别 F1 P R Cc 92 90 94 Cu 98 98 98 Ns 97 95 100 Sc 96 98 95 Cs 92 92 91 Cb 96 98 94 St 100 100 99 Ac 97 95 98 No 99 99 99 As 96 97 96 Ci 92 93 92 表 8 多类评价指标
Table 8 Multiple classes evaluation index
% Pmacro Rmacro Pmicro Rmicro 平均 95.8 96.1 96.0 96.0 96.0 表 9 结果对比
Table 9 Comparison of results
算法模型 A/% 参数量 浮点运算次数 ESS[9] 32.10 CNN with TDLBP[12] 67.10 3.06×107 7.00×1010 CloudNet[13] 77.32 4.00×108 8.92×1010 DenseNet-201 96.50 2.00×108 4.30×109 VGG19 86.10 1.97×108 1.97×1011 VGG16 91.30 1.55×108 1.56×1011 Inception-V3 93.30 2.72×108 2.85×109 ResNet-152 95.36 1.16×108 1.16×1011 MobileNet-V2 94.02 2.24×106 3.19×1010 ShuffleNetV-2 94.35 1.26×106 1.50×1011 LCCNet 97.35 0.44×106 8.72×108 -
[1] BARRY R G. International cloud atlas, volume I: manual on the observation of clouds and other meteors[M]. Geneva: World Meterorological Organization, 1977: 323-324.
[2] 陈晓颖, 宋爱国, 李建清, 等. 地基云图云状识别技术及其研究进展[J]. 自动化技术与应用, 2014, 33(9): 1-6. https://www.cnki.com.cn/Article/CJFDTOTAL-ZDHJ201409002.htm CHEN X Y, SONG A G, LI J Q, et al. Progress in recognizing ground-based cloud technology [J]. Techniques of Automation and Applications, 2014, 33(9): 1-6. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-ZDHJ201409002.htm
[3] BUCH K A, Tr, SUN C H. Cloud classification using whole-sky imager data, SAND-95-8475C[R]. New Mexico: Sandia National Labs, 1995.
[4] 李晨溪, 付强, 邓芾. 基于ESS模型的云状自动识别方法[J]. 解放军理工大学学报(自然科学版), 2016, 17(3): 264-269. https://www.cnki.com.cn/Article/CJFDTOTAL-JFJL201603011.htm LI C X, FU Q, DENG F. Automatic cloud recognition method based on ESS model [J]. Journal of PLA University of Science and Technology(Natural Science Edition), 2016, 17(3): 264-269. (in Chinese) https://www.cnki.com.cn/Article/CJFDTOTAL-JFJL201603011.htm
[5] 张弛, 刘钧, 李旭光, 等. 基于可见光-红外图像信息融合的云状识别方法[J]. 气象与环境学报, 2018, 34(1): 82-90. doi: 10.3969/j.issn.1673-503X.2018.01.010 ZHANG C, LIU J, LI X G, et al. A cloud classification method based on information fusion of visible and infrared images [J]. Journal of Meteorology and Environment, 2018, 34(1): 82-90. (in Chinese) doi: 10.3969/j.issn.1673-503X.2018.01.010
[6] DENG J, DONG W, SOCHER R, et al. Imagenet: a large-scale hierarchical image database[C]//Proceedings of the 2009 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2009: 248-255.
[7] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. Imagenet classification with deep convolutional neural networks[C]//Advances in Neural Information Processing Systems. Cambridge, MA: MIT Press, 2012: 1097-1105.
[8] SZEGEDY C, LIU W, JIA Y, et al. Going deeper with convolutions[C]//Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2015: 1-9.
[9] HE K, ZHANG X, REN S, et al. Deep residual learning for image recognition[C]//Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2016: 770-778.
[10] SZEGEDY C, VANHOUCKE V, IOFFE S, et al. Rethinking the inception architecture forcomputer vision[C]//Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2016: 2818-2826.
[11] HUANG G, LIU Z, VAN DER MAATEN L, et al. Densely connected convolutional networks[C]//Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2017: 4700-4708.
[12] CHOLLET F. Xception: deep learning with depthwise separable convolutions[C]//Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2017: 1251-1258.
[13] SANDLER M, HOWARD A, ZHU M, et al. Mobilenet-V2: inverted residuals and linear bottlenecks[C]//Proceedings of the 2018 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2018: 4510-4520.
[14] ZHANG X, ZHOU X, LIN M, et al. Shufflenet: an extremely efficient convolutional neural network for mobile devices[C]//Proceedings of the 2018 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2018: 6848-6856.
[15] DEV S, LEE Y H, WINKLER S. Categorization of cloud image patches using an improved texton-based approach[C]//Proceedings of 2015 IEEE International Conference on Image Processing. Piscataway: IEEE, 2015: 422-426.
[16] ZHUO W, CAO Z, XIAO Y. Cloud classification of ground-based images using texture-structure features[J]. Journal of Atmospheric and Oceanic Technology, 2014, 31(1): 79-92. doi: 10.1175/JTECH-D-13-00048.1
[17] LIU S, DUAN L, ZHANG Z, et al. Hierarchical multimodal fusion for ground-based cloud classification in weather station networks[J]. IEEE Access, 2019, 7(1): 85688-85695. http://ieeexplore.ieee.org/document/8752209
[18] ZHANG J, LIU P, ZHANG F, et al. CloudNet: ground-based cloud classification with deep convolutional neural network[J]. Geophysical Research Letters, 2018, 45(16): 8665-8672. doi: 10.1029/2018GL077787
[19] 赵亮亮. 基于神经网络的云图识别与超短期直接太阳光辐射预测研究及应用[D]. 南京: 东南大学, 2017. ZHAO L L. Research and application of cloud pattern recognition and ultra short term direct solar radiation prediction based on neural network [D]. Nanjing: Southeast University, 2017. (in Chinese)
[20] ZHANG Z Y. A flexible new technique for camera calibration[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2000, 22(11): 1330-1334. doi: 10.1109/34.888718
[21] CHEN L C, PAPANDREOU G, KOKKINOS I, et al. Deeplab: semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected CRFS[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 40(4): 834-848. doi: 10.1109/TPAMI.2017.2699184
[22] HU J, SHEN L, SUN G. Squeeze and excitation networks[C]//Proceedings of the 2018 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2018: 7132-7141.
[23] SELVARAJU R R, COGSWELL M, DAS A, et al. Grad-cam: visual explanations from deep networks via gradient-based localization[C]//Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2017: 618-626.
[24] MA N, ZHANG X, ZHENG H T, et al. Shufflenet-V2: practical guidelines for efficient cnn architecture design[C]//Proceedings of the 2018 European Conference on Computer Vision. Berlin: Springer, 2018: 116-131.