0
0
Computer Visionml~20 mins

FCN (Fully Convolutional Network) in Computer Vision - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
FCN Mastery Badge
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
What is the main advantage of using an FCN for image segmentation?

Fully Convolutional Networks (FCNs) are popular for image segmentation tasks. What is the key advantage of using an FCN compared to traditional CNNs with fully connected layers?

AFCNs can take input images of any size and produce correspondingly sized output segmentation maps.
BFCNs require less training data because they use fully connected layers.
CFCNs always run faster because they use fewer convolutional layers.
DFCNs use fully connected layers to improve classification accuracy.
Attempts:
2 left
💡 Hint

Think about how FCNs handle input size and output size compared to traditional CNNs.

Predict Output
intermediate
2:00remaining
Output shape of an FCN layer

Consider an input tensor of shape (batch_size=1, channels=3, height=64, width=64) passed through a convolutional layer in an FCN with 16 filters, kernel size 3, stride 1, and padding 1. What will be the output shape?

Computer Vision
import torch
import torch.nn as nn

input_tensor = torch.randn(1, 3, 64, 64)
conv_layer = nn.Conv2d(in_channels=3, out_channels=16, kernel_size=3, stride=1, padding=1)
output = conv_layer(input_tensor)
output.shape
Atorch.Size([1, 16, 66, 66])
Btorch.Size([1, 16, 62, 62])
Ctorch.Size([1, 3, 64, 64])
Dtorch.Size([1, 16, 64, 64])
Attempts:
2 left
💡 Hint

Recall how padding affects output size in convolution layers.

Model Choice
advanced
2:00remaining
Choosing the correct FCN architecture for semantic segmentation

You want to build an FCN for semantic segmentation on a dataset with 10 classes. Which architecture choice is best to produce pixel-wise class predictions?

AUse convolutional layers followed by fully connected layers to output a single class label per image.
BUse convolutional layers only, ending with a 1x1 convolution layer with 10 filters to output class scores per pixel.
CUse fully connected layers only to output a 10-dimensional vector for each pixel.
DUse convolutional layers with max pooling but no upsampling layers.
Attempts:
2 left
💡 Hint

Think about how to get class scores for each pixel in the input image.

Hyperparameter
advanced
2:00remaining
Effect of upsampling method in FCN output quality

In an FCN, which upsampling method is most likely to produce smoother and more accurate segmentation maps?

ABilinear interpolation upsampling
BNearest neighbor upsampling
CMax pooling
DStrided convolution downsampling
Attempts:
2 left
💡 Hint

Consider which method interpolates pixel values smoothly.

Metrics
expert
2:00remaining
Choosing the best metric for evaluating FCN segmentation output

You trained an FCN for semantic segmentation. Which metric best measures how well the predicted segmentation matches the ground truth at the pixel level?

AAccuracy (percentage of correctly classified pixels)
BMean Squared Error (MSE) between predicted and true pixel values
CIntersection over Union (IoU) per class averaged over all classes
DPrecision of the predicted class labels ignoring spatial location
Attempts:
2 left
💡 Hint

Think about a metric that balances false positives and false negatives per class.