CN110516560B - 基于fpga异构深度学习的光学遥感图像目标检测方法 - Google Patents

基于fpga异构深度学习的光学遥感图像目标检测方法 Download PDF

Info

Publication number
CN110516560B
CN110516560B CN201910718212.6A CN201910718212A CN110516560B CN 110516560 B CN110516560 B CN 110516560B CN 201910718212 A CN201910718212 A CN 201910718212A CN 110516560 B CN110516560 B CN 110516560B
Authority
CN
China
Prior art keywords
layer
convolution
feature
scale
size
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.)
Active
Application number
CN201910718212.6A
Other languages
English (en)
Other versions
CN110516560A (zh
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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN201910718212.6A priority Critical patent/CN110516560B/zh
Publication of CN110516560A publication Critical patent/CN110516560A/zh
Application granted granted Critical
Publication of CN110516560B publication Critical patent/CN110516560B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • G06V20/13Satellite images

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Astronomy & Astrophysics (AREA)
  • Remote Sensing (AREA)
  • Image Analysis (AREA)

Abstract

本发明提出了一种基于FPGA异构深度学习的光学遥感图像目标检测方法,主要解决现有技术中光学遥感图像目标检测中误检率高、鲁棒性差、功耗高的问题。实现步骤为:构建遥感图像训练数据集;构建基于多尺度特征交叉融合的目标检测网络;利用训练数据集训练该目标检测网络,得到目标权重;对该目标检测网络依次进行高级语言描述和编译,得到SOF可执行文件;在FPGA上运行上述得到的可执行文件,得到检测结果。本发明构建的网络,使用颜色空间转换和多尺度特征交叉融合,改善了因外界光线环境变化及目标小造成的误检和漏检,且选用FPGA作为加速平台,降低了网络运行功耗,可应用于对光学遥感图像不同区域内的飞机与舰船的地物识别。

Description

基于FPGA异构深度学习的光学遥感图像目标检测方法
技术领域
本发明属于图像处理技术领域,更进一步涉及一种光学遥感图像目标检测方法,可应用于对光学遥感图像的不同区域内的飞机与舰船的地物识别。
背景技术
目标检测技术是计算机视觉领域的核心问题之一,遥感图像目标检测是以遥感卫星捕捉到的影像为数据源,采用图像处理技术对影像中感兴趣目标进行定位和分类。遥感图像目标检测是遥感应用技术中重要的一环,在军用和民用上都发挥重要的作用。在军事方面,光学遥感数据分析与处理方便收集情报和侦察,进而调整作战计划、军事部署;在民用方面,可以用于灾情监测、农业估产调查、土地利用规划、城市交通监测等诸多应用。现阶段的光学遥感技术,已经达到了高分辨率、大幅宽、高速以及多谱段探测的水平,导致获取的光学遥感数据量不断增大;高效的遥感图像处理方式在如此庞大的数据量中变得至关重要。
目前,普遍使用的有光学遥感图像和红外遥感图像两种,其中光学遥感图像的目标检测方法大多是基于通用GPU的,基于该嵌入式平台目标检测算法实现起来比较容易,但是具有高功耗的缺点。而FPGA因并行程度高、工作资源功耗低、吞吐量较高等优点成为了众多高性能应用的最佳选择;而且后期还可以根据任务需求对FPGA上逻辑资源和存储资源进行灵活升级。但FPGA传统的开发方法存在门槛高、周期长等众多不足;加之目标检测算法过程相对比较复杂,当在嵌入式硬件平台上实现时,需要消耗大量的存储、计算单元,这就对硬件平台提出了较高的要求。
专利文献“一种遥感影像小目标检测方法”(专利申请号:CN201811533900.7,公开号:CN109800637A)中提出了一种遥感影像小目标检测方法。该方法就是基于通用的GPU平台,其实现方案是:首先,对获取到的遥感影像通过深度神经网络进行特征提取;利用特征图提取建议候选框,特征图仅提取大目标建议候选框;将特征图或者原始影像划分为若干个小的区域,然后将每个小区域对应的原始影像放大后重新通过深度神经网络进行特征提取得到若干个新的特征图;对得到的特征图提取小目标的建议候选框;对提取出来的大目标建议候选框和小目标建议候选框进行汇总,然后进行分类,判断每个建议候选框属于哪个类别;对每个建议候选框进行边框回归;将提取出来的建议候选框经过非极大值抑制后,统一在原始影像上输出坐标点。该发明构建的网络,对光学遥感图像小目标检测准确率有明显提高。但是,该方法仍然存在的不足之处是,第一,基于“two-stage”的目标检测算法框架,检测网络利用RPN提取到的proposal信息对候选框位置进行预测和物体类别识别,流程复杂,检测速度慢,无法达到光学遥感图像中自动、准确、快速地识别出目标的目的;第二,该网络在RGB颜色空间处理遥感图像,易受海浪、海面杂波以及外界天气条件影响,算法的鲁棒性较差。
发明内容
本发明的目的在于针对上述现有技术存在的缺陷,提出一种基于FPGA异构深度学习的光学遥感图像目标检测方法,以降低目标检测的运行功耗,提高目标检测的实时性、精度和鲁棒性。
为实现上述目的,本发明采取的技术方案包括如下步骤:
(1)对原始的光学遥感图像在HSV颜色空间进行特征剔除的预处理;
(2)构建训练数据集:
(2a)从遥感卫星上实时接收的光学遥感图像中,选取多幅含有陆地飞机和水中舰船的光学遥感图像进行标注,并以每个飞机和舰船的目标中心为切割中心点,切割出大小为320×320×3的图像数据块,并保存到本地;
(2b)对保存到本地的图像数据块进行数据增强预处理,得到训练数据集;
(3)构建基于多尺度特征交叉融合的目标检测网络:
(3a)构建用于提取图像特征的基础卷积模块;
(3b)构建多尺度特征交叉融合层;
(3c)使用基础卷积模块和多尺度特征交叉融合层搭建基于多尺度特征交叉融合的目标检测网络;
(4)在通用GPU平台上,使用训练数据集对基于多尺度特征交叉融合的目标检测网络进行训练,并将训练好网络的.weights格式权重转换为.bin格式;
(5)对(3)构建的目标检测网络依次进行高级语言描述和编译,得到SOF可执行文件;
(6)基于FPGA板卡对超大遥感图像进行检测:
(6a)将(4)得到的.bin格式的权重存入FPGA板卡内存的指定位置;
(6b)将(5)得到的SOF文件通过JTAG接口下载到FPGA板卡的SRAM中;
(6c)对待检测的超大遥感图像进行特征剔除的预处理;
(6d)用窗口大小为300×300×3,且步长为260×260×3的滑窗,对预处理后的待检测超大遥感图像数据进行切割,得到多个大小为300×300×3的图像数据块,并保存每一个图像数据块对应的划窗步数;
(6e)主机端通过C语言和OpenCl语言混合编程的方式,将上述得到的多个大小为300×300×3的图像数据依次映射到FPGA板卡的内存缓存区;
(6f)在FPGA上运行基于多尺度特征交叉融合的目标检测网络,对内存缓冲区中大小为300×300×3的图像数据块进行检测,得到中间处理结果;
(6g)主机端通过C语言和OpenCl语言混合编程的方式,从FPGA板卡的内存缓冲区读取中间处理结果;
(6h)保留中间处理结果中所有得分高于0.24的目标类别的候选框,丢弃其余候选框;
(6i)对所有保留候选框的坐标进行映射,映射到完整的光学遥感图像上面并进行非极大值抑制NMS处理,得到光学遥感图像的检测结果。
本发明与现有技术相比,具有以下优点:
第一,本发明将待检测的遥感图像从RGB颜色空间转换到HSV颜色空间,并剔除了易受光线影响的V向量,对遥感图像中的光线明暗不一,物体反射等现象都具有很好的鲁棒性,有效地避免了光学遥感图像在拍摄时的角度和外界天气条件造成的同一类目标的类间差异性引起的网络误检;
第二,本发明由于在网络中使用了不同特征层进行特征融合,克服了现有技术中对光学遥感图像中的小目标的检测与分类准确率低的问题,将网络中不同尺度的特征图进行交叉融合,即将浅层特征通过“平均池化”进行下采样,将深层特征通过“双线性插值”进行上采样,使得网络得到的特征既有全局信息又有局部信息,且用深层的全局特征进行分类,用浅层的局部特征回归,因而从整体上提高了光学遥感图像尤其小目标,如小型飞机与舰船的目标检测与分类准确率。
第三,本发明由于采用行程度高、工作资源功耗低、吞吐量较高的FPGA作为高性能加速平台,所以,搭建的遥感图像目标检测网络相较GPU平台的相同网络具有更高“能耗比”,即网络的检测精度相同,目标检测的运行功耗更低,且检测速度也不慢。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明实现总流程图;
图2是本发明实施例中构建的遥感图像目标检测网络结构图;
图3是本发明实施例中基于FPGA板卡对超大遥感图像进行检测的子流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1,本发明的实现步骤如下:
步骤1,对原始的光学遥感图像在HSV颜色空间进行特征剔除的预处理。
RGB是从颜色发光的原理来设定的,以红色R、绿色G、蓝色B三种基本色为基础,进行不同程度的叠加,产生丰富而广泛的颜色。而HSV颜色模型根据颜色的直观特性,认为自然界的色彩由色调H、饱和度S、明度V这三个参数决定,并且三个向量之间相互独立。其中,V分量易受光照的影响,而H分量基本对光照不敏感。如果检测的时候主要依靠H分量,舍弃V分量,则对彩色图像的检测结果要比在RGB颜色空间更可靠。据此本步骤要将原始的光学遥感图像在HSV颜色空间进行特征剔除的预处理,其实现步骤如下:
(1.1)通过如下转换公式,将原始的光学遥感图像从RGB颜色空间转换到HSV颜色空间:
V=max(R,G,B)
Figure BDA0002156204320000041
Figure BDA0002156204320000042
其中,R、G、B为遥感图像RGB颜色空间的三个参数,H、S、V为遥感图像在HSV颜色空间的三个参数;
(1.2)舍弃HSV颜色空间图像数据中对光线敏感的V分量,保留对光线不敏感的H分量和S分量,得到由H分量和V分量构成的光学遥感图像。
步骤2,构建训练数据集。
(2.1)从预处理过的光学遥感图像中,选取多幅包含陆地飞机和水中舰船坐标的光学遥感图像进行标注,以每个飞机和舰船目标中心为切割中心点,切割出大小为320×320×3像素的图像数据块,并保存到本地;
(2.2)对保存到本地的图像数据块依次采用随机翻转、随机平移以及加入噪声等数据增强手段,形成训练数据集;
所述的随机反转是指,以50%的概率对某一张图片进行水平翻转或者垂直翻转;
所述的随机平移是指,以50%的概率对某一张图片向上、向左、向右、向下平移25个像素;
所述的加入噪声是指,以30%的概率随机给图像中加入高斯噪声。
步骤3,构建基于多尺度特征交叉融合的目标检测网络。
参照图2,本步骤构建的目标检测网络包括基础卷积模块、多尺度特征交叉融合层、三个分类回归模块这三个部分,其中,基础卷积模块用于提取图像特征;多尺度特征交叉融合层用于对提取到的不同尺度的图像特征进行特征融合,使得网络得到的特征既有全局信息又有局部信息;分类回归模块用于输出预测框的坐标、置信度和类别信息。
上述四个部分的具体结构与参数如下:
(3.1)构建基础卷积模块:
所述基础卷积模块主要由14个卷积层和4个最大池化层组成,其构造顺序依次为:
输入层→第一卷积层→第一最大池化层→第二卷积层→第二最大池化层→第三卷积层→第四卷积层→第五卷积层→第六卷积层→第一特征图→第三最大池化层→第七卷积层→第八卷积层→第九卷积层→第十卷积层→第二特征图→第四最大池化层→第十一卷积层→第十二卷积层→第十三卷积层→第十四卷积层→第三个特征图;
各层参数如下:
输入层,其特征图映射图总数为3;
第一卷积层,其特征映射图的总数设置为64个,卷积核的大小设为7×7,划窗步长为2;
第一最大池化层,其特征映射图的尺寸设置为2×2,划窗步长为2;
第二卷积层,其特征映射图的总数设置为192个,卷积核的尺度设置为3×3,划窗步长为1;
第二最大池化层,其特征映射图的尺寸设置为2×2,划窗步长为2;
第三卷积层,其特征映射图的总数设置为128个,卷积核的尺度设置为1×1,划窗步长为1;
第四卷积层,其特征映射图的总数设置为256个,卷积核的尺度设置为3×3,划窗步长为1;
第五卷积层,其特征映射图的总数设置为256个,卷积核的尺度设置为1×1,划窗步长为1;
第六卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为3×3,划窗步长为1;该层的输出记为“第一特征图”;
第三最大池化层,其特征映射图的尺寸设置为2×2,划窗步长为2;
第七卷积层,其特征映射图的总数设置为256个,卷积核的尺度设置为1×1,划窗步长为1;
第八卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为3×3,划窗步长为1;
第九卷积层,其特征映射图的总数设置为256个,卷积核的尺度设置为1×1,划窗步长为1;
第十卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为3×3,划窗步长为1;该层的输出记为“第二个特征图”;
第四最大池化层,其特征映射图的尺寸设置为2×2,划窗步长为2;
第十一卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为1×1,划窗步长为1;
第十二卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长为1;
第十三卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为1×1,划窗步长为1;
第十四卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长为1;该层的输出记为“第三特征图”;
(3.2)构建多尺度特征交叉融合层:
所述多尺度特征交叉融合层主要完成对(3.1)中得到的第一特征图、第二特征图和第三特征图进行特征融合,得到第一输出特征图、第二输出特征图和第三输出特征图,具体操作如下:
(3.2.1)对大小为40×40×512的第一特征图进行四倍的下采样;对大小为20×20×512的第二特征图进行二倍的下采样,将这两次下采样得到的输出结果依次与大小为10×10×1024的第三特征图叠加,得到大小为10×10×2018的第一输出特征图;
(3.2.2)对大小为40×40×512的第一特征图进行二倍的下采样,对大小为10×10×1024的第三特征图进行二倍的非线性插值,将这两种操作得到的输出结果依次与大小为20×20×512的第二特征图叠加得到大小为20×20×2018的第二输出特征图;
(3.2.3)对大小为20×20×512第二特征图进行二倍的非线性插值,对大小为10×10×1024第三特征图进行四倍的非线性插值,将这两个非线性插值得到的输出结果依次与大小为40×40×512的第一特征图叠加得到大小为40×40×2018的第三输出特征图。
(3.3)构建分类回归模块:
所述分类回归模块由六个卷积层和三个分类回归层组成,根据处理的特征图尺度不同分为三个分支,其中:
第一分支,其构造顺序依次为:第1卷积层→第2卷积层→第1分类回归层;
第二分支,其构造顺序依次为:第3卷积层→第4卷积层→第2分类回归层;
第三分支,其构造顺序依次为:第5卷积层→第6卷积层→第3分类回归层;
各层参数设置如下:
第1卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长设为1;
第2卷积层,其特征映射图的总数设置为35个,卷积核的尺度设置为1×1,划窗步长设为1。
第3卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长设为1;
第4卷积层,其特征映射图的总数设置为35个,卷积核的尺度设置为1×1,划窗步长设为1。
第5卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长设为1;
第6卷积层,其特征映射图的总数设置为35个,卷积核的尺度设置为1×1,划窗步长设为1。
(3.4)上述三部分之间的连接关系:
将基础卷积模块中第二卷积层输出的第一特征图、第六卷积层输出的第二特征图和第十四卷积层输出的第三特征图同时输入到多尺度特征交叉融合层;在多尺度特征交叉融合层中,对第一特征图、第二特征图和第三特征图进行全连接,得到的第一输出特征图、第二输出特征图和第三输出特征图;再将第一输出特征图与分类回归模块的第一分支相连,第二输出特征图与分类回归模块的第二分支相连,第三输出特征图与分类回归模块的第三分支相连,得到网络检测结果。
步骤4,使用训练数据集对基于多尺度特征交叉融合的目标检测网络进行训练。
首先,将网络中各层的参数进行随机初始化,优化方法设为随机梯度下降SGD,激活函数选取如下式所示的Relu函数:
y=max(0,x),
其中,x表示上一层网络的输出,y表示本层网络的输出;
然后,将初始学习率设为0.001,迭代训练20000代;
接着,在通用GPU平台上,对上述网络进行迭代训练,当训练次数达到20000代时,训练结束,得到训练好的网络;
步骤5,对训练好的网络的权重进行格式转换。
将训练好的网络中的.weights格式权重,使用现有的工具包转换为FPGA板卡可以识别的.bin格式,本实例中使用但不限于由杭州加速云企业提供的工具包进行格式转换。
步骤6,对构建的目标检测网络依次进行高级语言描述和编译,得到SOF可执行文件。
本实例是利用OpenCL对基于多尺度特征交叉融合的目标检测网络进行高级语言描述得到Kernel程序,并使用Altera SDK for OpenCL编译器将得到的kernel程序编译为SOF可执行文件,其具体操作是:
首先,将网络中运算量大,需要对每个像素点进行反复运算的卷积层,最大池化层这些模块使用OpenCl语言进行描述;
然后,使用OpenCl语言提供的Buffer类型存储图像数据,避免无谓的数据传输,即当所述的目标检测网络中的多个kernel程序顺序执行的时候,让数据停留在FPGA内存中,下一个Kernel执行前则不需要重新传入数据,以提高FPGA的计算效率;
最后,配合使用FPGA板卡的全局内存和局部内存,合理的设置工作组和工作项以划分数据,提高Kernel程序的执行效率。
步骤7,基于FPGA板卡对超大遥感图像进行检测。
参照图3,本步骤具体实现如下:
(7.1)将步骤5得到的.bin格式的权重存入FPGA板卡内存的指定位置;
(7.2)将步骤6得到的SOF文件通过JTAG接口下载到FPGA板卡的SRAM中;
(7.3)对待检测的超大遥感图像按照与步骤1相同的方法进行特征剔除的预处理;
(7.4)用窗口大小为300×300×3,且步长为260×260×3的滑窗,对预处理后的待检测超大遥感图像数据进行切割,得到多个大小为300×300×3的图像数据块,并保存每一个数据块对应的划窗步数;
(7.5)主机端通过C语言和OpenCl语言混合编程的方式,将上述得到的多个大小为300×300×3的图像数据依次映射到FPGA板卡的内存缓存区;
(7.6)在FPGA上运行上述的基于多尺度特征交叉融合的目标检测算法,得到中间处理结果,该FPGA板卡是指Intel Stratix 10;
(7.7)主机端通过C语言和OpenCl语言混合编程的方式,从FPGA板卡的内存缓冲区读取中间处理结果;
(7.8)保留中间处理结果中所有得分高于0.24的目标类别的候选框,丢弃其余候选框;
(7.9)对保留的候选框进行后处理,得到检测结果。
先将所有保留候选框的坐标映射到完整的光学遥感图像上,再进行非极大值抑制NMS处理,即对所有检测框按照得分从高到低进行排序,保留检测框之间重叠度低和得分高的候选框,丢弃检测框之间重叠度高和得分低的候选框,最后将剩余的候选框在原始的超大遥感图像上进行标注,得到最后的检测结果。
以下结合仿真实验,对本发明的技术效果作以说明:
1.仿真条件:
本发明仿真实验的硬件平台为:主频为2.20GHz的Intel(R)Xeon(R)CPU E5-2630,64GB运行内存,显卡型号为GeForce GTX 1080,FPGA型号为Intel Stratix 10。
本发明仿真实验的软件平台:Centos 7操作系统,DarkNet深度学习平台,Python3.5开发平台
2.仿真内容与结果:
利用本发明方法和现有技术在上述仿真条件下对从QuickBird卫星接收的一张珠江三角洲地区分辨率为23168×10064的光学遥感图像进行目标检测的实验仿真,并采用准确率、平均精度mAP、检测时间以及板卡功耗,分别对本发明与现有技术YOLO V2两种光学遥感图像的目标检测结果进行评价,其中:
准确率=总检测正确目标数/总检测目标数
召回率=总检测正确目标数/总实际目标数
绘制准确率-召回率曲线,根据曲线的面积得到目标检测的检测精度AP,将多个类别的AP求均值得到平均精度mAP。
检测时间=程序结束运行的时刻-程序开始运行的时刻
功耗是指板卡的标准功耗,Intel Stratix 10是80W,GeForce GTX 1080是180W。
仿真实验评价的结果如表1所示。
表1.本发明和现有技术的检测结果对比表
YOLO V2 本发明方法
飞机 0.9263 0.9553
舰船 0.5860 0.6298
mAP 0.7562 0.7925
检测时间 96.06 129.9
功耗 180 80
从表1可见,现有技术YOLO V2检测飞机的精度为92.63%,检测舰船的精度为58.60%,平均精度mAP为75.62%,检测时间为96.06S,功耗为180W。本发明方法的检测飞机的精度为95.53%,检测舰船的精度为62.98%,平均精度为79.25%,检测时间为129.9S,功耗为80W。由表2可见本发明的方法在检测飞机与舰船的检测结果以及整体性能上均优于现有技术的检测结果。
综上,本发明通过在经典的YOLO V2算法中添加多尺度特征融合模块,并对待检测遥感图像的HSV图像数据进行特征剔除预处理,有效地提高了小目标的检测精度,这里的小目标主要是指小飞机和舰船。整体上,光学遥感图像中飞机、舰船的平均精度mAP提高了4.38%;此外,本发明采用FPGA作为加速平台,比GPU平台上相同的网络具有更高的“能耗比”,即网络的性能相同,功耗更低而且网络运行速度也不慢,可以在星载,机载等各种复杂环境下的使用。

Claims (7)

1.一种基于FPGA异构深度学习的光学遥感图像目标检测方法,其特征在于,包括如下:
(1)对原始的光学遥感图像在HSV颜色空间进行特征剔除的预处理;
(2)构建训练数据集:
(2a)从遥感卫星上实时接收的光学遥感图像中,选取多幅含有陆地飞机和水中舰船的光学遥感图像进行标注,并以每个飞机和舰船的目标中心为切割中心点,切割出大小为320×320×3的图像数据块,并保存到本地;
(2b)对保存到本地的图像数据块进行数据增强预处理,得到训练数据集;
(3)构建基于多尺度特征交叉融合的目标检测网络:
(3a)构建用于提取图像特征的基础卷积模块;
(3b)构建多尺度特征交叉融合层;
(3c)使用基础卷积模块和多尺度特征交叉融合层搭建基于多尺度特征交叉融合的目标检测网络;
(4)在通用GPU平台上,使用训练数据集对基于多尺度特征交叉融合的目标检测网络进行训练,并将训练好网络的.weights格式权重转换为.bin格式;
(5)对(3)构建的目标检测网络依次进行高级语言描述和编译,得到SOF可执行文件;
(6)基于FPGA板卡对超大遥感图像进行检测:
(6a)将(4)得到的.bin格式的权重存入FPGA板卡内存的指定位置;
(6b)将(5)得到的SOF文件通过JTAG接口下载到FPGA板卡的SRAM中;
(6c)对待检测的超大遥感图像进行特征剔除的预处理;
(6d)用窗口大小为300×300×3,且步长为260×260×3的滑窗,对预处理后的待检测超大遥感图像数据进行切割,得到多个大小为300×300×3的图像数据块,并保存每一个图像数据块对应的划窗步数;
(6e)主机端通过C语言和OpenCl语言混合编程的方式,将上述得到的多个大小为300×300×3的图像数据依次映射到FPGA板卡的内存缓存区;
(6f)在FPGA上运行基于多尺度特征交叉融合的目标检测网络,对内存缓冲区中大小为300×300×3的图像数据块进行检测,得到中间处理结果;
(6g)主机端通过C语言和OpenCl语言混合编程的方式,从FPGA板卡的内存缓冲区读取中间处理结果;
(6h)保留中间处理结果中所有得分高于0.24的目标类别的候选框,丢弃其余候选框;
(6i)对所有保留候选框的坐标进行映射,映射到完整的光学遥感图像上面并进行非极大值抑制NMS处理,得到光学遥感图像的检测结果。
2.根据权利要求1所述的方法,其特征在于,(1)中对原始的光学遥感图像在HSV颜色空间进行特征剔除的预处理,其实现如下:
(1a)按照下面所示公式,将原始的光学遥感图像从RGB颜色空间转换到HSV颜色空间;
V=max(R,G,B)
Figure FDA0002156204310000021
Figure FDA0002156204310000022
其中,R、G、B为遥感图像RGB颜色空间的三个参数,H、S、V为遥感图像在HSV颜色空间的三个参数;
(1b)舍弃HSV颜色空间图像数据中对光线敏感的V分量,保留对光线不敏感的H分量和S分量。
3.根据权利要求1所述的方法,其特征在于,(3a)中构建用于提取图像特征的基础卷积模块,其结构参数如下:
(3a1)模块结构:输入层→第一卷积层→第一最大池化层→第二卷积层→第二最大池化层→第三卷积层→第四卷积层→第五卷积层→第六卷积层→第一特征图→第三最大池化层→第七卷积层→第八卷积层→第九卷积层→第十卷积层→第二特征图→第四最大池化层→第十一卷积层→第十二卷积层→第十三卷积层→第十四卷积层→第三个特征图;
(3a2)各层参数如下:
输入层,其特征图映射图总数为3;
第一卷积层,其特征映射图的总数设置为64个,卷积核的大小设为7×7,划窗步长为2;
第一最大池化层,其特征映射图的尺寸设置为2×2,划窗步长为2;
第二卷积层,其特征映射图的总数设置为192个,卷积核的尺度设置为3×3,划窗步长为1;
第二最大池化层,其特征映射图的尺寸设置为2×2,划窗步长为2;
第三卷积层,其特征映射图的总数设置为128个,卷积核的尺度设置为1×1,划窗步长为1;
第四卷积层,其特征映射图的总数设置为256个,卷积核的尺度设置为3×3,划窗步长为1;
第五卷积层,其特征映射图的总数设置为256个,卷积核的尺度设置为1×1,划窗步长为1;
第六卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为3×3,划窗步长为1;该层的输出记为“第一特征图”;
第三最大池化层,其特征映射图的尺寸设置为2×2,划窗步长为2;
第七卷积层,其特征映射图的总数设置为256个,卷积核的尺度设置为1×1,划窗步长为1;
第八卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为3×3,划窗步长为1;
第九卷积层,其特征映射图的总数设置为256个,卷积核的尺度设置为1×1,划窗步长为1;
第十卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为3×3,划窗步长为1;该层的输出记为“第二个特征图”;
第四最大池化层,其特征映射图的尺寸设置为2×2,划窗步长为2;
第十一卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为1×1,划窗步长为1;
第十二卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长为1;
第十三卷积层,其特征映射图的总数设置为512个,卷积核的尺度设置为1×1,划窗步长为1;
第十四卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长为1;该层的输出记为“第三特征图”。
4.根据权利要求1所述的方法,其特征在于,(3b)中构建多尺度特征交叉融合层,是对(3a)中得到的第一特征图、第二特征图和第三特征图进行特征融合,得到第一输出特征图、第二输出特征图和第三输出特征图,具体操作如下:
(3b1)对大小为40×40×512的第一特征图进行四倍的下采样;对大小为20×20×512的第二特征图进行二倍的下采样,将这两次下采样得到的输出结果依次与大小为10×10×1024的第三特征图叠加,得到大小为10×10×2018的第一输出特征图;
(3b2)对大小为40×40×512的第一特征图进行二倍的下采样,对大小为10×10×1024的第三特征图进行二倍的非线性插值,将这两种操作得到的输出结果依次与大小为20×20×512的第二特征图叠加得到大小为20×20×2018的第二输出特征图;
(3b3)对大小为20×20×512第二特征图进行二倍的非线性插值,对大小为10×10×1024第三特征图进行四倍的非线性插值,将这两个非线性插值得到的输出结果依次与大小为40×40×512的第一特征图叠加得到大小为40×40×2018的第三输出特征图。
5.根据权利要求1所述的方法,其特征在于,(3c)中搭建基于多尺度特征交叉融合的目标检测网络,是指使用基础卷积模块和多尺度特征交叉融合层搭建目标检测网络,其结构参数如下:
(3c1)网络结构:其由一个基础卷积模块、一个多尺度特征交叉融合层、六个卷积层和三个分类回归层组成,其中:
第一分类回归层输出由第一输出特征图导出,其结构依次为:第一输出特征图→第1卷积层→第2卷积层→第1分类回归层;
第二分类回归层输出由第二输出特征图导出,其结构依次为:第二输出特征图→第3卷积层→第4卷积层→第2分类回归层;
第三分类回归层输出由第三输出特征图导出,其结构依次为:第三输出特征图→第5卷积层→第6卷积层→第3分类回归层;
(3c2)各层参数设置如下:
第1卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长设为1;
第2卷积层,其特征映射图的总数设置为35个,卷积核的尺度设置为1×1,划窗步长设为1;
第3卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长设为1;
第4卷积层,其特征映射图的总数设置为35个,卷积核的尺度设置为1×1,划窗步长设为1;
第5卷积层,其特征映射图的总数设置为1024个,卷积核的尺度设置为3×3,划窗步长设为1;
第6卷积层,其特征映射图的总数设置为35个,卷积核的尺度设置为1×1,划窗步长设为1。
6.根据权利要求1所述的方法,其特征在于,(5)中对(3)构建的目标检测网络依次进行高级语言描述和编译,得到SOF可执行文件,是将基于多尺度特征交叉融合的目标检测网络中卷积层,最大池化层模块使用OpenCL高级语言进行描述生成kernel程序;同时根据图像数据的特征设置工作组和工作项以划分数据,并配合FPGA板卡的全局内存和局部内存,实现对图像数据的并行处理;再使用Altera SDK for OpenCL编译器将得到的Kernel程序编译为SOF可执行文件。
7.根据权利要求1所述的方法,其特征在于,(6i)中对映射到完整光学遥感图像上的所有候选框坐标进行非极大值抑制NMS处理,是指对所有候选框根据其置信度从大到小的排序,保留检测框之间重叠度低和得分高的候选框,丢弃检测框之间重叠度高和得分低的候选框。
CN201910718212.6A 2019-08-05 2019-08-05 基于fpga异构深度学习的光学遥感图像目标检测方法 Active CN110516560B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910718212.6A CN110516560B (zh) 2019-08-05 2019-08-05 基于fpga异构深度学习的光学遥感图像目标检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910718212.6A CN110516560B (zh) 2019-08-05 2019-08-05 基于fpga异构深度学习的光学遥感图像目标检测方法

Publications (2)

Publication Number Publication Date
CN110516560A CN110516560A (zh) 2019-11-29
CN110516560B true CN110516560B (zh) 2022-12-02

Family

ID=68625146

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910718212.6A Active CN110516560B (zh) 2019-08-05 2019-08-05 基于fpga异构深度学习的光学遥感图像目标检测方法

Country Status (1)

Country Link
CN (1) CN110516560B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111191527B (zh) * 2019-12-16 2024-03-12 北京迈格威科技有限公司 属性识别方法、装置、电子设备及可读存储介质
CN113011446B (zh) * 2019-12-20 2023-08-04 中国科学院沈阳自动化研究所 一种基于多源异构数据学习的智能目标识别方法
CN112906523B (zh) * 2021-02-04 2022-12-27 上海航天控制技术研究所 一种硬件加速的深度学习目标机型识别方法
CN113283346A (zh) * 2021-05-28 2021-08-20 捷佳润科技集团股份有限公司 一种基于机器学习的火龙果产量预测方法
CN113484864B (zh) * 2021-07-05 2022-05-31 中国人民解放军国防科技大学 面向无人艇的航海雷达与光电吊舱协同环境感知方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201601660D0 (en) * 2016-01-29 2016-03-16 Global Surface Intelligence Ltd System and method for earth observation and analysis
CN108491854B (zh) * 2018-02-05 2020-04-07 西安电子科技大学 基于sf-rcnn的光学遥感图像目标检测方法
CN108427912B (zh) * 2018-02-05 2020-06-05 西安电子科技大学 基于稠密目标特征学习的光学遥感图像目标检测方法

Also Published As

Publication number Publication date
CN110516560A (zh) 2019-11-29

Similar Documents

Publication Publication Date Title
CN110516560B (zh) 基于fpga异构深度学习的光学遥感图像目标检测方法
CN110472627B (zh) 一种端到端的sar图像识别方法、装置及存储介质
CN109271856B (zh) 基于扩张残差卷积的光学遥感图像目标检测方法
CN109886312B (zh) 一种基于多层特征融合神经网络模型的桥梁车辆车轮检测方法
CN111640125B (zh) 基于Mask R-CNN的航拍图建筑物检测和分割方法及装置
CN111091105A (zh) 基于新的边框回归损失函数的遥感图像目标检测方法
CN110909666A (zh) 一种基于改进型YOLOv3卷积神经网络的夜间车辆检测方法
CN106295613A (zh) 一种无人机目标定位方法及系统
CN113780296A (zh) 基于多尺度信息融合的遥感图像语义分割方法及系统
CN110378297A (zh) 一种基于深度学习的遥感图像目标检测方法
CN109919862B (zh) 雷达图像去噪系统、方法及计算机设备
CN107731011B (zh) 一种港口泊船监测方法、系统及电子设备
CN109711407A (zh) 一种车牌识别的方法及相关装置
CN108254727A (zh) 一种基于轮廓跟踪的雷达点迹凝聚方法
CN103353988A (zh) 异源sar景象特征匹配算法性能评估方法
CN103425995B (zh) 基于区域相似性低秩表示降维的高光谱图像分类方法
CN111160293A (zh) 基于特征金字塔网络的小目标船只检测方法及系统
CN110728197A (zh) 基于深度学习的单木级树种识别方法
CN110599455A (zh) 显示屏缺陷检测网络模型、方法、装置、电子设备及存储介质
CN110069987B (zh) 基于改进vgg网络的单阶段船舶检测算法及装置
CN108765439A (zh) 一种基于无人水面艇的海天线检测方法
CN115620081A (zh) 一种目标检测模型的训练方法及目标检测方法、装置
CN116071664A (zh) 基于改进CenterNet网络的SAR图像舰船检测方法
CN115965862A (zh) 基于掩码网络融合图像特征的sar舰船目标检测方法
CN113569911A (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
GR01 Patent grant
GR01 Patent grant