Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -72,6 +72,12 @@ def process_image(image, confidence_threshold=0.7):
|
|
| 72 |
# Interface Streamlit
|
| 73 |
st.title("Analyse d'Images pour Détection de Personnes")
|
| 74 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 75 |
# Téléchargement des images
|
| 76 |
uploaded_files = st.file_uploader("Choisissez des images (vous pouvez en ajouter plusieurs)", type=["jpg", "jpeg", "png"], accept_multiple_files=True)
|
| 77 |
|
|
@@ -79,7 +85,7 @@ uploaded_files = st.file_uploader("Choisissez des images (vous pouvez en ajouter
|
|
| 79 |
confidence_threshold = st.slider("Seuil de confiance pour la détection (0 à 1)", 0.0, 1.0, 0.7, 0.01)
|
| 80 |
|
| 81 |
# Traitement des images et calcul de la moyenne
|
| 82 |
-
if uploaded_files:
|
| 83 |
total_persons = 0
|
| 84 |
total_images = len(uploaded_files)
|
| 85 |
|
|
@@ -103,10 +109,16 @@ if uploaded_files:
|
|
| 103 |
average_persons = math.ceil(total_persons / total_images) # Arrondir au supérieur
|
| 104 |
st.write(f"**Moyenne des personnes détectées sur toutes les images : {average_persons}**")
|
| 105 |
|
| 106 |
-
# Générer un e-mail avec Gemini basé sur la moyenne arrondie
|
| 107 |
-
prompt =
|
|
|
|
|
|
|
|
|
|
|
|
|
| 108 |
api_key = "AIzaSyCJVUr-76I4TL42X98d9U0THbRD3MKlB38" # Clé d'API
|
| 109 |
|
| 110 |
email_text = generate_text_with_gemini(api_key, prompt)
|
| 111 |
st.write("**E-mail généré :**")
|
| 112 |
st.write(email_text)
|
|
|
|
|
|
|
|
|
| 72 |
# Interface Streamlit
|
| 73 |
st.title("Analyse d'Images pour Détection de Personnes")
|
| 74 |
|
| 75 |
+
# Ajout d'une boîte de sélection pour la localisation
|
| 76 |
+
location = st.selectbox("Sélectionnez la localisation de la photo :", ["École", "Manifestation", "Meeting", "Autre"])
|
| 77 |
+
|
| 78 |
+
# Champ pour entrer le nom du destinataire
|
| 79 |
+
recipient_name = st.text_input("Entrez le nom du destinataire de l'e-mail :")
|
| 80 |
+
|
| 81 |
# Téléchargement des images
|
| 82 |
uploaded_files = st.file_uploader("Choisissez des images (vous pouvez en ajouter plusieurs)", type=["jpg", "jpeg", "png"], accept_multiple_files=True)
|
| 83 |
|
|
|
|
| 85 |
confidence_threshold = st.slider("Seuil de confiance pour la détection (0 à 1)", 0.0, 1.0, 0.7, 0.01)
|
| 86 |
|
| 87 |
# Traitement des images et calcul de la moyenne
|
| 88 |
+
if uploaded_files and recipient_name: # S'assurer que des images sont téléchargées et qu'un nom est saisi
|
| 89 |
total_persons = 0
|
| 90 |
total_images = len(uploaded_files)
|
| 91 |
|
|
|
|
| 109 |
average_persons = math.ceil(total_persons / total_images) # Arrondir au supérieur
|
| 110 |
st.write(f"**Moyenne des personnes détectées sur toutes les images : {average_persons}**")
|
| 111 |
|
| 112 |
+
# Générer un e-mail avec Gemini basé sur la moyenne arrondie et les détails du contexte
|
| 113 |
+
prompt = (
|
| 114 |
+
f"Génère-moi un mail destiné à {recipient_name}, attaché de promotion, pour lui signaler que la moyenne "
|
| 115 |
+
f"des personnes détectées sur les images est de {average_persons} élèves dans le cadre d'une {location}. "
|
| 116 |
+
"Le mail doit être prêt à l'envoi, clair, concis et adapté à un contexte professionnel."
|
| 117 |
+
)
|
| 118 |
api_key = "AIzaSyCJVUr-76I4TL42X98d9U0THbRD3MKlB38" # Clé d'API
|
| 119 |
|
| 120 |
email_text = generate_text_with_gemini(api_key, prompt)
|
| 121 |
st.write("**E-mail généré :**")
|
| 122 |
st.write(email_text)
|
| 123 |
+
else:
|
| 124 |
+
st.write("Veuillez télécharger des images et entrer le nom du destinataire.")
|