aimotive_dataset icon indicating copy to clipboard operation
aimotive_dataset copied to clipboard

Classes in train and val splits

Open ArseniuML opened this issue 8 months ago • 1 comments

I tried to investigate, object of what types are annotated in train and val splits:

train_dataset = AiMotiveDataset(data_root, 'train')
train_classes = set()
for anno in train_dataset.dataset_index:
    with open(anno, 'r') as f:
        j = json.load(f)
    train_classes = train_classes.union(set([obj['ObjectType'] for obj in j['CapturedObjects']]))

train_classes

{'BICYCLE',
 'BUS',
 'CAR',
 'MOTORCYCLE',
 'PEDESTRIAN',
 'RIDER',
 'TRAIN',
 'TRUCK'
val_dataset = AiMotiveDataset(data_root, 'val')
val_classes = set()
for anno in val_dataset.dataset_index:
    with open(anno, 'r') as f:
        j = json.load(f)
    val_classes = val_classes.union(set([obj['ObjectType'] for obj in j['CapturedObjects']]))

val_classes

{'BICYCLE',
 'BUS',
 'CAR',
 'MOTORCYCLE',
 'OTHER-OBJECT',
 'OTHER-RIDEABLE',
 'PEDESTRIAN',
 'PICKUP',
 'SHOPPING-CART',
 'TRAILER',
 'TRUCK',
 'VAN'}

Why are there classes in the validation split that are not in the training split (VAN, TRAILER, SHOPPING-CART, PICKUP)? Why are there classes in the train split that are not in the val split (TRAIN, RIDER)?

ArseniuML avatar May 31 '24 12:05 ArseniuML