File size: 3,033 Bytes
fef9706 d5b91d6 fef9706 d5b91d6 d8bcdea d5b91d6 d8bcdea d5b91d6 d8bcdea d5b91d6 de73260 511526f d5b91d6 511526f de73260 511526f dd98268 87bb072 dd98268 d5b91d6 511526f d5b91d6 1864522 d5b91d6 511526f d5b91d6 dd98268 de73260 dd98268 d5b91d6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
import gradio as gr
from tensorflow.keras.models import load_model
import numpy as np
from PIL import Image
model = load_model('xray_image_classifier_model.keras')
def predict(image):
img = image.resize((150, 150))
img_array = np.array(img) / 255.0
img_array = np.expand_dims(img_array, axis=0)
prediction = model.predict(img_array)
predicted_class = 'Pneumonia' if prediction > 0.5 else 'Normal'
return predicted_class
css = """
.gradio-container {
background-color: #f5f5f5;
font-family: Arial, sans-serif;
}
.gr-button {
background-color: #007bff; /* Same color as the heading */
color: white;
border-radius: 5px;
font-size: 16px;
}
.gr-button:hover {
background-color: #0056b3; /* Slightly darker shade for hover */
}
.gr-textbox, .gr-image {
border: 2px dashed #007bff;
padding: 20px;
border-radius: 10px;
background-color: #ffffff;
}
.gr-box-text {
color: #007bff;
font-size: 22px;
font-weight: bold;
text-align: center;
}
h1 {
font-size: 36px;
color: #007bff; /* Color for heading */
text-align: center;
}
p {
font-size: 20px;
color: #333;
text-align: center;
}
"""
description = """
**Automated Pneumonia Detection via Chest X-ray Classification**
This model leverages deep learning techniques to classify chest X-ray images as either 'Pneumonia' or 'Normal.' By utilizing the InceptionV3 architecture for transfer learning, combined with data preprocessing and augmentation, the model aims to deliver powerful performance in medical image analysis. It enhances the automation of diagnostic processes, aiding in the detection of pneumonia with high accuracy.
**Technologies Employed:**
- TensorFlow & Keras for model development
- InceptionV3 for transfer learning
- Numpy, Pandas, and Matplotlib for data handling and visualization
- Flask and Gradio for deployment and user interaction
**Sample Images:**
To test the model, select one of the sample images provided below. Click on an image and then press the "Initiate Diagnostic Analysis" button to receive the results.
"""
examples = [
["samples/normal_xray1.png"],
["samples/pneumonia_xray1.png"],
]
with gr.Blocks(css=css) as interface:
gr.Markdown("<h1>Automated Pneumonia Detection via Chest X-ray Classification</h1>")
gr.Markdown("<p>Upload an X-ray image to detect pneumonia.</p>")
with gr.Row():
image_input = gr.Image(label="Drop Image Here", type="pil", elem_classes=["gr-image", "gr-box-text"])
output = gr.Textbox(label="Model Analysis Output", elem_classes=["gr-textbox", "gr-box-text"])
submit_btn = gr.Button("Initiate Diagnostic Analysis", elem_classes=["gr-button"])
submit_btn.click(fn=predict, inputs=image_input, outputs=output)
gr.Examples(examples=examples, inputs=image_input)
gr.Markdown(description)
interface.launch()
|