遥感图像目标检测数据集-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.xdnf.cn/news/1538569.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

二极管选型

稳压二极管(齐纳二极管) 肖特基二极管 发光二极管 TVS二极管

记录一下ElementUI 3 在浏览器导入, table表格显示问题

当时问题忘了截图, 现在通过文字记录一下问题 我直接在html了引入 vue3 和 ElementUI 3 , 使用了table组件, 但是表格的td 总是只显示一列, 问题是我的 el-table-column 标签 没有结束标签 , 在vue文件模块化里写不需要结束标签, 在浏览器里无法直接识别出来, 所以他是渲染了第…

基于yolov8的肉鸡健康状态检测系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的肉鸡健康状态检测系统是一个先进的目标检测应用,旨在通过图像分析实现对肉鸡健康状态的快速、准确评估。该系统利用了YOLOv8模型的尖端技术,该模型由Ultralytics公司开发,具有卓越的检测精度和速度。 YOLOv8模型采…

C++---类与对象一

类的定义 class className{//成员字段//成员函数 };class定义类的关键字,className是自己决定的类名,{ } 为类的主体,花括号里是类的内容。类的内容大致分为类的成员属性(变量)和类的成员函数。注意定义类后面需要跟;…

理解人工智能、机器学习与深度学习的关系

1. 人工智能(AI)宏观的智能概念 人工智能(Artificial Intelligence, AI)是一个广泛的领域,涉及设计和开发能够表现出智能行为的计算机系统。这些系统可以模拟或执行类似于人类的认知功能,如学习、推理、决…

react 路由 react-router/react-router-dom

react-router-dom中包含react-router 安装前者即可 npm install react-router-dom -Simport { BrowserRouter as Router, Route, Link, Switch } from react-router-dom <Switch>组件&#xff0c;和switch语法一样&#xff0c;遇到匹配就结束&#xff0c;后面的<Route…

如何全面优化MySQL性能

MySQL数据库性能优化是一项复杂而细致的任务&#xff0c;它涉及到数据库设计、查询优化、服务器配置等多个方面。以下是几个关键的步骤和策略&#xff0c;旨在帮助提升MySQL数据库的运行效率&#xff1a; 优化数据库设计 选择合适的数据类型&#xff1a;合理选择数据类型不仅能…

树——数据结构

这次我来给大家讲解一下数据结构中的树 1. 树的概念 树是一种非线性的数据结构&#xff0c;它是由n(n>0&#xff09;个有限结点组成一个具有层次关系的集合。 叫做树的原因&#xff1a;看起来像一棵倒挂的树&#xff0c;根朝上&#xff0c;叶朝下。 特殊结点&#xff1a…

vmware中的ubuntu系统扩容分区

1.虚拟机关机 右击虚拟机/设置&#xff0c;进入虚拟机设置 3.启动虚拟机&#xff0c;进入命令行 4.fdisk -l查看要扩展的分区名 5.resize要扩容的分区 su root parted /dev/sda resizepart 3 100% fdisk -l resize2fs /dev/sda3 df -T完成 6.其他 进入磁盘管理 fdisk /d…

Doker学习笔记--黑马

介绍&#xff1a;快速构建、运行、管理应用的工具 在不同的服务器上部署多个应用&#xff0c;但是往往不同应用之间会有冲突&#xff0c;因为它们所依赖的环境&#xff0c;函数库&#xff0c;配置都不一样&#xff0c;此时docker在运行时形成了一个隔离环境&#xff08;容器&am…

idea上传jar包到nexus

注意&#xff1a;确保idea中项目为maven项目&#xff0c;并且在nexus中已经创建了maven私服。 1、配置pom.xml中推送代码配置 <distributionManagement> <repository> <id>releases</id> <url>http://127.0.0.1:8001/repository/myRelease/<…

c++9月18日

1&#xff0c;斐波那契数列 int str 0;int num 0;int kgo 0;int qto 0;cout<<"请输入字符串";string str1;getline(cin,str1);for(int i0;i<(int)(str1.size());i){if((str1.at(i)>65&&str1.at(i)<90)||(str1.at(i)>97&&str1.…

【oj刷题】二分查找篇:二分查找算法的原理和应用场景

前言&#xff1a; 二分查找算法&#xff0c;又称折半查找算法&#xff0c;是一种在有序数组中查找特定元素的高效查找方法。它通过将搜索区间不断缩小一半&#xff0c;从而在对数时间内找到目标元素。二分查找是基于分治策略的一种典型应用&#xff0c;能够高效的处理许多问题&…

Golang Beego+Vue打造的高校科研工作管理系统,让信息发布更及时,项目管理更透明

&#x1f34a;作者&#xff1a;计算机毕设匠心工作室 &#x1f34a;简介&#xff1a;毕业后就一直专业从事计算机软件程序开发&#xff0c;至今也有8年工作经验。擅长Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等。 擅长&#xff1a;按照需求定制化开发项目…

基于深度学习的眼部疾病检测识别系统

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长 QQ 名片 :) 1. 项目简介 眼部疾病的早期诊断对于防止视力下降乃至失明至关重要。然而&#xff0c;专业的医疗资源分布不均&#xff0c;尤其是在偏远地区&#xff0c;人们很难获得专业的眼科医生提供的及时诊断服务。本系统…

密码学基础 C#实现门限共享密码算法

加密社 概念 门限秘密共享是一种密码学技术&#xff0c;将秘密 S 分割为 n 个部分&#xff0c;并将这些部分分发给 n 个参与者。所谓门限&#xff0c;是在分割这些秘密的时候&#xff0c;设置一个大小位于 1 和 n 之间的 k 值&#xff0c;使得给定任意 k−1 个或更少的秘密份额…

PaddleNLP本文分类及docker部署流程

本文记录使用PaddleNLP进行文本分类的全流程 参考&#xff1a;https://github.com/PaddlePaddle/PaddleNLP/tree/develop/legacy/applications/text_classification/multi_class 文章目录 1. 数据准备2. 模型训练2.1 准备关键库2.2 模型训练&#xff06;验证2.3 模型测试2.4 结…

comsol多物理场仿真技术与应用入门教学

一、COMSOL 多物理场仿真基础强化 几何建模 1、二维对象和三维对象的建模流程和快速建模方法&#xff0c;通过二维对象构建三维对象、三维提取二维结构等详细操作&#xff1b; 2、缩放、拉伸、阵列、移动、拷贝、镜像、旋转、线段、参数化曲线、布尔运算、转换等常用操作演示…

Java迭代器Iterator和Iterable有什么区别?

在 Java 中&#xff0c;我们对 List 进行遍历的时候&#xff0c;主要有这么三种方式。 第一种&#xff1a;for 循环。 for (int i 0; i < list.size(); i) {System.out.print(list.get(i) "&#xff0c;"); } 第二种&#xff1a;迭代器。 Iterator it list.i…

【JVM安装MySQL】

环境 > VMware Workstation Pro > CentOS 7 >Navicat Premium Lite > MobaXterm添加 MySQL Yum 仓库 根据操作系统在下载界面选取对应yum库进行下载 wget https://dev.mysql.com/get/mysql80-community-release-el7-9.noarch.rpm在文件下载界面安装 rpm -ivh mysq…