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) | |