Workflow Listο
We group FarmVibes.AI workflows in the following categories:
Data Ingestion: workflows that download and preprocess data from a particular source, preparing data to be the starting point for most of the other workflows in the platform. This includes raw data sources (e.g., Sentinel 1 and 2, LandSat, CropDataLayer) as well as the SpaceEye cloud-removal model;
Data Processing: workflows that transform data into different data types (e.g., computing NDVI/MSAVI/Methane indexes, aggregating mean/max/min statistics of rasters, timeseries aggregation);
FarmAI: composed workflows (data ingestion + processing) whose outputs enable FarmAI scenarios (e.g., predicting conservation practices, estimating soil carbon sequestration, identifying methane leakage);
ForestAI: composed workflows (data ingestion + processing) whose outputs enable ForestAI scenarios (e.g., detecting forest change, estimating forest extent);
ML: machine learning-related workflows to train, evaluate, and infer models within the FarmVibes.AI platform (e.g., dataset creation, inference);
Below is a list of all available workflows within the FarmVibes.AI platform. For each of them, we provide a brief description and a link to the corresponding documentation page.
data_ingestionο
admag/admag_seasonal_fieldπ: Generates SeasonalFieldInformation using ADMAg (Microsoft Azure Data Manager for Agriculture).admag/prescriptionsπ: Fetches prescriptions using ADMAg (Microsoft Azure Data Manager for Agriculture).airbus/airbus_downloadπ: Downloads available AirBus imagery for the input geometry and time range.airbus/airbus_priceπ: Prices available AirBus imagery for the input geometry and time range.alos/alos_forest_extent_downloadπ: Downloads Advanced Land Observing Satellite (ALOS) forest/non-forest classification map.alos/alos_forest_extent_download_mergeπ: Downloads Advanced Land Observing Satellite (ALOS) forest/non-forest classification map and merges it into a single raster.bing/basemap_downloadπ: Downloads Bing Maps basemaps.bing/basemap_download_mergeπ: Downloads Bing Maps basemap tiles and merges them into a single raster.cdl/download_cdlπ: Downloads crop classes maps in the continental USA for the input time range.dem/download_demπ: Downloads digital elevation map tiles that intersect with the input geometry and time range.gedi/download_gediπ: Downloads GEDI products for the input region and time range.gedi/download_gedi_rh100π: Downloads L2B GEDI products and extracts RH100 variables.glad/glad_forest_extent_downloadπ: Downloads Global Land Analysis (GLAD) forest extent data.glad/glad_forest_extent_download_mergeπ: Downloads the tiles from Global Land Analysis (GLAD) forest data that intersect with the user input geometry and time range, and merges them into a single raster.gnatsgo/download_gnatsgoπ: Downloads gNATSGO raster data that intersect with the input geometry and time range.hansen/hansen_forest_change_downloadπ: Downloads and merges Global Forest Change (Hansen) rasters that intersect the user-provided geometry/time range.landsat/preprocess_landsatπ: Downloads and preprocesses LANDSAT tiles that intersect with the input geometry and time range.modis/download_modis_surface_reflectanceπ: Downloads MODIS 8-day surface reflectance rasters that intersect with the input geometry and time range.modis/download_modis_vegetation_indexπ: Downloads MODIS 16-day vegetation index products that intersect with the input geometry and time range.naip/download_naipπ: Downloads NAIP tiles that intersect with the input geometry and time range.osm_road_geometriesπ: Downloads road geometry for input region from Open Street Maps.sentinel1/preprocess_s1π: Downloads and preprocesses tiles of Sentinel-1 imagery that intersect with the input Sentinel-2 products in the input time range.sentinel2/cloud_ensembleπ: Computes the cloud probability of a Sentinel-2 L2A raster using an ensemble of five cloud segmentation models.sentinel2/improve_cloud_maskπ: Improves cloud masks by merging the product cloud mask with cloud and shadow masks computed by machine learning segmentation models.sentinel2/improve_cloud_mask_ensembleπ: Improves cloud masks by merging the product cloud mask with cloud and shadow masks computed by an ensemble of machine learning segmentation models.sentinel2/preprocess_s2π: Downloads and preprocesses Sentinel-2 imagery that covers the input geometry and time range.sentinel2/preprocess_s2_ensemble_masksπ: Downloads and preprocesses Sentinel-2 imagery that covers the input geometry and time range, and computes improved cloud masks using an ensemble of cloud and shadow segmentation models.sentinel2/preprocess_s2_improved_masksπ: Downloads and preprocesses Sentinel-2 imagery that covers the input geometry and time range, and computes improved cloud masks using cloud and shadow segmentation models.soil/soilgridsπ: Downloads digital soil mapping information from SoilGrids for the input geometry.soil/usdaπ: Downloads USDA soil classification raster.spaceeye/spaceeyeπ: Runs the SpaceEye cloud removal pipeline, yielding daily cloud-free images for the input geometry and time range.spaceeye/spaceeye_inferenceπ: Performs SpaceEye inference to generate daily cloud-free images given Sentinel data and cloud masks.spaceeye/spaceeye_interpolationπ: Runs the SpaceEye cloud removal pipeline using an interpolation-based algorithm, yielding daily cloud-free images for the input geometry and time range.spaceeye/spaceeye_interpolation_inferenceπ: Performs temporal damped interpolation to generate daily cloud-free images given Sentinel-2 data and cloud masks.spaceeye/spaceeye_preprocessπ: Runs the SpaceEye preprocessing pipeline.spaceeye/spaceeye_preprocess_ensembleπ: Runs the SpaceEye preprocessing pipeline with an ensemble of cloud segmentation models.user_data/ingest_geometryπ: Adds user geometries into the cluster storage, allowing for them to be used on workflows.user_data/ingest_rasterπ: Adds user rasters into the cluster storage, allowing for them to be used on workflows.user_data/ingest_smbπ: Adds user rasters into the cluster storage from an SMB share, allowing for them to be used on workflows.weather/download_chirpsπ: Downloads accumulated precipitation data from the CHIRPS dataset.weather/download_era5π: Hourly estimated weather variables.weather/download_era5_monthlyπ: Monthly estimated weather variables.weather/download_gridmetπ: Daily surface meteorological properties from GridMET.weather/download_herbieπ: Downloads forecast data for provided location & time range using herbie python package.weather/download_terraclimateπ: Monthly climate and hydroclimate properties from TerraClimate.weather/get_ambient_weatherπ: Downloads weather data from an Ambient Weather station.weather/get_forecastπ: Downloads weather forecast data from NOAA Global Forecast System (GFS) for the input time range.weather/herbie_forecastπ: Downloads forecast observations for provided location & time range using herbie python package.
data_processingο
chunk_onnx/chunk_onnxπ: Runs an Onnx model over all rasters in the input to produce a single raster.chunk_onnx/chunk_onnx_sequenceπ: Runs an Onnx model over all rasters in the input to produce a single raster.clip/clipπ: Performs a clip on an input raster based on a provided reference geometry.gradient/raster_gradientπ: Computes the gradient of each band of the input raster with a Sobel operator.heatmap/classificationπ: Utilizes input Sentinel-2 satellite imagery & the sensor samples as labeled data that contain nutrient information (Nitrogen, Carbon, pH, Phosphorus) to train a model using Random Forest classifier. The inference operation predicts nutrients in soil for the chosen farm boundary.index/indexπ: Computes an index from the bands of an input raster.linear_trend/chunked_linear_trendπ: Computes the pixel-wise linear trend of a list of rasters (e.g. NDVI).merge/match_merge_to_refπ: Resamples input rasters to the reference rastersβ grid.outlier/detect_outlierπ: Fits a single-component Gaussian Mixture Model (GMM) over input data to detect outliers according to the threshold parameter.threshold/threshold_rasterπ: Thresholds values of the input raster if higher than the threshold parameter.timeseries/timeseries_aggregationπ: Computes the mean, standard deviation, maximum, and minimum values of all regions of the raster and aggregates them into a timeseries.timeseries/timeseries_masked_aggregationπ: Computes the mean, standard deviation, maximum, and minimum values of all regions of the raster considered by the mask and aggregates them into a timeseries.
farm_aiο
agriculture/canopy_coverπ: Estimates pixel-wise canopy cover for a region and date.agriculture/change_detectionπ: Identifies changes/outliers over NDVI across dates.agriculture/emergence_summaryπ: Calculates emergence statistics using thresholded MSAVI (mean, standard deviation, maximum and minimum) for the input geometry and time range.agriculture/green_house_gas_fluxesπ: Computes Green House Fluxes for a region and date rangeagriculture/heatmap_using_classificationπ: The workflow generates a nutrient heatmap for samples provided by user by downloading the samples from user input.agriculture/heatmap_using_classification_admagπ: This workflow integrate the ADMAG API to download prescriptions and generate heatmap.agriculture/heatmap_using_neighboring_data_pointsπ: Creates heatmap using the neighbors by performing spatial interpolation operations. It utilizes soil information collected at optimal sensor/sample locations and downloaded sentinel satellite imagery.agriculture/methane_indexπ: Computes methane index from ultra emitters for a region and date range.agriculture/ndvi_summaryπ: Calculates NDVI statistics (mean, standard deviation, maximum and minimum) for the input geometry and time range.agriculture/weed_detectionπ: Generates shape files for similarly colored regions in the input raster.carbon_local/admag_carbon_integrationπ: Computes the offset amount of carbon that would be sequestered in a seasonal field using Microsoft Azure Data Manager for Agriculture (ADMAg) data.carbon_local/carbon_whatifπ: Computes the offset amount of carbon that would be sequestered in a seasonal field using the baseline (historical) and scenario (time range interested in) information.land_cover_mapping/conservation_practicesπ: Identifies conservation practices (terraces and grassed waterways) using elevation data.land_degradation/landsat_ndvi_trendπ: Estimates a linear trend over NDVI computer over LANDSAT tiles that intersect with the input geometry and time range.land_degradation/ndvi_linear_trendπ: Computes the pixel-wise NDVI linear trend over the input raster.segmentation/auto_segment_basemapπ: Downloads basemap with BingMaps API and runs Segment Anything Model (SAM) automatic segmentation over them.segmentation/auto_segment_s2π: Downloads Sentinel-2 imagery and runs Segment Anything Model (SAM) automatic segmentation over them.segmentation/segment_basemapπ: Downloads basemap with BingMaps API and runs Segment Anything Model (SAM) over them with points and/or bounding boxes as prompts.segmentation/segment_s2π: Downloads Sentinel-2 imagery and runs Segment Anything Model (SAM) over them with points and/or bounding boxes as prompts.sensor/optimal_locationsπ: Identify optimal locations by performing clustering operation using Gaussian Mixture model on computed raster indices.water/irrigation_classificationπ: Develops 30m pixel-wise irrigation probability map.
forest_aiο
deforestation/alos_trend_detectionπ: Detects increase/decrease trends in forest pixel levels over the user-input geometry and time range for the ALOS forest map.deforestation/ordinal_trend_detectionπ: Detects increase/decrease trends in the pixel levels over the user-input geometry and time range.
mlο
crop_segmentationπ: Runs a crop segmentation model based on NDVI from SpaceEye imagery along the year.dataset_generation/datagen_crop_segmentationπ: Generates a dataset for crop segmentation, based on NDVI raster and Crop Data Layer (CDL) maps.driveway_detectionπ: Detects driveways in front of houses.segment_anything/automatic_segmentationπ: Runs a Segment Anything Model (SAM) automatic segmentation over input rasters.segment_anything/prompt_segmentationπ: Runs Segment Anything Model (SAM) over input rasters with points and/or bounding boxes as prompts.spectral_extensionπ: Generates high-resolution Sentinel-2 bands by combining UAV and Sentinel-2 data.