Journal of Image and Signal Processing
Vol.07 No.03(2018), Article ID:25756,6 pages
10.12677/JISP.2018.73016

Marine Ship Recognition Algorithm Based on Faster-RCNN

Dongliang Gu1, Xiaogang Xu2, Xin Jin2

1Five Cadets of Dalian Naval Academy, Dalian Liaoning

2Deptartment of Navigation, Dalian Naval Academy, Dalian Liaoning

Received: Jun. 11th, 2018; accepted: Jun. 28th, 2018; published: Jul. 5th, 2018

ABSTRACT

In order to solve the problem that the existing automatic ship-target-recognition methods are vulnerable to physical noise interference and poor real-time performance, an algorithm based on Faster R-CNN in depth learning is proposed. Firstly, a set of training set and test set of marine ship images are established; secondly, in order to enhance the generalization ability of the network, a dropout layer is added after the first full connection layer of region generating network; finally, in order to reduce over-fitting, only a full connection layer containing 2048 neurons was used for classification. At present, the algorithm can automatically identify ship targets as aircraft carriers, other warships and civilian ships. The accuracy of the test set in this paper is 90.4 per cent and the detection speed is about 15 frames per second.

Keywords:Marine Ship Recognition, Deep Learning, Faster R-CNN, Training Set, Test Set

基于Faster R-CNN的海上舰船 识别算法

谷东亮1,徐晓刚2,金鑫2

1海军大连舰艇学院学员五大队,辽宁 大连

2海军大连舰艇学院航海系,辽宁 大连

收稿日期:2018年6月11日;录用日期:2018年6月28日;发布日期:2018年7月5日

摘 要

针对现有的舰船目标自动识别方法容易受到物理噪声干扰、实时性差等问题,提出一种基于深度学习中Faster R-CNN (快速区域卷积神经网络)的海上舰船识别算法。首先建立了一套海上舰船图片的训练集与测试集;其次为了增强网络的泛化能力,在区域生成网络的第一个全连接层后增加了一个dropout层;最后为了减小过拟合,在分类时只使用了一个含有2048个神经元的全连接层。目前算法可以将海上舰船目标自动识别为航母、其他军舰、民船三类,在本文设定的测试集上准确率为90.4%,检测速度为每秒15帧左右。

关键词 :海上舰船识别,深度学习,Faster R-CNN,训练集,测试集

Copyright © 2018 by authors and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY).

http://creativecommons.org/licenses/by/4.0/

1. 引言

在现代海战中,对舰船目标的识别是否准确有效,直接关系到海军舰载武器系统的发展和进步,同时也是决定能否先敌使用武器、赢得现代海上战争的关键。因此在现代化战争的技术需求下,开展海上舰船目标识别技术的研究,从纷繁复杂的情报中筛选出对作战有用的信息,不仅具有很高的学术研究价值,还具有重大的军事理论创新价值和和重要的军事实践指导意义。目前舰船识别方面的研究主要集中在基于物理特征和基于遥感图像两个方面。文献 [1] 通过仿真获取舰船的声场、磁场、水压场三种物理场信号,采用基于小波变换的舰船物理场信号特征提取算法提取舰船种类的特征,最后使用支持向量机对多场融合特征进行分类。潘琳等人 [2] 提出采用小波变换的方法对舰船辐射噪声带内信号的小波模极大值和带外信号的分频段能量这两类特征进行提取,然后将融合特征用于舰船目标的分类。文献 [3] 首先获取不同类型舰船的辐射噪声,然后通过噪声的DENOM谱建立支持向量机的模型,实现了舰船目标的分类。文献 [4] 针对舰船遥感图像中海面背景十分复杂且存在云块这一问题提出了一种基于多级视觉感知算法去除了海面背景的干扰,并使用基于SVM分类器的方法对舰船目标进行分类。针对SAR图像的舰船识别存在“方位向模糊”和“距离向扩展”等问题,陈文婷 [5] 提出了基于Radon变换的SAR舰船目标切片精细分割算法并设计了一种基于SVM的组合分类器。针对遥感图像舰船分类问题,黄龙辉 [6] 提出了一种基于分块的多尺度完全局部二值模式和费舍尔向量的局部特征表示方法,并采用多特征学习框架对提取到的特征进行训练。通过对舰船识别的相关文献进行分析可以看出,基于物理特征的舰船识别容易受到物理噪声的干扰,基于遥感图像容易受到电磁环境的干扰,且这两种情况下实时性较差。

近年来,人工智能技术方法发展异常迅猛,在计算机视觉、图像与视频分析、多媒体等诸多领域都取得了巨大成功。对于舰船目标识别领域,人工智能及深度学习技术的飞速发展,无疑为实现技术突破提供了良好的契机。针对传统舰船识别方法存在的问题,本文对智能视频监控中基于可见光图像的舰船识别技术进行研究,提出了一种基于深度学习中Faster R-CNN的海上舰船识别算法,取得了很好的检测速度和准确率。由于可见光图像的获取途径属于被动地接收信息,因此可以较好地克服物理噪声和电磁波的干扰,并且在无线电静默的情况下,可以发挥极大的作用。

2. 训练集与测试集的建立

训练集设计得是否合理直接影响到算法性能,训练集中图片数量越大、种类越多,算法的准确性和鲁棒性则越强。由于目前没有舰船图片的训练集,因此本文建立了一套海上舰船图片的训练集并对训练集中的图片进行了标注;为了对算法进行定量分析,还建立了一套海上舰船图片的测试集。本文设计的训练集与测试集可直接用于基于可见光图片的舰船目标识别算法研究,为以后进行此方面研究的学者提供参考。

2.1. 图片的收集与整理

首先通过以下两种方式获取了近万张不同角度不同种类的海上舰船图片:

1) 通过“爬虫软件”自动对网络资源进行下载,由于网络资源不一定准确,下载下来的图片不一定是舰船图片,所以需要对其进行数据清洗,即人工地对每张图片进行检验。

2) 利用外出调研期间对海上舰船进行拍摄。

本文从收集到的图片中挑选出了具有代表性的5000张海上舰船图片,总体上可以分为航母、其他军舰、民船三类。其中航母主要包括中国、法国、意大利、俄罗斯、西班牙、巴西、印度、泰国、英国和美国这十个国家的航母;其他军舰主要包括驱逐舰、护卫舰、登陆舰、导弹艇、补给舰等类型;民船主要包括客船、干货船、液货船、载驳船、集装箱船、滚装船、工程船、工作船、渔船等类型。

最后,从中随机选择4000张图片作为训练集,剩余的1000张图片作为测试集。

2.2. 图片的标注

本文使用“labelImg”这种软件对图片中的舰船进行标注,即将舰船所在位置用长方形框出来。将航母命名为“hang boat”;其他军舰命名为“jun boat”;民船命名为“min boat”。每一张图片该软件都会自动生成一个对应的文本文件,对训练集和测试集中的5000张图片进行标注,得到5000个文本文件。

3. 基于Faster R-CNN的舰船检测网络结构设计

深度学习在人工智能领域中占据重要地位,它的最终目的是建立能够和人类一样具有思考能力的神经网络,这种神经网络能够像人一样对事物做出具有智能的反应。在人工智能领域中,图像的自动识别技术是很重要的一个分支,而RCNN系列目标检测方法使图像识别技术达到了顶峰。

R-CNN (Regions with CNN features)是将CNN方法应用到目标检测问题上的一个里程碑,借助CNN良好的特征提取和分类性能,通过Region Proposal (候选区域选择)的方法实现目标的检测 [7] 。算法可以分为四步:候选区域生成、特征提取、分类、位置精修。SPP-Net在R-CNN的基础上做了实质性的改进:取消了图像归一化过程,解决了图像变形导致的信息丢失以及存储问题;采用空间金字塔池化替换了全连接层之前的最后一个池化层。其中,最关键的是SPP的位置,它放在所有的卷积层之后,有效地解决了卷积层的重复计算问题,这是该算法的核心贡献 [8] 。继SPP-Net后,FastR-CNN对R-CNN进行了加速 [9] ,在以下方面进行了改进:借鉴SPP-Net思路,提出简化版的ROI池化层,同时加入了候选框映射功能,使得网络能够反向传播,解决了SPP的整体网络训练问题;将分类和边框回归进行合并,通过多任务Loss层进一步整合深度网络,统一了训练过程,从而提高了算法准确度;结合上面的改进,模型训练时可对所有层进行更新,除了速度提升外(训练速度是SPP-Net的3倍,测试速度是10倍),还得到了更好的检测效果。由于Fast R-CNN在进行选择性搜索时需要找出所有的候选框,这样非常耗时,所以Faster-R CNN在Fast R-CNN基础上加入了一个提取边缘的神经网络,使其可以自动地对候选框进行提取,并将其命名为区域生成网络(Region Proposal Network)。Faster R-CNN可以简单地看作“区域生成网络 + Fast R-CNN”的系统,用区域生成网络代替Fast R-CNN中的Selective Search方法 [10] 。从R-CNN到SPP-Net到Fast R-CNN再到Faster R-CNN,目标检测的四个基本步骤(候选区域生成,特征提取,分类,位置精修)终于被统一到一个深度网络框架之内。所有计算没有重复,完全在GPU中完成,大大提高了运行速度。

Faster RCNN算法是当前目标检测领域里较为领先的算法,在RCNN系列目标检测方法中准确率最高且速度最快。由于舰船识别和通用目标的识别在功能上具有相似性且目前没有舰船识别相关的图片训练集,因此本文选择现有的VGG16网络作为特征提取网络,并使用在现有的Image Net通用目标训练集上训练得到的权值作为初始值。但是因为舰船与通用目标在形态等方面存在相异性,直接使用会降低Faster RCNN方法检测的准确率和速度,所以本文在考虑舰船目标识别特异性的情况下对Faster RCNN网络框架中的区域生成网络进行了改进:① 由于Image Net训练集中舰船图片较少,且本文的目的是将舰船这种同一类型物体进一步地区分,因此为了增强网络的泛化能力,本文训练时在第一个全连接层后添加了一个dropout层,训练时对这一层某些神经元的输出随机地进行一定比例的抑制,在测试的环节中把该层去掉,并且为了使后一层的输入保持相应的数量级和物理意义,用随机丢弃的概率乘以上一层的输出值。② 由于本文的舰船检测只是将舰船分为三种类型,为了减小过拟合,在对目标进行分类时只使用了一个输出神经元个数为2048的全连接层。

4. 实验结果

将训练集中的图片和文本文件全部放入本文设计的基于Faster R-CNN的舰船检测网络中进行训练,训练后会生成一个用于识别舰船图片的模型,调用这一模型即可以对海上舰船目标进行识别。目前算法在本文设定的测试集中准确率为90.4%,检测速度为每秒钟15帧左右,以下为该算法在本文设定的测试集中的部分识别结果。

4.1. 航母检测结果

左上角显示的“hang”表示算法识别这一目标为航母,“hang”后的数字为置信度,即算法认为这一目标为所判定种类的概率值。如“hang 0.999”则代表算法认为这一目标为航母,且该目标为航母的概率是99.7%。图1中的图(a)、图(b)为侧面角度的航母图片且图(a)中含有两个舰船目标;图(c)为俯视角度下的航母图片。从识别结果中可以看出算法对不同国籍、不同角度、不同大小的一个或多个航母目标都可以进行有效地识别。

4.2. 其他军舰检测结果

左上角显示的“jun”表示算法识别这一目标为除航母之外的其他军舰,其中图2中的图(f)为光线较暗情况下拍摄的图片,从实验结果中可以看出算法对不同种类、不同国籍、不同角度、不同大小的一个或多个其他军舰目标都可以进行有效地识别。

4.3. 民船检测结果

左上角显示的“min”表示算法识别这一目标为民船。图3中的(h)为客船;图(i)为液化天然气船;图(s)为滚装船,这些不同种类的民船图片都取得了很好的识别效果。

5. 结束语

本文首先建立了一套海上舰船图片的训练集与测试集,然后使用“LabelImg软件”对图片进行了标注,最后将图片和标注后生成的文本文件放入预先设计好的舰船检测网络中进行训练,完成海上舰船识

(a) (b) (c)

Figure 1. Image recognition results of aircraft carrier

图1. 航母图片识别结果

(d) (e) (f)

Figure 2. Image recognition results of other warships

图2. 其他军舰图片识别结果

(h) (i) (j)

Figure 3. Image recognition results of civil ship

图3. 民船图片识别结果

别算法的设计。目前可以实现航母、其他军舰、民船三种类型舰船的识别。通过对测试集中的检测结果进行分析可知,目前算法在对远距离小目标进行检测时可能会出现漏检的情况。因此本文下一步工作将对快速区域卷积神经网络算法进行深入研究,尝试通过调整参数、调整网络结构等方式进一步优化算法,提高算法对小目标检测的准确率。并且由于训练集设计得是否合理直接影响到算法的准确性与鲁棒性,因此本文将收集更多海上舰船图片,进一步丰富训练集的多样性。在以后的研究中,还将对训练集中“其他军舰”进一步区分,进一步识别出军舰的种类、国籍和型号等信息。

基金项目

国家自然科学基金(61471412);

国家自然科学基金(61273262);

辽宁省自然科学基金(2015020086);

辽宁省博士启动基金(201501029)。

文章引用

谷东亮,徐晓刚,金 鑫. 基于Faster R-CNN的海上舰船识别算法
Marine Ship Recognition Algorithm Based on Faster-RCNN[J]. 图像与信号处理, 2018, 07(03): 136-141. https://doi.org/10.12677/JISP.2018.73016

参考文献

  1. 1. 赵琪. 基于多物理场特征的舰船目标识别技术研究[D]: [硕士学位论文]. 哈尔滨: 哈尔滨工业大学, 2017.

  2. 2. 潘琳, 张效民, 刘义海. 一种基于小波分频带统计特征的舰船分类识别方法[J]. 鱼雷技术, 2013, 21(1): 76-80.

  3. 3. 戴卫国, 程玉胜, 王易川. 支持向量机对舰船噪声DEMON谱的分类识别[J]. 应用声学, 2010, 29(3): 206-211.

  4. 4. 周珍娟, 韩金华. 舰船遥感图像的目标识别研究[J]. 舰船科学技术, 2014, 36(12): 86-90.

  5. 5. 陈文婷. SAR图像舰船目标特征提取与分类识别方法研究[D]: [硕士学位论文]. 长沙: 国防科学技术大学, 2012.

  6. 6. 黄龙辉. 基于特征学习的场景图像分类和舰船识别研究[D]: [硕士学位论文]. 北京: 北京化工大学, 2017.

  7. 7. Girshick, R., Donahue, J., Darrell, T., et al. (2016) Region-Based Convolutional Networks for Accurate Object Detection and Segmentation. IEEE Transactions on Pattern Analysis and Machine Intelligence, 38, 142-158.
    https://doi.org/10.1109/TPAMI.2015.2437384

  8. 8. He, K., Zhang, X., Ren, S., et al. (2014) Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition. European Conference on Computer Vision, 8691, 346-361.

  9. 9. Girshick, R. (2015) Fast R-CNN. Proceedings of the IEEE International Conference on Computer Vision, Santiago, 7-13 December 2015, 1440-1448.
    https://doi.org/10.1109/ICCV.2015.169

  10. 10. Ren, S., He, K., Girshick, R., et al. (2015) Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks. Advances in Neural Information Processing Systems, 39, 91-99.

期刊菜单