CN113920436A - 一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法 - Google Patents
一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法 Download PDFInfo
- Publication number
- CN113920436A CN113920436A CN202111381889.9A CN202111381889A CN113920436A CN 113920436 A CN113920436 A CN 113920436A CN 202111381889 A CN202111381889 A CN 202111381889A CN 113920436 A CN113920436 A CN 113920436A
- Authority
- CN
- China
- Prior art keywords
- target
- network
- ship
- image
- remote sensing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法,包括:搜集以往拍摄的或搜集的海面场景的卫星遥感图像;使用数据标记软件将预处理后的图片进行种类标注;将遥感图片中的船舰与周边环境物相分割,以消除图像噪声;获得YOLO算法锚点框的估计值;生成YOLOv4框架;生成YOLOv4的检测框;设定候选框的阈值,最终得到预测框;计算三种损失函数并使其总值最小,得到训练后改进的YOLOv4神经网络;将测试子集中图片输入到训练后改进的YOLOv4网络,获得目标类别、目标在图片中具体地位置和目标宽高,完成目标检测。本发明对海面舰船目标可快速检测及自动识别,舰船识别概率和准确率高。
Description
技术领域
本发明属于船舶目标检测技术领域,涉及一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法。
背景技术
海面舰船目标的识别的研究在军用和民用方面都属于关键技术,具有工程应用价值。在军用方面可用于实时自动侦察,为海战场威胁估计和态势评估奠定基础。目前光电侦察系统的智能化水平远低于民用电子设备,光电侦察过程中仍然依赖操作手根据显示图像人工判读舰船目标,判读速度慢,且易受主观因素影响,采用目标检测和识别技术可以自动化分析处理积累的大量图像数据,实时性的目标检测和识别技术更是可以应用于海面目标的侦察过程中进行实时监测与告警提示,大大减轻了卸载数据后图像处理人员及侦察任务执行时操作手的负担,为自动侦察的实现奠定技术基础,所以实现舰船目标的智能检测和识别对于提高军事装备的自动化水平具有重要意义。在民用方面,舰船目标的智能检测和识别可用于动态海港监测、海上交通管理、海上救援,可通过对船只的检测识别实现打击非法走私等违法犯罪行为。
公开号为CN201810457334.X的中国专利,提供了一种SAR雷达海上舰船目标识别系统。该方法使用SAR雷达对海域进行实时监测,雷达获得的图像数据存储到所述的数据库中,通过上位机对图像预处理模、提取特征,最后识别目标;再如公开号为CN201911156854.8的中国专利申请,该发明公布了一种海上船舶目标的自动检测和识别方法。该方法通过可见光相机采集图像,使用Faster-RCNN算法进行训练得到目标检测器并对目标进行检测。如公开号为CN109255286B的中国专利,该发明公布了一种基于深度学习网络框架的无人机光学快速检测识别方法。该方法通过YOLO网络训练无人机数据集,然后实现快速检测的目的。
在CN201810457334.X的中国专利申请中,SAR雷达画面显示不够直观,不能直接对周边环境进行判断,或寒潮天气,受风浪影响,而且普通监控设备难以在恶劣环境中对重点目标进行识别;在CN201911156854.8的中国专利中,以Faster-RCNN为代表的两阶段检测模型需要先生成备选框再对分别对其进行识别和检测,其计算速度较慢,不利于现实应用。此外,在海洋图片中,卫星图片和摄像头图片往往容易受到大雾天气、运动模糊、摄像头镜头污染等问题的困扰而造成拍摄结果的模糊,给目标识别造成极大的干扰,目标识别准确率更低。在CN109255286B的中国专利申请中,虽然YOLO系列算法在实时的目标检测与识别方面取得良好成绩,但YOLO系列算法识别遥感图像的上效果不佳。遥感图像不同于自然图像,遥感图像中由于拍摄距离远,舰船目标大多为小尺寸,且在整个图像中所占的像素很少,如果采用识别自然图像时的IOU值(IOU=0.5)识别遥感图像时,会出现漏检的情况。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法,可提高原始图像对比度、强化图像细节、消除噪声;实现对海面舰船目标的快速检测及自动识别,提高舰船识别概率及准确率。
为解决上述技术问题,本发明采用以下技术方案。
本发明的一种基于改进YOLOv4算法的遥感图像海上船舶识别系统,包括:
获取单元,用于搜集以往光电侦察设备执行任务时拍摄的可见光和红外舰船目标图像或搜集于谷歌地球的海面场景的卫星遥感图像,包括谷歌地球App、卫星图片集和光电设备拍摄船舰集;
标定单元,用于使用数据标记软件labelimg将预处理后的图片进行种类标注,包括标记出目标在图片中具体地位置(x、y)以及目标的宽高(w、h);
预处理单元,用于将遥感图片中的船舰与其旁边的岛屿、建筑、悬浮物分割开来,达到消除图像噪声的效果,包括Python处理框架;
聚类单元,用于获得YOLO算法锚点框的估计值,包括通过K-means聚类算法对标注框进行聚类,选取k=1~18对数据集中的样本进行聚类,得到k与IOU的关系;
生成单元,用于生成YOLOv4的框架,包括目标特征提取网络、SPP网络、特征融合网络与目标预测网络;
检测单元,用于生成YOLOv4的检测框,包括将所述图片集中的图片输入至改进的YOLOv4络结构,生成特征图,得到特征图对应先验框的位置信息、类别信息和物体置信度;
筛选单元,用于设定候选框的阈值,最终得到预测框,包括为了识别遥感图像中船舰这种小目标必须采用较小的预测框识别,所以要减小IOU值;
训练单元,用于计算目标置信度损失函数、目标位置损失函数、目标种类损失函数,并使用反馈神经网络更新权值,直到上述三种损失函数总值最小,从而得到训练好的改进的YOLOv4神经网络;
检测单元,用于将测试子集中的图片输入到训练好的改进的YOLOv4网络结构,获得目标的类别、目标在图片中具体地位置和目标的宽高,完成目标检测。
本发明的一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,包括以下步骤:
步骤一、获取卫星遥感船舶目标样本库,使用数据标记软件labelimg对图片进行标注,获得数据集,并按照训练子集和测试子集比例8:2分配;
步骤二、采用高反差保留法对训练子集进行预处理;
步骤三、构建YOLOv4网络框架,进行训练;
步骤四、采用非极大值抑制得到预测框,并改进IOU阈值;
步骤五、验证网络可行性。
进一步地,所述步骤一的过程包括:
步骤1.1.对舰船目标样本库进行构建,其样本库的来源包括以下途径:
1)通过网络爬虫获取现在网络上已有的舰船目标图片;
2)搜集以往光电侦察设备执行任务时拍摄的可见光和红外舰船目标图像;
3)搜集于谷歌地球的海面场景的卫星遥感图像;
4)积累光电侦察设备后续执行任务过程中新侦的舰船目标图像对样本库进行维护和扩充;
步骤1.2.将舰船目标样本库图像进行目标标定制作成数据集;利用数据标记软件labelimg对每个图片中的目标区域画目标标记框;所述目标在图像中的位置信息指目标标记框的宽高信息,目标标记框的对角点在图像坐标系下的坐标信息;将各图片的标签设定为:船舰、飞机;其训练子集和测试子集,比例为8:2;利用数据标注软件labelimg对数据集中的训练集进行船舰标注,生成xml文件,利用python脚本voc_yolo将xml文件格式转换为txt文件格式。
进一步地,所述步骤二的过程包括:
采用红外图像预处理方法,将图像中颜色、明暗反差较大两部分的交界处进行保留;首先采用高斯滤波将船舶与周围岛屿、建筑分割开来,增强对比度;然后采用以下操作将图片锐化,达到消除图像噪声的效果,其表达形式如下所示:
scr=img-λ×guas(img) (1)
式子(1)中,scr表示处理后的结果,img表示原始图像,λ为增益,guas为调用的高斯滤波器;为了提高红外对比度的同时减少噪声的引入,令λ=3;
将图像中颜色、明暗反差较大两部分的交界处保留下来,使得船舶目标特征更容易凸显出来。
进一步地,所述步骤三的过程包括:
在原有网络中,首先利用detect_image函数将输入图片缩放成416x416大小;接着通过引用3个函数卷积函数、批量标准化函数和激活函数mish对图片处理,分别是对图片卷积进行特征提取、提取的特征进行批量标准化、选取合适的激活函数mish,防止梯度消失,使得通道数由3变为32,加快特征提取进度;然后输入图像在网络中进过多次卷积和池化操作,能生成3种不用尺度大小的特征图:256通道数的8倍上采样的52×52尺度特征层、512通道数的16倍上采样的26×26尺度特征层和1024通道数的32倍上采样的13×13尺度特征层;上采样卷积池化过多,在提取特征时会丢失一些图像位置、纹理等细节特征;因此,采用改进的YOLOv4网络结构,更加生成的尺度特征层;在卷积池化少的特征层提取一些细节特征,从而提高船舶目标检测的准度。
进一步地,所述的改进的YOLOv4网络的结构包括:
改进的YOLOv4网络在原来的特征金字塔的基础上再加上两层,从而增强特征提取功能;改进的YOLOv4网络在原来的路径聚合网络中增加4个数据融合模块、2个上采样模块、2个下采样模块;改进的YOLOv4网络由原来的3个尺度特征层变成了5个尺度特征层,分别是208*208尺度特征层、104*104尺度特征层、52*52尺度特征层、26*26尺度特征层和13*13尺度特征层。
进一步地,所述步骤四的过程包括:
通过K-means聚类算法获取符合红外图像待检测目标尺度特点的锚点框尺寸,即先验框的个数设为9,各先验框的宽高尺寸分别为(17.4,30.0)、(26.6,73.2)、(49.0,134.8)、(50.8,46.6)、(89.9,89.9)、(97.3,209.7)、(176.4,294.3)、(204.7,152.4)、(348.4,331.7);为了获得最优锚点框,通过取最大IOU值为参考,使用非极大值抑制,去掉多余锚点框;
然后,为识别遥感图像中船舰这种小目标必须采用较小的预测框识别,因此要减小IOU值;但是IOU值与目标检测置信度成正比,如果置信度过低,会出现漏检严重的情况;为提高小目标检测的准确率,在此将IOU减小到0.3。
进一步地,所述步骤五的过程包括:
将预处理后的训练集导入到图6所示的改进的YOLOv4网络中,不断更新权值直到损失函数最小,得到训练好的网络,其中损失函数如下:
L=λ1Lconf(o,c)+λ2Lcla(O,C)+λ3Lloc(l,g) (2)
式子(2)中,损失函数由3部分组成,目标置信度损失Lconf(o,c)、目标位置损失Lloc(l,g)、目标类别损失Lcla(O,C),λ1、λ2、λ3为平衡系数,λ3大于1,增大目标损失函数的占比,防止外部非目标物体影响过大;
式子(3)中,目标置信度损失Lconf(o,c)采用二值交叉熵损失,其中oi∈{0,1},表示预测目标边界框i中是否真实存在目标,0表示不存在,1表示存在;表示预测目标矩形框i内是否存在目标的Sigmoid概率;
式子(4)中,目标位置损失Lloc(l,g)采用的是真实值和预测值的偏差平方和,其中i表示预测矩形框坐标偏移量,g表示与之匹配的GTbox与默认框之间的坐标偏移量;
式子(5)中,目标类别损失Lcla(O,C)采用二值交叉熵损失,其中Oi∈{0,1}表示预测目标边界框i中是否真实存在目标,0表示不存在,1表示存在;表示预测目标矩形框i内是否存在目标的Sigmoid概率;
然后,用于将测试子集中的图片输入至训练好的改进的YOLOv4网络结构,获得目标的类别、目标在图片中具体地位置和目标的宽高;如果精度高,则完成目标检测;如果出现大量漏检、错检情况,则返回步骤三继续训练,直到获得检测精度较高的网络。
与现有技术相比,本发明具有以下优点和有益效果:
1.本发明以卫星遥感舰船图像和航空侦察舰船图像为研究对象,提出一种基于改进YOLOv4算法的卫星遥感图像海上船舶识别技术。目标是实现对海面舰船目标快速检测及自动识别,提高舰船识别概率及准确率。
2.本发明在YOLOv4网络算法基础上,针对红外图像船舶目标检测任务提出改进,通过高反差保留法将图像中颜色、明暗反差较大两部分的交界处保留下来。先将原始图片进行高斯模糊,再用原始图像数据去掉高斯模糊数据。提高原始图像对比度、强化图像细节、消除椒盐噪声,将红外图像船舶目标突显出来。
3.本发明在原有的YOLOv4的路径聚合网络中增加了4个数据融合模块、2个上采样模块、2个下采样模块。进一步地,改进的YOLOv4网络由原来的3个尺度特征层变成了5个尺度特征层,增加了104×104与208*208的特征层尺度,并结合注意力机制思想进行算法网络结构的调整,再通过K-means聚类算法获取符合红外图像待检测目标尺度特点的锚点框尺寸,提升算法对于红外图像船体的检测性能。
4.本发明针对遥感图像中由于拍摄距离远,舰船目标大多为小尺寸,船舰目标图占比小等特点,提出了减小IOU阈值来增加小目标检测精度。但是IOU值与目标检测置信度成正比,IOU过小会出现漏检严重,召回率减小。所以将IOU阈值缩小到0.3可以在较小影响召回率的同时提高船舰目标检测精度。
附图说明
图1是本发明的一种实施例的方法流程图。
图2是本发明的一种实施例的锚点框标定图片。其中,图2a中锚点框标记了3个船舰目标,图2b标记了2个船舰目标。
图3是本发明的一种实施例的船舰目标预处理流程图。
图4是本发明的一种实施例的船舰目标预处理结果图。其中,图4a是原图,图4b是处理后图片。
图5是现有技术的YOLOv4网络结构图。
图6是本发明的一种实施例的改进后的YOLOv4网络结构图。
图7是一种实施例的Anchor box数量与IOU阈值关系图。
图8是本发明一种实施例的对YOLOv4训练结果图。其中,图8a是YOLOv4训练结果图,图8b是改进后的YOLOv4训练结果图。
图9是本发明的一种实施例的YOLOv4训练过程图。
图10是本发明的一种实施例的YOLO算法训练过程图。
图11是本发明的一种实施例的准确率与召回率关系图。
图12是本发明的一种实施例的检测结果图。其中,图12a、图12d是原图,图12b、图12e是YOLOv4检测结果图,图12c、图12f是改进后的YOLOv4结果图。
具体实施方式
下面结合附图对本发明做进一步详细说明。
本发明提供了一种基于改进YOLOv4算法的遥感图像海上船舶识别系统,如图1所示,包括:
获取单元,用于搜集以往光电侦察设备执行任务时拍摄的可见光和红外舰船目标图像或搜集于谷歌地球的海面场景的卫星遥感图像,包括谷歌地球App、卫星图片集和光电设备拍摄船舰集;
标定单元,如图2所示,用于使用数据标记软件labelimg将预处理后的图片进行种类标注,包括标记出目标在图片中具体地位置(x、y)以及目标的宽高(w、h);
预处理单元,如图3与图4所示,用于将遥感图片中的船舰与其旁边的岛屿、建筑、悬浮物分割开来,达到消除图像噪声的效果,包括Python等处理框架;
聚类单元,用于获得YOLO算法锚点框的估计值,包括通过K-means聚类算法对标注框进行聚类,选取k=1~18对数据集中的样本进行聚类,得到k与IOU(Intersection overUnion,交并比)的关系如图7所示。随着k值的增加,目标函数的变化变得更大并且更稳定。当k值大于9时,曲线开始变得平滑,所以选择9个anchor box不仅可以加速损失函数的收敛,还可以减少候选框带来的误差。在本发明的实验中,船舰目标样本集对应的anchor box分别为(17.4,30.0)、(26.6,73.2)、(49.0,134.8)、(50.8,46.6)、(89.9,89.9)、(97.3,209.7)、(176.4,294.3)、(204.7,152.4)、(348.4,331.7);
生成单元,用于生成YOLOv4的框架,如图6所示,包括目标特征提取网络、SPP网络、特征融合网络与目标预测网络。
检测单元,用于生成YOLOv4的检测框。包括将所述图片集中的图片输入至改进的YOLOv4络结构,生成特征图,得到特征图对应先验框的位置信息、类别信息和物体置信度;
筛选单元,用于设定候选框的阈值,最终得到预测框。包括为了识别遥感图像中船舰这种小目标必须采用较小的预测框识别,所以要减小IOU值。但是IOU值与目标检测置信度成正比,如果置信度过低,会出现漏检严重的情况。为了提高小目标检测的准确率,本次实践中IOU设定为0.3。
训练单元,用于计算目标置信度损失函数、目标位置损失函数、目标种类损失函数,并使用反馈神经网络更新权值,直到上述三种损失函数总值最小。这样便得到训练好的改进的YOLOv4神经网络。如图8所示,图8为训练结果图,本次训练的训练样本为12731张卫星遥感图片,这些样本来自CAESAR与RISD数据集,分为50组训练。图8a为原本的YOLOv4训练结果,图8b为改进后的YOLOv4训练结果。红色曲线为训练集损失函数,橙色为测试集损失函数,训练结果约在10批次时,损失函数接近最小,且图8b比图8a的验证损失函数低0.3,训练结果与测试结果效果更好。
检测单元,用于将测试子集中的图片输入至训练好的改进的YOLOv4网络结构,获得目标的类别、目标在图片中具体地位置和目标的宽高,完成目标检测。
另外,本发明提供了一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,包括以下步骤:
步骤一、获取卫星遥感船舶目标样本库,使用数据标记软件labelimg将图片进行标注,获得数据集,并按照训练子集和测试子集比例8:2分配;
步骤二、采用高反差保留法对训练子集进行预处理;
步骤三、构建YOLOv4网络框架,进行训练;
步骤四、采用非极大值抑制得到预测框,并改进IOU阈值;
步骤五、验证网络可行性。
所述步骤一的具体过程为:获得带有船舰目标的样本库。目前舰船通过航空视角拍摄的图片非常少,因此需要对舰船目标样本库进行构建舰船类目标检测和识别的基础是样本库的构建,现阶段样本库的来源有以下途径:
1)通过网络爬虫获取现在网络上已有的舰船目标图片;
2)搜集以往光电侦察设备执行任务时拍摄的可见光和红外舰船目标图像;
3)搜集于谷歌地球的海面场景的卫星遥感图像;
4)积累光电侦察设备后续执行任务过程中新侦的舰船目标图像对样本库进行维护和扩充。
进一步,将舰船目标样本库图像进行目标标定制作成数据集。利用数据标记软件labelimg对每个图片中的目标区域画目标标记框,所述目标在图像中的位置信息指目标标记框的宽高信息,目标标记框的对角点在图像坐标系下的坐标信息。可选地,所述图片集中共包含12620帧图像,标签可定为:船舰、飞机等;所述训练子集和测试子集,比例为8:2;利用数据标注软件labelimg对数据集中的训练集进行船舰标注,生成xml文件,利用python脚本voc_yolo将xml文件格式转换为txt文件格式。
所述步骤二的具体过程为:本发明提供了一种红外图像预处理方法。该方法主要是将图像中颜色、明暗反差较大两部分的交界处保留下来,效果如图3所示。首先采用高斯滤波将船舶与周围岛屿、建筑分割开来,增强对比度;然后采用下面操作将图片锐化,达到消除图像噪声的效果。其表达形式如下所示:
scr=img-λ×guas(img) (6)
式子(6)中,scr表示处理后的结果,img表示原始图像,λ为增益,guas为调用的高斯滤波器。为了提高红外对比度的同时减少噪声的引入,令λ=3。
结果如图4所示,图4为预处理结果图,其中图4a为原始图像,图4b是高反差保留法处理过后图像。将图像中颜色、明暗反差较大两部分的交界处保留下来,使得船舶目标特征更容易凸显出来。
所述步骤三的具体过程为:如图5所示,在原有网络中,首先利用detect_image函数将输入图片缩放成416x416大小;接着通过引用3个函数卷积函数、批量标准化函数和激活函数mish对图片预处理,分别是对图片卷积进行特征提取、提取的特征进行批量标准化、选取合适的激活函数mish,防止梯度消失,使得通道数由3变为32,加快特征提取进度;然后输入图像在网络中进过多次卷积和池化操作,能生成3种不用尺度大小的特征图:256通道数的8倍上采样的52×52尺度特征层、512通道数的16倍上采样的26×26尺度特征层和1024通道数的32倍上采样的13×13尺度特征层。上采样卷积池化过多,在提取特征时会丢失一些图像位置、纹理等细节特征。因此本发明提供一种改进的YOLOv4网络结构,更加生成的尺度特征层。在卷积池化少的特征层提取一些细节特征,从而提高船舶目标检测的准度。
本发明提供了一种改进的YOLOv4网络,是在原来的特征金字塔的基础上再加上两层,将增强了特征提取功能如图5所示。改进的YOLOv4网络为:在原来的路径聚合网络中增加了4个数据融合模块、2个上采样模块、2个下采样模块。另外,改进的YOLOv4网络由原来的3个尺度特征层变成了5个尺度特征层,分别是208*208尺度特征层、104*104尺度特征层、52*52尺度特征层、26*26尺度特征层和13*13尺度特征层。
所述步骤四的具体过程为:通过聚类获得IOU的取值的原定值。因为遥感图像中的船舶目标图占比比普通图片的要低,所以原定值需要减小来用于遥感图像的检测。如果IOU值过低会出现漏检的情况,所以要获得适合检测遥感船舶目标的IOU值。
即,通过K-means聚类算法获取符合红外图像待检测目标尺度特点的锚点框尺寸,即所述先验框的个数为9,各先验框的宽高尺寸分别为(17.4,30.0)、(26.6,73.2)、(49.0,134.8)、(50.8,46.6)、(89.9,89.9)、(97.3,209.7)、(176.4,294.3)、(204.7,152.4)、(348.4,331.7)。为了获得最锚点框使用非极大值抑制,去掉多余锚点框。
进一步,为了识别遥感图像中船舰这种小目标必须采用较小的预测框识别,所以要减小IOU值。但是IOU值与目标检测置信度成正比,如果置信度过低,会出现漏检严重的情况。为了提高小目标检测的准确率,本次实践中IOU设定为0.3。
所述步骤五的具体过程为:将预处理后的训练集导入到图6所示的改进的YOLOv4网络中,不断更新权值直到损失函数最小,得到训练好的网络,其中损失函数如下:
L=λ1Lconf(o,c)+λ2Lcla(O,C)+λ3Lloc(l,g) (7)
式子(7)中,损失函数由3部分组成,目标置信度损失Lconf(o,c)、目标位置损失Lloc(l,g)、目标类别损失Lcla(O,C),λ1、λ2、λ3为平衡系数,λ3大于1,增大目标损失函数的占比,防止外部非目标物体影响过大。
式子(8)中,目标置信度损失Lconf(o,c)采用二值交叉熵损失;其中oi∈{0,1}表示预测目标边界框i中是否真实存在目标,0表示不存在,1表示存在。表示预测目标矩形框i内是否存在目标的Sigmoid概率。
式子(9)中,目标位置损失Lloc(l,g)采用的是真实值和预测值的偏差平方和,其中i表示预测矩形框坐标偏移量,g表示与之匹配的GTbox与默认框之间的坐标偏移量。
式子(10)中,目标类别损失Lcla(O,C)采用二值交叉熵损失;其中Oi∈{0,1},表示预测目标边界框i中是否真实存在目标,0表示不存在,1表示存在。表示预测目标矩形框i内是否存在目标的Sigmoid概率;
进一步,如图9所示,用于将测试子集中的图片输入至训练好的改进的YOLOv4网络结构,获得目标的类别、目标在图片中具体地位置和目标的宽高。如果精度高,则完成目标检测;如果出现大量漏检、错检情况,则返回步骤三继续训练,直到获得检测精度较高的网络。目标检测中的检测精度mPA如下表。
实际情况 | 预测为真 | 预测为假 | 召回率 |
真 | TP(真真) | FN(真假) | |
假 | FP(假真) | TN(假假) | |
准确率 |
准确率表示预测为真的样本中有多少是确实为真的样本,表达式如下
召回率表示数据集中有多少真正的样本被预测到,表达式如下
具体结果如图11,图11为准确率与召回率关系图。可得改进后YOLO算法mAP值为0.67,原YOLO算法为0.64。
检测结果如图12,图12中的图b与图e是原本的YOLOv4网络训练后识别的结果,图c与图e是改进后的YOLOv4网络训练后识别的结果。其中图c比图e的识别精度稍高一些,而且图c图f将图b图e中漏检的船舰检测出来。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (8)
1.一种基于改进YOLOv4算法的遥感图像海上船舶识别系统,其特征在于,包括:
获取单元,用于搜集以往光电侦察设备执行任务时拍摄的可见光和红外舰船目标图像或搜集于谷歌地球的海面场景的卫星遥感图像,包括谷歌地球App、卫星图片集和光电设备拍摄船舰集;
标定单元,用于使用数据标记软件labelimg将预处理后的图片进行种类标注,包括标记出目标在图片中具体地位置(x、y)以及目标的宽高(w、h);
预处理单元,用于将遥感图片中的船舰与其旁边的岛屿、建筑、悬浮物分割开来,达到消除图像噪声的效果,包括Python处理框架;
聚类单元,用于获得YOLO算法锚点框的估计值,包括通过K-means聚类算法对标注框进行聚类,选取k=1~18对数据集中的样本进行聚类,得到k与IOU的关系;
生成单元,用于生成YOLOv4的框架,包括目标特征提取网络、SPP网络、特征融合网络与目标预测网络;
检测单元,用于生成YOLOv4的检测框,包括将所述图片集中的图片输入至改进的YOLOv4络结构,生成特征图,得到特征图对应先验框的位置信息、类别信息和物体置信度;
筛选单元,用于设定候选框的阈值,最终得到预测框,包括为了识别遥感图像中船舰这种小目标必须采用较小的预测框识别,所以要减小IOU值;
训练单元,用于计算目标置信度损失函数、目标位置损失函数、目标种类损失函数,并使用反馈神经网络更新权值,直到上述三种损失函数总值最小,从而得到训练好的改进的YOLOv4神经网络;
检测单元,用于将测试子集中的图片输入到训练好的改进的YOLOv4网络结构,获得目标的类别、目标在图片中具体地位置和目标的宽高,完成目标检测。
2.一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,其特征在于,包括以下步骤:
步骤一、获取卫星遥感船舶目标样本库,使用数据标记软件labelimg对图片进行标注,获得数据集,并按照训练子集和测试子集比例8:2分配;
步骤二、采用高反差保留法对训练子集进行预处理;
步骤三、构建YOLOv4网络框架,进行训练;
步骤四、采用非极大值抑制得到预测框,并改进IOU阈值;
步骤五、验证网络可行性。
3.根据权利要求2所述的一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,其特征在于,所述步骤一的过程包括:
步骤1.1.对舰船目标样本库进行构建,其样本库的来源包括以下途径:
1)通过网络爬虫获取现在网络上已有的舰船目标图片;
2)搜集以往光电侦察设备执行任务时拍摄的可见光和红外舰船目标图像;
3)搜集于谷歌地球的海面场景的卫星遥感图像;
4)积累光电侦察设备后续执行任务过程中新侦的舰船目标图像对样本库进行维护和扩充;
步骤1.2.将舰船目标样本库图像进行目标标定制作成数据集;利用数据标记软件labelimg对每个图片中的目标区域画目标标记框;所述目标在图像中的位置信息指目标标记框的宽高信息,目标标记框的对角点在图像坐标系下的坐标信息;将各图片的标签设定为:船舰、飞机;其训练子集和测试子集,比例为8:2;利用数据标注软件labelimg对数据集中的训练集进行船舰标注,生成xml文件,利用python脚本voc_yolo将xml文件格式转换为txt文件格式。
4.根据权利要求2所述的一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,其特征在于,所述步骤二的过程包括:
采用红外图像预处理方法,将图像中颜色、明暗反差较大两部分的交界处进行保留;首先采用高斯滤波将船舶与周围岛屿、建筑分割开来,增强对比度;然后采用以下操作将图片锐化,达到消除图像噪声的效果,其表达形式如下所示:
scr=img-λ×guas(img) (1)
式子(1)中,scr表示处理后的结果,img表示原始图像,λ为增益,guas为调用的高斯滤波器;为了提高红外对比度的同时减少噪声的引入,令λ=3;
将图像中颜色、明暗反差较大两部分的交界处保留下来,使得船舶目标特征更容易凸显出来。
5.根据权利要求2所述的一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,其特征在于,所述步骤三的过程包括:
在原有网络中,首先利用detect_image函数将输入图片缩放成416x416大小;接着通过引用3个函数卷积函数、批量标准化函数和激活函数mish对图片处理,分别是对图片卷积进行特征提取、提取的特征进行批量标准化、选取合适的激活函数mish,防止梯度消失,使得通道数由3变为32,加快特征提取进度;然后输入图像在网络中进过多次卷积和池化操作,能生成3种不用尺度大小的特征图:256通道数的8倍上采样的52×52尺度特征层、512通道数的16倍上采样的26×26尺度特征层和1024通道数的32倍上采样的13×13尺度特征层;上采样卷积池化过多,在提取特征时会丢失一些图像位置、纹理等细节特征;因此,采用改进的YOLOv4网络结构,更加生成的尺度特征层;在卷积池化少的特征层提取一些细节特征,从而提高船舶目标检测的准度。
6.根据权利要求5所述的一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,其特征在于,所述的改进的YOLOv4网络的结构包括:
改进的YOLOv4网络在原来的特征金字塔的基础上再加上两层,从而增强特征提取功能;改进的YOLOv4网络在原来的路径聚合网络中增加4个数据融合模块、2个上采样模块、2个下采样模块;改进的YOLOv4网络由原来的3个尺度特征层变成了5个尺度特征层,分别是208*208尺度特征层、104*104尺度特征层、52*52尺度特征层、26*26尺度特征层和13*13尺度特征层。
7.根据权利要求2所述的一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,其特征在于,所述步骤四的过程包括:
通过K-means聚类算法获取符合红外图像待检测目标尺度特点的锚点框尺寸,即先验框的个数设为9,各先验框的宽高尺寸分别为(17.4,30.0)、(26.6,73.2)、(49.0,134.8)、(50.8,46.6)、(89.9,89.9)、(97.3,209.7)、(176.4,294.3)、(204.7,152.4)、(348.4,331.7);为了获得最优锚点框,通过取最大IOU值为参考,使用非极大值抑制,去掉多余锚点框;
然后,为识别遥感图像中船舰这种小目标必须采用较小的预测框识别,因此要减小IOU值;但是IOU值与目标检测置信度成正比,如果置信度过低,会出现漏检严重的情况;为提高小目标检测的准确率,在此将IOU减小到0.3。
8.根据权利要求2所述的一种基于改进YOLOv4算法的遥感图像海上船舶识别方法,其特征在于,所述步骤五的过程包括:
将预处理后的训练集导入到图6所示的改进的YOLOv4网络中,不断更新权值直到损失函数最小,得到训练好的网络,其中损失函数如下:
L=λ1Lconf(o,c)+λ2Lcla(O,C)+λ3Lloc(l,g) (2)
式子(2)中,损失函数由3部分组成,目标置信度损失Lconf(o,c)、目标位置损失Lloc(l,g)、目标类别损失Lcla(O,C),λ1、λ2、λ3为平衡系数,λ3大于1,增大目标损失函数的占比,防止外部非目标物体影响过大;
式子(3)中,目标置信度损失Lconf(o,c)采用二值交叉熵损失,其中oi∈{0,1},表示预测目标边界框i中是否真实存在目标,0表示不存在,1表示存在;表示预测目标矩形框i内是否存在目标的Sigmoid概率;
式子(4)中,目标位置损失Lloc(l,g)采用的是真实值和预测值的偏差平方和,其中i表示预测矩形框坐标偏移量,g表示与之匹配的GTbox与默认框之间的坐标偏移量;
式子(5)中,目标类别损失Lcla(O,C)采用二值交叉熵损失,其中Oi∈{0,1}表示预测目标边界框i中是否真实存在目标,0表示不存在,1表示存在;表示预测目标矩形框i内是否存在目标的Sigmoid概率;
然后,用于将测试子集中的图片输入至训练好的改进的YOLOv4网络结构,获得目标的类别、目标在图片中具体地位置和目标的宽高;如果精度高,则完成目标检测;如果出现大量漏检、错检情况,则返回步骤三继续训练,直到获得检测精度较高的网络。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111381889.9A CN113920436A (zh) | 2021-11-22 | 2021-11-22 | 一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111381889.9A CN113920436A (zh) | 2021-11-22 | 2021-11-22 | 一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113920436A true CN113920436A (zh) | 2022-01-11 |
Family
ID=79247736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111381889.9A Pending CN113920436A (zh) | 2021-11-22 | 2021-11-22 | 一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113920436A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114596273A (zh) * | 2022-03-02 | 2022-06-07 | 江南大学 | 利用yolov4网络的陶瓷基板多种瑕疵智能检测方法 |
CN114677596A (zh) * | 2022-05-26 | 2022-06-28 | 之江实验室 | 一种基于注意力模型的遥感图像船舶检测方法和装置 |
CN114782881A (zh) * | 2022-06-22 | 2022-07-22 | 青岛恒天翼信息科技有限公司 | Ai影像训练实现船舶识别的方法、系统和设备 |
CN115082872A (zh) * | 2022-08-11 | 2022-09-20 | 江西省水利科学院 | 一种面向边缘计算的河面采砂船及过往船只识别方法 |
CN115966009A (zh) * | 2023-01-03 | 2023-04-14 | 迪泰(浙江)通信技术有限公司 | 一种船舶智能检测系统及方法 |
CN116883861A (zh) * | 2023-07-17 | 2023-10-13 | 中国人民解放军战略支援部队航天工程大学 | 面向微小卫星在轨应用的港口大中型舰船活动识别方法及系统 |
-
2021
- 2021-11-22 CN CN202111381889.9A patent/CN113920436A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114596273A (zh) * | 2022-03-02 | 2022-06-07 | 江南大学 | 利用yolov4网络的陶瓷基板多种瑕疵智能检测方法 |
CN114596273B (zh) * | 2022-03-02 | 2022-11-25 | 江南大学 | 利用yolov4网络的陶瓷基板多种瑕疵智能检测方法 |
CN114677596A (zh) * | 2022-05-26 | 2022-06-28 | 之江实验室 | 一种基于注意力模型的遥感图像船舶检测方法和装置 |
CN114782881A (zh) * | 2022-06-22 | 2022-07-22 | 青岛恒天翼信息科技有限公司 | Ai影像训练实现船舶识别的方法、系统和设备 |
CN115082872A (zh) * | 2022-08-11 | 2022-09-20 | 江西省水利科学院 | 一种面向边缘计算的河面采砂船及过往船只识别方法 |
CN115082872B (zh) * | 2022-08-11 | 2023-01-17 | 江西省水利科学院 | 一种面向边缘计算的河面采砂船及过往船只识别方法 |
CN115966009A (zh) * | 2023-01-03 | 2023-04-14 | 迪泰(浙江)通信技术有限公司 | 一种船舶智能检测系统及方法 |
CN116883861A (zh) * | 2023-07-17 | 2023-10-13 | 中国人民解放军战略支援部队航天工程大学 | 面向微小卫星在轨应用的港口大中型舰船活动识别方法及系统 |
CN116883861B (zh) * | 2023-07-17 | 2024-01-26 | 中国人民解放军战略支援部队航天工程大学 | 面向微小卫星在轨应用的港口大中型舰船活动识别方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113920436A (zh) | 一种基于改进YOLOv4算法的遥感图像海上船舶识别系统及其方法 | |
CN108510467B (zh) | 基于深度可变形卷积神经网络的sar图像目标识别方法 | |
CN108805904B (zh) | 一种基于卫星序列图像的运动舰船检测与跟踪方法 | |
CN111460968B (zh) | 基于视频的无人机识别与跟踪方法及装置 | |
CN112766184B (zh) | 基于多层级特征选择卷积神经网络的遥感目标检测方法 | |
Munawar et al. | Mining multispectral aerial images for automatic detection of strategic bridge locations for disaster relief missions | |
CN112699967B (zh) | 一种基于改进深度神经网络的远距离机场目标检测方法 | |
CN109242889A (zh) | 基于上下文显著性检测与sae的sar图像变化检测方法 | |
Wang et al. | Vehicle detection based on drone images with the improved faster R-CNN | |
CN115147731A (zh) | 一种基于全空间编码注意力模块的sar图像目标检测方法 | |
CN104778699B (zh) | 一种自适应对象特征的跟踪方法 | |
CN113743260B (zh) | 一种地铁站台密集人流情况下的行人跟踪方法 | |
CN114596500A (zh) | 一种基于通道-空间注意力和DeeplabV3plus的遥感影像语义分割方法 | |
Zhang et al. | Nearshore vessel detection based on Scene-mask R-CNN in remote sensing image | |
CN112417931A (zh) | 一种基于视觉显著性的水面物体检测和分类的方法 | |
CN115272876A (zh) | 一种基于深度学习的遥感图像船舶目标检测方法 | |
Andriyanov et al. | Pattern recognition on radar images using augmentation | |
Li et al. | Ship target detection and recognition method on sea surface based on multi-level hybrid network | |
CN115861756A (zh) | 基于级联组合网络的大地背景小目标识别方法 | |
Xu et al. | COCO-Net: A dual-supervised network with unified ROI-loss for low-resolution ship detection from optical satellite image sequences | |
Yildirim et al. | Ship detection in optical remote sensing images using YOLOv4 and Tiny YOLOv4 | |
CN113628180A (zh) | 一种基于语义分割网络的遥感建筑物检测方法及系统 | |
CN109785318B (zh) | 基于面线基元关联约束的遥感图像变化检测方法 | |
CN116797941A (zh) | 一种高分辨率遥感影像的海上溢油风险源快速智能识别分类方法 | |
CN115331127A (zh) | 一种基于注意力机制的无人机移动目标侦测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |