"
if test_values["Hemoglobin"] < 13.5:
summary += "
Your hemoglobin is a bit low — this could mean mild anemia. Consider a CBC test and iron supplements.
"
if test_values["Iron"] < 60 or test_values["Ferritin"] < 30:
summary += "
Signs of low iron storage detected. An iron profile blood test is recommended.
"
if test_values["Bilirubin"] > 1.2:
summary += "
Some signs of jaundice were detected. Please consult for a Liver Function Test (LFT).
"
if test_values["HbA1c"] > 5.7:
summary += "
Your HbA1c is slightly elevated — this can signal pre-diabetes. A fasting glucose test may help.
"
if spo2 < 95:
summary += "
Oxygen levels appear below normal. Please recheck with a pulse oximeter if symptoms persist.
"
summary += "
💡 Tip: This is an AI-based screening and should be followed up with a lab visit for confirmation.
"
html_output += summary
html_output += "
"
html_output += "
📞 Book a Lab Test
"
html_output += "
Prefer to get your tests confirmed at a nearby center? Click below to find certified labs in your area.
"
html_output += ""
html_output += "
"
lang_blocks = """
🗣️ Summary in Your Language
Hindi
आपका हीमोग्लोबिन थोड़ा कम है — यह हल्के एनीमिया का संकेत हो सकता है। कृपया CBC और आयरन टेस्ट करवाएं।
लो आयरन स्टोरेज देखा गया है। एक आयरन प्रोफाइल टेस्ट की सिफारिश की जाती है।
जॉन्डिस के लक्षण देखे गए हैं। कृपया LFT करवाएं।
HbA1c थोड़ा बढ़ा हुआ है — यह प्री-डायबिटीज़ का संकेत हो सकता है।
ऑक्सीजन स्तर कम दिख रहा है। पल्स ऑक्सीमीटर से दोबारा जांचें।
Telugu
మీ హిమోగ్లోబిన్ కొంచెం తక్కువగా ఉంది — ఇది తేలికపాటి అనీమియా సూచించవచ్చు. CBC, Iron పరీక్ష చేయించండి.
Iron నిల్వలు తక్కువగా కనిపించాయి. Iron ప్రొఫైల్ బ్లడ్ టెస్ట్ చేయించండి.
జాండీస్ సంకేతాలు గుర్తించబడ్డాయి. LFT చేయించండి.
HbA1c కొంచెం పెరిగింది — ఇది ప్రీ-డయాబెటిస్ సూచించవచ్చు.
ఆక్సిజన్ స్థాయి తక్కువగా ఉంది. తిరిగి పరీక్షించండి.
"""
html_output += lang_blocks
return html_output, frame_rgb
with gr.Blocks() as demo:
gr.Markdown("""
# 🧠 Face-Based Lab Test AI Report
Upload a face photo to infer health diagnostics with AI-based visual markers.
""")
with gr.Row():
with gr.Column(scale=1):
image_input = gr.Image(type="numpy", label="📸 Upload Face Image")
submit_btn = gr.Button("🔍 Analyze")
with gr.Column(scale=2):
result_html = gr.HTML(label="🧪 Health Report Table")
result_image = gr.Image(label="📷 Face Scan Annotated")
submit_btn.click(fn=analyze_face, inputs=image_input, outputs=[result_html, result_image])
gr.Markdown("""
---
✅ Table Format • AI-Powered Prediction • 30 Tests Integrated
""")
demo.launch()