准备 ADE20K 数据集。

ADE20K 是一个以场景为中心的数据集,包含 2 万张带有 150 个目标类别的标注图像。本教程将帮助您下载 ADE20K 并为后续实验进行设置。

http://groups.csail.mit.edu/vision/datasets/ADE20K/assets/images/examples.png

提示

您需要 2.3 GB 可用磁盘空间来下载和提取此数据集。建议使用 SSD 硬盘以获得更快的速度。准备数据集所需的时间取决于您的互联网连接和磁盘速度。例如,在带有 EBS 的 AWS EC2 实例上大约需要 25 分钟。

准备数据集

我们将下载并解压以下文件

文件名

大小

ADEChallengeData2016.zip

923 MB

release_test.zip

202 MB

最简单的方法是运行此脚本

python ade20k.py

如果您已经下载并解压了上述文件,可以通过设置 --download-dir 指定文件夹名,以避免再次下载。例如

python ade20k.py --download-dir ~/ade_downloads

如何加载数据集

使用 GluonCV 的数据集工具加载 ADE20K 中的图像和标签非常简单

from gluoncv.data import ADE20KSegmentation
train_dataset = ADE20KSegmentation(split='train')
val_dataset = ADE20KSegmentation(split='val')
print('Training images:', len(train_dataset))
print('Validation images:', len(val_dataset))

输出

Training images: 20210
Validation images: 2000

获取第一个样本

import numpy as np
img, mask = val_dataset[0]
# get pallete for the mask
from gluoncv.utils.viz import get_color_pallete
mask = get_color_pallete(mask.asnumpy(), dataset='ade20k')
mask.save('mask.png')

可视化数据和标签

from matplotlib import pyplot as plt
import matplotlib.image as mpimg
# subplot 1 for img
fig = plt.figure()
fig.add_subplot(1,2,1)
plt.imshow(img.asnumpy().astype('uint8'))
# subplot 2 for the mask
mmask = mpimg.imread('mask.png')
fig.add_subplot(1,2,2)
plt.imshow(mmask)
# display
plt.show()
ade20k

脚本总运行时间: ( 0 分钟 43.456 秒)

由 Sphinx-Gallery 生成的图库