案例简介
本案例基于搭载了华为昇腾310芯片的Atlas 200 DK实现对YOLOv3目标检测网络的推理功能,快速实现遥感图像中的飞机目标检测,并将检测的结果在图片中画框标识出来。
系统总体设计
本系统总体设计流程可分为模型训练阶段和模型推理阶段。
1. 模型训练阶段主要在服务器端完成,而模型推理阶段在华为Atlas 200 DK上完成构建。
2. 模型推理阶段模块主要功能:
(1)遥感图像处理模块
读取目标文件夹下的所有遥感图片,获取图片信息,完成将图片从jpeg格式转换为yuv格式,并对图片进行resize,使其满足模型输入大小。
(2)模型推理模块
对遥感图像中的飞机目标通过模型进行推理,将推理得到的输出结果发送给后处理模块进行解析。
(3)后处理模块
对输入图片的推理结果进行获取,解析推理结果,将目标检测结果在图片中进行标记,作为检测结果进行输出。
数据集介绍
(1)数据集来源:NWPU VHR-10、 RSOD-Dataset
分别选取446张大小为1044×915的遥感图像和80张大小约为958×808的遥感图像。
(2)数据集扩增:
旋转90度、180度、270度三种旋转方式,对图像数据进行扩增操作。采用mixup数据增强方法,将RSOD-Dataset与NWPU VHR-10数据集中的部分图像按照一定比例融合,将融合后的图像添加至训练集。
模型介绍
本系统采用YOLOv3算法,下图为YOLOv3网络结构图,图中前184层使用DarkNet-53网络作为深度残差结构的基础网络。
(1)输入图像尺寸大小为416*416,经过DarkNet-53网络作用,实现32倍缩小的特征图变换,得到13*13的特征图。
(2)通过上采样以及与DarkNet-53 26*26、52*52特征图融合的方法,实现了3个scale上的目标检测:输出预测1位于203层。输出预测2融合了第152层的特征图信息,在网络的227层输出。输出预测3融合了第92层的特征图信息,在网络的第251层输出。最后在Yolo v3模型的最后一层(第252层),融合输出预测1、输出预测2和输出预测3的预测结果得到最终检测结果。