当前位置: 首页 > article >正文

遥感图像目标检测数据集-DOTA数据集

DOTA数据集(v1.0版本和v1.5版本),训练集1411张,验证集458张,测试集若干,共16种类别。数据集图片大小不一,需要进行裁剪,可设置裁剪重叠大小以及裁剪图片大小。此处按照默认参数裁剪,重叠200像素,大小1024×1024,删除空白标签后得到训练集11119张,验证集3626张,提供yolo归一化txt格式标签。

数据集名称

DOTA数据集 v1.0 版本 和 v1.5 版本

数据集概述

DOTA数据集(Detection of Objects from TOp-down perspectives)是一个专为遥感图像中的目标检测设计的大规模数据集。该数据集涵盖了16种不同的类别,包括飞机、船舶、棒球场、桥、车辆、风力发电机等,适用于遥感图像中的小目标检测任务。DOTA数据集因其广泛的类别和多样化的图像背景,成为了遥感图像分析领域的重要基准之一。

数据集特点
  1. 类别丰富:包含16种不同类型的遥感目标,涵盖了从大型结构(如桥梁、棒球场)到小型移动物体(如飞机、车辆)。
  2. 图像多样性:图像大小不一,来源于不同的视角和地理位置,提供了丰富的图像背景和光照条件。
  3. 精细标注:每个目标都被仔细标注,提供了准确的位置信息。
  4. 数据处理:为了便于处理和训练模型,数据集中的图像按照默认参数裁剪成1024×1024像素大小,重叠200像素,去除了空白标签。
  5. 标签格式:提供了YOLO格式的归一化标签文件,方便用户直接导入现有的YOLO训练流程。
数据集构成

  • 类别

    • Plane(飞机)
    • Ship(船)
    • Storage-tank(储油罐)
    • Baseball-diamond(棒球场)
    • Tennis-court(网球场)
    • Bridge(桥)
    • Ground-track-field(田径场)
    • Large-vehicle(大型车辆)
    • Small-vehicle(小型车辆)
    • Helicopter(直升机)
    • Swiming-pool(游泳池)
    • Roundabout(环形交叉路口)
    • Soccer-ball-field(足球场)
    • Container-crane(集装箱起重机)
    • Wind-mill(风力发电机)
    • Harbor(港口)

  • 原始图像数量

    • 训练集:1411张
    • 验证集:458张
    • 测试集:若干
  • 裁剪后图像数量

    • 训练集:11119张
    • 验证集:3626张
  • 图像大小:1024×1024像素,重叠200像素

  • 标签格式:YOLO归一化txt格式

数据集用途
  • 目标检测:用于训练和测试遥感图像中的目标检测算法。
  • 遥感分析:在实际应用中,可以用于自动化识别和分类遥感图像中的目标,如城市规划、灾害评估、军事侦察等。
  • 研究与开发:为研究人员提供一个基准数据集,用于比较不同算法的效果。
  • 教育与培训:作为教学资源,帮助学生理解计算机视觉和遥感图像处理的基本概念。
应用案例
  • 城市规划:通过检测建筑物、道路等基础设施,辅助城市规划师制定更合理的规划方案。
  • 环境保护:监测森林砍伐、河流污染等环境问题。
  • 军事侦察:识别和跟踪敌方设施或活动。
  • 灾害响应:快速评估地震、洪水等自然灾害的影响范围。
数据集
示例代码

下面是一个简单的示例代码,展示了如何使用Python加载和预览DOTA数据集中的图像及其YOLO格式的标签信息.

1import os
2import random
3import matplotlib.pyplot as plt
4import numpy as np
5
6# 数据集目录路径
7data_dir = 'path/to/dota_dataset'
8image_dir = os.path.join(data_dir, 'images')
9label_dir = os.path.join(data_dir, 'labels')
10
11# 随机选择一张图像
12image_files = os.listdir(image_dir)
13image_file = random.choice(image_files)
14image_path = os.path.join(image_dir, image_file)
15
16# 加载图像
17image = plt.imread(image_path)
18
19# 加载YOLO标签
20label_file = os.path.splitext(image_file)[0] + '.txt'
21label_path = os.path.join(label_dir, label_file)
22
23with open(label_path, 'r') as f:
24    lines = f.readlines()
25    
26# 解析YOLO标签
27class_names = ['Plane', 'Ship', 'Storage-tank', 'Baseball-diamond', 'Tennis-court', 'Bridge', 
28               'Ground-track-field', 'Large-vehicle', 'Small-vehicle', 'Helicopter', 'Swiming-pool', 
29               'Roundabout', 'Soccer-ball-field', 'Container-crane', 'Wind-mill', 'Harbor']
30
31for line in lines:
32    class_id, x_center, y_center, width, height = map(float, line.strip().split())
33    x_min = int((x_center - width / 2) * image.shape[1])
34    y_min = int((y_center - height / 2) * image.shape[0])
35    x_max = int((x_center + width / 2) * image.shape[1])
36    y_max = int((y_center + height / 2) * image.shape[0])
37    
38    # 在图像上绘制边界框
39    plt.gca().add_patch(plt.Rectangle((x_min, y_min), x_max - x_min, y_max - y_min, edgecolor='r', facecolor='none'))
40    plt.text(x_min, y_min, class_names[int(class_id)], color='r', fontsize=8)
41
42# 绘制图像
43plt.figure(figsize=(10, 10))
44plt.imshow(image)
45plt.axis('off')
46plt.show()

总结

DOTA数据集是一个高质量的遥感图像目标检测数据集,涵盖了16种不同类型的遥感目标。数据集的特点是类别丰富、图像多样性高和精细标注,能够满足不同研究需求。通过使用该数据集,研究者可以在遥感图像分析领域推动技术进步,提高目标检测的准确性和效率。


http://www.kler.cn/a/310296.html

相关文章:

  • Mysql数据类型面试题15连问
  • Matlab实现鹈鹕优化算法(POA)求解路径规划问题
  • 【设计模式】结构型模式(四):组合模式、享元模式
  • Visual Studio Code 端口转发功能详解
  • btstack协议栈实战篇--SDP Client - Query Remote SDP Records
  • 数据安全、信息安全、网络安全区别与联系
  • SAP自动化-ME12批量更新某行价格
  • 分类评估指标:准确率、精确度、召回率、F1分数、Roc详解
  • 单片机(Microcontroller)原理及应用
  • git拉取大文件
  • Spring 源码解读:手动实现Spring的资源管理机制
  • 图像处理与OCR识别的实践经验(1)
  • React框架搭建,看这一篇就够了,看完你会感谢我
  • 思通数科开源产品:免费的AI视频监控卫士安装指南
  • 【C++】模拟实现vector
  • Aegisub字幕自动化及函数篇(图文教程附有gif动图展示)(一)
  • 如何在 CentOS 6 上使用 RVM 安装 Ruby on Rails
  • C语言自定义类型结构体(24)
  • JAVA基础面试题(第二十二篇)MYSQL---锁、分库分表!
  • Shell篇之编写MySQL启动脚本
  • 9.17日常记录
  • 深度学习-14-深入理解BERT的基本思想和如何训练BERT模型
  • Golang | Leetcode Golang题解之第416题分割等和子集
  • golang学习笔记28——golang中实现多态与面向对象
  • 微信getUserProfile不弹出授权框
  • 编写第一个hadoop3.3.6的mapreduce程序