Skip to content

Commit

Permalink
Sync with prod branch
Browse files Browse the repository at this point in the history
Co-authored-by: Alex Crown <acrown@microsoft.com>
Co-authored-by: Eduardo Rodrigues <edrodrigues@microsoft.com>
Co-authored-by: Rafael Padilha <rpadilha@microsoft.com>
Co-authored-by: Renato Luiz de Freitas Cunha <renato.cunha@microsoft.com>
  • Loading branch information
5 people committed Apr 5, 2024
1 parent 8f6fb59 commit 7553fd5
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 0 deletions.
18 changes: 18 additions & 0 deletions docs/source/docfiles/markdown/WORKFLOW_LIST.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,24 @@ Below is a list of all available workflows within the FarmVibes.AI platform. For
- [`heatmap/classification` 📄](workflow_yaml/data_processing/heatmap/classification.md): 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.


The workflow generates a heatmap for selected nutrient. It relies on sample soil data that contain information of nutrients.
The quantity of samples define the accuracy of the heat map generation. During the research performed testing with
samples spaced at 200 feet, 100 feet and 50 feet. The 50 feet sample spaced distance provided results matching to the
ground truth. Generating heatmap with this approach reduce the number of samples.
It utilizes the logic below behind the scenes to generate heatmap.
- Read the sentinel raster provided.
- Sensor samples needs to be uploaded into prescriptions entity in Azure data manager for Agriculture (ADMAg). ADMAg is having hierarchy
to hold information of Farmer, Field, Seasons, Crop, Boundary etc. Prior to uploading prescriptions, it is required to build hierarchy and
a prescription_map_id. All prescriptions uploaded to ADMAg are related to farm hierarchy through prescription_map_id. Please refer to
https://learn.microsoft.com/en-us/rest/api/data-manager-for-agri/ for more information on ADMAg.
- Compute indices using the spyndex python package.
- Clip the satellite imagery & sensor samples using farm boundary.
- Perform spatial interpolation to find raster pixels within the offset distance from sample location and assign the value of nutrients to group of pixels.
- Classify the data based on number of bins.
- Train the model using Random Forest classifier.
- Predict the nutrients using the satellite imagery.
- Generate a shape file using the predicted outputs.

- [`index/index` 📄](workflow_yaml/data_processing/index/index.md): Computes an index from the bands of an input raster.

- [`linear_trend/chunked_linear_trend` 📄](workflow_yaml/data_processing/linear_trend/chunked_linear_trend.md): Computes the pixel-wise linear trend of a list of rasters (e.g. NDVI).
Expand Down
21 changes: 21 additions & 0 deletions src/vibe_core/vibe_core/terraform/aks/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
How to use this terraform file?

Install Terraform from https://developer.hashicorp.com/terraform/downloads

In current directory, execute:

terraform init
terraform apply -var-file=example-vars.tfvars

Terraform apply will ask you the following questions:
You can also refer to example-vars.tfvars

location - This is the Azure Region you want to deploy in. For example, westus2, eastus2, etc.
tenantId - This is the Azure Tenant GUID of your Tenant. You can find this by going to Azure Active Directory or navigating to: https://ms.portal.azure.com/#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/~/Overview
subscriptionId - This is the Subscription GUID for the subscription you want to us.
namespace - This is the kubernetes namespace you want to deploy your services in. This will be a new namespace which the script will create. Recommneded value is "terravibes"
acr_registry - This is the path to the Docker Registry where the images are location. Public location for FarmVibes is mcr.microsoft.com/farmai/terravibes
acr_registry_username - Username to access the Docker Registry
acr_registry_password - Password to access the Docker Registry
prefix - A short prefix to distinguish your deployment
resource_group_name - If you want to use an existing resource group, specify it here
7 changes: 7 additions & 0 deletions src/vibe_core/vibe_core/terraform/aks/example-vars.tfvars
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
tenantId="<FILL YOUR TENANT ID HERE>"
subscriptionId="<FILL YOUR SUBSCRIPTION ID HERE>"
acr_registry="mcr.microsoft.com/farmai/terravibes"
namespace="terravibes"
location="<FILL AZURE REGION HERE>"
prefix="<FILL PREFIX HERE>"
resource_group_name="<FILL IN AN EXISTING RG IF YOU WANT TO USE ONE>"

0 comments on commit 7553fd5

Please sign in to comment.