AI analysis of aerial imagery: object detection and counting from drones

Manual counting of objects in drone imagery stretches inventory over weeks and still produces discrepancies. We develop turnkey computer vision systems: from image preparation and labeling to delivering the trained model and guidelines to your team. Object detection and counting speed up site processing many times over — without manual recounting.
Frequently Asked Questions

AI aerial imagery analysis: where manual counting breaks

Aerial survey of one site yields thousands of frames, while an operator can confidently process several hundred per shift.

Then the cost begins: processing drone images manually stretches over weeks, and across a series of sites — over months, and the result arrives when a decision is already needed.

The second bottleneck is discrepancies. The accuracy of manual annotation drops by the end of a shift, different operators interpret the same objects differently, some frames are lost in overlaps or rejected due to shadows and glare. Checking someone else's count can only be done by a repeat pass, that is, with the same time.

Automatic object counting removes exactly this limitation: the model processes all material without omissions, maintains a single criterion across the entire series, and produces a repeatable result.

AI aerial imagery analysis provides counts for each frame and for the site as a whole, while disputed zones are marked for human review — the operator deals not with mechanical iteration but with resolving ambiguous cases.

The scale changes as well: the volume of aerial survey ceases to be a limitation, and adding a second and tenth site does not require proportionally more people. Below we break down how this works at the processing level — from uploading flight data to verifiable export.

Measurable effect of automatic object detection

Processing speed ceases to depend on the size of the survey task.

Where an analyst processed a frame in tens of minutes and transferred objects into a table manually, the model processes the entire night flight by morning — the numbers are ready before the next field stage begins. At volume, the gap only grows: manual mode scales by the performer's time, automatic does not.

Repeatability of counting is the second measurable effect. The same image, submitted twice at identical thresholds, yields the same result: the model does not get tired by the end of a shift and does not interpret object boundaries differently.

This allows maintaining a reference set of frames with verified counts and, after each model update, ensuring the numbers have not shifted.

An entire class of manual annotation errors disappears: omissions at frame edges, double counting on overlapping images, different interpretations of what counts as one object.

These errors are not random — they accumulate by the end of a shift and manifest most strongly on dense sites. An automatic pass fixes the rule once and applies it to all frames equally.

Survey downtime ceases to be a bottleneck. While there is no result, the route cannot be adjusted, the crew with equipment cannot be sent again, the client does not receive the numbers — this is a delay of days, not hours.

Processing at survey pace removes it: the next flight is planned based on already counted data, not assumptions.

We verify the effect with three numbers: processing time per image before and after, share of discrepancies with the reference set, and volume of frames between the flight and the finished report.

Approaches to processing aerial images and their limitations

Aerial images differ by altitude, angle, lighting, and season, so the same object looks different across frames.

The choice of processing option is determined by three things: how much objects differ from the background, whether you have your own labeled frames, and what counting accuracy is required at the output. Below is an honest comparison of three working paths that clients realistically choose between.

Variant When suitable Limitations
Ready-made model Objects are typical (vehicles, buildings, tree crowns), survey is within the usual range of altitudes and angles On non-standard objects it produces omissions and false positives; the confidence threshold has to be manually tuned for each survey
Fine-tuning on your own data There are several hundred labeled frames and a stable object class Requires reference annotation by your domain team; when season or camera changes, accuracy drops without replenishing the sample
Manual additional annotation One-off surveys, rare objects, checking disputed zones Labor-intensive: the operator goes through the frame manually, speed drops to tens of images per hour

Limitations of survey are not removed by any of the options. Shadows and glare change contrast, tree crowns occlude objects, motion blur blurs boundaries — such frames are either filtered out during preprocessing or sent for manual review.

Therefore we always calculate not average accuracy over the entire sample, but variance across sites: in one field the model may work perfectly, in the neighboring one it may lose half the objects.

We start by running your images through a ready-made model and look at the share of omissions and false positives separately by background type.

If the error remains above acceptable, we show how much annotation will be required for fine-tuning and what manual additional annotation of disputed zones will cover — the decision is made based on numbers, not assumptions.

Implementation stages: from image audit to model handover

Aerial images are not ordinary photographs: frames with overlap, different angle and altitude, shadows and glare on water. A model from public datasets on such a stream errs predictably — confuses shadow with an object, loses small targets.

Therefore work proceeds in stages and begins not with training, but with analyzing what has already been captured.

Data preparation and metrics

  1. Audit of the survey archive. Altitudes and angles, frame overlap, seasons, where objects are partially hidden. Output — which scenes are missing and what needs additional capture.
  2. Setting the quality metric. What we consider a correct answer: detection completeness, share of omissions, acceptable counting error per frame. Otherwise the dispute "the model works" is unresolvable.
  3. Data annotation. Reference sample and rules for disputed cases — shadow, partial overlap, frame boundary. Disputed frames are annotated by two people, discrepancies are reviewed.

Training and acceptance

  • Training and threshold tuning on the prepared set, with overfitting control on the validation part.
  • Validation on a holdout sample. Images from another session and season that did not participate in training; metrics by scene types, not on average.
  • Pilot on a real stream — running new surveys and comparing against manual counting on control sites.
  • Model handover. Along with weights, we provide the annotation regulations, launch instructions, and procedure for fine-tuning on new data.

What remains with the client: configurations, schemas, regulations

A deployed system is useless if, after handover, no one except its authors can repeat the run or explain the origin of a number in the report.

Therefore we hand over not only a working service, but also a set of artifacts by which your engineer or another contractor can reproduce the result on a new array of aerial images without us.

  • Launch configurations — files with processing parameters: survey scale, detector confidence threshold, size and overlap of tiling fragments, order of model application. Editable without changing code.
  • Data processing schema — the path of an image from the drone storage medium to the final table: unpacking, rejection of defects, georeferencing, deduplication of overlaps, aggregation of objects by frames.
  • Rules for access to images — role matrix, separation of raw data and results, retention periods, procedure for exporting source files and anonymization.
  • Model documentation — a card describing the training sample, list of recognized classes, applicability boundaries, and survey types on which quality drops.
  • Repeat launch regulations — step-by-step procedure for a new array: input quality control, launch, acceptance of the result, where the conclusion is written and who signs it.
  • Quality report — completeness and precision for each class on the holdout sample plus analysis of disputed cases, so you understand where the number can be trusted.

Artifacts are handed over together with the working system and reviewed with your team at acceptance: launching the next array of images must not depend on the developer.

Case: site inventory from drone images

One of the clients — an operator of an open storage site for pipes and metal products — conducted inventory by walkthrough: a crew with tablets went through the rows once a quarter.

The walkthrough took 2-3 days, and discrepancies between two independent counts of the same zone reached 8-12% — disputed stacks were recounted, and the result was still contested during reconciliation.

How it was converted to regular flights

We fixed the drone route by reference points and captured the site once a week using the same scheme: identical frame overlap, same time of day, same flight lanes.

Images were assembled into an orthophotoplan, the detection model annotated packs and stacks, and the engineer sent disputed areas for manual review. Contours were tied to open cartographic layers OpenStreetMap, so that the same zone appeared in the report under one identifier.

Metrics before and after

Inventory from images decreased from 2-3 days to 1-2 hours of processing per site, discrepancies between two counting runs — from 8-12% to 1-3%.

The flight became weekly instead of quarterly, and comparison of neighboring weeks showed movements that a one-time walkthrough did not record: some positions were listed in the wrong zone.

Repeatability here provides more than the accuracy of an individual frame: the same route and identical survey conditions make images comparable, so the difference between flights shows real cargo movement, not method error.

What to do if images already exist but there is no annotation or model

An archive of aerial images is not a dataset by itself.

Training on it directly yields a model that holds up on one site and one survey altitude, and falls apart when season or camera changes: flights with different lighting and overlap are mixed inside, there are duplicates, and georeferencing of some frames is lost.

Work begins with inventory — we count surveys by sites, seasons, and conditions, and it immediately becomes clear which states are missing.

Then dataset preparation: rejection of blurry and cloud-covered frames, deduplication by geometry, bringing to a unified spatial resolution, and tiling into fragments with overlap along edges, otherwise objects at seams are cut in half.

Annotating the entire archive manually is pointless, so we go through partial annotation. We cover a stratified sample — for each site, season, and object class, usually 15–25% of fragments; work is done in CVAT and annotation is versioned together with code.

Then the model proposes boxes with confidence estimates, the annotator corrects only disputed cases, and unambiguous predictions are accepted automatically.

Transferring the model to new sites is a separate task, not "add photos to a folder": background, shadows, and object density change. Therefore we keep a control site that does not enter training, and look at metrics by classes and size groups, not by average accuracy.

Thresholds are calibrated for counting, where completeness and absence of double detections matter more than a perfect box.

This is how the archive turns into a reusable asset: annotation and the preparation recipe remain, and each new site or class is added without starting from scratch.

Technical concerns: accuracy, cloudiness, small objects

Detection accuracy is not a constant value: it depends on survey conditions, object size, and how accurately overlapping boxes are merged. Therefore, before starting, we discuss which conditions we consider working and where the scenario drops — and what we do in each case.

Survey was captured in cloudiness or haze — what then?

Two paths: reschedule the flight according to the forecast or compensate during processing.

We equalize brightness and contrast using calibration targets so the model relies on shadows and gradients, and mark frames with cloud-covered areas as unsuitable — they do not go into the final count. It is better to honestly exclude part of the area than to produce a fabricated number.

How not to lose small objects in an image?

The frame is tiled into overlapping fragments, so an object in a border strip falls entirely into at least one of them. After detection, boxes are merged by intersection, duplicates are suppressed — one object is counted once. The model is additionally fine-tuned on crops of real objects from your site.

Objects overlap each other or tree crowns?

Partially visible objects are annotated separately and output in the report as a "requires review" line, rather than dissolved into the total number. Overlap ceases to be a hidden error: it is visible how many objects were counted confidently and how many are disputed.

Do seasonal changes to the site break the model?

The model is trained on images from different seasons, and regular flights accumulate a base for one territory. Comparison is done using stable landmarks — roads, buildings, plot boundaries. New construction or logging appears in the report as a change, not as a detection error.

None of these points is resolved "by eye": before starting, we run a test site on your data and show metrics by class.

Let's discuss the task: what is needed to start work

To come back with a timeline estimate and work plan, rather than general words, we need a minimum set of inputs for your object type. Usually a few points are enough — some of them are already at hand.

  • Object type and what exactly to count: vehicles, people, buildings, vegetation, surface defects — and how to handle borderline cases.
  • Two or three of your images, including difficult ones: shadows, cloudiness, angled survey, partial crown overlap.
  • Survey parameters: carrier, altitude, frame overlap, whether coordinate referencing and metadata are available — the achievable counting accuracy depends on this.
  • Site boundaries: one polygon or scattered sites, whether repeat flights on schedule are needed.
  • Result format: table with coordinates and classes, vector contours in GeoJSON or SHP, object crops, report with aggregates by area.
  • Reference, if available: manual annotation or past counts — we use them to calculate precision and completeness, rather than estimate by eye.
  • Access restrictions: where images are stored, whether they can be transferred for processing, whether a closed environment without data leaving is needed.
  • Priority: cover the entire area or get a result faster on a pilot site.

As soon as this minimum is available, we will return with a work plan: stages, outputs, method for checking accuracy, and timelines for your volume. Describe the task — if some data is not yet available, we will suggest which survey can replace it.

AI Development Areas

Latest works

  • Development of a web application for FEEDME
    Development of a web application for FEEDME
    1394
  • Development of an online store for the company FURNORO
    Development of an online store for the company FURNORO
    1368
  • B2B Advance company logo design
    B2B Advance company logo design
    815
  • Development of a web application for Enviok
    Development of a web application for Enviok
    1139
  • AIDER company logo development
    AIDER company logo development
    1057
  • CRM development for Chasseurs
    CRM development for Chasseurs
    1152