Spaces:
Running
Running
| import gradio as gr | |
| from gradio_client import Client, handle_file | |
| from PIL import Image | |
| from io import BytesIO | |
| import os | |
| import tempfile | |
| def upscale_image(url): | |
| client = Client("doevent/Face-Real-ESRGAN") | |
| result = client.predict( | |
| image=handle_file(url), # Directly pass the image | |
| size="4x", | |
| api_name="/predict" | |
| ) | |
| # print("\nTask Completed!") | |
| # return result | |
| # Read the image from the file path returned by the model | |
| if os.path.exists(result): | |
| with open(result, 'rb') as img_file: | |
| img_data = img_file.read() | |
| # Convert result to PNG | |
| img = Image.open(BytesIO(img_data)) | |
| # Save the converted image to a temporary file | |
| with tempfile.NamedTemporaryFile(delete=False, suffix='.jpg') as temp_file: | |
| img.save(temp_file, format="JPEG", quality=95) | |
| temp_file_path = temp_file.name | |
| # Optionally, delete the temp file after processing (you can remove this line if not needed) | |
| os.remove(result) | |
| print("\nTask Completed!") | |
| return temp_file_path | |
| app = gr.Interface(upscale_image, | |
| inputs = [gr.Textbox(label="Url")], | |
| outputs = [gr.Image(label="Upscaled Image", format='png')]) | |
| app.launch(debug=True) | |