The Task
The client brought us a high-stakes pilot project: transform raw aerial imagery into structured datasets to power GIS tools and urban planning systems. The scope included identifying a wide range of infrastructure elements—houses, roads, rivers, utility poles, farmlands, and more—across 11,000 high-resolution images.
From the start, the project presented several key challenges:
- No predefined guidelines — with no technical specification provided, we had to align annotation logic and edge cases directly with the end client, often in real time.
- Imbalanced class distribution — some object types were underrepresented in the dataset, making it difficult to meet uniform annotation targets across all 11 categories.
- Highly specific delivery requirements — for each object class, the client requested:
- All unrelated annotations hidden in every image
- Screenshots showing only the relevant objects
- A clean, consolidated PDF report per class, with all visuals included
The deadline was tight: everything—from image annotation and QA to report generation—had to be delivered in just 21 days, with zero margin for error across 132,000 annotations.
The Solution
Workflow Optimization & Team Structure
Some images had up to 2,000 objects, causing performance issues in the annotation tool.
We preprocessed large files to reduce lag and assigned annotators to specialize by class (e.g., only roads, only rivers) to simplify the UI and reduce clutter.
Automated PDF Reporting
We built a custom Python script that automatically hid irrelevant layers and generated the class-specific screenshots. The script compiled each set into a formatted PDF report—saving dozens of hours of manual work.
Quality Monitoring & Data Adaptation
Our lead validator tracked daily progress by class to avoid under- or over-annotation.
To compensate for underrepresented classes, we:
- Cropped, duplicated, or adapted images
- Sourced new content to meet class-specific targets
| Stage | Input | Workflow Scope | Main Quality Checks |
|---|---|---|---|
| Requirements Alignment | Client goals, aerial images | Definition of classes, real-time alignment on guidelines | Clarity, completeness, edge cases |
| Workflow Optimization | High-density images | Preprocessing, task distribution by object class | Tool performance, efficiency |
| Image Annotation | Aerial imagery dataset | Labeling infrastructure objects across 11 classes | Accuracy, class consistency |
| Data Balancing | Annotated dataset | Adjusting underrepresented classes, sourcing data | Class distribution, coverage |
| Validation | Annotated data | Ongoing QA, daily monitoring by class | Error rates, completeness |
| Final QA & Reporting | Validated dataset | Automated report generation, dataset delivery | Format compliance, client acceptance |
The Results
- 132,000 objects annotated across 11,000 images
- 11 visual reports delivered (one per object class)
- Delivered on time, no revisions required
- Automated reporting + role specialization accelerated project execution significantly
Aerial image annotation for urban planning requires handling dense object environments and strict output formats. Scalable workflows, class-specific specialization, and automation are critical to meet tight deadlines without compromising data quality.
- Roman Lukoshin
- Speech and Generative Data Manager