Spaces:
Runtime error
Runtime error
import gradio as gr | |
import numpy as np | |
import torch | |
import spaces | |
from diffusers import DiffusionPipeline | |
from PIL import Image | |
multi_view_diffusion_pipeline = DiffusionPipeline.from_pretrained( | |
"jkorstad/multi-view-diffusion", | |
custom_pipeline="dylanebert/multi-view-diffusion", | |
torch_dtype=torch.float16, | |
trust_remote_code=True, | |
).to("cuda") | |
def run(image, elevation): | |
image = np.array(image, dtype=np.float32) / 255.0 | |
images = multi_view_diffusion_pipeline( | |
"", image, guidance_scale=5, num_inference_steps=30, elevation=elevation | |
) | |
images = [Image.fromarray((img * 255).astype("uint8")) for img in images] | |
width, height = images[0].size | |
grid_img = Image.new("RGB", (2 * width, 2 * height)) | |
grid_img.paste(images[0], (0, 0)) | |
grid_img.paste(images[1], (width, 0)) | |
grid_img.paste(images[2], (0, height)) | |
grid_img.paste(images[3], (width, height)) | |
return grid_img | |
demo = gr.Interface( | |
title="Multi-View of any image", | |
description="Imagine being able to visualize an object or scene from multiple angles simultaneously. My Multi-View Diffusion Model allows you to do just that. Simply upload an image, select your desired view elevation, and my model will generate a 4-way view of the scene, showing you what it looks like from the front, back, left, and right. Explore New Perspectives. Generate 4-way views of any image, from objects to landscapes. Discover new details and insights from multiple angles. Enhance your understanding of complex scenes and objects. Please note that additional views are generated and will not be exact or always accurate.", | |
fn=run, | |
inputs=[ | |
gr.Image(label="Input Image"), | |
gr.Slider(0, 42, 10, label="Elevation", info="Choose the elevation value for the generated multi view output. A higher value will show the object from a higher elevation.") | |
], | |
outputs=gr.Image(label="Output Image") | |
) | |
demo.launch() |