TBCADx / app.py
Ekins Kuuzie
Update app.py
98f9207 verified
raw
history blame
1.56 kB
##importing the libraries
import numpy as np
import pandas as pd
from PIL import Image
import tensorflow as tf
import os
from tensorflow.keras.models import load_model
import gradio as gr
# Load your trained model
model = load_model('tb_pretrained.h5')
### Preprocess the new image
def predict_image(test_image):
# img = cv2.imread(test_image)
img = np.array(test_image)
image_1 = tf.image.resize(img, (256,256))
image_processed = np.expand_dims(image_1/256, 0)
##prediction
yhat = model.predict(image_processed)
## setting a threshold
if yhat[0][1] > 0.70:
return (f'There is {round((yhat[0][1])*100,2)}% chance of the image being normal')
elif yhat[0][0] > 0.9:
return (f'There is {round((yhat[0][0])*100,2)}% chance of an abnormality either than TB being present')
else:
return (f'There is a chance of TB being present')
platform = gr.Interface( fn = predict_image,
title ="TB CADx",
inputs = "image",
outputs = "label",
description="""This is a computer aided detection tool that helps
clinicians quickly classify chest X-ray images into either normal,
unhealthy but no TB or High chance of TB""",
article = """This tool is for research and by all means not meant to replace
the WHO recommended guidelines on diagnosing TB""" )
platform.launch(inline=True, share=True)