【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)

简介: 【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)

【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)

该文针对现有遥感图像目标检测算法对于复杂场景下多尺度目标检测精度较低、泛化能力差的问题,提出了一种多尺度卷积神经网络遥感目标检测框架———MSCNN。

1.引言

遥感目标自动检测技术不仅是一种实现遥感目标自动分类和定位的智能化数据分析方法,还是遥感图像解译领域的重要研究方向之一。

传统的遥感图像目标检测方法是根据人工经验设计特征,虽然在特定的应用场景下能取得较好的检测效果,但该类方法对先验知识的依赖性强,导致

检测模型的自适应性与泛化能力较差。而MSCNN用到的是深度卷积神经网络,它可以从数据中主动学习特征,不依赖于人工经验。

基于深度卷积网络的目标检测模型在研究理念上可以分为两类:

1)基于回归的目标检测框架:直接在图像上回归出目标的边框位置和物体类别。(具体回归过程看最后链接)

2)基于区域建议的目标检测框架:该类方法基于原始图像生成一系列区域建议,并将区域建议和特征图输入感兴趣区域池化层,最终实现目标的分类与定位。(具体过程看最后链接)

本文先设计了一 种多尺度特征金字塔网络——EFPN。再基于EFPN 构造多尺度卷积神经网络的遥感目标检测框架(MSCNN),来提高多尺度遥感目标的预测能力。

2.MSCNN检测框架

2.1MSCNN网络结构、

MSCNN 基于RetinaNet目标检测网络。MSCNN整体结构框架图如下所示:

1ecd1b2606ed46e9956a89f231c9802c.png

其中 A (左)膨胀瓶颈结构, B(右)为带有1×1卷积的膨胀瓶颈结构:

1ecd1b2606ed46e9956a89f231c9802c.png

首先以 ResNet-50作为基础网络构造了一种新的特征金字塔网络 EFPN,生成了新的融合预测特征。再通过目标检测子网络,分别给出多尺度目标的分类得分和边框位置。最后再采用非极大值抑制原理将相似结果进行合并,输出最终检测结果。

2.2EFPN

EFPN金字塔网络是一个自底向上的通路,从主干中选取卷积块{C3,C4,C5}作为基础层级结构。添加特征映射C6 和C7,以获得更精确的语义信息,特征层C6和C7的计算式为:

1ecd1b2606ed46e9956a89f231c9802c.png

式中:Conv2D为二维卷积算子,它将给定的特征图与预定义的卷积核 进行卷积;k为卷积核的数量;s为内核的尺度;RELU 为激活函数。因此,通过自底向上的路径生成了特征图{C3,C4,C5,C6,C7}。

为了进一步提高网络的特征表达能力,本文在ResNet-50的第4阶段以后,首先将步长锁定为16×,然后将通道维度控制为256,接着在每个阶段之后均部署了一个低复杂度的膨胀瓶颈结构(带有1*1卷积的),以保障网络能生成更深的特征图,且能保持较高的分辨率。最后通过自上而下的通路,构建出了特征金字塔网络层级{P3,P4, P5,P6,P7}。新的特征金字塔 EFPN将包含 P3~ P7共5层预测层。这些特征层级的计算方法为:

1ecd1b2606ed46e9956a89f231c9802c.png

式中:序数 N=3,4,5,6,7;序数 N′=3,4,5,6,且j

为由N 生成的索引;RN 为自底向上路径经过卷积降维得到的特征层;TN 为经过特征堆叠得到的新特征;U(·)为将Tj 的尺度调整到CN 大小的算子;PN 为自顶向下构造的输出特征。所有的预测特征最后都将被送入检测网络进行多尺度目标预测。

2.3损失函数

在实际的遥感影像数据中,正、负样本的不平衡现象普遍存在。然而,极端的正、负样本不平衡将会导致网络训练过程中正样本在数据中占比较少,从

而使网络训练效率降低,使得一些难以学习的正样本得不到充分的学习,严重制约了检测网络在遥感目标检测任务中的检测性能。为此,本文引入聚焦

分类损失,通过动态缩放交叉熵,快速地将模型的训练集中在难样本稀疏集上,用以加强网络对于遥感图像中难样本的学习和挖掘。本文所提出的多

任务联合损失函数为:

1ecd1b2606ed46e9956a89f231c9802c.png

式中:Ncls为批量尺度;Nloc为锚点框数量;α 为平衡超参数;p*i 为目标的真实类别标签;pi 为预测相应类别的概率;ti 为 预 测 的4个 参 数 化 坐 标 向 量;t*i为真实边框参数;i为批量数据中锚点框的索引;Lfl和Lloc分别为聚焦分类和边框回归损失,其中Lfl可定义为:

1ecd1b2606ed46e9956a89f231c9802c.png

式中:αt∈[0,1],为 平 衡 超 参 数;(1-pt)γ 为 调 制

因子,pt 为前景目标对应的预测概率;γ∈[0,5],为超参数,当γ>0时意味着模型将更专注于难样本的训 练。Lloc通常采用SmoothL1损失,其表达式为:

image.png

3.实验结果与分析

3.1数据集与评价指标

本文在 NWPU VHR-10公开数据集上进行多尺度目标检测实验。NWPU VHR-10数据集是一个用于多类多尺度目标检测的地理空间目标检测公开数据集。 共包含650幅光学遥感图像,平均尺度约为600×800,共标注了757架飞机、302艘船只、655个油罐、390个棒球场、524个网球场、159个篮球场、163个田径场、224个港口、124座桥梁,以及477辆车。图像分辨率在0.5~2.0m 之 间,每一幅图像至少包含一个目标。

根据NWPUVHR-10数据分布信息统计,定义了相应的边界框尺度量,如下所示:

image.png

本文采用平均检测精度(mAP)作为目标检测的评价指标,该指标衡量了所有类别的检测精度的均值。AP 值越高代表检测性能越好。此外,本文还评估了在不同IOU 阈值和不同边界框尺度(small、medium,andlarge)下目标的检测精度和召回率,分析了所提方法对多尺度目标的检测能力。IOU 代表了检测框与真值框的交并比,其定义可以表示为:

image.png

式中:GT为真值框;DR为检测结果。

3.2 参数设置

本文训 练 和 测 试 采 用 的 硬 件 平 台 为 NVIDIA TitanXpGPUs,利用Pytorch开源深度学习框架完成实验的构建。实验过程采用端到端训练方式,初始学习率设置为0.001,优化方法为随机梯度下降,动量设置为0.9,正则化系数设置为0.0005,批处理大小设置为1。

3.3 主要结果

1ecd1b2606ed46e9956a89f231c9802c.png

MSCNN 在 NWPU VHR-10公开数据集上的平均检测精度相较于 MSDN 提升了0.4%,相较于 FPN提升了2.9%。由 上 述 分 析 可 知,本 文 提 出 的 基 于EFPN 的 MSCNN 能有效提高多尺度目标的检测性能。

3.4消融实验

为了证明EFPN组件在检测框架中所发挥的性能,本文设计了一 组 对 比 实 验。EFPN取得了0.960@AP50以及0.824@AP75的平均检测精度,相 较 于 RetinaNet取 得 了1.5%@AP50和1.5%@AP75的增益,表现出了更高的检测精度。此 外,EFPN还取得了0.547@small、0.578@medium 和0.701@large 的 多 尺 度 平 均 检 测 精 度,相 较 于RetinaNet取 得 1.5% @small、1.9% @medium 和1.9%@large的增益,表现出了对多尺度目标检测的优越性。因此,在多尺度遥感目标检测中,EFPN 组件相较于 RetinaNet具有更为明显的优势。

3.5 多尺度目标检测

1ecd1b2606ed46e9956a89f231c9802c.png

AP50是评价模型分类能力的有效指标,AP75能够体现出检测框架对边界 框位置回归的能力。如 表4所 示,MSCNN取得了0.960@AP50以及0.824@AP75的 平 均 检 测 精 度,相 较 于 RetinaNet取 得 了1.5%@AP50和1.5%@AP75的 增 益。即 MSCNN 目标检测框架具有更高的分类能力和边框回归精度。

此外,MSCNN 取得了0.600@small、0.605@medium和0.755@large的平均召回率,相较于 RetinaNet网络取得了2.7%@small、1.9%@medium 和0.1%@large的增益,说明其对小尺度目标在召回率上具有一 定 优 势。 事 实 上,与 RetinaNet 网 络 相 比,MSCNN 在深层阶段 的 分 辨 率 更 高,同 时 还 生 成 了更新的阶段。因此,MSCNN 可以在更深阶段检测到更小尺度的目标。

4.结论

MSCNN方法首先设计了一种多尺度特征提取骨架,并在此基础上构造出一种深度特征金字塔EFPN,从而能够更加有效地对遥感图像中的多尺度目标特征的学习。此外,聚焦分类损失作为分类损失函数,进一步改善了目标检测网络对于遥感图像中难样本的挖掘能力。该方法在NWPUVHRG10公开数据集上获得了0.906的平均检测精度,相较于其他遥感目标检测框架,实现

了对多尺度遥感目标的高精度稳健检测。


相关文章
|
9天前
|
机器学习/深度学习 算法 TensorFlow
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
动物识别系统。本项目以Python作为主要编程语言,并基于TensorFlow搭建ResNet50卷积神经网络算法模型,通过收集4种常见的动物图像数据集(猫、狗、鸡、马)然后进行模型训练,得到一个识别精度较高的模型文件,然后保存为本地格式的H5格式文件。再基于Django开发Web网页端操作界面,实现用户上传一张动物图片,识别其名称。
36 1
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)及其应用
【9月更文挑战第24天】本文将深入探讨深度学习中的一种重要模型——卷积神经网络(CNN)。我们将通过简单的代码示例,了解CNN的工作原理和应用场景。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息。
18 1
|
8天前
|
机器学习/深度学习 人工智能 自动驾驶
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【9月更文挑战第19天】在人工智能的浩瀚星海中,卷积神经网络(CNN)如同一颗璀璨的星辰,照亮了图像处理的天空。本文将深入CNN的核心,揭示其在图像识别领域的强大力量。通过浅显易懂的语言和直观的比喻,我们将一同探索CNN的奥秘,并见证它如何在现实世界中大放异彩。
|
8天前
|
机器学习/深度学习 人工智能 算法
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
植物病害识别系统。本系统使用Python作为主要编程语言,通过收集水稻常见的四种叶片病害图片('细菌性叶枯病', '稻瘟病', '褐斑病', '稻瘟条纹病毒病')作为后面模型训练用到的数据集。然后使用TensorFlow搭建卷积神经网络算法模型,并进行多轮迭代训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地模型文件。再使用Django搭建Web网页平台操作界面,实现用户上传一张测试图片识别其名称。
56 21
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
|
8天前
|
机器学习/深度学习 人工智能 算法
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
鸟类识别系统。本系统采用Python作为主要开发语言,通过使用加利福利亚大学开源的200种鸟类图像作为数据集。使用TensorFlow搭建ResNet50卷积神经网络算法模型,然后进行模型的迭代训练,得到一个识别精度较高的模型,然后在保存为本地的H5格式文件。在使用Django开发Web网页端操作界面,实现用户上传一张鸟类图像,识别其名称。
52 12
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
|
8天前
|
机器学习/深度学习 算法 TensorFlow
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
交通标志识别系统。本系统使用Python作为主要编程语言,在交通标志图像识别功能实现中,基于TensorFlow搭建卷积神经网络算法模型,通过对收集到的58种常见的交通标志图像作为数据集,进行迭代训练最后得到一个识别精度较高的模型文件,然后保存为本地的h5格式文件。再使用Django开发Web网页端操作界面,实现用户上传一张交通标志图片,识别其名称。
37 6
交通标志识别系统Python+卷积神经网络算法+深度学习人工智能+TensorFlow模型训练+计算机课设项目+Django网页界面
|
4天前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
18 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
8天前
|
机器学习/深度学习 人工智能 算法
深度学习中的卷积神经网络(CNN)入门与实践
【9月更文挑战第19天】在这篇文章中,我们将探索深度学习的一个重要分支——卷积神经网络(CNN)。从基础概念出发,逐步深入到CNN的工作原理和实际应用。文章旨在为初学者提供一个清晰的学习路径,并分享一些实用的编程技巧,帮助读者快速上手实践CNN项目。
|
4天前
|
机器学习/深度学习 人工智能 算法
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台。果蔬识别系统,本系统使用Python作为主要开发语言,通过收集了12种常见的水果和蔬菜('土豆', '圣女果', '大白菜', '大葱', '梨', '胡萝卜', '芒果', '苹果', '西红柿', '韭菜', '香蕉', '黄瓜'),然后基于TensorFlow库搭建CNN卷积神经网络算法模型,然后对数据集进行训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地文件方便后期调用。再使用Django框架搭建Web网页平台操作界面,实现用户上传一张果蔬图片识别其名称。
20 0
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
7天前
|
机器学习/深度学习 自动驾驶 TensorFlow
深入理解卷积神经网络(CNN)在图像识别中的应用
【9月更文挑战第20天】本文旨在通过直观的解释和代码示例,向初学者介绍卷积神经网络(CNN)的基本概念及其在图像识别领域的应用。文章将首先解释什么是CNN以及它如何工作,然后通过一个简单的Python代码示例展示如何构建一个基本的CNN模型。最后,我们将讨论CNN在现实世界问题中的潜在应用,并探讨其面临的挑战和发展方向。
26 2