Standard object detection models like YOLO often struggle when tasked with identifying very small or distant objects in high-resolution images. Whether you’re analyzing drone footage, satellite imagery, or surveillance video, detection accuracy tends to drop significantly when the target objects occupy only a few pixels.
In this post, you’ll learn how to overcome these limitations using advanced techniques—including the powerful Sahi algorithm. We’ll walk through real examples such as ant detection, vehicle tracking from drone views, and people detection in dense crowds. By the end, you’ll know how to significantly improve detection results using intelligent slicing and, when needed, custom model training.
Why YOLO Fails on Small Objects
Out-of-the-box YOLO models (like YOLOv11 trained on the COCO dataset) are optimized for general-purpose detection. They work well on large, close-range objects but poorly on small or distant targets. The main reasons are:
- Image Resizing: YOLO resizes input images to a standard size (usually 640×640), which reduces detail and causes small objects to be lost.
- Training Data Mismatch: Models trained on COCO don’t include scenarios like top-down drone views or night-time vehicle footage.
As shown in experiments, YOLO often fails to detect small entities like ants or distant vehicles and people.
How to Improve Detection
1. Use Larger Input Sizes
Increasing the model’s input resolution (e.g., 1280×1280) can slightly improve detection accuracy. This allows the model to retain more detail from the original image. However, this also increases GPU memory usage and processing time.

2. Train a Custom Model
The best improvement comes from training a model on your specific dataset. For instance, collecting images from your own surveillance system or drone will allow YOLO to learn from relevant features. Custom training results in a substantial accuracy boost.

Introducing SAHI: Slicing Aided Hyper Inference
SAHI is an open-source inference technique that improves detection on large images by slicing them into smaller patches. Instead of shrinking the entire image (and losing resolution), SAHI processes slices independently, retaining much more detail.
Key Benefits of SAHI:
- Improves accuracy on small and dense objects
- Works with existing YOLO models (no retraining needed)
- Configurable slice size and overlap
How It Works:
- The image is divided into overlapping slices (e.g., 256×256 or 512×512)
- Object detection is run on each slice
- Results from all slices are merged into one output
Results: Before and After
Ant Detection
- Without SAHI: No ants detected.

- With SAHI: Significant number of ants detected with high accuracy.

Crowd Detection
- Without SAHI: Very few detections, even in a high-res image.

- With SAHI (256px slices): Many more people detected, including in the background.

Note: Smaller slice sizes lead to more accurate detection but increase processing time and GPU load. On a high-end GPU like the RTX 4090, slicing an image into 200+ parts can still cause a high computational load.
Best Practices
- Use SAHI when working with high-resolution images and small or distant objects.
- Train a custom YOLO model on your own dataset for domain-specific accuracy.
- Experiment with different slice sizes (e.g., 256, 512, 1024) to find the best trade-off between performance and accuracy.
Learn More in the AI Vision Academy
All the resources mentioned in this article—including source code, configuration guides, and practical examples—are available inside the AI Vision Academy. You’ll get access to:
- Full implementation of YOLO + SAHI
- Courses on training custom detectors
- Community support and mentorship
👉 Join the AI Vision Academy Today

Hi there, I’m the founder of Pysource.
I’m a Computer Vision Consultant, developer and Course instructor.
I help Companies and Developers to build efficient computer vision software.