salmank255 / ROAD_Waymo_Baseline

Other
15 stars 0 forks source link

Is there a difference between triplet labels of ground truth file and prediction file from baseline? #10

Closed xingexjj closed 1 year ago

xingexjj commented 1 year ago

1e590ee85fc6aa38c7b415e1de9399f d2b9a14de71c209ed984edf63ce1ebc The first picture shows all the triplet labels from the ground truth of train set and validation set (road_waymo_trainval_v1.0.json). The second picture shows all the labels from baseline's prediction file (tubes_none_0.pkl). It looks like the ground truth triplet labels contain almost all possible combinations of agent, action and location labels but baseline's predicted triplet labels only have the 86 labels from ['triplet_labels'] in road_waymo_trainval_v1.0.json. Could you please explain the difference? Thank you for your help.

xingexjj commented 1 year ago

f580ba194f2fd68053e558e44fcdcfc And I notice there're only 86 labels when you evaluate the prediction file from baseline. I don't know how you do this because there're much more than 86 labels in your ground truth .json file.

salmank255 commented 1 year ago

Hi @xingexjj,

For each of the label types including triplet_labels, we have all_triplet_ids and used_triplet_labels (https://github.com/salmank255/ROAD_Waymo_Baseline/blob/65049d6e633c90cb5924b36a4c74f69e5551d491/data/datasets.py#L408). All_triplet_ids are used to label the dataset, however, after the final annotation, we reduced them to 86 based on the number of occurrences across all splits.

Your model should predict only these 86 labels not all of them and you need to use only used_labels for training not all of them.

xingexjj commented 1 year ago

@salmank255 Understood. I've found the code where you filter the triplet labels. Thank you for your explanation.