Erik Mischiatti

Index

Green Vigilance

A Python-first UAV/UGV simulation baseline for early crop-disease detection: scenario comparison, EKF and WLS estimation, and reproducible visual outputs.

Scope: a Python migration and reconstruction of a UAV/UGV precision-agriculture system originally explored for early crop-disease detection. The current work is a reproducible simulation baseline, not a production-ready field robot.

My contribution: the Python baseline is published in my GitHub repository. The context of the original system is not stated.

3D simulation scene of the baseline scenario: field, canopies, observed leaves, UAV and UGV trajectories, UGV targets and the camera frustum.
Fig. 1 3D simulation output for the baseline UAV/UGV scenario.

1 Overview

The simulation compares scenario configurations, estimates UAV and UGV localization error, assigns ground targets from a disease heatmap, and produces visual outputs and summary reports that can be regenerated from YAML inputs.

2 Architecture

  1. Scenario YAML config
  2. UAV unicycle dynamics + EKF
  3. Camera / frustum observation
  4. Disease heatmap
  5. UGV target assignment
  6. Noisy localization + WLS estimate
  7. Summary JSON, CSV/Markdown, figures
Fig. 2 Pipeline from a scenario configuration to the generated outputs, as described in the project documentation.

3 Key features

Table 1 Key features, as documented
FeatureDescription
Scenario coverage Baseline, high-noise and extreme-uncertainty scenarios, defined as reproducible YAML configurations
Deterministic UAV path The UAV follows a deterministic 30% coverage path, for repeatable comparisons between scenario settings
Target assignment Disease heatmaps drive UGV target assignment for ground-level inspection candidates
Static outputs Static 2D and 3D outputs for trajectories, observations and scenario interpretation
Reports Scenario summaries and comparison reports exported as structured files and Markdown tables
Tests and CI pytest test coverage and GitHub Actions CI for regression checks of the Python baseline

4 Scenario results

Table 2 Scenario results from the simulation baseline
ScenarioObserved leavesUAV RMSEUGV WLS RMSE
baseline 2711 0.463 m 0.536 m
high_noise 1866 1.580 m 0.941 m
extreme_uncertainty 1228 1.825 m 1.568 m

The validation is qualitative at this stage: exact numerical equivalence with the earlier MATLAB implementation and its report has not been formally validated.

5 Generated outputs

Observed disease heatmap over the field, with probability values from 0 to about 0.6.
Fig. 3 Disease heatmap used for UGV target assignment.
UAV and UGV trajectories with requested coverage area, waypoints, noisy and WLS-estimated UGV paths and targets.
Fig. 4 Baseline UAV and UGV trajectory output.

6 Resources