4 types of imbalance issues in object detection that you should know:

Here is a brief description of each one of them and some potential solutions.

• Scale imbalance
• Objective imbalance
• Class imbalance
• Spatial imbalance
🔸 Scale imbalance
It happens when the objects have different sizes with different numbers of objects: e.g. small objects vs. big objects.

✅ Potential Solution
• Oversample small objects using the Copy&Paste data augmentation
• Use higher resolution images
🔸 Objective imbalance
It happens when calculating a total loss (classification and regression losses). One loss might dominate another.

✅ Potential Solution
• Use the weighted loss
🔸 Class imbalance:
It might be related to either:
1- Foreground-Background imbalance classes, or
2- Foreground-Foreground (positive) classes: e.g. Person class vs Parking Meter class in the COCO dataset
✅ Potential Solution:
• For Case 1: Use the Focal Loss
• For Case 2: Oversample under-represented classes
🔸 Spatial imbalance:
It refers to a set of factors related to the spatial properties of the bounding boxes such as regression penalty, location, and IoU.

For example, the L2 loss penalizes more severely shifted predicted boxes than the L1 or Smooth L1 losses.
✅ Potential Solution:
• Use L1 or Smooth L1 Loss
• Use anchor-free models
If you found this thread valuable,

Follow me for more threads on advanced object detection techniques used in real-world applications → @ai_fast_track

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with AI Fast Track (93/100)

AI Fast Track (93/100) Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @ai_fast_track

Feb 2
🌟 VFNet: IMHO, is the best anchor-free single-stage model, and it's not under the radar.

VariFocalNet: An IoU-aware Dense Object Detector

🧊 Background:
📌 Accurately ranking candidate detections is crucial for dense object detectors to achieve high performance.
... Image
📌 Prior work uses the classification score or a combination of classification and predicted localization scores (centerness) to rank candidates.

📌 Those 2 scores are still not optimal.

🧊 Novelty:
📌 VFNet proposes to learn an IoU-Aware Classification Score (IACS)
📌IACS is used as a joint representation of object presence confidence and localization accuracy using IoU

📌 VFNet introduces the VariFocal Loss

📌 The VariFocal Loss down-weights only negative examples for addressing the class imbalance problem during training.
Read 7 tweets
Jan 9
How do you use transfer learning with images with 3+ (or 1) channel(s)?

Timm library, developed by @wightmanr, has an elegant way to handle that:

You can specify any input channel number (e.g. in_chans=1 or in_chans=8) using timm.create_model() function like this:
@wightmanr m = timm.create_model('resnet34', pretrained=True, in_chans=8)

How does it work?

• Case 1: number of input channels is 1
timm simply sums the 3 channel weights into one single channel
@wightmanr • Case 2: number of input channels is 8 (more than 3)
timm repeats the 3 channel weights as many times as required, and then select the required number of input channels weights

In 8 channels example, that would be: repeat 3 times (9 channels generated), then keep the first 8
Read 5 tweets
Jan 5
Here is a mega-summary of my YOLO-Series Visual Summaries:

1- YOLO Family Real-Time Performance
2- IA-YOLO improves object detection in adverse weather conditions using a hybrid task.

Image improvement combined with object detection.
3- YOLO Real-Time (YOLO-ReT) architecture targets edge devices.

Read 8 tweets
Jan 3
🔥 ZSD-YOLO: Zero-Shot YOLO Detection using Vision-Language Knowledge Distillation

Heads up: I’m preparing a visual summary on ZSD-YOLO.

So, what is Zero-Shot Detection?
• Zero-shot detection allows a model to detect something in an image even if the model has never seen that thing before

• So, if you have an image of a Chimpanzee and the model has never seen a Chimpanzee before, you can use your zero-shot detector to locate it in the image
• ZSD-YOLO leverages 2 models:
- CLIP: a pretrained Vision-Language model
- YOLOv5: a modified version that replaces the classification branch
Read 5 tweets
Dec 23, 2021
Many open-world applications require the detection of novel objects.

but state-of-the-art object detection and instance segmentation models are unable to do so.

• It’s because models learn to suppress any unannotated objects by treating them as background
• To address that issue, the authors propose a simple yet surprisingly powerful data augmentation and training scheme they call Learning to Detect Every Thing (LDET)
• To avoid suppressing hidden (unannotated) objects, background objects that are visible but unlabeled, they paste annotated objects on a background image sampled from a small region of the original image (see figure)
Read 8 tweets
Dec 20, 2021
❓ What is Multi-Scale Training (MST)?

💡 MTS helps your model to be robust to image sizes, an get better performance

• Training on small images is faster

• Training on large images increases your model performance

How is MST done?
Every N (e.g., 10) epochs, we randomly chooses a new image dimension from a range of sizes [640, 768, 800], and train our model

This means the same network becomes better at predicting at different resolutions.
• In MMDetetection, models trained using multi-scale technique have “_mstrain_” in their name.

• Example: vfnet_r50_fpn_mstrain_2x_coco
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

:(