182 lines
3.1 KiB
Python
182 lines
3.1 KiB
Python
"""Pascal VOC object detection dataset."""
|
|
from __future__ import absolute_import, division
|
|
|
|
import json
|
|
import logging
|
|
import os
|
|
import pickle
|
|
import warnings
|
|
from collections import Counter
|
|
|
|
import mxnet as mx
|
|
import numpy as np
|
|
from gluoncv.data import COCODetection
|
|
|
|
|
|
class VGObject(COCODetection):
|
|
CLASSES = [
|
|
"airplane",
|
|
"animal",
|
|
"arm",
|
|
"bag",
|
|
"banana",
|
|
"basket",
|
|
"beach",
|
|
"bear",
|
|
"bed",
|
|
"bench",
|
|
"bike",
|
|
"bird",
|
|
"board",
|
|
"boat",
|
|
"book",
|
|
"boot",
|
|
"bottle",
|
|
"bowl",
|
|
"box",
|
|
"boy",
|
|
"branch",
|
|
"building",
|
|
"bus",
|
|
"cabinet",
|
|
"cap",
|
|
"car",
|
|
"cat",
|
|
"chair",
|
|
"child",
|
|
"clock",
|
|
"coat",
|
|
"counter",
|
|
"cow",
|
|
"cup",
|
|
"curtain",
|
|
"desk",
|
|
"dog",
|
|
"door",
|
|
"drawer",
|
|
"ear",
|
|
"elephant",
|
|
"engine",
|
|
"eye",
|
|
"face",
|
|
"fence",
|
|
"finger",
|
|
"flag",
|
|
"flower",
|
|
"food",
|
|
"fork",
|
|
"fruit",
|
|
"giraffe",
|
|
"girl",
|
|
"glass",
|
|
"glove",
|
|
"guy",
|
|
"hair",
|
|
"hand",
|
|
"handle",
|
|
"hat",
|
|
"head",
|
|
"helmet",
|
|
"hill",
|
|
"horse",
|
|
"house",
|
|
"jacket",
|
|
"jean",
|
|
"kid",
|
|
"kite",
|
|
"lady",
|
|
"lamp",
|
|
"laptop",
|
|
"leaf",
|
|
"leg",
|
|
"letter",
|
|
"light",
|
|
"logo",
|
|
"man",
|
|
"men",
|
|
"motorcycle",
|
|
"mountain",
|
|
"mouth",
|
|
"neck",
|
|
"nose",
|
|
"number",
|
|
"orange",
|
|
"pant",
|
|
"paper",
|
|
"paw",
|
|
"people",
|
|
"person",
|
|
"phone",
|
|
"pillow",
|
|
"pizza",
|
|
"plane",
|
|
"plant",
|
|
"plate",
|
|
"player",
|
|
"pole",
|
|
"post",
|
|
"pot",
|
|
"racket",
|
|
"railing",
|
|
"rock",
|
|
"roof",
|
|
"room",
|
|
"screen",
|
|
"seat",
|
|
"sheep",
|
|
"shelf",
|
|
"shirt",
|
|
"shoe",
|
|
"short",
|
|
"sidewalk",
|
|
"sign",
|
|
"sink",
|
|
"skateboard",
|
|
"ski",
|
|
"skier",
|
|
"sneaker",
|
|
"snow",
|
|
"sock",
|
|
"stand",
|
|
"street",
|
|
"surfboard",
|
|
"table",
|
|
"tail",
|
|
"tie",
|
|
"tile",
|
|
"tire",
|
|
"toilet",
|
|
"towel",
|
|
"tower",
|
|
"track",
|
|
"train",
|
|
"tree",
|
|
"truck",
|
|
"trunk",
|
|
"umbrella",
|
|
"vase",
|
|
"vegetable",
|
|
"vehicle",
|
|
"wave",
|
|
"wheel",
|
|
"window",
|
|
"windshield",
|
|
"wing",
|
|
"wire",
|
|
"woman",
|
|
"zebra",
|
|
]
|
|
|
|
def __init__(self, **kwargs):
|
|
super(VGObject, self).__init__(**kwargs)
|
|
|
|
@property
|
|
def annotation_dir(self):
|
|
return ""
|
|
|
|
def _parse_image_path(self, entry):
|
|
dirname = "VG_100K"
|
|
filename = entry["file_name"]
|
|
abs_path = os.path.join(self._root, dirname, filename)
|
|
return abs_path
|