mapillary / seamseg

Seamless Scene Segmentation
BSD 3-Clause "New" or "Revised" License
289 stars 53 forks source link

TypeError: 'NoneType' object is not subscriptable #35

Closed kulkarnikeerti closed 2 years ago

kulkarnikeerti commented 2 years ago

I am getting this error at the below line. https://github.com/mapillary/seamseg/blob/77195ff7829af6e3076caefe49c4c69c817e30d6/seamseg/models/panoptic.py#L46

I tried to print bbx_i and its empty. I did realize that the dataset which I am using does not have bounding box details in it. I used prepare_vistas.py to get the required dataset. After analyzing the whole script I understand that the script doesn't store bounding box details in it. How should I handle in this case? or Did I actually miss out something here?

If anyone could clarify this would be great!! Thanks in advance.

@ducksoup

kulkarnikeerti commented 2 years ago

Since the dataset does not have bounding box details, it actually throws me an error on below line in train_panoptic.py

batch = {k: batch[k].cuda(device=varargs["device"], non_blocking=True) for k in NETWORK_INPUTS}

And the error in this case is AttributeError: 'list' object has no attribute 'cuda'

All other values in NETWORK_INPUTS is of type seamseg.utils.parallel.packed_sequence.PackedSequence where as bbx is of type list.

I think I am missing out a big part somewhere, but can't seem to figure out. It would be of great help if someone can point me to the right direction. @ducksoup