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仿真......希望能帮到你!

相关推荐
leoZ23110 小时前
Vue3 还原一个企业级后台-08-API注册管理
目标检测·机器学习·分类·状态模式·迁移学习·集成学习·figma
欧特克_Glodon13 小时前
OpenCV计算机视觉开发入门与实践<十一>:矩阵的复制和矩形类Rect
c++·opencv·计算机视觉·矩阵
深圳雨林凯AI15 小时前
无缝平铺的图像处理原理:边缘匹配、重复单元与密度控制|雨林凯AI 四方连图
图像处理·人工智能·计算机视觉
AndrewHZ19 小时前
图像处理入门008 | 阶段总结:环境测试与基础概念测验
图像处理·python·opencv·计算机视觉·cv
江畔柳前堤19 小时前
AgentScope 设计与原理全解:从消息原语到分布式智能体工程底座
大数据·人工智能·分布式·目标检测·机器学习·语言模型·架构
jay神20 小时前
深度学习为什么需要反向传播
人工智能·深度学习·yolo·目标检测·cnn·毕业设计
汐ya~21 小时前
【PageEyes Agent 跨端 UI 自动化】开源Pydantic AI、OmniParser 多源感知的UI 自动化Agent
计算机视觉·agent·ui自动化·github开源
动物园猫1 天前
猪危险行为目标检测数据集:3类别、5,000+张图像 | 目标检测
人工智能·目标检测·计算机视觉
嘶哈哈哈1 天前
使用 Labelme 标注遥感目标检测数据集:从类别表、矩形框到 group_id 完整流程
人工智能·目标检测·目标跟踪
YOLO数据集集合1 天前
一站式AI数据自动化标注与训练平台:零门槛玩转YOLO全系列模型
人工智能·深度学习·yolo·ai·自动化·数据集·标注软件