Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| from PIL import Image | |
| from fastai.vision.all import * | |
| import numpy as np | |
| # Model Loading (Choose ONE) | |
| # learner = load_learner('export_2.pkl') # If using exported pickle model | |
| learner = load_learner('model-epoch=119.ckpt') # If using checkpoint | |
| def predict_image(file): | |
| if file.name.endswith('.npz'): | |
| # Load NPZ data | |
| with np.load(file.name) as data: | |
| # Assuming your NPZ file contains an array named 'arr_0' | |
| img_array = data['arr_0'] | |
| # Ensure correct dimensions (e.g., channels last) | |
| # img_array = img_array.transpose((1, 2, 0)) # If needed | |
| img = Image.fromarray(img_array) | |
| else: | |
| # Load regular image files (JPG, PNG, etc.) | |
| img = PILImage.create(file.name) | |
| pred = learner.predict(img) | |
| return pred[0] | |
| def create_interface(): | |
| image_input = gr.File( | |
| label="Upload Image or NPZ", | |
| file_types=[".jpg", ".jpeg", ".png", ".npz"] | |
| ) | |
| output = gr.Text() | |
| iface = gr.Interface( | |
| fn=predict_image, | |
| inputs=image_input, | |
| outputs=output, | |
| title="Medical Image Segmentation", # More informative title | |
| description="Upload an image or NPZ file to segment." # Clear description | |
| ) | |
| return iface | |
| if __name__ == "__main__": | |
| iface = create_interface() | |
| iface.launch(share=True) | |