Pneumonia CNN Inference Space
This Hugging Face Space uses a Keras CNN to classify chest X-ray images as Pneumonia or Normal.
How to Use
- Upload a chest X-ray image (JPEG) using the Gradio interface.
- View the prediction (PNEUMONIA or NORMAL) and probability.
Model Details
- Dataset: chest-xray-pneumonia
- Test Accuracy: ~90.54%
- Model Format: TensorFlow SavedModel
- Classification Report:
precision recall f1-score support
Pneumonia (Class 0) 0.95 0.89 0.92 390
Normal (Class 1) 0.84 0.92 0.88 234
accuracy 0.91 624
macro avg 0.90 0.91 0.90 624
weighted avg 0.91 0.91 0.91 624
Local Inference
import tensorflow as tf
import numpy as np
import cv2
model = tf.saved_model.load("pneumonia_cnn_saved_model")
infer = model.signatures['serving_default']
class_names = ['PNEUMONIA', 'NORMAL']
def preprocess_image(image_path):
img = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE)
img = cv2.resize(img, (150, 150)) / 255.0
img = img.reshape(1, 150, 150, 1).astype(np.float32)
return img
image = preprocess_image("path/to/xray.jpg")
prediction = infer(tf.convert_to_tensor(image))['dense_1'].numpy()
class_id = (prediction > 0.5).astype("int32")[0][0]
print("Prediction: ", class_names[class_id], " Probability: "prediction[0][0]:.4f)
Inference Providers
NEW
This model isn't deployed by any Inference Provider.
🙋
Ask for provider support