Open
Description
Instructions To Reproduce the 🐛 Bug:
- model has predicted segmentation masks with holes. (white area are predicted mask)
-
When
Visualizer.draw_instance_predictions()
createGenericMask
and callVisualizer.overlay_instances
-
Visualizer.overlay_instances
draws mask with "polygon" formate, which considers the holes inside the prediction (which have it own polygon) as part of the prediction.
- This would induce result like this, where the holes are also considered as predicted area.
- This is mainly because when the class::GenericMask return the polygon, it does not consider the hole information
and this have to do with cv2.findContours(mask.astype("uint8"), cv2.RETR_CCOMP, cv2.CHAIN_APPROX_NONE)
return holes inside the mask but there's not subsequrnce operation to filter out those polygon