vsrinivas's picture
Update app.py
8776e9b verified
Raw
History Blame Contribute Delete
1.05 kB
from transformers import pipeline
from PIL import Image
import torch
import numpy as np
import gradio as gr
depth_estimator = pipeline(task="depth-estimation", model="Intel/dpt-hybrid-midas")
def generate_depth_image(input_image):
out = depth_estimator(input_image)
# resize the prediction
prediction = torch.nn.functional.interpolate(
out["predicted_depth"].unsqueeze(1),
size=input_image.size[::-1],
mode="bicubic",
align_corners=False,
)
# normalize the prediction
output = prediction.squeeze().numpy()
formatted = (output * 255 / np.max(output)).astype("uint8")
depth = Image.fromarray(formatted)
return depth
demo = gr.Interface(title = "Depth Estimation of the Detected Objects in the Image - Test & Demo App by Srinivas.v..",
description='Upload an image that has some vivid foreground objects and submit',
fn = generate_depth_image, inputs=gr.Image(type='pil'), outputs=gr.Image(type='pil'))
demo.launch(share=True,debug=True)