舰船识别一直以来都处于相对落后的状态,关注该领域的学者较少,舰船识别的问题一直都没有得到很好的解决。舰船识别和其他领域的识别有相似之处,都受环境因素影响比较大。影响因素主要包括低能见度、云及海况等复杂背景杂波因素;观测摄像机角度相对舰船的角度;遮挡因素。这些因素导致给舰船识别带来了很大的困难。识别方法主要采用传统机器学习及模式识别方法[1 – 4],但传统技术无法满足现实的需求。这些技术需要专家手工设计出特征提取器,只有好的特征提取器才能提高识别系统的性能,然而手工设计需要设计者大量的先验知识并消耗大量的时间,因此很难利用大量的数据。除此之外,传统方法依赖手工调参数,因此特征的设计中允许出现的参数量十分有限。随着2012年Alex Krizhevsky的AlexNet[5]在ILSVRC[6]竞赛中获得冠军,深度学习模型在ImageNet[7]数据集上展现了惊人的能力,同时在GPU高度并行处理计算的支持下,网络变深、宽度变宽,卷积层数及参数量增多,模型的Top-5错误率从2012年AlexNet的16.4%降至2015年ResNet[8]的3.57%,已经达到了state-of-the-art,深度卷积神经网络在识别领域表现出非常好的性能。
本文将深度卷积神经网络迁移到舰船目标识别中,在AlexNet模型基础上,调整顶部卷积层,并采用数据扩充技术[9 – 11]构建舰船数据集训练舰船识别模型,并对结果进行分析。
1 舰船图像数据集构建现有的深度卷积神经网络复杂度较高,网络含有的参数量可以达到百万级别,因此训练如此复杂的网络需要大量的图像数据,但目前由于资源有限,舰船图像数据获取途径比较单一,舰船图像主要通过互联网获取,并且获取的图像数据量无法满足深度学习对大数据的要求。为构建舰船训练数据集。通过Internet搜索相关舰船网站,收集到的舰船原始图像共360张,并将其分为6大类,每类60张,部分图像如图1~图6所示。
由于获取的原始图像尺寸不统一,需要将其缩放到统一的大小,这里将图像缩放到227×227×3。由于通过上述单一手段获取的图像数量难以满足训练深度神经网络,为了防止训练过程中出现过拟合,现通过数据扩充技术对上述原始图像进行扩充,原始图像扩充技术包括部分图像增强技术、图像尺度变换、图像反转、旋转等方法等,如图7所示。
图像经过数据扩充及手工标注后,将原有数据增加到每类1 200张,形成了包含72 000张图像的训练集。另外再收集每类12张图片,经过数据集扩充后得到包含14 400张图像的验证集。
2 基于Caffe[12]-AlexNet网络的舰船识别AlexNet是具有历史意义的一个网络结构,在2012年ILSVRC图像分类竞赛比赛中获得冠军,top-5错误率比上一年的冠军下降10%。
AlexNet网络结构包括输入输出层、卷积层、激活层、下采样层、局部归一化、Dropout层及全连接层,网络结构如图8所示。
在上文所构建的舰船图像数据集上训练Caffe-AlexNet网络。训练网络的硬件平台为Win10-x64系统,处理器为8核Intel(R) Core (TM) i7-6700 CPU@3.40 GHz,内存为16 GB,GPU为NVIDIA Quadro M2000显存4 GB。训练后得到识别舰船的Caffe-AlexNet-Ship模型,识别正确率为76.63%。模型在训练迭代2万次后趋近于平稳,损失值也稳定在0.76附近,如图9和图10所示。
在训练好的Caffe-AlexNet-ship模型后,经过测试集测试,正确率也在76%附近,损失值与训练集的损失值变换趋势一致,最后稳定在0.76附近,如图11和图12所示。
由图可以看出采用Caffe-AlexNet网络直接训练舰船数据集无法得到较好的识别率。由于舰船数据集较小,网络深度较浅无法很好地提取目标特征,因此最终的识别正确率只能达到76.6%。
3 基于迁移的AlexNet网络舰船识别深度卷积神经网络由多个层组合而成,每个层在深度网络中都发挥着一定的作用。对于一个训练好的网络模型,其底层提取的特征属于物体的通用特征,这些特征一般都表现为局部的纹理、轮廓及颜色特征,而高层的特征从这些较为具体的底层特征提取出来,一定程度上表现为物体的抽象属性[13]。在此理论根据下,采用迁移学习,将ImageNet数据集上训练好的Caffe-AlexNet模型迁移到舰船识别中,保留模型底层特征,用舰船数据集来训练高层特征,同时微调底层特征,Caffe-AlexNet的迁移网络结构同图8。
训练后得到Caffe-AlexNet-Finetuning模型,模型识别准确率达到91.08%,训练过程的准确率随迭代次数的增加,准确率也稳步提升,在训练迭代次数达到2万多时网络开始收敛,并趋于稳定。由于只需要微调网络底层特征,而高层在较大学习率的调整下,模型的损失值从训练开始到结束一直保持在0.3上下很低的水平,模型的识别正确率及损失值如图13和图14所示。
用训练好的Caffe-AlexNet-Finetuning模型测试识别测试集图像,得到测试正确率及损失值如图15和图16所示,从图中可以看出模型在测试集上的效果与训练集上的效果相当。
从图中可以看出训练后的Caffe-AlexNet-Finetuning在测试集上的表现较好,测试平均正确率可达到91.08%,平均损失函数值为0.340 970。
4 结 语本文采用图像扩充技术构建了小样本舰船数据集,在该数据集上训练Caffe-AlexNet及迁移Caffe-AlexNet-Finetuning网络,比较得到的模型识别正确率及损失值曲线,可以得出:
1)采用基于Caffe-AlexNet网络直接训练舰船数据集,识别正确率较迁移学习的Caffe-AlexNet-Finetuning模型低。出现此情况的主要原因是舰船数据集较小,迁移学习中的底层参数几乎都来自于ImageNet数据集的训练,只需要微调底层参数,加速学习上层参数即可,而没有经过ImageNet数据集训练的网络在小数据集上训练无法很好提取舰船的底层特征,导致识别准确率低。
2)在无法得到较大数据样本时,可以通过数据扩充技术对样本进行扩充,但为保证识别准确率,迁移学习在识别舰船不失为一种较好的应用。
[1] |
王彦情, 马雷, 田原. 光学遥感图像舰船目标检测与识别综述[J]. 自动化学报, 2011, 37(9): 1029-1039. |
[2] |
周珍娟, 韩金华. 舰船遥感图像的目标识别研究[J]. 舰船科学技术, 2014, 36(12): 86-90. DOI:10.3404/j.issn.1672-7649.2014.12.019 |
[3] |
赵志刚. 舰船自动识别系统中的网络安全技术研究[J]. 舰船科学技术, 2016, 38(5A): 121-123. |
[4] |
赵矿所, 林钧清. 神经网络在舰船噪声识别中的应用[J]. 舰船科学技术, 1995, 17(6): 32-36. |
[5] |
KRIZHEVSKY A, SUTSKEVER I, HINTON G E. Imagenet classification with deep convolutional neural networks[J]. Communications of the Acm, 2012, 60(2): 2012. |
[6] |
LAB S V. ILSVRC[EB/OL]. http://image-net.org/challenges/LSVRC/.
|
[7] |
Stanford Vision Lab S U, Princeton University ImageNet[EB/OL]. http://www.image-net.org/.
|
[8] | |
[9] |
ZENG X, HUANG H, QI C. Expanding training data for facial image super-resolution[J]. IEEE Transactions on Cybernetics, 2017, PP(99): 1-14. |
[10] |
WU Y N. Data augmentation[J]. Computer Vision, 2014, 165-166. |
[11] |
FAWZI A, SAMULOWITZ H, TURAGA D, et al. Adaptive data augmentation for image classification[C]//IEEE International Conference on Image Processing, 2016: 3688–3692.
|
[12] |
JIA Y A S, Evan and Donahue, Caffe[EB/OL]. http://caffe.berkeleyvision.org/.
|
[13] |
ZEILER M D, FERGUS R. Visualizing and understanding convolutional networks[M]. Springer International Publishing, 2014: 818–833.
|