Skip to content
Snippets Groups Projects
voc.py 1.29 KiB
Newer Older
# Copyright (c) OpenMMLab. All rights reserved.
Jiarui XU's avatar
Jiarui XU committed
import os.path as osp

from mmseg.registry import DATASETS
Jiarui XU's avatar
Jiarui XU committed
from .custom import CustomDataset


@DATASETS.register_module()
class PascalVOCDataset(CustomDataset):
    """Pascal VOC dataset.

    Args:
        split (str): Split txt file for Pascal VOC.
    """
    METAINFO = dict(
        classes=('background', 'aeroplane', 'bicycle', 'bird', 'boat',
                 'bottle', 'bus', 'car', 'cat', 'chair', 'cow', 'diningtable',
                 'dog', 'horse', 'motorbike', 'person', 'pottedplant', 'sheep',
                 'sofa', 'train', 'tvmonitor'),
        palette=[[0, 0, 0], [128, 0, 0], [0, 128, 0], [128, 128, 0],
                 [0, 0, 128], [128, 0, 128], [0, 128, 128], [128, 128, 128],
                 [64, 0, 0], [192, 0, 0], [64, 128, 0], [192, 128, 0],
                 [64, 0, 128], [192, 0, 128], [64, 128, 128], [192, 128, 128],
                 [0, 64, 0], [128, 64, 0], [0, 192, 0], [128, 192, 0],
                 [0, 64, 128]])
Jiarui XU's avatar
Jiarui XU committed

    def __init__(self, ann_file, **kwargs) -> None:
        super().__init__(
            img_suffix='.jpg',
            seg_map_suffix='.png',
            ann_file=ann_file,
            **kwargs)
        assert self.file_client.exists(
            self.data_prefix['img_path']) and osp.isfile(self.ann_file)