(中国航天科工二院七○六所 北京 100854)
随着海面舰船、民船以及其他干扰目标的种类、数量的日益增多,海面环境的复杂性越来越高,舰船和民船形态的高速更新换代,目前的舰船目标识别系统面临诸多难题,其识别正确率和可用性已经难以满足要求。目前我国海军武器装备的舰船目标能力不高,智能化程度较低,主要表现在以下几个方面。
舰船目标识别正确率不高。目前应用广泛的恒虚警率算法[1~2]、小波变换[3~4]等舰船目标识别算法对于舰船目标识别的正确率为80%~85%,随着海面军舰、民船以及其他干扰目标的种类、数量的日益增多,海面环境变得越来越复杂,这对于海面目标识别算法的识别准确率提出了新的挑战。
舰船目标识别实时性较差。目前国内舰船目标识别大多基于SAR、IR等卫星遥感图像数据[5~9],由于与地面的距离过长,卫星数据传输速度慢、易受干扰,无法及时发现并识别指定海域上出现的船只,并且在恶劣天气环境下海面图像很差。
舰船目标识别系统智能化程度较低。目前国内舰船目标识别主要依靠人工判读,随着战场环境日益复杂,海面目标成倍增长,传统的目标识别方法耗费人力、效率低,难以满足未来海面作战的发展需求。
基于深度卷积神经网络的可见光舰船目标识别系统主要分为两部分:一部分是部署在数据中心的舰船图像离线训练平台,主要进行PB级舰船图像、视频数据样本的存储,以及离线舰船目标识别模型的训练;另一部分是在舰船、无人机、指挥所等武器装备终端上运行的舰船图像采集预处理平台和舰船目标在线识别平台,负责舰船目标图像采集、检测、分类和识别,具体如图1所示。
可见光舰船目标识别系统各模块的具体功能如下。
1)舰船图像数据库采用已有的图像、参数和模型数据构建,并在使用过程中,通过检测目标数据采集不断的进行丰富;
图1 基于深度卷积神经网络的可见光舰船目标识别系统框图
2)舰船目标特征训练是在卷积神经网络的框架下,通过对舰船样本库的识别训练,形成可见光/红外和二维/三维融合的舰船特征知识库,用于进行舰船目标分类识别;
3)舰船目标数据采集用于对海上舰船目标的可见光或红外视频数据进行实时高分辨率的采集;
4)舰船目标检测是对海上舰船目标进行检测,在检测到存在舰船目标后,开展后续的图像预处理和分类识别工作;
5)舰船目标图像预处理包括海陆背景图像分离、舰船目标分割等图像预处理工作,为舰船目标的分类识别做好准备;
6)舰船目标图像粗分类在本地进行,针对舰船的大类进行简单的分类,降低后续舰船目标细分类识别的工作量;
7)最后,在舰船目标在线识别平台开展舰船目标的识别工作,准确地识别出舰船的类型。
本方案基于可见光/红外图像进行舰船目标识别,舰船图像采集预处理平台部署在舰船上。
2.1.1 舰船目标图像采集
舰船目标图像采集硬件架构如图2所示,包括舰船目标图像采集传感模块、舰船目标图像采集预处理模块、多码流图像编码模块和图像传输模块。其中,舰船目标图像采集传感模块通过可见光/红外传感器采集海面目标图像,主要包括全高清CMOS图像传感器和红外激光云台;舰船目标图像采集预处理模块对采集到的图像进行初步的滤波、图像增强等;多码流图像编码模块基于FPGA实现视频压缩、编码和码流生成三部分功能;图像传输模块实现视频信号的电/光转换,通过光缆进行远距离传输,主要包括光端机、光交换机等。
图2 舰船目标图像采集硬件架构
2.1.2 舰船目标检测
舰船动态目标检测是整个系统的基础,只有及时、准确地检测和定位到场景中出现的目标,才能保证后续的目标识别。舰船目标检测既要保证实时性,因为战场瞬息万变,不及时捕捉变化就会贻误战机;又要保证目标检测与分割的准确率,因为目标的精确识别才是整个系统的核心[10]。
本方案首先通过SLIC算法对舰船图像进行分割,然后利用方向梯度直方图和支持向量机,基于图像中船、天空和海洋的纹理特征差异实现舰船目标检测。
SLIC(简单线性迭代聚类)算法[11]是一个基于聚类算法的超像素分割算法,由LAB空间以及x、y像素坐标共5维空间来计算。该算法提出了一种全新的距离计算方法加强了超像素形状的整齐性,不仅可以分割彩色图,也可以兼容分割灰度图,另外还可以设置需要分割的超像素的数量。SLIC在产生相似或更好的分割时效率可以大幅度提高。如图3所示,SLIC算法产生的分割片段,大小均匀,可指定块的个数,较为灵活。
图3 舰船目标检测示例
方向梯度直方图(HOG)特征的核心思想是一幅图像中的物体的表象和形状可以被梯度或边缘的方向密度分布很好地描述。其实现方法是先将图像分成小的叫做方格单元连通区域;然后采集方格单元中各像素点的梯度方向或边缘方向直方图;最后把这些直方图组合起来就可以构成特征描述子。为了提高精确度,还可以把这些局部直方图在图像的更大的区间(block)中进行对比度归一化,此方法通过先计算各直方图在这个区间(block)中的密度,然后根据这个密度值对区间中的各个方格单元做归一化。通过这个归一化后,能对光照变化和阴影获得更好的稳定性。
在对图像的各区域提取特征后,训练出合适的分类器来完成区域的分类,以实现排除海面、天空的大块区域,定位到感兴趣区域的目标。支持向量机(Support Vector Machine,SVM)在有监督的分类器中性能突出,可以有效解决小样本下的机器学习问题,有效解决泛化问题和非线性分类问题。结合SVM与提取的特征,可以得到如下的可见光目标初步定位示例如下。
2.1.3 舰船目标图像预处理
舰船目标图像预处理包括图像降噪、海陆分离等,常见的海陆分离方法包括灰度阈值法、区域纹理分析法和区域生长法等。
1)灰度阈值法包括直方图谷底法、OTSU算法、活动轮廓法、最大熵法、最小误差法、迭代最优阈值法、局部阈值法等。OTSU算法以最佳门限将灰度直方图分割成两部分,使两部分类间方差取最大值,即分离性最大;活动轮廓分割方法通过有约束地最小化分割结果中海水区域的类内方差来降低分割阈值,能够得到较为理想的海陆分割结果,保证了后续船头检测、船身定位的准确度。
2)区域纹理法是通过利用海域与陆地背景的纹理差异进行海陆分割,如用区域方差、区域直方图来刻画区域纹理的相似性。
3)区域生长法利用先验的地理信息得到位于海域的点作为种子点,进行区域生长提取海域。
2.1.4 舰船目标粗分类
海面环境中会有若干的干扰因素,如民用船只、礁石、海岛等,所以在进行识别时也必须将这些干扰类别进行甄别,以降低识别的虚警率。如果将各型号军用舰船与干扰类别(如各种民用船只、灯塔、小岛)进行一同分类,这样特征空间的类间距离会各异。军用舰船、民用船只、干扰目标之间的类间距离会较大,而作为同一个大类下的各型号军用舰船之间的类间距离会较小,将这些类混合在一起进行分类识别,会影响到特征空间中各类划分的准确性,即影响到最终分类的准确率。所以,综合考虑,需要对已经定位的可见光目标进行粗分类,完成大类的识别,在此基础上再进行精细类别的划分。
本方案应用SIFT[12]描述子进行舰船目标粗分类包括以下几个基本步骤:
1)构建尺度空间并进行极值检测;
2)对关键点进行精确定位;
3)确定关键点的方向;
4)生成特征点描述子。
舰船目标粗分类流程如图4所示。
图4 目标粗分类流程
2.2.1 舰船样本数据库
舰船样本数据库包括用于训练深度学习模型的PB级图像数据训练集、验证集以及测试集,其中验证集可以从训练集中分离一部分得到。用于舰船目标检测识别模型的训练和测试图像数据集,与用于军舰和民船分类模型的训练和测试图像数据存在很大差异:用于舰船目标检测识别的训练和测试图像数据需要在其上对舰船目标进行标签框定并给予舰船类别的标记,而用于军舰与民船分类的训练和测试图像数据只需要对军舰图像以及民船图像给予对应的类别标记。
数据库中舰船图像的获取有以下几种方法:
1)舰船图像采集预处理平台得到的图像数据;
2)互联网开源图像数据库,如 ImageNet[13]、VOC2012[14]、Fleetmoom[15]等;
3)舰船三维模型降维映射得到的二维图像。
2.2.2 基于深度卷积神经网络的舰船目标特征训练
基于深度卷积神经网络的舰船目标特征训练架构包括特征共享CNN层、可微调CNN层、区域提取模型、ROI池化层以及分类回归全连接层等,详见图5所示。
图5 基于深度卷积神经网络的舰船目标特征训练架构
共享特征CNN层可以是现存的深度卷积神经网络分类模型去掉最后全连接层的部分,该部分在进行舰船目标识别模型训练前,一般需要在VOC分类数据集或是ImageNet分类数据集上进行预训练来提高对图像特征的提取能力,然后再利用此训练好的分类模型去掉全连接层部分的参数对共享特征CNN层进行参数初始化。常用的共享特征CNN层的分类模型包括AlexNet、GoogleNet、VGG16、VGG19以及ResNet[16]等。
可微调CNN层主要用于在线增量学习。具体过程为:当在线进行舰船目标检测时,如果被检测到的舰船目标满足标注条件,则需要对目标检测模型进行在线增量学习。在线增量学习过程中需要将共享特征CNN层、区域提取模型以及可微调CNN层后续的ROI池化层、全连接层参数进行固定,然后通过分类误差对可微调CNN层进行参数微调,从而达到从新图像数据中学习新知识并尽可能保留以前学习到知识的能力。在线增量学习保证可见光舰船目标识别系统能够在使用过程中进行系统模型参数优化和升级,可持续不断地提高目标识别的准确率。
区域提取模型是卷积神经网络,在共享CNN层和可微调CNN层后,构造了一个卷积层和两个并列的全连接层的神经网络。该模型的作用是通过共享CNN层特征以及可微调CNN层特征来实现可能存在待检舰船目标区域的提取。在该模型的基础上,为了解决小目标难检测难题,可以加入图像上下文Context的信息,从而有效解决该问题。目前,比较常用的区域提取模型包括Faster RCNN基于Attention机制提出的RPN区域提取模型、基于邻域信息及自适应缩放Anchors策略的AZ-Net模型以及能自动适应对象及其组成部分尺度的HAZN模型,这些区域提取模型通过提高区域提取的质量,解决了图片解析度较低、小尺寸目标难检测的问题[17]。
ROI池化层的设计思路来源于Faster RCNN,该设计是为了解决检测目标检测识别模型能够接受任意尺度输入图像的问题。经过ROI池化后,模型会输出一个固定维度的特征向量,其后可以连接Softmax或是相关能进行分类的算法,如支持向量机SVM,进行是否为舰船目标的分类。
舰船目标在线识别平台部署在舰船上,基于选择性负相关集成学习的深度CNN舰船分类识别方法实现。负相关学习是一种训练神经网络集成的方法,记训练集为{(x1,t1),……,(xN,tN) },其中xi是输入,ti是目标输出,N是训练集的样本数。在负相关学习里,深度神经网络集成的输出定义为其中m为神经网络的个数,Fi(n)是第i个深度神经网络在第n个样本上的输出,而F(n)则是深度神经网络集成在第n个样本上的输出。本方案使用的ResNet深度神经网络用于集成学习,从而达到对新来图像数据集的增量学习。图6基于选择性负相关学习的深度ResNet集成学习框架,主要包括四个模块:初始ResNet深度神经网络集成、当前ResNet深度神经网络集成、复制ResNet深度神经网络集成以及新ResNet深度神经网络集成。
它们之间的交互关系为:首先利用第一个军舰和民船图像数据集对初始ResNet深度神经网络集成进行训练得到当前ResNet深度神经网络集成;然后,将当前ResNet深度神经网络集成进行复制得到复制ResNet深度神经网络集成;接下来,当第二个军舰和民船图像数据集到来时,利用该数据集对复制ResNet深度神经网络集成进行训练,得到新ResNet深度神经网络集成;最后,为了使ResNet深度神经网络集成能够在学习新图像数据知识的同时能够较大程度保留已经学习过的知识,同时保持深度集成模型的大小不变,因此需要应用选择性负相关学习方法进行选择。
图6 基于选择性负相关的深度ResNet集成学习框架
本文基于深度卷积神经网络进行了舰船目标识别系统的方案设计,该系统基于可见光/红外图像进行舰船目标识别,实时性高;该系统可离线地对目标识别模型进行训练,相比于传统基于恒虚警率算法、小波变换等算法,基于深度卷积神经网络的方案具有更高的识别准确率;该系统可进行在线增量学习,在使用过程中可不断进行模型参数的优化,不断提高识别准确率。