CoolFace
Apppublic

davidmasip/glaucoma-gr

sourceHugging Faceupdated 4y agoView on Hugging Face
1likes
app.py46 linesDownload Raw Back to root
1import math2 3import gradio as gr4import tensorflow as tf5 6configs = [7    {8        "model": "my_model_2.h5", "size": 5129    },10    {11        "model": "my_model.h5", "size": 22412    },13]14 15config = configs[0]16 17new_model = tf.keras.models.load_model(config["model"])18 19def classify_image(inp):20    inp = inp.reshape((-1, config["size"], config["size"], 3))21    prediction = new_model.predict(inp).flatten()22    print(prediction)23    if len(prediction) > 1:24        probability = 100 * math.exp(prediction[0]) / (math.exp(prediction[0]) + math.exp(prediction[1]))25    else:26        probability = round(100. / (1 + math.exp(-prediction[0])), 2)27    if probability > 45:28        return "Glaucoma", probability29    if probability > 25:30        return "Unclear", probability31    return "Not glaucoma", probability32 33 34gr.Interface(35    fn=classify_image, 36    inputs=gr.inputs.Image(shape=(config["size"], config["size"])),37    outputs=[38    gr.outputs.Textbox(label="Label"),39    gr.outputs.Textbox(label="Glaucoma probability (0 - 100)"),40    ],41    examples=["001.jpg", "002.jpg", "225.jpg"],42    flagging_options=["Correct label", "Incorrect label"],43    allow_flagging="manual",44).launch()45 46