Bird
Raised Fist0
Computer Visionml~10 mins

Medical image segmentation basics 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 library used for image segmentation.

Computer Vision
import [1] as cv
Drag options to blanks, or click blank then click option'
Atensorflow
Bcv2
Cnumpy
Dmatplotlib
Attempts:
3 left
💡 Hint
Common Mistakes
Importing unrelated libraries like numpy or matplotlib for segmentation.
Using tensorflow which is for deep learning but not direct image processing here.
2fill in blank
medium

Complete the code to read a medical image from a file.

Computer Vision
image = cv.[1]('scan.png', cv.IMREAD_GRAYSCALE)
Drag options to blanks, or click blank then click option'
Aimread
Bimshow
Cimwrite
Dresize
Attempts:
3 left
💡 Hint
Common Mistakes
Using imshow which displays images but does not read files.
Using imwrite which saves images instead of reading.
3fill in blank
hard

Fix the error in the thresholding step to segment the image.

Computer Vision
_, segmented = cv.threshold(image, [1], 255, cv.THRESH_BINARY)
Drag options to blanks, or click blank then click option'
A128
B256
C-1
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Using 256 which is out of range for pixel values.
Using negative or zero values which do not segment properly.
4fill in blank
hard

Fill both blanks to create a mask and apply it to the image.

Computer Vision
mask = segmented [1] 255
result = cv.bitwise_and(image, image, mask=[2])
Drag options to blanks, or click blank then click option'
A==
Bmask
C128
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using '!=' instead of '==' which inverts the mask.
Using incorrect mask values like 128.
5fill in blank
hard

Fill all three blanks to calculate Dice coefficient for segmentation evaluation.

Computer Vision
intersection = (predicted_mask [1] true_mask).sum()
dice = (2 * intersection) / (predicted_mask.sum() [2] true_mask.sum())
print('Dice coefficient:', [3])
Drag options to blanks, or click blank then click option'
A&
B+
Cdice
D|
Attempts:
3 left
💡 Hint
Common Mistakes
Using bitwise OR (|) instead of AND (&) for intersection.
Adding intersection instead of predicted and true sums in denominator.
Printing a wrong variable instead of dice.

Practice

(1/5)
1. What is the main goal of medical image segmentation?
easy
A. To separate important parts of an image pixel by pixel
B. To classify the whole image into categories
C. To enhance the brightness of medical images
D. To compress the image for storage

Solution

  1. Step 1: Understand segmentation purpose

    Medical image segmentation aims to identify and separate regions of interest within an image at the pixel level.
  2. Step 2: Compare options

    Only To separate important parts of an image pixel by pixel describes pixel-level separation, which matches segmentation. Other options describe different tasks.
  3. Final Answer:

    To separate important parts of an image pixel by pixel -> Option A
  4. Quick Check:

    Segmentation = pixel-level separation [OK]
Hint: Segmentation means pixel-level separation of image parts [OK]
Common Mistakes:
  • Confusing segmentation with image classification
  • Thinking segmentation enhances image brightness
  • Mixing segmentation with image compression
2. Which of the following is the correct way to describe the input and output of a segmentation model?
easy
A. Input: Image; Output: Class label
B. Input: Mask; Output: Image
C. Input: Image; Output: Mask showing segmented regions
D. Input: Text; Output: Image

Solution

  1. Step 1: Identify model inputs and outputs

    Segmentation models take images as input and output masks that highlight segmented areas pixel-wise.
  2. Step 2: Match options to this understanding

    Input: Image; Output: Mask showing segmented regions correctly states input as image and output as mask. Others mismatch input/output types.
  3. Final Answer:

    Input: Image; Output: Mask showing segmented regions -> Option C
  4. Quick Check:

    Segmentation model output = mask [OK]
Hint: Segmentation outputs masks, not class labels [OK]
Common Mistakes:
  • Confusing segmentation output with classification labels
  • Swapping input and output roles
  • Assuming text input for image tasks
3. Given this Python snippet using a UNet model for segmentation:
pred_mask = unet_model.predict(test_image)
print(pred_mask.shape)

What does pred_mask.shape represent?
medium
A. The dimensions of the predicted segmentation mask
B. The training loss value
C. The number of classes in the dataset
D. The dimensions of the input image

Solution

  1. Step 1: Understand prediction output

    The predict method returns the segmentation mask predicted by the model for the input image.
  2. Step 2: Interpret shape attribute

    The shape shows the size (dimensions) of this predicted mask, matching the input image size and channels.
  3. Final Answer:

    The dimensions of the predicted segmentation mask -> Option A
  4. Quick Check:

    pred_mask.shape = mask size [OK]
Hint: Model.predict returns mask; shape shows mask size [OK]
Common Mistakes:
  • Thinking shape shows input image size
  • Confusing shape with number of classes
  • Mixing shape with loss or metric values
4. You wrote this code to train a segmentation model but get an error:
model.fit(images, masks, epochs=10)

What is a likely cause of the error?
medium
A. The model does not support segmentation
B. The images are grayscale but masks are color
C. The epochs parameter is missing
D. The masks are not the same size as the images

Solution

  1. Step 1: Check input-output size requirements

    Segmentation training requires masks to have the same spatial size as input images for pixel-wise comparison.
  2. Step 2: Identify common error

    If masks differ in size, model.fit will raise an error due to shape mismatch.
  3. Final Answer:

    The masks are not the same size as the images -> Option D
  4. Quick Check:

    Mask size must match image size [OK]
Hint: Masks must match image size for training [OK]
Common Mistakes:
  • Ignoring mask-image size mismatch
  • Assuming epochs parameter causes error
  • Thinking color difference causes training error
5. You want to improve segmentation accuracy on small tumors in medical images. Which approach is best?
hard
A. Train only on images without tumors
B. Use a UNet model with skip connections to capture fine details
C. Reduce image resolution to speed up training
D. Use a simple linear model without convolution layers

Solution

  1. Step 1: Understand model choice for fine details

    UNet with skip connections preserves spatial details, helping segment small structures like tumors.
  2. Step 2: Evaluate other options

    Reducing resolution loses detail; training without tumors ignores target; linear models lack spatial understanding.
  3. Final Answer:

    Use a UNet model with skip connections to capture fine details -> Option B
  4. Quick Check:

    UNet + skip connections = better small object segmentation [OK]
Hint: UNet skip connections help segment small details [OK]
Common Mistakes:
  • Reducing resolution loses important details
  • Ignoring tumor images during training
  • Using non-convolutional models for images
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