openpose / app.py
aiunivers's picture
Update app.py
d5a9271 verified
raw
history blame
1.11 kB
import gradio as gr
from PIL import Image
from controlnet_aux.open_pose import OpenposeDetector # NEW
from controlnet_aux.depth_anything import DepthAnythingDetector
# Load models
openpose = OpenposeDetector.from_pretrained("lllyasviel/ControlNet")
depth = DepthAnythingDetector.from_pretrained("depth-anything/Depth-Anything-V2")
def process(image: Image.Image):
image = image.convert("RGB")
result_openpose = openpose(image)
result_depth = depth(image)
if not isinstance(result_openpose, Image.Image):
result_openpose = Image.fromarray(result_openpose)
if not isinstance(result_depth, Image.Image):
result_depth = Image.fromarray(result_depth)
return result_openpose, result_depth
demo = gr.Interface(
fn=process,
inputs=gr.Image(type="pil", label="Upload an image"),
outputs=[
gr.Image(type="pil", label="OpenPose Result"),
gr.Image(type="pil", label="Depth Result"),
],
title="ControlNet Aux Demo",
description="Upload an image and run both OpenPose and Depth Anything."
)
if __name__ == "__main__":
demo.launch()