Shortcuts

教程2:准备数据集

我们建议将数据集根目录符号链接到 $MMSEGMENTATION/data。 如果您的目录结构不同,您可能需要更改配置文件中相应的路径。 对于中国境内的用户,我们也推荐通过开源数据平台 OpenDataLab 来下载dsdl标准数据,以获得更好的下载和使用体验,这里有一个下载dsdl数据集并进行训练的案例DSDLReadme,欢迎尝试。

mmsegmentation
├── mmseg
├── tools
├── configs
├── data
│   ├── cityscapes
│   │   ├── leftImg8bit
│   │   │   ├── train
│   │   │   ├── val
│   │   ├── gtFine
│   │   │   ├── train
│   │   │   ├── val
│   ├── VOCdevkit
│   │   ├── VOC2012
│   │   │   ├── JPEGImages
│   │   │   ├── SegmentationClass
│   │   │   ├── ImageSets
│   │   │   │   ├── Segmentation
│   │   ├── VOC2010
│   │   │   ├── JPEGImages
│   │   │   ├── SegmentationClassContext
│   │   │   ├── ImageSets
│   │   │   │   ├── SegmentationContext
│   │   │   │   │   ├── train.txt
│   │   │   │   │   ├── val.txt
│   │   │   ├── trainval_merged.json
│   │   ├── VOCaug
│   │   │   ├── dataset
│   │   │   │   ├── cls
│   ├── ade
│   │   ├── ADEChallengeData2016
│   │   │   ├── annotations
│   │   │   │   ├── training
│   │   │   │   ├── validation
│   │   │   ├── images
│   │   │   │   ├── training
│   │   │   │   ├── validation
│   ├── coco_stuff10k
│   │   ├── images
│   │   │   ├── train2014
│   │   │   ├── test2014
│   │   ├── annotations
│   │   │   ├── train2014
│   │   │   ├── test2014
│   │   ├── imagesLists
│   │   │   ├── train.txt
│   │   │   ├── test.txt
│   │   │   ├── all.txt
│   ├── coco_stuff164k
│   │   ├── images
│   │   │   ├── train2017
│   │   │   ├── val2017
│   │   ├── annotations
│   │   │   ├── train2017
│   │   │   ├── val2017
│   ├── CHASE_DB1
│   │   ├── images
│   │   │   ├── training
│   │   │   ├── validation
│   │   ├── annotations
│   │   │   ├── training
│   │   │   ├── validation
│   ├── DRIVE
│   │   ├── images
│   │   │   ├── training
│   │   │   ├── validation
│   │   ├── annotations
│   │   │   ├── training
│   │   │   ├── validation
│   ├── HRF
│   │   ├── images
│   │   │   ├── training
│   │   │   ├── validation
│   │   ├── annotations
│   │   │   ├── training
│   │   │   ├── validation
│   ├── STARE
│   │   ├── images
│   │   │   ├── training
│   │   │   ├── validation
│   │   ├── annotations
│   │   │   ├── training
│   │   │   ├── validation
|   ├── dark_zurich
|   │   ├── gps
|   │   │   ├── val
|   │   │   └── val_ref
|   │   ├── gt
|   │   │   └── val
|   │   ├── LICENSE.txt
|   │   ├── lists_file_names
|   │   │   ├── val_filenames.txt
|   │   │   └── val_ref_filenames.txt
|   │   ├── README.md
|   │   └── rgb_anon
|   │   |   ├── val
|   │   |   └── val_ref
|   ├── NighttimeDrivingTest
|   |   ├── gtCoarse_daytime_trainvaltest
|   |   │   └── test
|   |   │       └── night
|   |   └── leftImg8bit
|   |   |   └── test
|   |   |       └── night
│   ├── loveDA
│   │   ├── img_dir
│   │   │   ├── train
│   │   │   ├── val
│   │   │   ├── test
│   │   ├── ann_dir
│   │   │   ├── train
│   │   │   ├── val
│   ├── potsdam
│   │   ├── img_dir
│   │   │   ├── train
│   │   │   ├── val
│   │   ├── ann_dir
│   │   │   ├── train
│   │   │   ├── val
│   ├── vaihingen
│   │   ├── img_dir
│   │   │   ├── train
│   │   │   ├── val
│   │   ├── ann_dir
│   │   │   ├── train
│   │   │   ├── val
│   ├── iSAID
│   │   ├── img_dir
│   │   │   ├── train
│   │   │   ├── val
│   │   │   ├── test
│   │   ├── ann_dir
│   │   │   ├── train
│   │   │   ├── val
│   ├── synapse
│   │   ├── img_dir
│   │   │   ├── train
│   │   │   ├── val
│   │   ├── ann_dir
│   │   │   ├── train
│   │   │   ├── val
│   ├── REFUGE
│   │   ├── images
│   │   │   ├── training
│   │   │   ├── validation
│   │   │   ├── test
│   │   ├── annotations
│   │   │   ├── training
│   │   │   ├── validation
│   │   │   ├── test
│   ├── mapillary
│   │   ├── training
│   │   │   ├── images
│   │   │   ├── v1.2
|   │   │   │   ├── instances
|   │   │   │   ├── labels
|   │   │   │   └── panoptic
│   │   │   ├── v2.0
|   │   │   │   ├── instances
|   │   │   │   ├── labels
|   │   │   │   ├── panoptic
|   │   │   │   └── polygons
│   │   ├── validation
│   │   │   ├── images
|   │   │   ├── v1.2
|   │   │   │   ├── instances
|   │   │   │   ├── labels
|   │   │   │   └── panoptic
│   │   │   ├── v2.0
|   │   │   │   ├── instances
|   │   │   │   ├── labels
|   │   │   │   ├── panoptic
|   │   │   │   └── polygons
│   ├── bdd100k
│   │   ├── images
│   │   │   └── 10k
|   │   │   │   ├── test
|   │   │   │   ├── train
|   │   │   │   └── val
│   │   └── labels
│   │   │   └── sem_seg
|   │   │   │   ├── colormaps
|   │   │   │   │   ├──train
|   │   │   │   │   └──val
|   │   │   │   ├── masks
|   │   │   │   │   ├──train
|   │   │   │   │   └──val
|   │   │   │   ├── polygons
|   │   │   │   │   ├──sem_seg_train.json
|   │   │   │   │   └──sem_seg_val.json
|   │   │   │   └── rles
|   │   │   │   │   ├──sem_seg_train.json
|   │   │   │   │   └──sem_seg_val.json
│   ├── nyu
│   │   ├── images
│   │   │   ├── train
│   │   │   ├── test
│   │   ├── annotations
│   │   │   ├── train
│   │   │   ├── test
│   ├── HSIDrive20
│   │   ├── images
│   │   │   ├── train
│   │   │   ├── validation
│   │   │   ├── test
│   │   ├── annotations
│   │   │   ├── train
│   │   │   ├── validation
│   │   │   ├── test

用 MIM 下载数据集

通过使用 OpenXLab,您可以直接下载开源数据集。通过平台的搜索功能,您可以快速轻松地找到他们正在寻找的数据集。使用平台上的格式化数据集,您可以高效地跨数据集执行任务。

如果您使用 MIM 下载,请确保版本大于 v0.3.8。您可以使用以下命令进行更新、安装、登录和数据集下载:

# upgrade your MIM
pip install -U openmim

# install OpenXLab CLI tools
pip install -U openxlab
# log in OpenXLab
openxlab login

# download ADE20K by MIM
mim download mmsegmentation --dataset ade20k

Cityscapes

Cityscapes 官方网站可以下载 Cityscapes 数据集,按照官网要求注册并登陆后,数据可以在这里找到。

按照惯例,**labelTrainIds.png 用于 cityscapes 训练。 我们提供了一个基于 cityscapesscripts脚本用于生成 **labelTrainIds.png

# --nproc 表示 8 个转换进程,也可以省略。
python tools/dataset_converters/cityscapes.py data/cityscapes --nproc 8

Pascal VOC

Pascal VOC 2012 可从此处下载。 此外,Pascal VOC 数据集的最新工作通常利用额外的增强数据,可以在这里找到。

如果您想使用增强的 VOC 数据集,请运行以下命令将增强数据的标注转换为正确的格式。

# --nproc 表示 8 个转换进程,也可以省略。
python tools/dataset_converters/voc_aug.py data/VOCdevkit data/VOCdevkit/VOCaug --nproc 8

请参考拼接数据集文档voc_aug 配置示例以详细了解如何将它们拼接并合并训练。

ADE20K

ADE20K 的训练和验证集可以从这个链接下载。 如果需要下载测试数据集,可以在官网注册后,下载测试集

Pascal Context

Pascal Context 的训练和验证集可以从此处下载。注册后,您也可以从此处下载测试集。

从原始数据集中抽出部分数据作为验证集,您可以从此处下载 trainval_merged.json 文件。

请先安装 Detail 工具然后运行以下命令将标注转换为正确的格式。

python tools/dataset_converters/pascal_context.py data/VOCdevkit data/VOCdevkit/VOC2010/trainval_merged.json

COCO Stuff 10k

数据可以通过 wget 在这里下载。

对于 COCO Stuff 10k 数据集,请运行以下命令下载并转换数据集。

# 下载
mkdir coco_stuff10k && cd coco_stuff10k
wget http://calvin.inf.ed.ac.uk/wp-content/uploads/data/cocostuffdataset/cocostuff-10k-v1.1.zip

# 解压
unzip cocostuff-10k-v1.1.zip

# --nproc 表示 8 个转换进程,也可以省略。
python tools/dataset_converters/coco_stuff10k.py /path/to/coco_stuff10k --nproc 8

按照惯例,/path/to/coco_stuff164k/annotations/*2014/*_labelTrainIds.png 中的 mask 标注用于 COCO Stuff 10k 的训练和测试。

COCO Stuff 164k

对于 COCO Stuff 164k 数据集,请运行以下命令下载并转换增强的数据集。

# 下载
mkdir coco_stuff164k && cd coco_stuff164k
wget http://images.cocodataset.org/zips/train2017.zip
wget http://images.cocodataset.org/zips/val2017.zip
wget http://calvin.inf.ed.ac.uk/wp-content/uploads/data/cocostuffdataset/stuffthingmaps_trainval2017.zip

# 解压
unzip train2017.zip -d images/
unzip val2017.zip -d images/
unzip stuffthingmaps_trainval2017.zip -d annotations/

# --nproc 表示 8 个转换进程,也可以省略。
python tools/dataset_converters/coco_stuff164k.py /path/to/coco_stuff164k --nproc 8

按照惯例,/path/to/coco_stuff164k/annotations/*2017/*_labelTrainIds.png 中的 mask 标注用于 COCO Stuff 164k 的训练和测试。

此数据集的详细信息可在此处找到。

CHASE DB1

CHASE DB1 的训练和验证集可以从此处下载。

请运行以下命令,准备 CHASE DB1 数据集:

python tools/dataset_converters/chase_db1.py /path/to/CHASEDB1.zip

该脚本将自动调整数据集目录结构,使其满足 MMSegmentation 数据集加载要求。

DRIVE

按照官网要求,注册并登陆后,便可以下载 DRIVE 的训练和验证数据集。

要将 DRIVE 数据集转换为 MMSegmentation 的格式,请运行以下命令:

python tools/dataset_converters/drive.py /path/to/training.zip /path/to/test.zip

该脚本将自动调整数据集目录结构,使其满足 MMSegmentation 数据集加载要求。

HRF

请下载 health.zipglaucoma.zipdiabetic_retinopathy.ziphealthy_manualsegm.zipglaucoma_manualsegm.zipdiabetic_retinopathy_manualsegm.zip,无需解压,可以直接运行以下命令,准备 HRF 数据集:

python tools/dataset_converters/hrf.py /path/to/healthy.zip /path/to/healthy_manualsegm.zip /path/to/glaucoma.zip /path/to/glaucoma_manualsegm.zip /path/to/diabetic_retinopathy.zip /path/to/diabetic_retinopathy_manualsegm.zip

该脚本将自动调整数据集目录结构,使其满足 MMSegmentation 数据集加载要求。

STARE

请下载 stare images.tarlabels-ah.tarlabels-vk.tar,无需解压,可以直接运行以下命令,准备 STARE 数据集:

python tools/dataset_converters/stare.py /path/to/stare-images.tar /path/to/labels-ah.tar /path/to/labels-vk.tar

该脚本将自动调整数据集目录结构,使其满足 MMSegmentation 数据集加载要求。

Dark Zurich

由于我们只支持在此数据集上的模型测试,因此您只需要下载并解压验证数据集

Nighttime Driving

由于我们只支持在此数据集上的模型测试,因此您只需要下载并解压验证数据集

LoveDA

数据可以从此处下载 LaveDA 数据集。

或者可以从 zenodo 下载。下载后,无需解压,直接运行以下命令:

# 下载 Train.zip
wget https://zenodo.org/record/5706578/files/Train.zip
# 下载 Val.zip
wget https://zenodo.org/record/5706578/files/Val.zip
# 下载 Test.zip
wget https://zenodo.org/record/5706578/files/Test.zip

请对于 LoveDA 数据集,请运行以下命令调整数据集目录。

python tools/dataset_converters/loveda.py /path/to/loveDA

可将模型对 LoveDA 的测试集的预测结果上传至到数据集测试服务器,查看评测结果。

有关 LoveDA 的更多详细信息,可查看此处.

ISPRS Potsdam

Potsdam 城市语义分割数据集用于 2D 语义分割竞赛 —— Potsdam。

数据集可以在竞赛主页上请求获得。 这里也提供了BaiduNetdisk,提取码:mseg、 Google Drive以及OpenDataLab。 实验中需要下载 ‘2_Ortho_RGB.zip’ 和 ‘5_Labels_all_noBoundary.zip’。

对于 Potsdam 数据集,请运行以下命令调整数据集目录。

python tools/dataset_converters/potsdam.py /path/to/potsdam

在我们的默认设置中,将生成 3456 张图像用于训练和 2016 张图像用于验证。

ISPRS Vaihingen

Vaihingen 城市语义分割数据集用于 2D 语义分割竞赛 —— Vaihingen。

数据集可以在竞赛主页上请求获得。 这里也提供了BaiduNetdisk,提取码:mseg 、 Google Drive。 实验中需要下载 ‘ISPRS_semantic_labeling_Vaihingen.zip’ 和 ‘ISPRS_semantic_labeling_Vaihingen_ground_truth_eroded_COMPLETE.zip’。

对于 Vaihingen 数据集,请运行以下命令调整数据集目录。

python tools/dataset_converters/vaihingen.py /path/to/vaihingen

在我们的默认设置(clip_size=512, stride_size=256)中,将生成 344 张图像用于训练和 398 张图像用于验证。

iSAID

iSAID 数据集可从 DOTA-v1.0 下载训练/验证/测试数据集的图像数据,

并从 iSAID下载训练/验证数据集的标注数据。

该数据集是航空图像实例分割和语义分割任务的大规模数据集。

下载 iSAID 数据集后,您可能需要按照以下结构进行数据集准备。

├── data
│   ├── iSAID
│   │   ├── train
│   │   │   ├── images
│   │   │   │   ├── part1.zip
│   │   │   │   ├── part2.zip
│   │   │   │   ├── part3.zip
│   │   │   ├── Semantic_masks
│   │   │   │   ├── images.zip
│   │   ├── val
│   │   │   ├── images
│   │   │   │   ├── part1.zip
│   │   │   ├── Semantic_masks
│   │   │   │   ├── images.zip
│   │   ├── test
│   │   │   ├── images
│   │   │   │   ├── part1.zip
│   │   │   │   ├── part2.zip
python tools/dataset_converters/isaid.py /path/to/iSAID

在我们的默认设置(patch_width=896, patch_height=896, overlap_area=384)中,将生成 33978 张图像用于训练和 11644 张图像用于验证。

LIP(Look Into Person) dataset

该数据集可以从此页面下载。

请运行以下命令来解压数据集。

unzip LIP.zip
cd LIP
unzip TrainVal_images.zip
unzip TrainVal_parsing_annotations.zip
cd TrainVal_parsing_annotations
unzip TrainVal_parsing_annotations.zip
mv train_segmentations ../
mv val_segmentations ../
cd ..

LIP 数据集的内容包括:

├── data
│   ├── LIP
│   │   ├── train_images
│   │   │   ├── 1000_1234574.jpg
│   │   │   ├── ...
│   │   ├── train_segmentations
│   │   │   ├── 1000_1234574.png
│   │   │   ├── ...
│   │   ├── val_images
│   │   │   ├── 100034_483681.jpg
│   │   │   ├── ...
│   │   ├── val_segmentations
│   │   │   ├── 100034_483681.png
│   │   │   ├── ...

Synapse dataset

此数据集可以从此页面下载。

遵循 TransUNet 的数据准备设定,将原始训练集(30 次扫描)拆分为新的训练集(18 次扫描)和验证集(12 次扫描)。请运行以下命令来准备数据集。

unzip RawData.zip
cd ./RawData/Training

然后创建 train.txtval.txt 以拆分数据集。

根据 TransUnet,以下是数据集的划分。

train.txt

img0005.nii.gz
img0006.nii.gz
img0007.nii.gz
img0009.nii.gz
img0010.nii.gz
img0021.nii.gz
img0023.nii.gz
img0024.nii.gz
img0026.nii.gz
img0027.nii.gz
img0028.nii.gz
img0030.nii.gz
img0031.nii.gz
img0033.nii.gz
img0034.nii.gz
img0037.nii.gz
img0039.nii.gz
img0040.nii.gz

val.txt

img0008.nii.gz
img0022.nii.gz
img0038.nii.gz
img0036.nii.gz
img0032.nii.gz
img0002.nii.gz
img0029.nii.gz
img0003.nii.gz
img0001.nii.gz
img0004.nii.gz
img0025.nii.gz
img0035.nii.gz

synapse 数据集的内容包括:

├── Training
│   ├── img
│   │   ├── img0001.nii.gz
│   │   ├── img0002.nii.gz
│   │   ├── ...
│   ├── label
│   │   ├── label0001.nii.gz
│   │   ├── label0002.nii.gz
│   │   ├── ...
│   ├── train.txt
│   ├── val.txt

然后,使用此命令转换 synapse 数据集。

python tools/dataset_converters/synapse.py --dataset-path /path/to/synapse

注意,MMSegmentation 的默认评估指标(例如 mean dice value)是在 2D 切片图像上计算的,这与 TransUNet 等一些论文中的 3D 扫描结果是不同的。

REFUGE

REFUGE Challenge 官网上注册并下载 REFUGE 数据集

然后,解压 REFUGE2.zip,原始数据集的内容包括:

├── REFUGE2
│   ├── REFUGE2
│   │   ├── Annotation-Training400.zip
│   │   ├── REFUGE-Test400.zip
│   │   ├── REFUGE-Test-GT.zip
│   │   ├── REFUGE-Training400.zip
│   │   ├── REFUGE-Validation400.zip
│   │   ├── REFUGE-Validation400-GT.zip
│   ├── __MACOSX

请运行以下命令转换 REFUGE 数据集:

python tools/convert_datasets/refuge.py --raw_data_root=/path/to/refuge/REFUGE2/REFUGE2

脚本会将目录结构转换如下:

│   ├── REFUGE
│   │   ├── images
│   │   │   ├── training
│   │   │   ├── validation
│   │   │   ├── test
│   │   ├── annotations
│   │   │   ├── training
│   │   │   ├── validation
│   │   │   ├── test

包含 400 张用于训练的图像、400 张用于验证的图像和 400 张用于测试的图像,这与 REFUGE 2018 数据集相同。

Mapillary Vistas Datasets

  • Mapillary Vistas 官方网站 可以下载 Mapillary Vistas 数据集,按照官网要求注册并登陆后,数据可以在这里找到。

  • Mapillary Vistas 数据集使用 8-bit with color-palette 来存储标签。不需要进行转换操作。

  • 假设您已将数据集 zip 文件放在 mmsegmentation/data/mapillary

  • 请运行以下命令来解压数据集。

    cd data/mapillary
    unzip An-ZjB1Zm61yAZG0ozTymz8I8NqI4x0MrYrh26dq7kPgfu8vf9ImrdaOAVOFYbJ2pNAgUnVGBmbue9lTgdBOb5BbKXIpFs0fpYWqACbrQDChAA2fdX0zS9PcHu7fY8c-FOvyBVxPNYNFQuM.zip
    
  • 解压后,您将获得类似于此结构的 Mapillary Vistas 数据集。语义分割 mask 标签在 labels 文件夹中。

    mmsegmentation
    ├── mmseg
    ├── tools
    ├── configs
    ├── data
    │   ├── mapillary
    │   │   ├── training
    │   │   │   ├── images
    │   │   │   ├── v1.2
    |   │   │   │   ├── instances
    |   │   │   │   ├── labels
    |   │   │   │   └── panoptic
    │   │   │   ├── v2.0
    |   │   │   │   ├── instances
    |   │   │   │   ├── labels
    |   │   │   │   ├── panoptic
    |   │   │   │   └── polygons
    │   │   ├── validation
    │   │   │   ├── images
    |   │   │   ├── v1.2
    |   │   │   │   ├── instances
    |   │   │   │   ├── labels
    |   │   │   │   └── panoptic
    │   │   │   ├── v2.0
    |   │   │   │   ├── instances
    |   │   │   │   ├── labels
    |   │   │   │   ├── panoptic
    |   │   │   │   └── polygons
    
  • 您可以在配置中使用 MapillaryDataset_v1Mapillary Dataset_v2 设置数据集版本。 在此处 V1.2V2.0 查看 Mapillary Vistas 数据集配置文件

LEVIR-CD

LEVIR-CD 大规模遥感建筑变化检测数据集。

数据集可以在主页上请求获得。

数据集的补充版本可以在主页上请求获得。

请下载数据集的补充版本,然后解压 LEVIR-CD+.zip,数据集的内容包括:

│   ├── LEVIR-CD+
│   │   ├── train
│   │   │   ├── A
│   │   │   ├── B
│   │   │   ├── label
│   │   ├── test
│   │   │   ├── A
│   │   │   ├── B
│   │   │   ├── label

对于 LEVIR-CD 数据集,请运行以下命令无重叠裁剪影像:

python tools/dataset_converters/levircd.py --dataset-path /path/to/LEVIR-CD+ --out_dir /path/to/LEVIR-CD

裁剪后的影像大小为256x256,与原论文保持一致。

BDD100K

  • 可以从官方网站 下载 BDD100K数据集(语义分割任务主要是10K数据集),按照官网要求注册并登陆后,数据可以在这里找到。

  • 图像数据对应的名称是是10K Images, 语义分割标注对应的名称是Segmentation

  • 下载后,可以使用以下代码进行解压

    unzip ~/bdd100k_images_10k.zip -d ~/mmsegmentation/data/
    unzip ~/bdd100k_sem_seg_labels_trainval.zip -d ~/mmsegmentation/data/
    

就可以得到以下文件结构了:

mmsegmentation
├── mmseg
├── tools
├── configs
├── data
│   ├── bdd100k
│   │   ├── images
│   │   │   └── 10k
|   │   │   │   ├── test
|   │   │   │   ├── train
|   │   │   │   └── val
│   │   └── labels
│   │   │   └── sem_seg
|   │   │   │   ├── colormaps
|   │   │   │   │   ├──train
|   │   │   │   │   └──val
|   │   │   │   ├── masks
|   │   │   │   │   ├──train
|   │   │   │   │   └──val
|   │   │   │   ├── polygons
|   │   │   │   │   ├──sem_seg_train.json
|   │   │   │   │   └──sem_seg_val.json
|   │   │   │   └── rles
|   │   │   │   │   ├──sem_seg_train.json
|   │   │   │   │   └──sem_seg_val.json

NYU

  • 您可以从 这个链接 下载 NYU 数据集

  • 下载完成后,您可以使用 tools/dataset_converters/nyu.py 脚本来解压和组织数据到所需的格式

    python tools/dataset_converters/nyu.py nyu.zip
    

HSI Drive 2.0

  • 您可以从以下位置下载 HSI Drive 2.0 数据集 here 刚刚向 gded@ehu.eus 发送主题为“下载 HSI-Drive”的电子邮件后 您将收到解压缩文件的密码.

  • 下载后,按照以下说明解压:

    7z x -p"password" ./HSI_Drive_v2_0_Phyton.zip
    
    mv ./HSIDrive20 path_to_mmsegmentation/data
    mv ./HSI_Drive_v2_0_release_notes_Python_version.md path_to_mmsegmentation/data
    mv ./image_numbering.pdf path_to_mmsegmentation/data
    
  • 解压后得到:

mmsegmentation
├── mmseg
├── tools
├── configs
├── data
│   ├── HSIDrive20
│   │   ├── images
│   │   │   ├── training
│   │   │   ├── validation
│   │   │   ├── test
│   │   ├── annotations
│   │   │   ├── training
│   │   │   ├── validation
│   │   │   ├── test
│   │   ├── images_MF
│   │   │   ├── training
│   │   │   ├── validation
│   │   │   ├── test
│   │   ├── RGB
│   │   ├── training_filenames.txt
│   │   ├── validation_filenames.txt
│   │   ├── test_filenames.txt
│   ├── HSI_Drive_v2_0_release_notes_Python_version.md
│   ├── image_numbering.pdf