R-CNN stands for Region-based Convolutional Neural Network. It is a method to detect objects by first proposing regions and then classifying them.
Click to reveal answer
intermediate
How does Fast R-CNN improve over the original R-CNN?
Fast R-CNN processes the whole image with a single CNN to create a feature map, then extracts features for each region proposal, making it faster and more efficient than R-CNN.
Click to reveal answer
intermediate
What is the main innovation of Faster R-CNN compared to Fast R-CNN?
Faster R-CNN introduces a Region Proposal Network (RPN) that shares convolutional features with the detection network, allowing region proposals to be generated quickly and integrated into the model.
Click to reveal answer
advanced
Why is Mask R-CNN important in the R-CNN family?
Mask R-CNN extends Faster R-CNN by adding a branch that predicts a pixel-level mask for each detected object, enabling instance segmentation along with object detection.
Click to reveal answer
beginner
List the main steps in the original R-CNN pipeline.
1. Generate region proposals using selective search. 2. Warp each region to a fixed size. 3. Extract features using a CNN. 4. Classify each region with SVM. 5. Refine bounding boxes with regression.
Click to reveal answer
What is the main drawback of the original R-CNN method?
AIt is slow because it runs CNN separately on each region proposal.
BIt cannot detect multiple objects.
CIt does not use convolutional neural networks.
DIt does not generate region proposals.
✗ Incorrect
Original R-CNN runs CNN on each region proposal independently, which is slow and inefficient.
Which R-CNN variant introduced the Region Proposal Network (RPN)?
AR-CNN
BFaster R-CNN
CMask R-CNN
DFast R-CNN
✗ Incorrect
Faster R-CNN introduced the RPN to generate region proposals efficiently within the network.
What additional output does Mask R-CNN provide compared to Faster R-CNN?
ABounding box coordinates
BClass labels
CRegion proposals
DPixel-level masks for objects
✗ Incorrect
Mask R-CNN adds a mask branch that predicts pixel-level segmentation masks for each detected object.
How does Fast R-CNN speed up processing compared to R-CNN?
ABy sharing convolutional features for all proposals in one pass
BBy using a smaller CNN
CBy skipping region proposals
DBy using SVM classifiers
✗ Incorrect
Fast R-CNN computes convolutional features once for the whole image, then extracts features for each region proposal from this shared map.
Which step is NOT part of the original R-CNN pipeline?
ASelective search for region proposals
BFeature extraction with CNN
CEnd-to-end training of the whole network
DBounding box regression
✗ Incorrect
Original R-CNN trains components separately and does not do end-to-end training.
Explain the evolution of the R-CNN family from R-CNN to Mask R-CNN, focusing on how each version improves speed and functionality.
Think about what bottlenecks each version addresses and what new features are added.
You got /4 concepts.
Describe the role of the Region Proposal Network (RPN) in Faster R-CNN and why it is important.
Consider how region proposals were generated before and how RPN changes that.
You got /4 concepts.
Practice
(1/5)
1. What is the main purpose of the R-CNN family of models in computer vision?
easy
A. To enhance image resolution
B. To generate captions for images
C. To detect edges in images
D. To find and classify objects in images by proposing regions
Solution
Step 1: Understand R-CNN model goal
The R-CNN family is designed to locate objects by proposing regions and then classify them.
Step 2: Compare options with model purpose
Only To find and classify objects in images by proposing regions matches the goal of finding and classifying objects using region proposals.
Final Answer:
To find and classify objects in images by proposing regions -> Option D
Quick Check:
R-CNN purpose = find and classify objects [OK]
Hint: R-CNN = Region proposals + Classification [OK]
Common Mistakes:
Confusing R-CNN with image captioning models
Thinking R-CNN enhances image quality
Mixing edge detection with object detection
2. Which of the following is the correct sequence of steps in the original R-CNN pipeline?
easy
A. Classify entire image, extract regions, refine bounding boxes
B. Refine bounding boxes, extract regions, classify regions
C. Extract regions, classify regions, refine bounding boxes
D. Extract regions, refine bounding boxes, classify entire image
Solution
Step 1: Recall R-CNN pipeline steps
R-CNN first extracts region proposals, then classifies each region, and finally refines bounding boxes.
Step 2: Match steps with options
Extract regions, classify regions, refine bounding boxes correctly lists the steps in order: extract regions, classify, then refine boxes.
Final Answer:
Extract regions, classify regions, refine bounding boxes -> Option C
Quick Check:
R-CNN steps = extract, classify, refine [OK]
Hint: Remember: Propose regions first, then classify [OK]
Common Mistakes:
Classifying before extracting regions
Refining boxes before classification
Mixing order of steps
3. Given the following code snippet for Faster R-CNN, what is the output shape of the feature map if the input image is 224x224 and the backbone reduces size by a factor of 16?
input_image = torch.randn(1, 3, 224, 224)
features = backbone(input_image)
print(features.shape)
medium
A. [1, C, 14, 14]
B. [1, C, 7, 7]
C. [1, C, 28, 28]
D. [1, C, 224, 224]
Solution
Step 1: Calculate spatial size after backbone
The backbone reduces the input size by factor 16, so 224 / 16 = 14.
Step 2: Determine output shape format
Output shape is batch size 1, channels C (depends on backbone), height 14, width 14.
Final Answer:
[1, C, 14, 14] -> Option A
Quick Check:
224/16 = 14, so output height and width = 14 [OK]
Hint: Divide input size by backbone stride for output size [OK]
Common Mistakes:
Using 7 instead of 14 for output size
Confusing channels with spatial dimensions
Assuming no size reduction
4. You have a Mask R-CNN model but it is not producing masks for detected objects. Which of the following is the most likely cause?
medium
A. The backbone network is too shallow
B. The model was trained without the mask branch enabled
C. The input images are grayscale instead of RGB
D. The bounding box proposals are too large
Solution
Step 1: Understand Mask R-CNN mask output
Mask R-CNN produces masks only if the mask branch is included and trained.
Step 2: Analyze options for mask absence
If the mask branch is disabled during training, no masks will be produced, making The model was trained without the mask branch enabled correct.
Final Answer:
The model was trained without the mask branch enabled -> Option B
Quick Check:
Mask branch enabled = masks output [OK]
Hint: Masks need mask branch enabled and trained [OK]