首页> 中国专利> 基于优化SSD目标检测模型的港口自动识别方法及系统

基于优化SSD目标检测模型的港口自动识别方法及系统

摘要

本发明公开了一种基于优化SSD目标检测模型的港口自动识别方法及系统,包括以下步骤:建立基于优化的SSD目标检测模型;制作内河港口数据集;训练SSD目标检测模型;输入待检测的遥感图像,并分割成若干等尺寸的小图像;依次输入训练好的SSD目标检测模型,得到每个小图像的检测结果;拼接整合,还原到原始图像,识别检测出内河港口,并自动标注出港口的位置、类别、形状、面积。本发明完善了内河港口目标检测方法,使港口的标注能够脱离传统的人工方式,实现自动检测,提高了检测速度和准确率,为排查各区域内河港口的现状提供便利,使规范整治工作能够顺利开展。本发明简单实用,可操作性和有效性强。

著录项

  • 公开/公告号CN112966558A

    专利类型发明专利

  • 公开/公告日2021-06-15

    原文格式PDF

  • 申请/专利权人 华设设计集团股份有限公司;

    申请/专利号CN202110149336.4

  • 发明设计人 白桦;周涛;刘秀彩;裴剑平;孙婧;

    申请日2021-02-03

  • 分类号G06K9/00(20060101);G06K9/62(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构32203 南京理工大学专利中心;

  • 代理人朱炳斐

  • 地址 210014 江苏省南京市秦淮区紫云大道9号

  • 入库时间 2023-06-19 11:26:00

说明书

技术领域

本发明属于智能水运交通领域,特别是一种基于优化SSD目标检测模型的港口自动识别方法及系统。

背景技术

内河港口是指在除沿海岸线以外的河流、湖泊、水库等水域内建造的港口。内河码头普遍受河道通航水深和宽度的影响,大多存在堆场纵深浅、装卸设备小、泊位不大等 特点。内河港口的标注工作往往使用传统的手动标注方式,由工作人员在遥感图像上对 每个港口进行逐一圈定,这种人工标注港口的缺点在于:

1、内河港口排布往往较为混乱,形态各异,通过肉眼识别判断需要花费大量的脑力和精力;

2、内河港口数量众多,在庞大复杂的遥感地图中逐一查找工作量大,整个工作过程消耗时间长,同时易发生遗漏现象;

3、缺乏科学性,当今是人工智能蓬勃发展的时代,港口标注工作不应停留在落后的人工识别阶段,需要与时俱进,跟上科学发展的步伐;

基于上述情况,目前迫切需要一种新的内河港口目标检测方法,使内河港口的标注 能够脱离传统的人工方式,实现自动检测,为排查各区域内河港口的现状提供便利,使规范整治工作能够顺利开展。

发明内容

本发明的目的在于针对上述现有技术存在的问题,提供一种基于优化SSD目标检测模型的港口自动识别方法,使内河港口的标注能够脱离传统的人工方式,实现自动检测,为排查各区域内河港口的现状提供便利,使规范整治工作能够顺利开展。

实现本发明目的的技术解决方案为:一种基于优化SSD目标检测模型的港口自动识别方法,所述方法包括以下步骤:

步骤1,建立优化的SSD目标检测模型;

步骤2,构建内河港口数据集;

步骤3,利用所述港口数据集训练所述优化的SSD目标检测模型;

步骤4,针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口。

进一步地,步骤1所述建立优化的SSD目标检测模型,具体包括:

步骤1-1,构建优化的SSD目标检测模型:

以VGG-16作为基础模型,在VGG-16的基础上新增卷积层以获得更多的特征图以用于检测;具体包括:特征提取部分将VGG-16的全连接层FC6层和FC7层转换成3×3 的卷积层Conv6和1×1的卷积层Conv7,同时将VGG-16的池化层pool5由原来的2×2-s2 变成3×3-s1,同时为了配合这种变化,采用了Atrous Algorithm;此外,移除VGG-16 的dropout层和FC8层,并新增一系列卷积层;

则所述优化的SSD目标检测模型包括依次设置的卷积层Conv4_3、Conv6、Conv7,Conv8_2,Conv9_2,Conv10_2,Conv11_2,输入图像经该模型后共提取7个特征图, 大小分别为(38,38),(19,19),(19,19),(10,10),(5,5),(3,3),(1,1);

步骤1-2,在不同特征图上设置不同数目的先验框,同一个特征图上每个单元设置的先验框是相同的,其中,

先验框尺度s

式中,m表示特征图个数,s

先验框的宽度与高度计算公式分别为:

式中,

步骤1-3,设置损失函数:

损失函数定义为位置误差L

式中,N为先验框的正样本数量,α为权重系数,用于平衡分类损失和定位损失,

进一步地,步骤2所述构建内河港口数据集,具体包括:

步骤2-1,采集多幅包含内河港口的卫星遥感图像;

步骤2-2,利用图形图像注释工具在各卫星遥感图像上标注出内河港口,并标注该内河港口的位置、类别、形状、面积属性;其中位置属性包括内河港口的经纬度,类别 属性包括河流、湖泊、水库,形状属性包括矩形、梯形、三角形和其他;

步骤2-3,针对所有标注后的卫星遥感图像,将其尺寸统一调整至所述优化的SSD目标检测模型所需的输入图像的大小,形成内河港口数据集;

步骤2-4,将所述内河港口数据集划分为训练集和测试集。

进一步地,步骤3所述利用所述港口数据集训练所述优化的SSD目标检测模型, 具体包括:

步骤3-1,将训练集输入SSD目标检测模型进行训练,并输出预测值;

步骤3-2,计算预测值与训练集中真实值的误差,并利用反向传播算法将误差反向传播;

步骤3-3,利用momentum梯度下降法更新SSD目标检测模型中的参数;

步骤3-4,重复步骤3-1至3-3直至损失函数达到目标要求,结束训练,获得训练优化后的SSD目标检测模型。

进一步地,步骤4所述针对待检测的卫星遥感图像,利用训练好的SSD目标检测 模型识别检测其中的内河港口,具体包括:

步骤4-1,将待检测的卫星遥感图像分割成若干等尺寸的小图像;

步骤4-2,将所述小图像依次输入至训练好的SSD目标检测模型,得到每个小图像的检测结果;

步骤4-3,对步骤4-2获得的每个小图像的检测结果进行拼接整合,还原到原始图像,由此识别检测出待检测的卫星遥感图像中的内河港口,且自动标注出该港口的位置、类别、形状、面积信息。

一种基于优化的SSD目标检测模型的港口自动识别系统,所述系统包括:

模型构建模块,用于建立优化的SSD目标检测模型;

数据集构建模块,用于构建内河港口数据集;

训练模块,用于利用所述港口数据集训练所述优化的SSD目标检测模型;

识别检测模块,用于针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计 算机程序,处理器执行计算机程序时实现以下步骤:

步骤1,建立优化的SSD目标检测模型;

步骤2,构建内河港口数据集;

步骤3,利用所述港口数据集训练所述优化的SSD目标检测模型;

步骤4,针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口。

一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实 现以下步骤:

步骤1,建立优化的SSD目标检测模型;

步骤2,构建内河港口数据集;

步骤3,利用所述港口数据集训练所述优化的SSD目标检测模型;

步骤4,针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口。

本发明与现有技术相比,其显著优点为:1)本发明能实现内河港口的自动检测和标注,摆脱了传统的人工方式,减少人工成本;2)本发明优化了SSD模型,新增卷积 层来获得更多的特征图,有效地提高了识别准确率和鲁棒性;3)本发明将原始图像分 割为若干小图像,提高了训练速度和准确率。

下面结合附图对本发明作进一步详细描述。

附图说明

图1为一个实施例中基于优化SSD目标检测模型的港口自动识别方法流程图。

图2为一个实施例中基于优化的SSD目标检测模型网络结构图。

图3为一个实施例中图像分割操作示意图,其中图(a)为原图,图(b)为原图分 割之后的小图示意图。

图4为一个实施例中苏州内河河段的港口检测结果示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请, 并不用于限定本申请。

在一个实施例中,提供了一种基于优化SSD目标检测模型的港口自动识别方法,所述方法包括以下步骤:

步骤1,建立优化的SSD目标检测模型;

步骤2,构建内河港口数据集;

步骤3,利用所述港口数据集训练所述优化的SSD目标检测模型;

步骤4,针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口。

进一步地,在其中一个实施例中,结合图2,步骤1所述建立优化的SSD目标检测 模型,具体包括:

SSD(Single Shot MultiBox Detector)目标检测算法是目前主要的检测框架之一, 相比Faster RCNN有明显的速度优势,相比YOLO又有明显的mAP优势;

步骤1-1,构建优化的SSD目标检测模型:

以VGG-16作为基础模型,在VGG-16的基础上新增卷积层以获得更多的特征图以用于检测;具体包括:特征提取部分将VGG-16的全连接层FC6层和FC7层转换成3×3 的卷积层Conv6和1×1的卷积层Conv7,同时将VGG-16的池化层pool5由原来的2×2-s2 变成3×3-s1,同时为了配合这种变化,采用了Atrous Algorithm;此外,移除VGG-16 的dropout层和FC8层,并新增一系列卷积层;

则所述优化的SSD目标检测模型包括依次设置的卷积层Conv4_3、Conv6、Conv7,Conv8_2,Conv9_2,Conv10_2,Conv11_2,输入图像经该模型后共提取7个特征图, 大小分别为(38,38),(19,19),(19,19),(10,10),(5,5),(3,3),(1,1);

这里,SSD中使用到了Conv4_3、Conv6、Conv7、Conv8_2、Conv9_2、Conv10_2、Conv11_2这7个大小不同的feature maps,其目的是为了能够准确的检测到不同尺度的 物体,因为在低层的feature map感受野比较小,高层的感受野比较大,在不同的feature map进行卷积,可以实现低层预测小目标,高层预测大目标,达到多尺度的目的。

步骤1-2,在不同特征图上设置不同数目的先验框,同一个特征图上每个单元设置的先验框是相同的,其中,

先验框尺度s

式中,m表示特征图个数,s

先验框的宽度与高度计算公式分别为:

式中,

步骤1-3,设置损失函数:

损失函数定义为位置误差L

式中,N为先验框的正样本数量,α为权重系数,用于平衡分类损失和定位损失,

其中,位置误差采用Smooth L1 loss,定义如下:

其中,

式中,i∈Pos表示正样本;m∈{cx,cy,w,h}为位置参数,分别表示边界框的中心点横坐标置信值、中心点纵坐标置信值、边界框宽度、边界框高度;

其中,置信度误差采用softmax loss:

式中,i∈Pos表示正样本,i∈Neg表示负样本。

进一步地,在其中一个实施例中,步骤2所述构建内河港口数据集,具体包括:

步骤2-1,采集多幅包含内河港口的卫星遥感图像;

这里,为保证检测结果的准确性和全面性,从百度地图中按不同比例尺、地理位置等截取若干张卫星遥感图像,每张图像中包含一个以上不等数量的港口。为充分囊括多 种情况,截取的图像数据中需要尽可能多地涵盖不同形态的内河港口,以考虑由于私人 兴建、管理疏漏等原因,部分内河港口种类、形状多样且大小不一,既有规则港口,也 包含不规则的港口,分布不均,较为混乱;

步骤2-2,利用图形图像注释工具(LabelImg)在各卫星遥感图像上标注出内河港口(堆场、吊机、泊位、船舶、厂房是内河港口的显著特征),并标注该内河港口的位 置、类别、形状、面积属性;其中位置属性包括内河港口的经纬度,类别属性包括河流、 湖泊、水库,形状属性包括矩形、梯形、三角形和其他;

步骤2-3,针对所有标注后的卫星遥感图像,将其尺寸统一调整至所述优化的SSD目标检测模型所需的输入图像的大小,形成内河港口数据集;

步骤2-4,将所述内河港口数据集划分为训练集和测试集。

进一步地,在其中一个实施例中,步骤2-4所述将所述内河港口数据集划分为训练集和测试集,具体采用留出法对内河港口数据集进行划分,将该数据集划分为两个互斥 的集合,其中一个集合作为训练集S,另一个作为测试集T。在S上训练出模型后,用 T来评估其测试误差,作为对泛化误差的估计。

进一步地,在其中一个实施例中,步骤3所述利用所述港口数据集训练所述优化的SSD目标检测模型,具体包括:

步骤3-1,将训练集输入SSD目标检测模型进行训练,并输出预测值;

步骤3-2,计算预测值与训练集中真实值的误差,并利用反向传播算法将误差反向传播;

步骤3-3,利用momentum梯度下降法更新SSD目标检测模型中的参数;

步骤3-4,重复步骤3-1至3-3直至损失函数达到目标要求,结束训练,获得训练优化后的SSD目标检测模型。

进一步地,在其中一个实施例中,步骤4所述针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口,具体包括:

步骤4-1,将待检测的卫星遥感图像分割成若干等尺寸的小图像;

步骤4-2,将所述小图像依次输入至训练好的SSD目标检测模型,得到每个小图像的检测结果;

步骤4-3,对步骤4-2获得的每个小图像的检测结果进行拼接整合,还原到原始图像,由此识别检测出待检测的卫星遥感图像中的内河港口,且自动标注出该港口的位置、类别、形状、面积信息。

在一个实施例中,提供了一种基于优化的SSD目标检测模型的港口自动识别系统,所述系统包括:

模型构建模块,用于建立优化的SSD目标检测模型;

数据集构建模块,用于构建内河港口数据集;

训练模块,用于利用所述港口数据集训练所述优化的SSD目标检测模型;

识别检测模块,用于针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口。

关于基于优化的SSD目标检测模型的港口自动识别系统的具体限定可以参见上文中对于基于优化的SSD目标检测模型的港口自动识别方法的限定,在此不再赘述。上 述基于优化的SSD目标检测模型的港口自动识别系统中的各个模块可全部或部分通过 软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的 处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行 以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

步骤1,建立优化的SSD目标检测模型;

步骤2,构建内河港口数据集;

步骤3,利用所述港口数据集训练所述优化的SSD目标检测模型;

步骤4,针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口。

关于每一步的具体限定可以参见上文中对于基于优化的SSD目标检测模型的港口自动识别方法的限定,在此不再赘述。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

步骤1,建立优化的SSD目标检测模型;

步骤2,构建内河港口数据集;

步骤3,利用所述港口数据集训练所述优化的SSD目标检测模型;

步骤4,针对待检测的卫星遥感图像,利用训练好的SSD目标检测模型识别检测其中的内河港口。

关于每一步的具体限定可以参见上文中对于基于优化的SSD目标检测模型的港口自动识别方法的限定,在此不再赘述。

作为一种具体示例,在其中一个实施例中,对本发明基于优化的SSD目标检测模型的港口自动识别方法进行进一步验证说明。

本实施例中,以苏州市内河河段为例,从百度地图上截取5000张原始遥感图像作为数据集。使用LabelImg对原始图像进行标注,并制作成VOC格式。将数据集样本分 割为训练集和测试集,其中训练集的数量3500张,测试集的数量1500张。结合图3, 对原始遥感图像进行分割操作,将整张高分辨率遥感影像经过切片和尺寸调整,被均匀 分割成若干个大小为300×300的小图像。将训练集输入到步骤1中的模型进行训练, 直至损失函数达到目标要求时结束训练。将测试集输入到训练好的模型,获得检测结果, 并自动标注出港口信息。

在内河港口检测研究中,数据集的数量对检测精确度有一定影响,两者比值成正比, 数据集的数量越多,对内河港口的检测结果具有越高的精确度。

结合图4,本发明方法检测并自动标注出港口信息如下:

表1标注信息表

通过本发明方法的检测流程所得到的检测结果可以看出,本发明方法能够实现苏州 内河河段的港口检测。本发明方法能够较为准确地实现内河港口的检测,并能够运用到内河港口的自动检测需求中,为后续工作提供基础。

综上,本发明提供的基于优化的SSD目标检测模型的港口自动识别方法,使内河港口的标注能够脱离传统的人工方式,实现自动检测,为排查各区域内河港口的现状提 供便利,使规范整治工作能够顺利开展。

以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了 解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和 改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等 效物界定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号