14 KiB
14 KiB
Crop Analysis Messaging Decision Flowchart
This flowchart visualizes the enhanced decision logic for automated crop analysis messaging based on field uniformity, spatial patterns, CI change trends, and acceptable area thresholds.
Decision Flow
flowchart TD
Start([Weekly CI Analysis Starts]) --> Extract[Extract CI values from satellite mosaics]
Extract --> CalcStats[Calculate field statistics:<br/>- Mean CI<br/>- Coefficient of Variation CV<br/>- Acceptable area percent<br/>- Spatial autocorrelation Morans I]
CalcStats --> CompareWeeks[Compare current week vs previous week]
CompareWeeks --> CalcChange[Calculate CI Change:<br/>Current minus Previous]
CalcChange --> CategorizeChange{Categorize CI Change}
CategorizeChange -->|Change ≥ +0.5| Increase[CI Increase]
CategorizeChange -->|-0.5 < Change < +0.5| Stable[CI Stable]
CategorizeChange -->|Change ≤ -0.5| Decrease[CI Decrease]
Increase --> CheckUniformity1{Enhanced Uniformity Check:<br/>CV and Acceptable Area}
Stable --> CheckUniformity2{Enhanced Uniformity Check:<br/>CV and Acceptable Area}
Decrease --> CheckUniformity3{Enhanced Uniformity Check:<br/>CV and Acceptable Area}
%% Enhanced uniformity categorization
CheckUniformity1 -->|CV > 0.25 OR<br/>Acceptable < 40| PoorUniformity1[POOR UNIFORMITY<br/>Urgent attention needed]
CheckUniformity1 -->|CV ≤ 0.08 AND<br/>Acceptable ≥ 45| ExcellentUniformity1[EXCELLENT UNIFORMITY<br/>Optimal field condition]
CheckUniformity1 -->|CV ≤ 0.15| GoodUniformity1[GOOD UNIFORMITY<br/>Check for clustering]
CheckUniformity1 -->|0.15 < CV ≤ 0.25| ModerateVariation1[MODERATE VARIATION<br/>Needs investigation]
CheckUniformity2 -->|CV > 0.25 OR<br/>Acceptable < 40| PoorUniformity2[POOR UNIFORMITY<br/>Urgent attention needed]
CheckUniformity2 -->|CV ≤ 0.08 AND<br/>Acceptable ≥ 45| ExcellentUniformity2[EXCELLENT UNIFORMITY<br/>Optimal field condition]
CheckUniformity2 -->|CV ≤ 0.15| GoodUniformity2[GOOD UNIFORMITY<br/>Check for clustering]
CheckUniformity2 -->|0.15 < CV ≤ 0.25| ModerateVariation2[MODERATE VARIATION<br/>Needs investigation]
CheckUniformity3 -->|CV > 0.25 OR<br/>Acceptable < 40| PoorUniformity3[POOR UNIFORMITY<br/>Urgent attention needed]
CheckUniformity3 -->|CV ≤ 0.08 AND<br/>Acceptable ≥ 45| ExcellentUniformity3[EXCELLENT UNIFORMITY<br/>Optimal field condition]
CheckUniformity3 -->|CV ≤ 0.15| GoodUniformity3[GOOD UNIFORMITY<br/>Check for clustering]
CheckUniformity3 -->|0.15 < CV ≤ 0.25| ModerateVariation3[MODERATE VARIATION<br/>Needs investigation]
%% Spatial analysis for good uniformity fields
GoodUniformity1 --> SpatialCheck1{Morans I > 0.95?<br/>Very strong clustering}
GoodUniformity2 --> SpatialCheck2{Morans I > 0.95?<br/>Very strong clustering}
GoodUniformity3 --> SpatialCheck3{Morans I > 0.95?<br/>Very strong clustering}
%% Clustering analysis for good uniformity
SpatialCheck1 -->|Yes| HighClustering1[VERY HIGH CLUSTERING<br/>Potential growth zones]
SpatialCheck1 -->|No| OptimalField1[EXCELLENT FIELD<br/>Uniform and well-distributed]
SpatialCheck2 -->|Yes| HighClustering2[VERY HIGH CLUSTERING<br/>Potential growth zones]
SpatialCheck2 -->|No| OptimalField2[EXCELLENT FIELD<br/>Uniform and well-distributed]
SpatialCheck3 -->|Yes| HighClustering3[VERY HIGH CLUSTERING<br/>Potential growth zones]
SpatialCheck3 -->|No| OptimalField3[EXCELLENT FIELD<br/>Uniform and well-distributed]
%% Spatial pattern analysis for moderate variation fields
ModerateVariation1 --> SpatialAnalysis1[Spatial Analysis:<br/>Morans I autocorrelation]
ModerateVariation2 --> SpatialAnalysis2[Spatial Analysis:<br/>Morans I autocorrelation]
ModerateVariation3 --> SpatialAnalysis3[Spatial Analysis:<br/>Morans I autocorrelation]
SpatialAnalysis1 --> ClassifyVariation1{Spatial Pattern?}
SpatialAnalysis2 --> ClassifyVariation2{Spatial Pattern?}
SpatialAnalysis3 --> ClassifyVariation3{Spatial Pattern?}
%% Localized vs distributed variation outcomes
ClassifyVariation1 -->|Morans I > 0.95<br/>Very Clustered| LocalizedInc[Localized Growth Zones<br/>plus CI Increase]
ClassifyVariation1 -->|Morans I ≤ 0.95<br/>Normal Random| DistributedInc[Field-wide Variation<br/>plus CI Increase]
ClassifyVariation2 -->|Morans I > 0.95<br/>Very Clustered| LocalizedStable[Localized Growth Zones<br/>plus CI Stable]
ClassifyVariation2 -->|Morans I ≤ 0.95<br/>Normal Random| DistributedStable[Field-wide Variation<br/>plus CI Stable]
ClassifyVariation3 -->|Morans I > 0.95<br/>Very Clustered| LocalizedDec[Localized Problem Zones<br/>plus CI Decrease]
ClassifyVariation3 -->|Morans I ≤ 0.95<br/>Normal Random| DistributedDec[Field-wide Variation<br/>plus CI Decrease]
%% Excellent and good uniformity outcomes
ExcellentUniformity1 --> NoAlert1[NO ALERT<br/>Excellent field condition]
ExcellentUniformity2 --> NoAlert2[NO ALERT<br/>Excellent field condition]
ExcellentUniformity3 --> NoAlert3[NO ALERT<br/>Excellent field condition]
HighClustering1 --> Alert1[CLUSTERING NOTED<br/>Growth zones detected]
HighClustering2 --> Alert2[CLUSTERING NOTED<br/>Growth zones detected]
HighClustering3 --> Alert3[CLUSTERING NOTED<br/>Growth zones detected]
OptimalField1 --> NoAlert1
OptimalField2 --> NoAlert2
OptimalField3 --> NoAlert3
%% Poor uniformity outcomes
PoorUniformity1 --> Alert4[URGENT ATTENTION<br/>Poor field uniformity]
PoorUniformity2 --> Alert5[URGENT ATTENTION<br/>Poor field uniformity]
PoorUniformity3 --> Alert6[URGENT ATTENTION<br/>Poor field uniformity]
%% Enhanced message outcomes for moderate variation
LocalizedInc --> Alert7[INVESTIGATION<br/>Growth zones plus CI increase]
DistributedInc --> Alert8[INVESTIGATION<br/>Field-wide variation plus CI increase]
LocalizedStable --> Alert9[SEND ALERT<br/>Problem zones detected - investigate]
DistributedStable --> Alert10[SEND ALERT<br/>Field-wide unevenness - check practices]
LocalizedDec --> Alert11[HIGH PRIORITY<br/>Declining zones - immediate action needed]
DistributedDec --> Alert12[HIGH PRIORITY<br/>Field declining overall - review management]
%% Final outcomes
Alert1 --> SendMessage1[Send Clustering Note]
Alert2 --> SendMessage2[Send Clustering Note]
Alert3 --> SendMessage3[Send Clustering Note]
Alert4 --> SendMessage4[Send Urgent Field Alert]
Alert5 --> SendMessage5[Send Urgent Field Alert]
Alert6 --> SendMessage6[Send Urgent Field Alert]
Alert7 --> SendMessage7[Send Investigation Alert]
Alert8 --> SendMessage8[Send Investigation Alert]
Alert9 --> SendMessage9[Send Problem Zone Alert]
Alert10 --> SendMessage10[Send Field Management Alert]
Alert11 --> SendMessage11[Send Urgent Zone Alert]
Alert12 --> SendMessage12[Send Urgent Management Alert]
NoAlert1 --> NoAction[Log for monitoring only]
NoAlert2 --> NoAction
NoAlert3 --> NoAction
SendMessage1 --> End([End: Message Generated])
SendMessage2 --> End
SendMessage3 --> End
SendMessage4 --> End
SendMessage5 --> End
SendMessage6 --> End
SendMessage7 --> End
SendMessage8 --> End
SendMessage9 --> End
SendMessage10 --> End
SendMessage11 --> End
SendMessage12 --> End
NoAction --> End2([End: No Action Required])
%% Styling
classDef alertBox fill:#ffcccc,stroke:#ff0000,stroke-width:2px
classDef urgentBox fill:#ff9999,stroke:#cc0000,stroke-width:3px
classDef clusterBox fill:#ffeaa7,stroke:#fdcb6e,stroke-width:2px
classDef noAlertBox fill:#ccffcc,stroke:#00ff00,stroke-width:2px
classDef decisionBox fill:#fff2cc,stroke:#d6b656,stroke-width:2px
classDef processBox fill:#dae8fc,stroke:#6c8ebf,stroke-width:2px
classDef spatialBox fill:#e1d5e7,stroke:#9673a6,stroke-width:2px
classDef excellentBox fill:#a8e6cf,stroke:#558b2f,stroke-width:2px
classDef poorBox fill:#ffcdd2,stroke:#d32f2f,stroke-width:3px
class Alert9,Alert10,SendMessage9,SendMessage10 alertBox
class Alert4,Alert5,Alert6,Alert11,Alert12,SendMessage4,SendMessage5,SendMessage6,SendMessage11,SendMessage12 urgentBox
class Alert1,Alert2,Alert3,Alert7,Alert8,SendMessage1,SendMessage2,SendMessage3,SendMessage7,SendMessage8 clusterBox
class NoAlert1,NoAlert2,NoAlert3,NoAction noAlertBox
class CategorizeChange,CheckUniformity1,CheckUniformity2,CheckUniformity3,ClassifyVariation1,ClassifyVariation2,ClassifyVariation3,SpatialCheck1,SpatialCheck2,SpatialCheck3 decisionBox
class Extract,CalcStats,CompareWeeks,CalcChange processBox
class SpatialAnalysis1,SpatialAnalysis2,SpatialAnalysis3 spatialBox
class ExcellentUniformity1,ExcellentUniformity2,ExcellentUniformity3,OptimalField1,OptimalField2,OptimalField3 excellentBox
class PoorUniformity1,PoorUniformity2,PoorUniformity3 poorBox
Enhanced Decision Matrix with Spatial Analysis
| Uniformity Category | CV Range | Acceptable Area % | Spatial Pattern | CI Change | Message | Alert Level |
|---|---|---|---|---|---|---|
| Excellent | ≤ 0.08 | ≥ 45% | Normal (≤0.95) | Any | Excellent field condition | ❌ None |
| Excellent | ≤ 0.08 | ≥ 45% | High clustering (>0.95) | Any | Growth zones detected | 🔶 Clustering Note |
| Good | ≤ 0.15 | ≥ 45% | Normal (≤0.95) | Any | Good uniformity, well-distributed | ❌ None |
| Good | ≤ 0.15 | ≥ 45% | High clustering (>0.95) | Any | Potential growth zones | 🔶 Clustering Note |
| Moderate | 0.15-0.25 | 40-45% | Normal (≤0.95) | Increase | Field-wide variation + CI increase | 🔶 Investigation |
| Moderate | 0.15-0.25 | 40-45% | Normal (≤0.95) | Stable | Field-wide unevenness - check practices | 🚨 Alert |
| Moderate | 0.15-0.25 | 40-45% | Normal (≤0.95) | Decrease | Field declining overall - review management | 🚨🚨 Urgent |
| Moderate | 0.15-0.25 | 40-45% | High clustering (>0.95) | Increase | Growth zones + CI increase | 🔶 Investigation |
| Moderate | 0.15-0.25 | 40-45% | High clustering (>0.95) | Stable | Problem zones detected - investigate | 🚨 Alert |
| Moderate | 0.15-0.25 | 40-45% | High clustering (>0.95) | Decrease | Declining zones - immediate action needed | 🚨🚨 Urgent |
| Poor | > 0.25 | < 40% | Any | Any | Poor field uniformity - urgent attention | 🚨🚨 Urgent |
Spatial Analysis Methods
1. Moran's I Spatial Autocorrelation
- Purpose: Determines if similar CI values cluster together spatially
- Agricultural Context: High values (>0.95) indicate very strong clustering, which is noteworthy in agricultural fields where some clustering is natural
- Threshold: > 0.95 for "very high clustering" (potential growth zones or problem areas)
- Calculation: Compares each pixel's value to its spatial neighbors using queen contiguity
2. Simple Extreme Detection (Mean ± 1.5 × SD)
- Purpose: Identifies pixels with values significantly above or below the field average
- Method: Values outside mean ± 1.5 standard deviations are considered extremes
- Agricultural Relevance: More interpretable than complex hotspot statistics
- Output: Percentage of field area classified as extremes
3. Enhanced Messaging Logic
Excellent Uniformity (CV ≤ 0.08, Acceptable ≥ 45%):
- ✅ "Excellent field condition - optimal uniformity"
- 📊 "Continue current management practices"
Good Uniformity with High Clustering (CV ≤ 0.15, Moran's I > 0.95):
- 🔶 "Growth zones detected - potential for optimization"
- 📍 "Monitor clustered areas for development opportunities"
Moderate Variation Issues:
- 🔍 "Field shows moderate variation - investigate causes"
- 📈 "Consider zone-specific management approaches"
Poor Uniformity (CV > 0.25 or Acceptable < 40%):
- 🚨 "Urgent attention needed - poor field uniformity"
- ⚠️ "Immediate management intervention required"
Key Thresholds
-
CI Change Thresholds:
- Increase: ≥ +0.5
- Stable: -0.5 to +0.5
- Decrease: ≤ -0.5
-
Field Uniformity Thresholds:
- Excellent: CV ≤ 0.08 AND Acceptable ≥ 45%
- Good: CV ≤ 0.15 AND Acceptable ≥ 45%
- Moderate: 0.15 < CV ≤ 0.25 OR 40% ≤ Acceptable < 45%
- Poor: CV > 0.25 OR Acceptable < 40%
-
Spatial Clustering Threshold:
- Very High Clustering: Moran's I > 0.95
- Normal/Random: Moran's I ≤ 0.95
-
Extreme Values Threshold:
- Extremes: Values outside mean ± 1.5 × standard deviation
- Acceptable area: Percentage of field within normal range
Enhanced Alert Logic
🚨🚨 URGENT ALERTS (High Priority):
- ✅ Poor field uniformity (CV > 0.25 or Acceptable < 40%)
- ✅ Moderate variation with declining CI (zone-specific or field-wide)
🔶 CLUSTERING NOTES:
- ✅ Good/excellent uniformity with very high clustering (Moran's I > 0.95)
- ✅ Moderate variation with increasing CI and clustering
🚨 STANDARD ALERTS:
- ✅ Moderate variation with stable CI (investigate practices)
❌ NO ALERTS:
- ❌ Excellent uniformity with normal clustering
- ❌ Good uniformity with normal clustering
Actionable Insights
For Excellent/Good Uniformity:
- ✅ Continue current management practices
- 📊 Monitor for clustering patterns
- 🎯 Optimize growth zones if detected
For Moderate Variation:
- 🔍 Investigate specific zones or field-wide issues
- 📈 Consider zone-specific management
- 🌾 Review irrigation, fertilization, or pest management
For Poor Uniformity:
- 🚨 Immediate management intervention required
- 🎯 Focus on most problematic areas first
- 📊 Comprehensive field assessment needed