Bird
Raised Fist0
Computer Visionml~10 mins

Mask R-CNN overview in Computer Vision - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to import the Mask R-CNN model from the torchvision library.

Computer Vision
from torchvision.models.detection import [1]
Drag options to blanks, or click blank then click option'
Amaskrcnn_resnet50_fpn
Bfasterrcnn_resnet50_fpn
Cretinanet_resnet50_fpn
Dssd300_vgg16
Attempts:
3 left
💡 Hint
Common Mistakes
Choosing Faster R-CNN import instead of Mask R-CNN.
Confusing RetinaNet or SSD with Mask R-CNN.
2fill in blank
medium

Complete the code to create a Mask R-CNN model pre-trained on COCO dataset.

Computer Vision
model = [1](pretrained=True)
Drag options to blanks, or click blank then click option'
Afasterrcnn_resnet50_fpn
Bssd300_vgg16
Cretinanet_resnet50_fpn
Dmaskrcnn_resnet50_fpn
Attempts:
3 left
💡 Hint
Common Mistakes
Using Faster R-CNN function instead of Mask R-CNN.
Forgetting to set pretrained=True.
3fill in blank
hard

Fix the error in the code to switch the model to evaluation mode.

Computer Vision
model.[1]()
Drag options to blanks, or click blank then click option'
Atrain
Bfit
Ceval
Dpredict
Attempts:
3 left
💡 Hint
Common Mistakes
Using train() instead of eval().
Using non-existing methods like fit() or predict().
4fill in blank
hard

Fill both blanks to prepare the input image tensor and move it to the device.

Computer Vision
image = image.to([1]).unsqueeze([2])
Drag options to blanks, or click blank then click option'
Adevice
B0
C1
Dcpu
Attempts:
3 left
💡 Hint
Common Mistakes
Using unsqueeze(1) instead of unsqueeze(0).
Moving image to cpu explicitly when device is GPU.
5fill in blank
hard

Fill all three blanks to run the model on input and get masks from the output.

Computer Vision
with torch.no_grad():
    output = model([1])
    masks = output[0][[2]].squeeze([3]) > 0.5
Drag options to blanks, or click blank then click option'
A[image]
Bmasks
C1
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Passing image tensor directly instead of a list.
Accessing output with wrong key or index.
Using squeeze(0) instead of squeeze(1).

Practice

(1/5)
1. What is the main purpose of Mask R-CNN in computer vision?
easy
A. To generate captions for images
B. To classify images into categories
C. To enhance image resolution
D. To detect objects and find their exact shapes in images

Solution

  1. Step 1: Understand Mask R-CNN's function

    Mask R-CNN is designed to detect objects and also predict masks that show the exact shape of each object.
  2. Step 2: Compare with other tasks

    Unlike classification or captioning, Mask R-CNN focuses on locating and segmenting objects precisely.
  3. Final Answer:

    To detect objects and find their exact shapes in images -> Option D
  4. Quick Check:

    Mask R-CNN = Object detection + precise shape masks [OK]
Hint: Mask R-CNN = detection + mask prediction [OK]
Common Mistakes:
  • Confusing Mask R-CNN with image classification models
  • Thinking it only detects bounding boxes without masks
  • Assuming it generates image captions
2. Which component is NOT part of the Mask R-CNN architecture?
easy
A. Region Proposal Network (RPN)
B. Mask branch for pixel-level segmentation
C. Recurrent Neural Network (RNN) for sequence modeling
D. Fully Connected Layer for classification

Solution

  1. Step 1: Identify Mask R-CNN components

    Mask R-CNN includes RPN for proposing regions, fully connected layers for classifying objects, and a mask branch for segmentation.
  2. Step 2: Check for unrelated components

    RNNs are used for sequence data like text or speech, not for Mask R-CNN's image segmentation tasks.
  3. Final Answer:

    Recurrent Neural Network (RNN) for sequence modeling -> Option C
  4. Quick Check:

    Mask R-CNN excludes RNNs [OK]
Hint: Mask R-CNN uses CNNs, not RNNs [OK]
Common Mistakes:
  • Thinking RNNs are part of Mask R-CNN
  • Confusing mask branch with classification layers
  • Ignoring the role of RPN
3. Given the following simplified Mask R-CNN output for an image, what does the mask represent?
masks = [[[0,1,1],[0,1,1],[0,0,0]], [[1,0,0],[1,1,0],[0,0,0]]]
Each inner list is a 3x3 mask for one object. What does a '1' indicate?
medium
A. Pixels belonging to the object
B. Background pixels
C. Pixels with low confidence
D. Pixels to be ignored

Solution

  1. Step 1: Understand mask values in Mask R-CNN

    Mask R-CNN outputs masks where '1' marks pixels that belong to the detected object, and '0' marks background.
  2. Step 2: Interpret the given mask arrays

    In the given masks, '1's show the shape of each object in the 3x3 grid.
  3. Final Answer:

    Pixels belonging to the object -> Option A
  4. Quick Check:

    Mask '1' = object pixel [OK]
Hint: '1' in mask means object pixel [OK]
Common Mistakes:
  • Confusing '1' with background
  • Assuming '1' means low confidence
  • Thinking '1' means ignored pixels
4. You run Mask R-CNN but get an error: 'ValueError: mask size mismatch'. What is the most likely cause?
medium
A. The mask output size does not match the region proposal size
B. The input image is grayscale instead of color
C. The model is missing the classification head
D. The learning rate is too high

Solution

  1. Step 1: Understand mask size mismatch error

    This error usually means the predicted mask dimensions don't match the size of the proposed region where the mask should be applied.
  2. Step 2: Check other options

    Input image color or missing classification head won't cause mask size mismatch. Learning rate affects training, not mask size.
  3. Final Answer:

    The mask output size does not match the region proposal size -> Option A
  4. Quick Check:

    Mask size must match proposal size [OK]
Hint: Check mask and proposal sizes match [OK]
Common Mistakes:
  • Blaming input image color for mask size error
  • Ignoring mask and proposal size relation
  • Confusing training hyperparameters with output shape errors
5. You want to improve Mask R-CNN's mask accuracy on small objects in images. Which approach is best?
hard
A. Remove the mask branch and only use bounding boxes
B. Increase the resolution of the feature maps used for mask prediction
C. Use a simpler backbone network to speed up training
D. Reduce the number of region proposals generated by RPN

Solution

  1. Step 1: Identify how to improve mask accuracy for small objects

    Small objects need finer details, so increasing feature map resolution helps the mask branch capture small shapes better.
  2. Step 2: Evaluate other options

    Reducing proposals may miss objects, simpler backbone reduces feature quality, and removing mask branch loses mask prediction entirely.
  3. Final Answer:

    Increase the resolution of the feature maps used for mask prediction -> Option B
  4. Quick Check:

    Higher resolution features = better small object masks [OK]
Hint: Higher feature resolution helps small object masks [OK]
Common Mistakes:
  • Reducing proposals thinking it improves accuracy
  • Using simpler backbone hurting feature quality
  • Removing mask branch losing mask output
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard