utiasASRL / pyboreas

Devkit for the Boreas autonomous driving dataset.
BSD 3-Clause "New" or "Revised" License
94 stars 9 forks source link

Wrong tracking uuid for boreas-objects-v1 #41

Closed ShuHengLin closed 1 week ago

ShuHengLin commented 1 year ago

Hi, I noticed that in the labels of boreas-objects-v1, there are several frames where the tracking uuid is inconsistent with the previous frame (in the same scene). This causes an issue when visualize these frames. The function bbs.interpolate() treats all the bounding boxes as "non-overlapping boxes" and deletes them, resulting in no boxes to being drawn.

bd = BoreasDataset(root='/path/to/data/boreas/', split=None, verbose=False, labelFolder="labels_detection") seq = bd.sequences[0] seq.filter_frames_gt() seq.synchronize_frames('lidar')

index = [[930, 931], [1122], [1314, 1315], [1410, 1411], [1601], [1699], [3714, 3715], [4278, 4279], ]

for i in range(len(index)): for j in index[i]: cam = seq.get_camera(j) bbs = cam.get_bounding_boxes(seq.labelFiles, seq.labelTimes, seq.labelPoses) bbs.visualize(cam.img, seq.calib.P0, checkdims=True) cam.visualize() cam.unload_data()

keenan-burnett commented 1 year ago

Hmm, It's possible that this is just how our labels were produced. For now, could you consider these to be separate scenes? For example, (1598987807960198.txt → 1598987808167660.txt) could be considered the boundary between two scenes. It's possible that I incorrectly assumed that the uuids would be consistent between these scenes when the original labelling project did not achieve this. I think that's the most likely case.

I'll have to increase the number of scenes accordingly and split them up using similar timestamps to what you have provided. I don't have time to look into it right now but I'll add it to my dataset-related TODO list.

ShuHengLin commented 1 year ago

Got it, thank you for your explanation.