Kranthi Kumar
Kranthi Kumar

Reputation: 1

AttributeError: Cannot find field 'pred_masks' in the given Instances

I trained a model with RetinaNet Detectron2 on colab. The training is successful but i am unable to test it on images.

Code:

from detectron2.utils.visualizer import ColorMode
import glob

for imageName in glob.glob('/content/drive/My Drive/Detectron/test/*jpg'):
    print(imageName)
    im = cv2.imread(imageName)
    outputs = predictor(im)
    v = Visualizer(im[:, :, ::-1],
                metadata=test_metadata, 
                scale=0.8,
                instance_mode=ColorMode.IMAGE_BW
                 )
    out = v.draw_instance_predictions(outputs["instances"].to("cpu"))
    cv2_imshow(out.get_image()[:, :, ::-1])

Error:

/content/drive/My Drive/Detectron/test/wh_dresscode_4969_jpg.rf.5a2702518691d3d6f9cef7ad7977e5c8.jpg data type: <class 'detectron2.structures.instances.Instances'> AttributeError Traceback (most recent call last)

AttributeError: Cannot find field 'pred_masks' in the given Instances!

Upvotes: 0

Views: 2300

Answers (1)

Roger Trullo
Roger Trullo

Reputation: 1584

it seems that your model was trained to predict only bounding boxes; that is you do not predict segmentations masks as in maskrcnn. If that is the case, you can remove instance_mode=ColorMode.IMAGE_BW from Visualizer

Upvotes: 0

Related Questions