基于改进Faster R-CNN的红外舰船目标检测算法

顾佼佼, 李炳臻, 刘克, 姜文志

顾佼佼, 李炳臻, 刘克, 姜文志. 基于改进Faster R-CNN的红外舰船目标检测算法[J]. 红外技术, 2021, 43(2): 170-178.
引用本文: 顾佼佼, 李炳臻, 刘克, 姜文志. 基于改进Faster R-CNN的红外舰船目标检测算法[J]. 红外技术, 2021, 43(2): 170-178.
GU Jiaojiao, LI Bingzhen, LIU Ke, JIANG Wenzhi. Infrared Ship Target Detection Algorithm Based on Improved Faster R-CNN[J]. Infrared Technology , 2021, 43(2): 170-178.
Citation: GU Jiaojiao, LI Bingzhen, LIU Ke, JIANG Wenzhi. Infrared Ship Target Detection Algorithm Based on Improved Faster R-CNN[J]. Infrared Technology , 2021, 43(2): 170-178.

基于改进Faster R-CNN的红外舰船目标检测算法

详细信息
    作者简介:

    顾佼佼(1984-),男,博士,讲师,主要研究方向:人工智能深度学习技术

    通讯作者:

    李炳臻(1996-),男,硕士,主要研究方向:深度学习技术。E-mail:libingzhen123456@163.com

  • 中图分类号: TP399

Infrared Ship Target Detection Algorithm Based on Improved Faster R-CNN

  • 摘要: 针对Faster R-CNN算法中对于红外舰船目标特征提取不充分、容易出现重复检测的问题,提出了一种基于改进Faster R-CNN的红外舰船目标检测算法。首先通过在主干网络VGG-16中依次引出三段卷积后的3个特征图,将其进行特征拼接形成多尺度特征图,得到具有更丰富语义信息的特征向量;其次基于数据集进行Anchor的改进,重新设置Anchor boxes的个数与尺寸;最后优化改进后Faster R-CNN的损失函数,提高检测算法的整体性能。通过对测试数据集进行分析实验,结果表明改进后的检测算法平均精确度达到83.98%,较之于原Faster R-CNN,精确度提升了3.95%。
    Abstract: To solve the problem of insufficient feature extraction and repeated detection of infrared ship targets by the Faster R-CNN algorithm, a ship target detection algorithm based on an improved Faster R-CNN is proposed. First, three feature graphs are drawn from the backbone network, VGG-16, after a three-segment convolution, and the features are spliced to form a multi-scale feature graph to obtain a feature vector with richer semantic information; second, the Anchor is improved based on the dataset, and the number and size of the Anchor boxes are reset; finally, the loss function of the improved Faster R-CNN is optimized to improve the feature extraction ability of the target. An analysis of the experimental results on the test dataset demonstrates that the average accuracy of the improved detection algorithm was 83.98%, which is 3.95% higher than that of the original Faster RCNN.
  • 红外舰船目标检测在海上救援、海上军事活动等方面都具有十分重要的意义,尤其在军事领域,由于红外成像系统受光照条件影响小、成像稳定以及工作距离远等优点,因此红外舰船目标检测对于海战场的战场监测与侦察具有深远的研究价值。目前基于深度学习的目标检测算法在近年来取得了很大的突破,检测精度与速度与传统算法相比都有着质的飞跃,并在各个方面都有着十分广泛的应用,因此提出一种基于深度学习目标检测算法的红外舰船目标检测方法,将深度学习的方法应用到红外成像领域。

    目前主流的目标检测算法可以分成两大类[1],One-stage算法与Two-stage算法,R-CNN[2]是最早被提出的Two-stage算法,同时也是将卷积神经网络应用到目标检测领域的开山之作,但检测速度较慢,随后提出的Fast R-CNN[3]、Mask-R-CNN[4]与Faster R-CNN[5],使目标检测的精度不断提高,Faster R-CNN还创新性地提出并使用了RPN(region proposal network)网络以生成候选区域,Two-stage类型的算法较之于One-stage算法速度相对较慢,但是优点在于精度较高。One-stage算法基于回归的思想,使用CNN卷积特征,直接产生物体的类别概率和位置坐标值(无region proposal),经过单次检测可以得到最终的检测结果,结构更加简洁,比较典型的算法有Redmon J.于2015年提出的YOLO V1[6]、2016年提出的YOLO V2[7]、Liu W.提出的SSD(single shot multi box detector)[8],2017年提出的DSSD(deconvolutional single shot multibox detector)[9]以及2018年提出的YOLO V3[10],不足之处在于小目标检测精度不高并会出现漏检误检的问题。

    深度学习目标检测算法发展迅速,在红外图像领域也有所应用,李慕锴在文献[11]中,提出了一种基于YOLO V3的红外行人目标检测算法,并在原有算法的基础上进行优化,准确率达到了85.89%;崔少华在文献[12]中提出了一种改进的卷积神经网络用于检测红外行人目标,选择LeNet-7作为检测网络,提高了检测效率; 但是针对红外舰船目标的检测,仍旧是基于传统方法,向涛在文献[13]中提出了一种基于显著区域提取和目标精确分割相结合的红外舰船目标检测方法,提升了检测的准确率; 邢莎在文献[14]中提出了基于局部边缘梯度特征分析的舰船目标检测方法,通过采用自适应滤波、多尺度搜索等方法进行红外舰船目标检测; 宫剑在文献[15]中提出了一种基于引导滤波和自适应尺度局部对比度的舰船目标检测方法,应用于红外偏振图像,具有较高的准确性和鲁棒性; 上述红外舰船目标检测方法虽然都取得了不错的效果,但是仍需手动提取特征,耗时耗力,因此本文提出了一种改进的Faster R-CNN目标检测算法,对红外舰船目标进行检测,并通过改进网络结构、基于数据集进行Anchor的改进以及优化损失函数的方法对原算法进行改进,使得改进后的算法更适用于红外舰船目标检测。

    Faster R-CNN是在R-CNN与Fast R-CNN的基础上进行改进得到的。在Faster R-CNN中,引进了Region Proposal Networks(RPN网络)代替Selective search生成候选区域检测框,同时引入Anchor box的概念。简言之就是采用一个卷积神经网络来提取候选区域,并将其与Fast R-CNN检测网络合并成一个网络进行训练和检测,提高速度。

    网络架构简图如图 1所示。

    图  1  Faster R-CNN网络结构图
    Figure  1.  Faster R-CNN network structure diagram

    具体的算法步骤为:

    1)使用一组基础卷积层提取待检测图片的feature map(特征图),该特征图同时被输入后续的网络与RPN网络,共享卷积特征;

    2)RPN网络根据特征图生成region proposals(候选区域),输出候选框矩阵及其得分;

    3)ROI pooling层收集前步得到的feature map以及RPN传输的region proposals,池化操作得到proposal feature map,送入后续的全连接层;

    4)全连接层利用proposal feature map进行分类,同时进行边框回归(Bounding box regression)得到最终检测框的位置以及得分信息。

    Faster R-CNN的主干网络是VGG-16,图 2是VGG-16的参数列表。

    图  2  VGG-16网络参数列表图
    Figure  2.  VGG-16 network parameter list diagram

    VGG16将卷积网络分成了5段,每一段由两至三个卷积层和池化层组成,MaxPool代表池化层,FC_4096代表全连接层,4096代表有4096个神经节点; Softmax代表最后的分类器。一般都选取VGG-16作为Faster R-CNN的特征提取网络,也可以采用Res Net、Inception Net等来代替。

    Faster R-CNN最大的创新点就是引入了RPN网络,其主要作用是目标物体的精确定位,利用VGG16的第五段卷积层Conv5-3上的特征图产生多个Anchor建议框,再利用Softmax函数判断属于目标物体或者属于背景的概率,引入Anchor的概念用以候选区域生成,Anchor是9个由代码生成的矩形框,涵盖了一张图片上的所有区域。RPN网络究其本质是通过卷积神经网络生成候选区域,输入任意尺寸的图像都可输出目标候选框矩阵及得分。具体示意图如图 3所示:主干网络VGG-16对原输入图片进行卷积操作,提取特征并在第五段卷积之后得到该输入图片的卷积特征图,然后使用一个滑动窗口(即3×3卷积核)在得到的特征图上进行滑动,得到一个512维的特征向量,并将此特征向量输入下一层的两个平行的全连接层进行分类和位置回归,由于每个滑动窗口的中心点对应k种Anchor(在Faster R-CNN中,k=9),因此对于分类层来说输出2k个结果,即每个候选框的目标以及背景概率,而边框回归层共输出4k个结果,即每个候选框的位置坐标信息{x, y, w, h},并对得分信息进行非极大抑制(non maximum suppression, NMS)后输出得分较高的边框信息。

    图  3  RPN网络结构示意图
    Figure  3.  Schematic diagram of RPN network structure

    而Anchor则是一组固定大小的参考窗口,分为3组,面积分别为1282、2562、5122; 而每种面积依据长宽比又分为3组,分别为2:1、1:2、1:1,共有9个,相当于一组模板,在任意图像的任意位置都采用这组模板,如图 4所示。

    图  4  Anchor示意图
    Figure  4.  Anchor schematic diagram

    对每个滑窗位置可计算滑窗中心点对应原图中心点,通过中心点和Anchor大小得到滑窗位置与原图位置的映射关系,继而让RPN网络学习此Anchor是否含有待检测物体。

    在Faster R-CNN中,采用边框回归来实现Anchor box到近似Ground truth box(GT)的过渡,示例图如图 5所示。图 5中,虚线矩形框A代表代表原始的预测Anchor,实线矩形框G代表目标的真实值GT,而边框回归的作用就是将红色的框进行微调,并寻找一种函数关系,使得原始预测框经过映射得到一个跟真实值G更加接近的回归窗口G',也就是图 5中的点划线预测框。

    图  5  Bounding box regression示例说明
    Figure  5.  Bounding box regression example description

    图 5中,给定A=(Ax, Ay, Aw, Ah),GT=(Gx, Gy, Gw, Gh),Bounding box regression则试图寻找一种映射关系f,使得f(Ax, Ay, Aw, Ah)=(Gx', Gy', Gw', Gh'),其中,(Gx', Gy', Gw', Gh')≈(Gx, Gy, Gw, Gh)。通过采取平移和缩放变换得到最终的结果:首先对A做平移操作:

    $$ \begin{array}{l} G{'_x}{\rm{ = }}{A_w}{\rm{d}}x(A) + {A_x}\\ G{'_y}{\rm{ = }}{A_h}{\rm{d}}y(A) + {A_y} \end{array} $$ (1)

    接下来做缩放:

    $$\begin{array}{l} G{'_w}{\rm{ = }}{A_w} \times {\rm{exp(d}}w(A))\\ G{'_h}{\rm{ = }}{A_w} \times {\rm{exp(d}}h(A)) \end{array}$$ (2)

    上述公式中,需要学习得到的是dx(A),dy(A),dw(A),dh(A)这4个变换,相应的平移因子(tx, ty)、(tx*, ty*)和缩放因子(tw, th)、(tw*, th*)如公式(3)所示:

    $$\begin{array}{l} {t_x} = \left( {x - {x_a}} \right)/{w_a},{t_y} = \left( {y - {y_a}} \right)/{h_a}\\ {t_w} = \lg \left( {w/{w_a}} \right),{t_h} = \lg \left( {h/{h_a}} \right)\\ t_x^* = \left( {{x^*} - {x_a}} \right)/{w_a},t_y^* = \left( {{y^*} - {y_a}} \right)/{h_a}\\ t_w^* = \lg \left( {{w^*}/{w_a}} \right),t_h^* = \lg \left( {{h^*}/{h_a}} \right) \end{array}$$ (3)

    式中:(x, y, w, h)、(xa, ya, wa, ha)、(x*, y*, w*, h*)分别对应预测框、Anchor box以及Ground truth box中心点的坐标及宽和高。上述公式的意义就在于将Anchor box拟合回归到附近的真实边界框GT,并将经过回归变换后的Anchor box输出成为预测框。

    在卷积神经网络中,低层卷积主要提取目标的细节信息,在网络位置中靠前,高层卷积主要用来提取抽象的语义信息[16],在网络结构中位置比较靠后,通过运行CNN解释器[17]得到卷积过程中的可视化特征图,不同层级的特征图对比如图 6所示。

    图  6  不同层级卷积后特征图对比
    Figure  6.  Comparison of characteristic graphs after convolution at different levels

    其中,图 6(a)为红外舰船原图,图 6(b)为VGG-16中经过第1段卷积Conv1后输出的特征图,图 6(c)为VGG-16中第3段卷积模块Conv3后输出的特征图,图 6(d)为VGG-16中第5段卷积模块Conv5后输出的特征图。从图 6可以明显得看出,低层卷积输出的特征图相比于高层卷积输出的特征图细节信息更加丰富,特征也要更加明显。

    基于此提出了一种多尺度提取特征的方法,选取VGG-16作为主干网络,去除全连接层,利用VGG-16中的卷积层进行特征提取,选取3段卷积后不同尺度的特征图进行特征拼接并输入RPN网络生成检测候选区域,改进后的网络结构如图 7所示。

    图  7  改进后网络结构图
    Figure  7.  Improved network structure diagram

    在改进后的Faster R-CNN网络结构中,选取Conv1、Conv3、Conv5卷积层后提取的特征图作为多尺度特征图,以Conv3特征图为基准,并对Conv1的特征图进行池化操作缩小至相同尺寸、Conv5的特征图进行反卷积增大至相同尺寸,再进行特征拼接,因为同一尺寸大小的特征图便于进行特征拼接,然后输入至RPN网络进行候选区域生成,拼接后特征图如图 8所示。

    图  8  特征拼接后特征图
    Figure  8.  Feature map after feature stitching

    图 8可以看出,特征拼接使得待检测目标的细节信息变得更加丰富。并且对于Conv5特征图所进行的反卷积操作是卷积的反向过程,也是一种上采样的方式,但不同于基于插值的上采样方法,反卷积操作可以在训练过程中反向传播学习、调整参数,使得上采样参数更加合理。因此放大图片的尺寸的同时,提供了一种最优的“上采样”方式,使得反卷积过后的特征图较之前相比,具有更加丰富的细节特征。

    图 7改进后的网络结构中,RPN网络则根据特征拼接后的多尺度特征图生成region proposals(候选区域),输出候选框矩阵及其得分,ROI pooling层收集前步得到的多尺度特征图以及RPN传输的region proposals,池化操作得到proposal feature map,送入后续的全连接层,全连接层利用proposal feature map进行分类,同时进行边框回归(Bounding box regression)得到最终检测框的位置以及得分信息。

    Faster R-CNN采用Anchor box作为每个滑窗位置的先验框并对目标物体进行检测,Anchor的本质其实就是一组矩形框模板,本文在此基础上,结合红外舰船目标的特性,对Anchor的尺寸和个数进行改进,由于红外图片与可见光图片相比,具有分辨率低、对比度低、目标反射特征少等特点,目标与背景中一些细微的差异很难被分辨,因此原算法中,针对可见光图片中通用目标而设置的9种尺寸比例大小的Anchor,并不适用于红外舰船目标的检测,对此本文针对红外舰船目标的特性,重新设置Anchor的尺寸和个数。

    在原算法中,Anchor的尺寸大小共有9种,考虑到过多的Anchor对于目标检测会带来多余的参数计算,为避免冗余参数计算带来检测速度的变慢,将改进后的Anchor尺寸比例大小减少为两个尺度,长宽比为3种,共6种不同的Anchor boxes:

    首先增大Anchor初始感受野大小,用以弥补红外舰船目标反射特征少的特点,将Anchor初始感受野base_size大小设置为32×32(原算法中为16×16),并将Anchor感受野进行23=8、24=16两种倍数的放大,参数设置为scales=2*np.arange(3, 5),此时16×16区域变成256×256与512×512,然后将宽高比例大小设置为0.5、1、3,参数设置为ratios=[0.5, 1, 3],将上述的两个区域按1:2、1:1、3:1进行变换,共得到改进后的6个不同的Anchor,如图 9所示。

    图  9  改进后的Anchor示意图
    Figure  9.  Improved Anchor schematic diagram

    依据Anchor box和Ground truthbox的IOU(Intersection over Union,意为交并比,即Anchor box与GT(Ground truth box)重叠面积与总面积的比例)来进行下一步操作,如果IOU>0.7,则认为此Anchor中大概率包含目标,如果IOU≤0.7,则认为此Anchor为背景,如果0.3>IOU≥0.7,则认为此Anchor没有作用,在检测及训练过程中丢弃,避免增加冗余计算参数。

    整个损失函数由分类损失与回归损失两部分构成,根据前文对网络结构的改进,借鉴主干网络VGG-16与R-CNN的损失函数,对Faster R-CNN的损失函数进行优化改进,在回归损失中加入平方项,使其在零点处导数变得更为平滑; 分类损失部分采用对数函数表达分类误差。改进后的损失函数具体如下所示:

    1)分类损失Lcls

    $$\begin{array}{l} {L_{{\rm{cls}}}} = \frac{1}{{{N_{{\rm{cls}}}}}}\sum\limits_i {{L_{{\rm{cls}}}}} \left( {{p_i},p_i^*} \right)\\ \;\quad \, = \frac{1}{{{N_{{\rm{cls}}}}}}\sum\limits_i { - {\rm{lg}}\left[ {p_i^*{p_i} + \left( {1 - p_i^*} \right)\left( {1 - {p_i}} \right)} \right]} \end{array}$$ (4)

    在公式(4)中Ncls代表Anchor个数,在网络训练过程中,会选取256个Anchor,因此Ncls=256;pi代表第i个Anchor为预测目标的概率,pi*是GT的预测概率,即当第i个Anchors与GT间IOU>0.7,认为该Anchor中大概率包含目标,pi*=1;Lcls(pi, pi*)是目标与背景的损失,选取对数函数表达这部分的误差。公式(4)的含义就是计算每一个Anchor的对数损失,然后除以训练中挑选的总Anchor数,得到平均损失。

    2)回归损失Lreg

    $$ {L_{{\rm{reg}}}}{\rm{ = }}\lambda \frac{1}{{{N_{{\rm{reg}}}}}}\sum\limits_i {p_i^*{L_{{\rm{reg}}}}} \left( {{t_i},t_i^*} \right) $$ (5)

    在公式(5)中,常见的回归误差一般选择平方损失函数,但该损失函数误差惩罚过高,因此在这里选择smooth L1 loss代表损失误差,计算公式为:

    $$ \begin{array}{l} {L_{{\rm{reg}}}}\left( {{t_i},t_i^*} \right){\rm{ = }}\sum\limits_{i \in \left\{ {x,y,w,h} \right\}} {{\rm{smoot}}{{\rm{h}}_{L1}}\left( {{t_i} - t_i^*} \right)} \\ = \sum\limits_{i \in \left\{ {x,y,w,h} \right\}} {\left\{ \begin{array}{l} {\left( {\sigma x} \right)^2} \times {\raise0.7ex\hbox{$1$} \!\mathord{\left/ {\vphantom {1 2}}\right.} \!\lower0.7ex\hbox{$2$}}\;\;\;\;\;{\rm{if}}\left| x \right| < {\raise0.7ex\hbox{$1$} \!\mathord{\left/ {\vphantom {1 {{\sigma ^2}}}}\right.} \!\lower0.7ex\hbox{${{\sigma ^2}}$}}\\ \left| x \right| - {\raise0.7ex\hbox{${0.5}$} \!\mathord{\left/ {\vphantom {{0.5} {{\sigma ^2}}}}\right.} \!\lower0.7ex\hbox{${{\sigma ^2}}$}}\;\;\;\;\;{\rm{otherwise}} \end{array} \right.} , \end{array} $$

    在RPN网络中σ=3,在Fast R-CNN中σ=1;而pi*Lreg(ti, ti*)这一项代表着只有当pi*=1,也就是有目标时,才有回归损失,其他情况下,这一项均为0;ti=(tx, ty, tw, th)是一个向量,代表预测框的4个坐标; ti*是预测框对应的真实值GT的4个坐标; 前面的参数λ则用来平衡回归损失与分类损失,使两者差距不宜过大,Nreg≈2400,Ncls≈256,因此λ=10,起到平衡权重的作用。

    将上述分类损失与回归损失相加便可得整个网络的损失函数:

    $$ {\rm{Loss}} = \frac{1}{{{N_{{\rm{cls}}}}}}\sum\limits_i {{L_{{\rm{cls}}}}} \left( {{p_i},p_i^*} \right) + \lambda \frac{1}{{{N_{{\rm{reg}}}}}}\sum\limits_i {p_i^*{L_{{\rm{reg}}}}} \left( {{t_i},t_i^*} \right)。 $$

    在这部分选用的训练集是从网上、工厂搜集的1000张包含舰船目标的红外图像,测试集为100张包含大小各类红外舰船目标的图片,分布在港口、码头、海洋等各个背景条件下。评价指标mAP(mean average precision)是对目标检测算法的检测精度进行效能评估的最常用的度量指标[18],FPS(frame per second)作为检测速度的评价指标,选择这两项对训练好的模型进行精度和速度的评估。

    由于搜集到的数据集数量有限,担心不足以支撑模型的训练,因此对搜集到的数据进行数据增强处理,通过左右镜像与上下镜像增强自己的训练数据集,数据增强后示例如图 10所示。

    图  10  数据增强示例图
    Figure  10.  Sample diagram of data enhancement

    图 10中,图 10(a)为红外舰船原图,图 10(b)为原图经过左右镜像后得到的图片,图 10(c)图 10(d)为将上述两张图片进行上下镜像后得到的图片。通过运行left_right.py与up-down.py对1000张数据集进行批量操作,共得到数据增强后的图片集4000张。

    实验环境的操作系统为Windows10,深度学习框架为tensorflow1.9.0。实验硬件环境的CPU为Intel(R) Core(R) i7 9700KF,内存为32 G。GPU为NVIDIA(R) GTX(R) 1080TI。训练过程中的参数设置:batch_size=16,预训练模型为VGG-16,初始学习率为0.001,衰减因子为0.0005。首先将学习率设置成0.001训练10000次,接下来在上一步训练的基础上将学习率设置成0.0001继续训练10000次,再接着将学习率设置为0.00001继续训练,使损失函数进一步收敛,得到训练好的最终训练模型,图 11为训练过程中的损失函数图像。

    图  11  改进的Faster R-CNN损失函数曲线
    Figure  11.  Improved Faster R-CNN loss function curve

    图 11中可以看出在训练迭代20000次时,损失函数已经收敛至0.2附近,继续训练至10000次左右发现损失函数已稳定收敛于0.2上下,由于改进后的网络结构增加了多尺度特征图从而引入了额外的参数,担心继续训练下去会产生模型过拟合的问题,于是在30000次停止训练,得到训练结束的最终模型。

    通过对不同包含舰船目标红外图像进行测试,测试效果如图 12所示,可以看到检测效果非常好,检测框上方是类别名称和置信度,训练好的模型可以准确识别出不同尺寸、不同大小、不同质量的图片的舰船目标。

    图  12  红外舰船图像检测结果
    Figure  12.  Detection result of infrared ship image

    在目标检测算法中,评价一个算法模型的优劣最客观的评价指标有召回率(Recall)、准确率(Precision)、平均准确率AP、均值平均准确率mAP,通常使用均值平均精度(即mAP)来评估一个检测算法的检测准确度,数值越大检测效果越好,在本次实验中,目标类别只有一类,因此mAP值就等于AP值。

    对于某一类问题,将分类的目标计为正例(positive)和负例(negtive),那么就有如下的指标:

    1)True positives(TP):被正确地划分为正例的个数,即实际为正例而且被分类器判别出正例的数目;

    2)False positives(FP):被错误地划分为正例的个数,即实际为负例但被分类器判别为正例的数目;

    3)False negatives(FN):被错误地划分为负例的个数,即实际为正例但被分类器判别为负例的数目;

    4)True negatives(TN):被正确地划分为负例的个数,即实际为负例并且被分类器判别为负例的数目。

    这些指标间的关系如表 1所示。

    表  1  分类结果判别表
    Table  1.  Classification result discriminant table
    Real situation Discriminant result
    Positive example Counter example
    Positive example TP(True positive example) FN(False Counter example)
    Counter example FP(False positive example) TN(True Counter example)
    下载: 导出CSV 
    | 显示表格

    召回率R以及准确率P的定义公式分别为:

    $$ R{\rm{ = }}\frac{{{\rm{TP}}}}{{{\rm{TP}} + {\rm{FN}}}},P{\rm{ = }}\frac{{{\rm{TP}}}}{{{\rm{TP + FP}}}} $$ (6)

    在公式(6)中,并在本次实验中,TP代表正确检测到舰的个数; FP代表误检测是舰船的个数; FN代表漏检测舰船的个数。AP值就为召回率与准确率所围成的R-P曲线面积,mAP值等于AP值;

    使用原Faster R-CNN算法在同一数据集进行30000次的训练,训练结束后,在测试数据集上进行测试,对比改进前后检测效果; 通过分别运行python工程文件mAP-master,对测试集进行计算得到改进前后的平均准确率AP值,并且得到R-P曲线,如图 13所示。

    图  13  改进前后Faster R-CNN在红外舰船测试集上的R-P曲线
    Figure  13.  R-P curves of Faster R-CNN on infrared ship test set before and after improvement

    图 13中横坐标为召回率,纵坐标为相应的准确率,原Faster R-CNN算法在红外舰船测试集上的平均准确率AP=80.03%,经过改进之后在同一测试集上的平均准确率AP=83.98%,在本次实验中mAP=AP。改进前后的检测效果对比如图 14所示。

    图  14  Faster R-CNN改进前后红外目标检测效果对比
    Figure  14.  Comparison of infrared target detection effect before Faster R-CNN improvement

    筛选出的这两组图像均可以很好地表现改进算法的相比于原有算法的改进成效,从图 14前4组对比图片中可以明显看出,改进后的算法在在选红外目标的位置准确性方面有了很大的提升,这是因为基于红外数据集改进的Anchor尺寸更适合红外舰船目标,从而使得最后输出的预测框能够更为准确地框选红外目标; 同时在检测红外目标精度方面也有了很大提升,如图 14最后两组对比图片所示,这是由于改进后网络结构中增加的多尺度特征图使得模型可以提取到更为丰富的红外目标特征信息; 原算法中容易出现重复检测的问题也得到了改善,如图 14第5、6组对比图片所示,一方面,这是由于网络结构中增加了多尺度特征图从而提高了特征提取能力,另一方面,对训练数据集所做的数据增强处理在某种程度上也使得重复检测的问题得到了缓解; 综上所述,改进后的算法在框选目标位置准确性、检测准确率上有了很大程度的提升,同时也改善了原算法中容易出现重复检测问题。

    对改进前后的两种算法,运行python工程文件mAP-master之后可得到检测100张图片所花费的时间,原Faster R-CNN检测100张图片所花费时间为31.28 s,改进后FasterR-CNN检测100张图片所花费时间为33.84 s,其具体的性能对比如表 2所示。

    表  2  改进前后算法性能对比
    Table  2.  Comparison of algorithm performance before and after improvement
    Model name AP/% mAP/% Time/s
    Faster R-CNN 80.03 80.03 0.3128
    Improved Faster R-CNN 83.98 83.98 0.3384
    下载: 导出CSV 
    | 显示表格

    从表中可以看出,原Faster R-CNN算法的mAP值为80.03%,而改进后算法的mAP值为83.98%,较之于改进前提升了3.95%,精度提高的同时,检测每张图片所花费的时间较之于改进前稍有变长,这是因为在网络结构中增加了3个特征图进行拼接形成多尺度特征图用于加强对红外目标的特征提取从而引入了额外的计算参数所导致的。

    提出了一种改进Faster R-CNN的红外舰船目标检测算法,对网络结构和Anchor进行改进,同时优化了损失函数。该算法应用于红外舰船目标检测时,检测精度可以达到83.98%,较原算法相比提高了3.95%;对比算法改进前后的红外图像检测结果,验证了改进方法的可行性。本文研究的改进方法使得红外舰船目标的检测效果大大提升,可将改进后的算法模型应用在军事及工业领域,工业领域方面可应用于夜晚或严重光照不足条件下的码头、港口过往船舶检测,对海上救援、海上交通都有着重要的应用研究价值; 在军事领域方面不仅可以应用于海上战场进行舰船目标检测,还可装备应用于红外反舰武器系统上,提升打击精度,从而提升部队战斗力。

  • 图  1   Faster R-CNN网络结构图

    Figure  1.   Faster R-CNN network structure diagram

    图  2   VGG-16网络参数列表图

    Figure  2.   VGG-16 network parameter list diagram

    图  3   RPN网络结构示意图

    Figure  3.   Schematic diagram of RPN network structure

    图  4   Anchor示意图

    Figure  4.   Anchor schematic diagram

    图  5   Bounding box regression示例说明

    Figure  5.   Bounding box regression example description

    图  6   不同层级卷积后特征图对比

    Figure  6.   Comparison of characteristic graphs after convolution at different levels

    图  7   改进后网络结构图

    Figure  7.   Improved network structure diagram

    图  8   特征拼接后特征图

    Figure  8.   Feature map after feature stitching

    图  9   改进后的Anchor示意图

    Figure  9.   Improved Anchor schematic diagram

    图  10   数据增强示例图

    Figure  10.   Sample diagram of data enhancement

    图  11   改进的Faster R-CNN损失函数曲线

    Figure  11.   Improved Faster R-CNN loss function curve

    图  12   红外舰船图像检测结果

    Figure  12.   Detection result of infrared ship image

    图  13   改进前后Faster R-CNN在红外舰船测试集上的R-P曲线

    Figure  13.   R-P curves of Faster R-CNN on infrared ship test set before and after improvement

    图  14   Faster R-CNN改进前后红外目标检测效果对比

    Figure  14.   Comparison of infrared target detection effect before Faster R-CNN improvement

    表  1   分类结果判别表

    Table  1   Classification result discriminant table

    Real situation Discriminant result
    Positive example Counter example
    Positive example TP(True positive example) FN(False Counter example)
    Counter example FP(False positive example) TN(True Counter example)
    下载: 导出CSV

    表  2   改进前后算法性能对比

    Table  2   Comparison of algorithm performance before and after improvement

    Model name AP/% mAP/% Time/s
    Faster R-CNN 80.03 80.03 0.3128
    Improved Faster R-CNN 83.98 83.98 0.3384
    下载: 导出CSV
  • [1] 施泽浩, 赵启军. 基于全卷积网络的目标检测算法[J]. 计算机技术与发展, 2018(5): 55-58. DOI: 10.3969/j.issn.1673-629X.2018.05.013

    SHI Zehao, ZHAO Qijun. Target detection algorithm based on full convolution network[J]. Computer Technology and Development, 2018(5): 55-58. DOI: 10.3969/j.issn.1673-629X.2018.05.013

    [2]

    Uijlings J R R, Sande K E A V D, Gevers T, et al. Selective search for object recognition[J]. International Journal of Computer Vision, 2013, 104(2): 154-171. DOI: 10.1007/s11263-013-0620-5

    [3]

    Girshick R. Fast R-CNN[C]//Proceedings of ICCV, 2015, 2015: 1440-1448.

    [4]

    Kaiming H, Georgia G, Piotr D, et al. Mask R-CNN[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018, 18(11): 1-1.

    [5]

    Ren S, He K, Girshick R, et al. Faster r-cnn: towards real-time object detection with region proposal networks[C]//IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137-1149.

    [6]

    Redmon J, Divvala S, Girshick R, et al. You only look once: unified, real-time object detection[C]//Proceedings of CVPR, 2015: 779-788.

    [7]

    Redmon J, Farhadi A. YOLO9000: Better, faster, stronger[C]//IEEE Conference on Computer Vision and Pattern Recognition, 2017, 12(7): 6517-6525.

    [8]

    LIU W, Anguelov D, Erhan D, et al. SSD: single shot multibox detector[C]//Computer Vision-ECCV 2016, Cham: Springer, 2016, 9905: 21-37.

    [9]

    FU C Y, LIU W, Ranga A, et al. DSSD: deconvolutional single shot detector[C]//2017 IEEE International Conference on Computer Vision, 2017: 2999-3007.

    [10]

    Redmon J, Farhadi A. YOLO v3: An incremental improvement [C]//IEEE Conference on Computer Vision and Pattern Recognition, 2018, 24(9): 2458-2476.

    [11] 李慕锴, 张涛, 崔文楠. 基于YOLOv3的红外行人小目标检测技术研究[J]. 红外技术, 2020, 42(2): 176-181. http://hwjs.nvir.cn/article/id/hwjs202002012

    LI Muyi, ZHANG Tao, CUI Wennan. Research on infrared pedestrian small target detection technology based on YOLO v3[J]. Infrared Technology, 2020, 42(2): 176-181. http://hwjs.nvir.cn/article/id/hwjs202002012

    [12] 崔少华, 李素文, 黄金乐, 等. 改进的CNN用于单帧红外图像行人检测的方法[J]. 红外技术, 2020, 42(3): 238-244. http://hwjs.nvir.cn/article/id/hwjs202003006

    CUI Shaohua, LI Suwen, HUANG Jinle, et al. Improved CNN square method for human detection of single-frame infrared image[J]. Infrared Technology, 2020, 42(3): 238-244. http://hwjs.nvir.cn/article/id/hwjs202003006

    [13] 向涛. 一种基于显著区域提取的红外图像舰船目标检测方法[J]. 电讯技术, 2020, 60(7): 50-56.

    XIANG Tao. A ship target detection method based on salient region extraction in infrared image[J]. Telecommunication Technology, 2020, 60(7): 50-56.

    [14] 邢莎, 吉林, 雍杨, 等. 基于梯度统计特性的自动红外舰船目标检测[J]. 数字技术与应用, 2013(10): 66-68, 70. https://www.cnki.com.cn/Article/CJFDTOTAL-SZJT201310047.htm

    XING Sha, JI Lin, YONG Yang, et al. Automatic infrared ship target detection based on gradient statistics[J]. Digital Technology and Applications, 2013(10): 66-68, 70. https://www.cnki.com.cn/Article/CJFDTOTAL-SZJT201310047.htm

    [15] 宫剑, 吕俊伟, 刘亮, 等. 红外偏振图像的舰船目标检测[J]. 光谱学与光谱分析, 2020, 40(2): 586-594. https://www.cnki.com.cn/Article/CJFDTOTAL-GUAN202002052.htm

    GONG Jian, LV Junwei, LIU Liang, et al. Ship target detection based on infrared polarization image[J]. Spectroscopy and Spectral Analysis, 2020, 40(2): 586-594. https://www.cnki.com.cn/Article/CJFDTOTAL-GUAN202002052.htm

    [16] 吴天舒, 张志佳, 刘云鹏. 基于改进SSD的轻量化小目标检测算法[J]. 红外与激光工程, 2018(7): 37-43. https://www.cnki.com.cn/Article/CJFDTOTAL-HWYJ201807007.htm

    WU Tianshu, ZHANG Zhijia, LIU Yunpeng. Lightweight small beacon detection algorithm based on improved SSD[J]. Infrared and Laser Engineering, 2018(7): 37-43. https://www.cnki.com.cn/Article/CJFDTOTAL-HWYJ201807007.htm

    [17]

    WANG Zijie J, Robert Turko, Omar Shaikh, et al. CNN explainer: learning convolutional neural networks with interactive visualization[J]. Journal of Sensors, 2019(6): 1-13. http://ieeexplore.ieee.org/document/8941872/

    [18]

    Zeiler M D, Fergus R. Visualizing and understanding convolutional networks[C]// Proceedings of the European Conference on Computer Vision, Berlin, Heidelberg: Springer, 2014, 8689: 818-833.

  • 期刊类型引用(28)

    1. 黎煜培,王忠华. 基于局部全局自注意与空间通道稀疏增强的红外船舶目标检测算法研究. 红外与激光工程. 2025(03): 348-360 . 百度学术
    2. 郝志航,张小咏,陈正超,卢凯旋. 基于改进的Faster R-CNN污水处理厂目标提取. 河南理工大学学报(自然科学版). 2024(01): 68-77 . 百度学术
    3. 邵延华,黄琦梦,梅艳莹,张晓强,楚红雨,吴亚东. 一种基于多尺度的目标检测锚点构造方法. 红外技术. 2024(02): 162-167 . 本站查看
    4. 汪西晨,彭富伦,李业勋,张俊举. 基于改进Faster R-CNN的红外目标检测算法. 应用光学. 2024(02): 346-353 . 百度学术
    5. 刘玉洁,补冲. 基于多特征融合的舰船目标检测方法研究. 舰船科学技术. 2024(09): 164-167 . 百度学术
    6. 贾春荣,杨帆,高建鑫,沈萌萌,卓越,邸志刚. 海洋舰船目标红外检测技术研究. 激光杂志. 2024(06): 13-20 . 百度学术
    7. 张兴平,邵延华,梅艳莹,张晓强,楚红雨. 融合视觉显著性的红外航拍行人检测. 红外技术. 2024(09): 1043-1050 . 本站查看
    8. 姜杰,张立民,刘凯,闫文君. 基于改进PP-YOLOE和ByteTrack算法的红外船舶目标检测跟踪方法. 兵器装备工程学报. 2024(11): 291-297 . 百度学术
    9. 臧涛,傅志凌,王喆,钮赛赛,王梦如,杨海. 改进YOLOv3的红外弱小目标检测. 计算机工程与设计. 2024(11): 3479-3485 . 百度学术
    10. 郭勇,张凯. 基于特征增强的快速红外目标检测. 无线电工程. 2023(01): 47-55 . 百度学术
    11. 白玉,迟文恺,谢宝蓉,张雷,郑莲玉,穆文涛. 结合目标提取和深度学习的红外舰船检测. 电讯技术. 2023(02): 193-198 . 百度学术
    12. 王馨悦,周小天. 基于视觉识别的智能翻译机器人人机交互系统研究. 自动化与仪器仪表. 2023(05): 207-211 . 百度学术
    13. 张廓,陈章进,张岩. 改进YOLOv4-Tiny的SAR图像目标快速检测方法. 计算机工程与应用. 2023(14): 209-216 . 百度学术
    14. 李向荣,孙立辉. 融合注意力机制的多尺度红外目标检测. 红外技术. 2023(07): 746-754 . 本站查看
    15. 娄树理,王岩,郭建勤,公维锋. 改进YOLOX-S的红外舰船目标检测算法. 应用光学. 2023(05): 1054-1060 . 百度学术
    16. 王岩,娄树理. 一种改进的SSD红外舰船目标检测算法. 烟台大学学报(自然科学与工程版). 2023(04): 487-493 . 百度学术
    17. 戴永东,姚建光,李勇,毛锋,文志科,倪莎. 输电线路无人机巡检自主导航算法研究. 重庆理工大学学报(自然科学). 2023(11): 221-228 . 百度学术
    18. 林鹏宇,马晓珊,彭晓东. 基于仿真模板和SuperGlue的舰船匹配检测. 计算机仿真. 2023(11): 11-15 . 百度学术
    19. 贺翥祯,李敏,苟瑶,杨爱涛. 改进YOLOv5的合成孔径雷达图像舰船目标检测方法. 系统工程与电子技术. 2023(12): 3743-3753 . 百度学术
    20. 王勇,王柏容,慕东东. 红外船舶检测的研究现状及展望. 大连海事大学学报. 2023(04): 103-115 . 百度学术
    21. 黄强,王钰宁,刘晓霞,胡云冰. 改进YOLOv3-SPP的SAR图像舰船目标检测. 遥感信息. 2023(05): 57-65 . 百度学术
    22. 谭显东,彭辉. 改进YOLOv5的SAR图像舰船目标检测. 计算机工程与应用. 2022(04): 247-254 . 百度学术
    23. 李秀娟,李军怀,乔路琪. 基于深度学习的可见光舰船目标检测与识别. 无线电工程. 2022(03): 484-491 . 百度学术
    24. 陈初侠,丁勇. 基于多尺度语义网络的红外舰船目标检测. 红外技术. 2022(05): 529-536 . 本站查看
    25. 陈天文. 无线网络在船舶多目标检测系统中的应用. 舰船科学技术. 2022(12): 137-140 . 百度学术
    26. 周正,崔宗勇,曹宗杰,杨建宇. 基于特征转移金字塔网络的SAR图像跨尺度目标检测. 雷达学报. 2021(04): 544-558 . 百度学术
    27. 张宏群,班勇苗,郭玲玲,金云飞,陈檑. 基于YOLOv5的遥感图像舰船的检测方法. 电子测量技术. 2021(08): 87-92 . 百度学术
    28. 毕振波,张世友,杨花,吴远红. 基于浅层机器学习的视频监控船舶检测综述. 系统仿真学报. 2021(12): 2792-2807 . 百度学术

    其他类型引用(28)

图(14)  /  表(2)
计量
  • 文章访问数:  727
  • HTML全文浏览量:  266
  • PDF下载量:  150
  • 被引次数: 56
出版历程
  • 收稿日期:  2020-06-10
  • 修回日期:  2020-07-05
  • 刊出日期:  2021-02-19

目录

/

返回文章
返回