UCAS-AOD遥感旋转目标检测数据集——基于YOLOv8obb,map50已达96.7%

1.UCAS-AOD简介

1.1数据说明

遥感图像,又名高分辨率遥感图像。遥感图像的分类依据是根据成像的介质不同来进行分类的。UCAS-AOD (Zhu et al.,2015)用于飞机和汽车的检测,包含飞机与汽车2类样本以及一定数量的反例样本(背景),总共包含2420幅图像和14596个实例。论文中特别提到了目标检测的方向健壮性,所以在数据集标注过程中作者对数据进行了一定程度的筛选,使得图像中的物体方向分布均匀,数据集具体内容如下:

|----|------|------|------|------|------|
| 内容 | 飞机图像 | 飞机实例 | 汽车图像 | 汽车实例 | 反例图像 |
| 数量 | 1000 | 7482 | 510 | 7114 | 910 |

数据集中目标为航拍图像下的飞机和车辆,使用Google Earth软件在全球部分区域中截取的图像。

1.2数据格式

数据集分为CAR、PLANE、NEG三个文件,CAR、PLANE为正例图像,NEG为反例图像。正例图像以P+数字序号命名,反例图像以N+数字序号命名,所有图像为PNG格式,尺寸为1280x659和1372x941。UCAS-AOD采用HBB(horizontal bounding box)的标注方法,图像的groundtruth采用txt格式保存,以图像的同名文档方式存储。对于整理好的txt文档数据,每列的属性如下:

复制代码
x1,y1,x2,y2,x3,y3,x4,y4,theta,x,y, width,height

其中,x1,y1,x2,y2,x3,y3,x4,y4为旋转矩形框四个顶点,theta为倾斜角。

2.UCAS-AOD数据处理****

2.1处理成如下格式

python 复制代码
x1 y1 x2 y2 x3 y3 x4 y4 class class_index

​处理代码如下:

python 复制代码
import os

# 输入和输出文件夹路径
input_folder_path = 'label'
output_folder_path = 'txt'

# 遍历labels文件夹下所有txt文件
for filename in os.listdir(input_folder_path):
    if filename.endswith('.txt'):
        input_file_path = os.path.join(input_folder_path, filename)
        output_file_path = os.path.join(output_folder_path, filename)

        # 打开原始文件并创建一个新文件用于写入修改后的数据
        with open(input_file_path, 'r') as input_file, open(output_file_path, 'w') as output_file:
            for line in input_file:
                # 在这里你可以对每一行的内容进行处理
                # 例如,将每一行的数据以制表符分割并转换为浮点数列表
                data = [float(value) for value in line.strip().split('\t')]

                # 仅保留每行数据的前8个数
                data = data[:8]

                # 将处理后的数据写入新文件
                output_line = '\t'.join(map(str, data)) + '\tPLANE' + '\t1\n'
                output_file.write(output_line)

        print(f"数据已保存到 {output_file_path}")

分别以CAR和PLANE为例,得到:

python 复制代码
276.3971  91.25021  291.1375  38.23406  330.8891  49.28647  316.1486  102.3026  CAR  0
254.0147  168.3054  253.027  124.0611  314.917  122.6796  315.9046  166.9239  PLANE  1

2.2进行obb格式的转换

python 复制代码
from ultralytics.data.converter import convert_dota_to_yolo_obb
convert_dota_to_yolo_obb('C:\myyolo\ultralytics-main\dataobb')
#关于dataobb文件下的目录可参考https://blog.csdn.net/qq_41301570/article/details/135540398

以上面CAR和PLANE为例,转换后的结果如下:

python 复制代码
0 0.215935 0.138468 0.227451 0.0580183 0.258507 0.0747898 0.246991 0.155239
1 0.198449 0.255395 0.197677 0.188257 0.246029 0.18616 0.2468 0.253299

2.3进行训练

如果你不想浪费时间进行数据的处理,可私戳获取数据集​!!!

2.4进行验证

最后:

小编会不定期发布相关设计内容包括但不限于如下内容:信号处理、通信仿真、算法设计、matlab appdesigner,gui设计、simulink仿真......希望能帮到你!

相关推荐
zy_destiny43 分钟前
深度学习实战-基于YOLOv8的玉米雄穗目标检测:从数据集下载到训练部署全流程实录
yolo·目标检测·机器学习
一见已难忘1 小时前
产业AI落地技术解析:边缘部署、工业视觉检测与多传感器融合预警的工程实践(燎原:我看见的智能中国)
人工智能·计算机视觉·视觉检测
YOLO数据集集合7 小时前
外墙裂缝目标检测YOLO数据集:6,296张图像助力建筑病害智能识别| 外墙裂缝检测 YOLO数据集 建筑健康监测 无人机巡检 目标检测8030期
yolo·目标检测·无人机·建筑·外墙裂缝·建筑病害
richard_yuu9 小时前
Hopfield 网络:联想记忆的「鼻祖」,为什么它能「回忆」?
深度学习·神经网络·yolo·机器学习
炎龙铠甲会合体11 小时前
从 SPEC 到上板:在 Zynq-7020 上用 RTL 手写一个 YOLO 卷积加速器(完整教程)
yolo·fpga开发·axi·芯片验证
鬼手点金13 小时前
Claude Code示范案例-进阶学习路径
java·服务器·前端·学习·计算机视觉·前向传播
闭包不眠14 小时前
端侧AI能省多少服务器钱:把账换成字节算
运维·服务器·图像处理·人工智能·计算机视觉
AomanHao15 小时前
【阅读笔记】Weighted Guided Image Filtering(WGIF)权重引导滤波
图像处理·人工智能·笔记·计算机视觉·滤波·引导滤波
YOLO数据集集合1 天前
烟叶病虫害检测数据集 | 烟叶病害 无人机航拍 智慧农业 病害检测 9125期
人工智能·目标检测·目标跟踪·无人机·烟草病虫·烟草虫害
李航19831 天前
给自己的图形引擎,配上了AI渲染,做设计真是太方便了
人工智能·python·计算机视觉·ai·ai编程