Lucia97ALonsoC commited on
Commit
5242892
·
verified ·
1 Parent(s): be8e58f

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +73 -0
app.py ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ import geemap.foliumap as geemap
3
+ import ee
4
+ import time
5
+ import os
6
+
7
+ service_account = 'tesina@ee-tesinahumedal.iam.gserviceaccount.com'
8
+
9
+ try:
10
+ earthengine_token = os.environ.get("EARTHENGINE_TOKEN")
11
+ print(f"🌎 EARTHENGINE_TOKEN encontrado: {earthengine_token is not None}")
12
+
13
+ if earthengine_token:
14
+ print("🔐 Generando credenciales...")
15
+ credentials = ee.ServiceAccountCredentials(service_account, key_data=earthengine_token)
16
+
17
+ print("🚀 Inicializando Earth Engine...")
18
+ ee.Initialize(credentials)
19
+
20
+ print("✅ Earth Engine initialized successfully using environment variable.")
21
+ else:
22
+ raise ValueError("🌪️ EARTHENGINE_TOKEN environment variable not set")
23
+
24
+ except Exception as e:
25
+ print(f"❌ An error occurred during Earth Engine initialization: {e}")
26
+ print("🛑 Please ensure the EARTHENGINE_TOKEN environment variable is correctly set.")
27
+
28
+
29
+ st.set_page_config(layout="wide")
30
+
31
+ st.title("🔥 Modelos de detección de focos ígneos")
32
+
33
+ # Selección de modelos (cuando tengas las predicciones)
34
+ modelos_disponibles = ["Modelo A ", "Modelo B "]
35
+ modelo1 = st.selectbox("Seleccionar primer modelo", modelos_disponibles, index=0)
36
+ modelo2 = st.selectbox("Seleccionar segundo modelo", modelos_disponibles, index=1)
37
+
38
+ # Espacio para seleccionar fecha o rango de tiempo
39
+ fecha = st.date_input("Seleccionar fecha", value=None)
40
+
41
+ with st.spinner("Plantando un nuevo modelo... 🌱"):
42
+ time.sleep(2)
43
+ st.success("¡Modelo listo para comparar! 🌿")
44
+
45
+ # Mapa de comparación lado a lado
46
+ col1, col2 = st.columns(2)
47
+ with col1:
48
+ st.subheader(f"Predicción - {modelo1}")
49
+ Map1 = geemap.Map(center=[-32.0, -60.0], zoom=6)
50
+ # Acá cargarías la capa de predicción del modelo1
51
+ Map1.add_basemap('SATELLITE')
52
+ Map1.to_streamlit(height=400)
53
+
54
+ with col2:
55
+ st.subheader(f"Predicción - {modelo2}")
56
+ Map2 = geemap.Map(center=[-32.0, -60.0], zoom=6)
57
+ # Acá cargarías la capa de predicción del modelo2
58
+ Map2.add_basemap('SATELLITE')
59
+ Map2.to_streamlit(height=400)
60
+
61
+ # Métricas de ejemplo
62
+ st.markdown("### 📊 Comparación de métricas")
63
+ metricas = {
64
+ "Precisión": [0.85, 0.78],
65
+ "Recall": [0.90, 0.72],
66
+ "F1 Score": [0.87, 0.75],
67
+ }
68
+ st.dataframe(metricas)
69
+
70
+ # Pie de página
71
+ st.markdown("---")
72
+ st.markdown("🌍 Datos de Earth Engine | App en Streamlit | © Alonso L. Cabana A.")
73
+