Open PanaddaK opened 2 years ago
Hi,
what you can do is to just disable the assertion, seems you already did that. This should mostly be ok, but if masks overlap a lot then the mapping which will be established can be incorrect. For practical purposes it should probably in most cases be ok. What you can also do is to enforce your masks to be non-overlapping by arbitrarily assigning overlapping pixels to only one mask (I would recommend to assign them to the smaller mask which proved to be a reasonable heuristic).
Hi,
what you can do is to just disable the assertion, seems you already did that. This should mostly be ok, but if masks overlap a lot then the mapping which will be established can be incorrect. For practical purposes it should probably in most cases be ok. What you can also do is to enforce your masks to be non-overlapping by arbitrarily assigning overlapping pixels to only one mask (I would recommend to assign them to the smaller mask which proved to be a reasonable heuristic).
Thank you so much for your kind support and suggestion. ^_^
Hi, following your code I found that
In mots_common.io => load_txt(path)
You have to check that no frame contains overlapping masks...
if frame not in combined_mask_per_frame: combined_mask_per_frame[frame] = mask elif rletools.area(rletools.merge([combined_mask_per_frame[frame], mask], intersect=True)) > 0.0: assert False, "Objects with overlapping masks in frame " + fields[0] else: combined_mask_per_frame[frame] = rletools.merge([combined_mask_per_frame[frame], mask], intersect=False) objects_per_frame[frame].append(SegmentedObject( mask, class_id, int(fields[1])
Is it possible to use mots_tools with overlapping masks/objects? How?
I've tried to run mots_tools with my data that contain over masks by removing the conditions checking for overlapping masks. The tools can run without any error. I'm not sure whether the result was correct or not.
Please give me some advice on this. Thank you.