Update app.py
Browse files
app.py
CHANGED
@@ -114,7 +114,29 @@ def app():
|
|
114 |
summary_text = "<li>Your hemoglobin is a bit low...</li><li>Consider iron tests.</li>" # Placeholder
|
115 |
pdf_path = generate_pdf_report(image, results_dict, summary_text)
|
116 |
|
117 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
118 |
|
119 |
with gr.Blocks() as demo:
|
120 |
gr.Markdown("""# 🧠 Face-Based Lab Test AI Report""")
|
@@ -124,7 +146,7 @@ def app():
|
|
124 |
button = gr.Button("🔍 Run Analysis")
|
125 |
pdf_output = gr.File(label="📄 Download Report")
|
126 |
with gr.Column():
|
127 |
-
note = gr.
|
128 |
preview = gr.Image(label="Scan Preview")
|
129 |
|
130 |
button.click(fn=process, inputs=image, outputs=[note, preview, pdf_output])
|
|
|
114 |
summary_text = "<li>Your hemoglobin is a bit low...</li><li>Consider iron tests.</li>" # Placeholder
|
115 |
pdf_path = generate_pdf_report(image, results_dict, summary_text)
|
116 |
|
117 |
+
table_html = "<table style='width:100%;border-collapse:collapse;margin-top:10px;'>"
|
118 |
+
table_html += "<tr><th style='border:1px solid #ccc;padding:6px;'>Test</th><th style='border:1px solid #ccc;padding:6px;'>Result</th><th style='border:1px solid #ccc;padding:6px;'>Status</th></tr>"
|
119 |
+
for k, v in results_dict.items():
|
120 |
+
if k in ["Hemoglobin", "WBC Count", "Platelets"]:
|
121 |
+
status, icon, bg = get_risk_color(v, (13.5, 17.5) if k == "Hemoglobin" else (4.0, 11.0) if k == "WBC Count" else (150, 450))
|
122 |
+
table_html += f"<tr style='background:{bg}'><td style='border:1px solid #ccc;padding:6px;'>{k}</td><td style='border:1px solid #ccc;padding:6px;'>{v}</td><td style='border:1px solid #ccc;padding:6px;'>{icon} {status}</td></tr>"
|
123 |
+
else:
|
124 |
+
table_html += f"<tr><td style='border:1px solid #ccc;padding:6px;'>{k}</td><td style='border:1px solid #ccc;padding:6px;'>{v}</td><td style='border:1px solid #ccc;padding:6px;'>-</td></tr>"
|
125 |
+
table_html += "</table>"
|
126 |
+
|
127 |
+
summary_block = """
|
128 |
+
<div style='margin-top:20px;padding:12px;border:1px dashed #999;background:#f9f9f9;'>
|
129 |
+
<h4>📝 Summary in Your Language</h4>
|
130 |
+
<details><summary><b>Hindi</b></summary>
|
131 |
+
<ul><li>आपका हीमोग्लोबिन थोड़ा कम है — यह हल्के एनीमिया का संकेत हो सकता है। कृपया CBC और आयरन टेस्ट करवाएं।</li></ul>
|
132 |
+
</details>
|
133 |
+
<details><summary><b>Telugu</b></summary>
|
134 |
+
<ul><li>మీ హిమోగ్లోబిన్ తక్కువగా ఉంది — ఇది అనీమియా సూచించవచ్చు. CBC, Iron పరీక్షలు చేయించండి.</li></ul>
|
135 |
+
</details>
|
136 |
+
</div>"""
|
137 |
+
|
138 |
+
full_html = table_html + summary_block
|
139 |
+
return full_html, frame_rgb, pdf_path
|
140 |
|
141 |
with gr.Blocks() as demo:
|
142 |
gr.Markdown("""# 🧠 Face-Based Lab Test AI Report""")
|
|
|
146 |
button = gr.Button("🔍 Run Analysis")
|
147 |
pdf_output = gr.File(label="📄 Download Report")
|
148 |
with gr.Column():
|
149 |
+
note = gr.HTML(label="AI-Predicted Test Results Table")
|
150 |
preview = gr.Image(label="Scan Preview")
|
151 |
|
152 |
button.click(fn=process, inputs=image, outputs=[note, preview, pdf_output])
|