DHEIVER commited on
Commit
44ecdae
·
verified ·
1 Parent(s): 97e70e4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +60 -1
app.py CHANGED
@@ -324,7 +324,66 @@ class IrisAnalyzer:
324
  else:
325
  return "baixa"
326
 
327
- def process_image(img):
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
328
  if img is None:
329
  return [None] * 5, gr.Warning("Por favor, carregue uma imagem.")
330
 
 
324
  else:
325
  return "baixa"
326
 
327
+ def process_image(img):
328
+ if img is None:
329
+ return [None] * 5, gr.Warning("Por favor, carregue uma imagem.")
330
+
331
+ analyzer = IrisAnalyzer()
332
+ processed_img, results = analyzer.analyze_iris(img)
333
+
334
+ # Relatório Geral
335
+ general_report = "# 📊 Visão Geral da Análise\n\n"
336
+ status_counts = {"baixa": 0, "media": 0, "alta": 0}
337
+ for analysis in results["analysis"].values():
338
+ status_counts[analysis["status"]] += 1
339
+
340
+ health_score = ((status_counts["alta"] * 100) + (status_counts["media"] * 50)) / len(results["analysis"])
341
+ general_report += f"**Índice de Saúde Geral:** {health_score:.1f}%\n\n"
342
+ general_report += f"**Data da Análise:** {results['timestamp']}\n\n"
343
+ general_report += "**Qualidade da Imagem:** {:.1f}%\n\n".format(results['metrics']['image_quality'])
344
+
345
+ # Condições Detalhadas
346
+ detailed_conditions = "# 🔍 Análise Detalhada por Zona\n\n"
347
+ for zone_name, analysis in results["analysis"].items():
348
+ detailed_conditions += f"## {zone_name}\n\n"
349
+ detailed_conditions += "### Condições Identificadas:\n"
350
+ for condition in analysis["conditions"]:
351
+ detailed_conditions += f"- {condition}\n"
352
+ detailed_conditions += f"\n**Status:** {analysis['status'].title()}\n"
353
+ detailed_conditions += f"**Confiança da Análise:** {analysis['confianca_analise']}\n"
354
+ detailed_conditions += "**Métricas Detalhadas:**\n"
355
+ for metric, value in analysis["metrics"].items():
356
+ detailed_conditions += f"- {metric.replace('_', ' ').title()}: {value:.1f}\n"
357
+ detailed_conditions += "\n"
358
+
359
+ # Recomendações
360
+ recommendations = "# 💡 Recomendações Personalizadas\n\n"
361
+ for zone_name, analysis in results["analysis"].items():
362
+ recommendations += f"## {zone_name}\n\n"
363
+ for rec in analysis["recommendations"]:
364
+ recommendations += f"- {rec}\n"
365
+ recommendations += "\n"
366
+
367
+ # Alertas de Saúde
368
+ health_alerts = "# ⚠️ Alertas e Atenção Especial\n\n"
369
+ for zone_name, analysis in results["analysis"].items():
370
+ if analysis["status"] == "baixa" or analysis["metrics"]["health_score"] < 50:
371
+ health_alerts += f"## {zone_name}\n"
372
+ health_alerts += "### Pontos de Atenção:\n"
373
+ for condition in analysis["conditions"]:
374
+ health_alerts += f"- ⚠️ {condition}\n"
375
+ health_alerts += "\n### Ações Recomendadas:\n"
376
+ for rec in analysis["recommendations"]:
377
+ health_alerts += f"- ✅ {rec}\n"
378
+ health_alerts += "\n"
379
+
380
+ return [
381
+ processed_img,
382
+ general_report,
383
+ detailed_conditions,
384
+ recommendations,
385
+ health_alerts
386
+ ]
387
  if img is None:
388
  return [None] * 5, gr.Warning("Por favor, carregue uma imagem.")
389