PROProduction
Workflow-grade Pro analysis with audit-ready outputs.
workflow pro
Yield Data Conditioning and QA
How do we turn raw, noisy harvest monitor points into defensible, analysis-ready yield products for management decisions?
Enterprise farms, precision agriculture consultancies, and digital agronomy platforms.
A team needs to standardize inconsistent yield data cleaning before zone generation, variable-rate planning, or year-over-year analytics.
| Parameter | Optional | Description |
|---|---|---|
| input (yield point vector) | no | Raw yield telemetry points used as input to the conditioning and QA pipeline. |
| yield_field_name, moisture_field_name, target_moisture_pct, header_field_name | no | Field-name mappings for yield/moisture/header attributes used by cleaning stages. |
| use_field_aliases | no | Whether known attribute aliases should be resolved automatically. |
| speed_field_name, heading_field_name | no | Telemetry field mappings used for speed and heading quality checks. |
| min_speed_kmh, max_speed_kmh, max_heading_change_deg | no | Operating-speed and heading-change limits used for telemetry QC filtering. |
| profile: fast | balanced | strict | no | Operational profile controlling sensitivity and QA strictness for risk workflows. |
| swath_width, edge_radius, reconcile_radius, normalization_radius | no | Geometric parameters controlling swath-edge handling and neighborhood reconciliation. |
| lag_correction_mode: none | distance | no | Lag correction mode controlling whether and how harvest lag compensation is applied. |
| lag_distance_m | no | Distance offset used when distance-based lag correction is enabled. |
| filtering_mode: standard | robust | no | Outlier-filtering method selection for yield cleaning. |
| robust_mad_threshold, z_score_threshold, min_yield, max_yield | no | Statistical thresholds and hard limits used for yield outlier rejection. |
| optional mean_tonnage | yes | Optional mean tonnage override used during normalization/reconciliation steps. |
| Parameter | Type | Description |
|---|---|---|
| qa_flags | GeoPackage | QA flag layer identifying records that failed yield telemetry checks. |
| telemetry_qc_points | optional GeoPackage | Optional point layer of telemetry QC diagnostics by record. |
| clean_points | GeoPackage | Cleaned yield points after telemetry and statistical filtering. |
| clean_map | GeoPackage | Cartography-ready cleaned yield layer for rapid map production. |
| confidence_points | GeoPackage | Point-level confidence diagnostics for cleaned yield records. |
| pass_lines | GeoPackage | Harvest pass line features inferred from telemetry trajectories. |
| pass_points | GeoPackage | Harvest pass points used in overlap and reconciliation analyses. |
| lag_corrected_points | optional GeoPackage | Optional points after lag-correction adjustment. |
| moisture_adjusted_points | optional GeoPackage | Optional points after moisture normalization adjustments. |
| filtered_points | GeoPackage | Points retained after standard filtering criteria are applied. |
| robust_filtered_points | optional GeoPackage | Optional points retained by robust filtering mode diagnostics. |
| normalized_points | GeoPackage | Yield points after normalization to common analytical basis. |
| reconciled_points | optional GeoPackage | Optional reconciled points after overlap and pass harmonization. |
| summary | JSON | Machine-readable summary report containing run metadata, QA diagnostics, and key metrics. |
| html_report | HTML | Human-readable customer-facing report generated from the summary contract for stakeholder review and QA traceability. |
import whitebox_workflows as wbw
wbe = wbw.WbEnvironment(include_pro=True, tier="pro")
result = wbe.yield_data_conditioning_and_qa(
input="data/yield_points.gpkg",
yield_field_name="YIELD",
header_field_name="HEADER",
profile="balanced",
swath_width=6.096,
output_prefix="output/yield_pipeline",
)
print(result)
Use of this function requires a license for Whitebox Workflows Professional (WbW-Pro). Please visit www.whiteboxgeo.com to purchase a license.