CN114782772A - 一种基于改进ssd算法的水上漂浮物检测识别方法 - Google Patents

一种基于改进ssd算法的水上漂浮物检测识别方法 Download PDF

Info

Publication number
CN114782772A
CN114782772A CN202210369885.7A CN202210369885A CN114782772A CN 114782772 A CN114782772 A CN 114782772A CN 202210369885 A CN202210369885 A CN 202210369885A CN 114782772 A CN114782772 A CN 114782772A
Authority
CN
China
Prior art keywords
network
ssd
training
original
improved
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
Application number
CN202210369885.7A
Other languages
English (en)
Inventor
胡鹤轩
葛一帆
胡强
张晔
袁子扬
许天霖
岳海洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hohai University HHU
Original Assignee
Hohai University HHU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hohai University HHU filed Critical Hohai University HHU
Priority to CN202210369885.7A priority Critical patent/CN114782772A/zh
Publication of CN114782772A publication Critical patent/CN114782772A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (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)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种基于改进SSD算法的水上漂浮物检测识别方法,包括:收集水上漂浮物数据集,对数据集进行上采样、上池化及数据增强预处理,通过标签标注工具LabelImg对数据集标注,得到适用于目标检测网络训练的数据集;搭建融合残差网络的改进SSD算法,并增加FPN和注意力机制来加强算法对小目标的特征学习能力;在原SSD网络的原始训练过程中添加冻结训练,并对训练过程中涉及的激活函数和损失函数进行优化,提升预测框的置信度;利用改进SSD算法对训练集进行迭代训练,得到效果最好的SSD网络目标检测模型。本发明可以在保证高质量检测的前提下,有效解决传统水上漂浮物识别误差大、时间长的问题。

Description

一种基于改进SSD算法的水上漂浮物检测识别方法
技术领域
本发明属于机器学习计算机视觉目标检测技术领域,具体涉及一种基于改进SSD(Single Shot MultiBox Detector)算法的水上漂浮物检测识别方法。
背景技术
众所周知,水是人类重要的资源,海洋大约占据了地球71%的面积。由于我国正在加快推进城市化进程的步伐,因此对于水资源的保护也是需要关注的重点。但是目前水环境污染、水生态损害和水资源短缺等问题依旧存在,成为了阻碍社会可持续发展的“瓶颈”。因为生活废弃物的丢弃、工业违规排污、地表径流冲击等各种因素,形成的外源性感染异物侵入,对河流水体生态***管理自净能力产生了严重破坏,造成水体的富营养化,并导致水体周围自然生态体系的失调、毁坏,从而导致河流水体污染黑臭,严重危害周围的生命环境,因此必须被有效地发现和处理。由此,水资源保护要求的不断提高,有效促进了目标检测技术的迅速发展。比如,机器视觉方法已广泛应用于水上漂浮物的识别技术。
於双飞等人“一种水面漂浮目标的视觉检测方法”一文(机电工程技术,2019,48(04):p145-147+191),阐述了:利用阈值分割,通过使用合适的颜色空间去进行工作,减少目标倒影对结果产生的影响,然后进行一系列处理包括形态学运算后可以得到目标的轮廓,使用轮廓的长宽比特征与目标物进行对照,实现不同种类的水面漂浮物的检测。汤伟等人的文章“基于视觉的水面垃圾清理机器人目标检测算法”(科学技术与工程,2019,19(03):p141-146),则利用均值漂移滤波平滑算法,减弱水面波纹对结果的干扰,接着利用最大类间方差法去分割水面漂浮物、采用形态学处理图像处理结果中的小孔,最终标记出水面漂浮物。但是这些传统的机器视觉方法虽然有一定的效果,但其过程均比较繁杂,而且检测速度低,误差大,无法满足实际场景中实时监测的需求。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种基于改进SSD算法的水上漂浮物检测识别方法,可有效解决传统水上漂浮物识别误差大、时间长的问题,其检测过程简单易行,实现高质量的检测。
为解决上述技术问题,本发明采用以下技术方案。
一种基于改进SSD算法的水上漂浮物检测识别方法,包括以下步骤:
步骤1、收集水上漂浮物数据集,对数据集进行上采样、上池化以及数据增强的预处理,通过标签标注工具LabelImg对数据集标注,得到适用于目标检测网络进行训练的数据集;
步骤2、搭建融合残差网络的改进SSD算法,并增加FPN特征金字塔和注意力机制对原SSD网络的结构进行优化;
步骤3、对原SSD网络的原始训练过程进行改进,包括在训练过程中添加冻结训练、对原SSD网络的激活函数和损失函数进行替换;
步骤4、将数据集送入到改进SSD算法,并使用改进过后的训练过程对其进行多次迭代训练,得到效果最好的SSD网络目标检测模型。
进一步地,所述步骤2的过程包括:
步骤2.1.根据原SSD网络的网络结构进行搭建:其骨干网络VGG-16网络包括Conv1、Conv2、Conv3、Conv4、Conv5、fc6和fc7;原SSD网络的特征提取网络包括Conv4_3、fc7和骨干网络之外的Conv8_2、Conv9_2、Conv10_2、Conv11_2;
步骤2.2.引入残差网络:首先在原SSD网络的骨干网络VGG-16中,对于其中的特征提取层Conv4_3和fc7层,分别在这两层与上一层网络之中引入ResNet残差结构网络的思想,组成了两个VGG-16和ResNet网络结构。所述的残差网络是指:对于刚开始输入的x,按照常规的神经网络进行权值叠加并通过激活函数,而后再次经过权值叠加,再把输入的信号和此时的输出叠加而后再通过激活函数,由此而形成的网络;残差网络与常规神经网络的不同在于,残差网络多了一个直接到达输出后的连线。
步骤2.3.添加FPN特征金字塔:对原SSD网络的六个特征提取层,即骨干网络VGG-16里的Conv4_3、fc7,以及骨干网络之外的Conv8_2、Conv9_2、Conv10_2、Conv11_2,分别添加调整后的FPN特征金字塔;经此改进后的FPN结构可以进行跨层级连接,将高层级特征跨层与低层级特征融合,并且使用双线性插值代替临近插值;
步骤2.4.添加注意力机制:对原SSD网络中添加CBAM模块,在通道和空间两个方面对原SSD网络进行优化;
在通道方面对原SSD网络进行通道注意力方向的优化,其公式如下:
Figure BDA0003587809110000021
其中,F代表特征层,AvgPool和MaxPool函数分别代表平均池化和最大池化操作,σ为sigmoid操作,MLP为多层感知机操作,W0、W1代表不同权重;
在空间方面对原SSD网络进行空间注意力方向的优化,关注点是区域的位置,其公式如下:
Figure BDA0003587809110000022
其中,f是卷积操作,7×7表示卷积核的大小;
根据CBAM模块的特性,将对原SSD网络中骨干网络VGG-16的Conv4_3和fc7特征层,以及骨干网络之外的Conv8_2、Conv9_2、Conv10_2、Conv11_2特征提取网络添加注意力机制模块。
进一步地,在步骤3中,所述的对原SSD网络的激活函数和损失函数进行替换的过程分别为:
步骤3.2.激活函数的替换:原SSD网络中使用的激活函数为ReLu激活函数,将其替换为SeLu激活函数;缩放指数型线性单元激活函数使样本分布回归零均值和单位方差,其在指数型线性单元上乘以大于1的lambda;Selu的表达式如下:
Figure BDA0003587809110000031
其中:λ=1.0507,α=1.6732;
步骤3.3.损失函数的替换:原SSD网络中的损失函数采用多任务损失函数,包括位置损失函数Lloc和置信度损失函数Lconf两部分的加权;现将原SSD网络中的损失函数替换为focal loss,此损失函数是在标准交叉熵损失基础上修改得到的;其公式如下:
FL(pt)=-(1-pt)γlog(pt); (4)
其中:
Figure BDA0003587809110000032
代表样本为真的概率。
进一步地,所述的步骤4具体为:
步骤4.1.将步骤1中标注完成的图像按6∶2∶2划分为训练集、测试集和验证集;
步骤4.2.利用训练集中的图片进行模型的训练;网络学习模型的训练基于Pytorch的深度学习框架,使用Adam优化器优化训练的网络;
步骤4.3.训练的部分参数为:输入图片尺寸为300×300,模型的初始学习率为5×10-4,在10个epochs之后学习率衰减为5×10-5,batch size设置为8;训练时间成本在10个小时左右;
步骤4.4.在500次迭代完成之后,利用测试集进行测试,选取mAP值最高的为效果最好的SSD网络目标检测模型。
与现有技术相比,本发明具有以下优点和有益效果:
1.本发明在原SSD网络的基础上,针对其存在的在训练过程当中,容易发生梯度下降等问题,引入了残差网络,可有效解决梯度***的问题以及提高检测的精度。
2.本发明对原SSD网络的结构增加FPN特征金字塔以及注意力机制,能在增加极小的计算量的情况下,处理好物体检测中的多尺度变化问题。从而克服了:由于存在小物体本身具有的像素信息较少,在下采样的过程中极易被丢失的问题。
3.本发明在原SSD网络的原始训练过程种进行改进,引入了冻结训练,并对训练过程中涉及的激活函数和损失函数进行替换。不仅可以减少模型训练所需的时间,节约时间和资源;而且,激活函数和损失函数的替换可以提高提升预测框的置信度,使得改进SSD算法对于小目标物体的检测精度得到提升。
4.本发明将机器学习技术应用到水面清漂工作中,通过改进SSD算法,利用更新过后的训练方法对其使用自建的数据集进行训练,得到效果最好的SSD网络目标检测模型,该SSD网络目标检测模型可以在保证高质量检测的前提下,解决传统水上漂浮物识别误差大、时间长的问题。
附图说明
图1为本发明的一种实施例的方法流程图。
图2为本发明的一种实施例的原SSD网络不同网络层次结构图。
图3为本发明的一种实施例的残差网络结构图。
图4为本发明的一种实施例的改进SSD算法结构图。
图5为本发明的一种实施例的测试结果对比图。
具体实施方式
本发明的一种基于改进SSD算法的水上漂浮物检测识别方法,包括:收集水上漂浮物数据集,对数据集进行上采样、上池化以及数据增强的预处理,通过标签标注工具LabelImg对数据集标注,得到适用于目标检测网络进行训练的数据集;搭建融合残差网络的改进SSD算法,并增加FPN(Feature Pyramid Network,特征金字塔)和注意力机制来加强算法对小目标的特征学习能力;在原SSD网络的原始训练过程中添加冻结训练节约训练时间,并对训练过程中涉及的激活函数和损失函数进行优化,提升预测框的置信度;利用改进SSD算法对训练集进行迭代训练,得到效果最好的SSD网络目标检测模型;该效果最好的SSD网络目标检测模型可以在保证高质量检测的前提下,有效解决传统水上漂浮物识别误差大、时间长的问题。
下面结合附图对本发明做进一步详细说明。
图1为本发明的一种实施例的方法流程图。如图1所示,本实施例方法,包括以下步骤:
步骤1、收集水上漂浮物数据集,对数据集进行上采样、上池化以及数据增强的预处理,通过标签标注工具LabelImg对数据集标注,得到适用于目标检测网络进行训练的数据集。其过程包括:
步骤1.1:利用无人机于实习基地旁边的河流进行拍照,获取一系列需要的图像。无人机的飞行速度保持在5m/s,飞行高度保持在5m,无人机拍取到的视频帧率为60fps,对其每隔90帧保存一张图像,得到了共计5000张图像。
步骤1.2:对初始得到的图像集,因为其中有的图像内容河流区域被遮挡,有的图像反光等错误原因,还包括无人机起飞、降落时得到的图像,这些保存的图像中不包含河流图像,所以要对其进行精简,最终获得了可以用于标注的影像2000张。采集到的水上漂浮物主要包括水瓶、杂草、树枝、牛奶盒、垃圾袋以及塑料垃圾这六种类别。
步骤1.3:因为利用无人机得到的图像中,有的图像分辨率过大,但需要识别检测的物体却只占一小部分,因此对这类图片进行尺寸裁剪工作,获得的图片尺寸设置为300×300,进行操作之后得到的图像所需识别特征明显。
步骤1.4:水上漂浮物属于小目标样本的检测,所以为了增加准确率,我们可以对图像进行上采样操作加强图像特征。上采样指的是任何可以让图像变成更高分辨率的技术,也就是将特征图的分辨率还原到原始图片的分辨率大小。
步骤1.5:而且由于机器学***翻转、竖直翻转、镜像翻转的方法对水上漂浮物数据集图片进行处理,并将处理后的图片加入到训练集中,经过数据增强处理后最终得到了2400张样本图片,包含不同类型的漂浮物样本,其中每张样本图片至少包含一种漂浮物类型。
步骤1.6:得到了最后的数据集后,就利用开源工具LabelImage对图像进行漂浮物标注,在标注时尽量沿漂浮物的边缘进行标注,以免进行模型训练时,不能够准确学习到漂浮物的特征,避免模型不易饱和、误检率高的问题。标注的漂浮物类别共6类,分别是水瓶,标签为bottle;垃圾袋,标签为plastic-bag;牛奶盒,标签为milk-box;塑料垃圾,标签为plastic-garbage;树枝,标签为branch;杂草,标签为grass。标注之后会自动生成后缀为xml的文件,文件名与图片名保持一致。
步骤2、搭建融合残差网络的改进SSD算法,并增加FPN特征金字塔和注意力机制对原SSD网络的网络结构进行优化,来加强算法对小目标的特征学习能力。具体为:
步骤2.1:根据原SSD网络的结构进行搭建工作。如图2所示,该网络包括VGG-16的骨干特征提取网络:Conv(Convolutional Layers,卷积层)1、Conv2、Conv3、Conv4、Conv5、FC(Fully Connected Layers,全连接层)6和FC7;以及六个分类回归特征提取层:Conv8、Conv9、Conv10、Conv11。其中骨干网络中的Conv4_3层和FC7层以及骨干网络之外的Conv8_2、Conv9_2、Conv10_2、Conv11_2共同组成了原SSD网络的特征提取层;
步骤2.2:引入残差网络,原SSD网络对于小目标物体的检测精度不高,容易产生漏检、误检的问题,而且训练过程当中,容易发生梯度下降以及梯度***等问题,因此对于原SSD网络结构的改进,首先就是在原SSD网络的骨干网络VGG-16中,对于其中的特征提取层Conv4_3和fc7层,分别在这两层与上一层网络之中引入ResNet(Residual Networks,残差网络)残差网络的思想,组成了两个VGG-16和ResNet网络结构。残差网络的基本单元如图3所示,x表示输入,F(x)表示残差网络在第二层激活函数之前的输出,残差网络中的网络层可以是全连接层,也可以是卷积层,设第二层网络在激活函数之前的输出为H(x),在该2层网络中,最优的输出就是只需要将F(x)=H(x)-x优化为0即可。它与常规神经网络相比,最大的不同就是残差网络多了一个直接到达输出后的连线。这代表的意思是对于刚开始输入的x,按照常规的神经网络进行权值叠加然后通过激活函数,再次经过权值叠加后,这个时候再把输入的信号和此时的输出叠加然后在通过激活函数,这样的网络就是残差网络,而其中的那条线则称为捷径。引入残差网络之后的改进SSD算法结构如图4所示,包括在Conv3_3层和Conv4_3层之间引入了残差网络结构,以及在Conv4_3层和FC7层之间也引入了残差网络结构,共组成了两个ResNet+VGG16的结构。
步骤2.3:添加FPN特征金字塔,先对原SSD网络做自底向上的卷积操作,这一部分和普通的卷积神经网络的前向传播过程没有太大的区别,主要是用来提取图片的特征,经过卷积核的不断卷积计算,得到越来越小的特征图,语义信息也会越来越抽象,在这个过程中,特征图一直在损失位置信息。按照原SSD网络的结构,将其中的Conv4_2、FC7、Conv8_2、Conv9_2、Conv10_2、Conv11_2形成基础网络结构为后续的上采样和融合做准备;为了得到相同通道数的对应层来进行融合,对这六个特征提取层分别做一次1×1的卷积操作;为了得到特征融合的效果,首先需要得到和浅层网络向对应的特征图,只有当特征层尺度相同,才可以进行融合。这样做是为了充分利用浅层网络的位置信息来进行定位操作。因此设计了自顶向下的这一部分来扩大深层网络。在这一过程,对经过卷积得到的具有更抽象和语义更强的深层次特征图做一个尺度×2和×4的操作来得到新层,这一过程具体的操作被称为上采样,从基础网络中抽取出部分层次来做上采样;通过横向连接操作来减少特征图的数量,将得到的新特征层与经过上采样得到的特征层做融合得到新的融合层;最后对获得的每一个融合层使用3×3卷积核卷积操作以消除融合时产生混叠效应的冗余,再对其进行目标检测和回归操作得到最终的结果。经此改进后的FPN结构可以进行跨层级连接,将高层级特征跨层与低层级特征融合,并且使用双线性插值代替临近插值,得到更优秀的上采样效果。
步骤2.4:添加注意力机制,对原SSD网络添加注意力机制,可以产生更具分辨性的特征表示以及带来持续的性能提升;对原SSD网络中添加CBAM(Convolutional BlockAttention Module,卷积注意力机制)模块,在通道和空间两个方面对网络进行优化,首先是在通道方面对原SSD网络进行通道注意力方向的优化,公式如下:
Figure BDA0003587809110000061
其中,F代表特征层,AvgPool和MaxPool函数分别代表平均池化和最大池化操作,σ为sigmoid操作,MLP为多层感知机操作,W0、W1代表不同权重;
在空间方面对原SSD网络进行空间注意力方向的优化,关注点是区域的位置,其公式如下:
Figure BDA0003587809110000071
其中,f是卷积操作,7×7表示卷积核的大小;
根据CBAM模块的特性,将对原SSD网络中骨干网络VGG-16的Conv4_3和fc7特征层,以及骨干网络之外的Conv8_2、Conv9_2、Conv10_2、Conv11_2特征提取层添加注意力机制模块。
步骤3、对原SSD网络的原始训练过程进行改进,包括在训练过程中添加冻结训练以便节约训练时间、对原SSD网络的激活函数和损失函数进行替换,提升预测框的置信度。具体为:
步骤3.1:添加冻结训练,以减少模型训练所需时间,节约资源。目标检测网络模型里,主干特征提取部分所提取到的特征是通用的,把骨干网络冻结起来训练可以加快训练效率,也可以防止权值被破坏。
步骤3.2:激活函数的替换。原SSD网络中使用的激活函数为ReLu(RectifiedLinear Unit,修正线性单元)激活函数,将其替换为SeLu(Scaled Exponential LinearUnits,缩放指数型线性单元)激活函数。SeLu使样本分布回归零均值和单位方差,其在指数型线性单元上乘以大于1的λ,不仅可以防止梯度***,同时也可以抑制梯度消失。Selu的表达式如下:
Figure BDA0003587809110000072
其中:λ=1.0507,α=1.6732;
步骤3.3:损失函数的替换。原SSD网络的损失函数采用多任务损失函数,包括两部分的加权,分别是位置损失函数Lloc和置信度损失函数Lconf。现将原SSD网络的损失函数替换为focal loss,这个损失函数是在标准交叉熵损失基础上修改得到的。这个函数可以通过减少易分类样本的权重,使得模型在训练时更专注于难分类的样本。其公式如下:
FL(pt)=-(1-pt)γlog(pt); (4)
其中:
Figure BDA0003587809110000073
代表样本为真的概率;
步骤4、将数据集送入到改进SSD算法,并使用改进过后的训练过程对其进行多次迭代训练,得到效果最好的SSD网络目标检测模型。具体的:
步骤4.1:将步骤1中标注完成的图像按6∶2∶2进行训练集、测试集与验证集划分,得到的训练集、测试集与验证集的数量分别为1440、480和480张;
步骤4.2:利用训练集中的图片进行模型的训练工作,网络学习模型的训练基于Pytorch的深度学习框架,使用Adam优化器优化训练的网络;
步骤4.3:训练的部分参数为:输入图片尺寸为300×300,模型的初始学习率为5×10-4,在10个epochs之后学习率衰减为5×10-5,batch size设置为8。训练时间成本在10个小时左右。
步骤4.4:在500次迭代完成之后,利用测试集测试,选取mAP(mean AveragePrecision,所有类平均精准度)值最高的为效果最好的SSD网络目标检测模型,并且和使用原SSD网络以及其他目标检测网络包括YOLO v4和ResNet50在相同条件下训练得到的目标检测网络模型进行对比,测试结果如图5所示,本发明提出的改进SSD算法经过迭代训练得到的模型是检测精度最高的。

Claims (5)

1.一种基于改进SSD算法的水上漂浮物检测识别方法,其特征在于,包括以下步骤:
步骤1、收集水上漂浮物数据集,对数据集进行上采样、上池化以及数据增强的预处理,通过标签标注工具LabelImg对数据集标注,得到适用于目标检测网络进行训练的数据集;
步骤2、搭建融合残差网络的改进SSD算法,并增加FPN特征金字塔和注意力机制对原SSD网络的结构进行优化;
步骤3、对原SSD网络的原始训练过程进行改进,包括在训练过程中添加冻结训练、对原SSD网络的激活函数和损失函数进行替换;
步骤4、将数据集送入到改进SSD算法,并使用改进过后的训练过程对其进行多次迭代训练,得到效果最好的SSD网络目标检测模型。
2.根据权利要求1所述的一种基于改进SSD算法的水上漂浮物检测识别方法,其特征在于,步骤2中,所述的搭建融合残差网络的改进SSD算法,并增加FPN特征金字塔和注意力机制对原SSD网络的结构进行优化,来加强算法对小目标的特征学习能力,其过程包括:
步骤2.1.根据原SSD网络的网络结构进行搭建:其骨干网络VGG-16网络包括Conv1、Conv2、Conv3、Conv4、Conv5、fc6和fc7;原SSD网络的特征提取网络包括Conv4_3、fc7和骨干网络之外的Conv8_2、Conv9_2、Conv10_2、Conv11_2;
步骤2.2.引入残差网络:首先在原SSD网络的骨干网络VGG-16中,对于其中的特征提取层Conv4_3和fc7层,分别在这两层与上一层网络之中引入ResNet残差结构网络的思想,组成了两个VGG-16和ResNet网络结构;
步骤2.3.添加FPN特征金字塔:对原SSD网络的六个特征提取层,即骨干网络VGG-16里的Conv4_3、fc7,以及骨干网络之外的Conv8_2、Conv9_2、Conv10_2、Conv11_2,分别添加调整后的FPN特征金字塔;经此改进后的FPN结构可以进行跨层级连接,将高层级特征跨层与低层级特征融合,并且使用双线性插值代替临近插值;
步骤2.4.添加注意力机制:对原SSD网络中添加CBAM模块,在通道和空间两个方面对原SSD网络进行优化;
在通道方面对原SSD网络进行通道注意力方向的优化,其公式如下:
Figure FDA0003587809100000011
其中,F代表特征层,AvgPool和MaxPool函数分别代表平均池化和最大池化操作,σ为sigmoid操作,MLP为多层感知机操作,W0、W1代表不同权重;
在空间方面对原SSD网络进行空间注意力方向的优化,关注点是区域的位置,其公式如下:
Figure FDA0003587809100000021
其中,f是卷积操作,7×7表示卷积核的大小;
根据CBAM模块的特性,将对原SSD网络中骨干网络VGG-16的Conv4_3和fc7特征层,以及骨干网络之外的Conv8_2、Conv9_2、Conv10_2、Conv11_2特征提取网络添加注意力机制模块。
3.根据权利要求2所述的一种基于改进SSD算法的水上漂浮物检测识别方法,其特征在于,所述的残差网络是指:对于刚开始输入的x,按照常规的神经网络进行权值叠加并通过激活函数,而后再次经过权值叠加,再把输入的信号和此时的输出叠加而后再通过激活函数,由此而形成的网络;残差网络与常规神经网络的不同在于,残差网络多了一个直接到达输出后的连线。
4.根据权利要求1所述的一种基于改进SSD算法的水上漂浮物检测识别方法,其特征在于,在步骤3中,所述的对原SSD网络的激活函数和损失函数进行替换的过程分别为:
步骤3.2.激活函数的替换:原SSD网络中使用的激活函数为ReLu激活函数,将其替换为SeLu激活函数;缩放指数型线性单元激活函数使样本分布回归零均值和单位方差,其在指数型线性单元上乘以大于1的lambda;Selu的表达式如下:
Figure FDA0003587809100000022
其中:λ=1.0507,α=1.6732;
步骤3.3.损失函数的替换:原SSD网络中的损失函数采用多任务损失函数,包括位置损失函数Lloc和置信度损失函数Lconf两部分的加权;现将原SSD网络中的损失函数替换为focal loss,此损失函数是在标准交叉熵损失基础上修改得到的;其公式如下:
FL(pt)=-(1-pt)γlog(pt); (4)
其中:
Figure FDA0003587809100000023
代表样本为真的概率。
5.根据权利要求1所述的一种基于改进SSD算法的水上漂浮物检测识别方法,其特征在于,步骤4中,所述的将数据集送入到改进SSD算法,并使用改进过后的训练过程对其进行多次迭代训练,得到效果最好的SSD网络目标检测模型,具体为:
步骤4.1.将步骤1中标注完成的图像按6∶2∶2划分为训练集、测试集和验证集;
步骤4.2.利用训练集中的图片进行模型的训练;网络学习模型的训练基于Pytorch的深度学习框架,使用Adam优化器优化训练的网络;
步骤4.3.训练的部分参数为:输入图片尺寸为300×300,模型的初始学习率为5×10-4,在10个epochs之后学习率衰减为5×10-5,batch size设置为8;训练时间成本在10个小时左右;
步骤4.4.在500次迭代完成之后,利用测试集进行测试,选取mAP值最高的为效果最好的SSD网络目标检测模型。
CN202210369885.7A 2022-04-08 2022-04-08 一种基于改进ssd算法的水上漂浮物检测识别方法 Pending CN114782772A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210369885.7A CN114782772A (zh) 2022-04-08 2022-04-08 一种基于改进ssd算法的水上漂浮物检测识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210369885.7A CN114782772A (zh) 2022-04-08 2022-04-08 一种基于改进ssd算法的水上漂浮物检测识别方法

Publications (1)

Publication Number Publication Date
CN114782772A true CN114782772A (zh) 2022-07-22

Family

ID=82429112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210369885.7A Pending CN114782772A (zh) 2022-04-08 2022-04-08 一种基于改进ssd算法的水上漂浮物检测识别方法

Country Status (1)

Country Link
CN (1) CN114782772A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115035354A (zh) * 2022-08-12 2022-09-09 江西省水利科学院 基于改进yolox的水库水面漂浮物目标检测方法
CN116363712A (zh) * 2023-03-21 2023-06-30 中国矿业大学 一种基于模态信息度评估策略的掌纹掌静脉识别方法
CN116958998A (zh) * 2023-09-20 2023-10-27 四川泓宝润业工程技术有限公司 一种基于深度学习的数字仪表读数的识别方法
CN117173550A (zh) * 2023-08-22 2023-12-05 中国科学院声学研究所 合成孔径声纳图像水下小目标检测方法及***
CN117237614A (zh) * 2023-11-10 2023-12-15 江西啄木蜂科技有限公司 基于深度学习的湖面漂浮物小目标检测方法
CN117455856A (zh) * 2023-10-23 2024-01-26 智火柴科技(深圳)有限公司 液压油污染检测方法、检测装置、电子设备及存储介质

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115035354A (zh) * 2022-08-12 2022-09-09 江西省水利科学院 基于改进yolox的水库水面漂浮物目标检测方法
CN115035354B (zh) * 2022-08-12 2022-11-08 江西省水利科学院 基于改进yolox的水库水面漂浮物目标检测方法
CN116363712A (zh) * 2023-03-21 2023-06-30 中国矿业大学 一种基于模态信息度评估策略的掌纹掌静脉识别方法
CN116363712B (zh) * 2023-03-21 2023-10-31 中国矿业大学 一种基于模态信息度评估策略的掌纹掌静脉识别方法
CN117173550A (zh) * 2023-08-22 2023-12-05 中国科学院声学研究所 合成孔径声纳图像水下小目标检测方法及***
CN116958998A (zh) * 2023-09-20 2023-10-27 四川泓宝润业工程技术有限公司 一种基于深度学习的数字仪表读数的识别方法
CN116958998B (zh) * 2023-09-20 2023-12-26 四川泓宝润业工程技术有限公司 一种基于深度学习的数字仪表读数的识别方法
CN117455856A (zh) * 2023-10-23 2024-01-26 智火柴科技(深圳)有限公司 液压油污染检测方法、检测装置、电子设备及存储介质
CN117455856B (zh) * 2023-10-23 2024-06-11 智火柴科技(深圳)有限公司 液压油污染检测方法、检测装置、电子设备及存储介质
CN117237614A (zh) * 2023-11-10 2023-12-15 江西啄木蜂科技有限公司 基于深度学习的湖面漂浮物小目标检测方法
CN117237614B (zh) * 2023-11-10 2024-02-06 江西啄木蜂科技有限公司 基于深度学习的湖面漂浮物小目标检测方法

Similar Documents

Publication Publication Date Title
CN114782772A (zh) 一种基于改进ssd算法的水上漂浮物检测识别方法
CN112232349A (zh) 模型训练方法、图像分割方法及装置
CN112884064A (zh) 一种基于神经网络的目标检测与识别方法
CN113569667A (zh) 基于轻量级神经网络模型的内河船舶目标识别方法及***
CN116485709A (zh) 一种基于YOLOv5改进算法的桥梁混凝土裂缝检测方法
CN112488025B (zh) 基于多模态特征融合的双时相遥感影像语义变化检测方法
CN112183203A (zh) 一种基于多尺度像素特征融合的实时交通标志检测方法
CN114022420A (zh) 一种自动识别光伏电池el组件缺陷的检测方法
CN116665176B (zh) 一种面向车辆自动驾驶的多任务网络道路目标检测方法
CN114973032B (zh) 一种基于深度卷积神经网络的光伏板热斑检测方法及装置
CN114972316A (zh) 基于改进YOLOv5的电池壳端面缺陷实时检测方法
CN114529821A (zh) 一种基于机器视觉的海上风电安全监测与预警方法
CN112785610B (zh) 一种融合低层特征的车道线语义分割方法
CN117710841A (zh) 一种无人机航拍图像的小目标检测方法、装置
CN111612803B (zh) 一种基于图像清晰度的车辆图像语义分割方法
CN117173547A (zh) 一种基于改进的YOLOv6算法的水下目标检测方法
CN114863122B (zh) 一种基于人工智能的智能化高精度路面病害识别方法
CN116630683A (zh) 一种基于扩散的自适应特征提取的道路损伤检测方法
Xia et al. Application of yolov7 and transformer structures to small object (license plate) detection in complex traffic scenes
CN115035442A (zh) 基于改进的YOLOv3网络的垃圾分类收运监管方法
Wu et al. Express parcel detection based on improved faster regions with CNN features
CN116168259B (zh) 一种应用于oled点灯***的自动缺陷分类方法
Pang et al. An Efficient Network for Obstacle Detection in Rail Transit Based on Multi-Task Learning
Cao et al. Detection and classification of surface defects of magnetic tile based on SE-U-Net
CN114373118B (zh) 基于改进yolov4的水下目标检测方法

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