Spaces:
Runtime error
Runtime error
import gradio as gr | |
from gradio.components import Markdown as md | |
from PIL import Image | |
demo = gr.Blocks() | |
io1a = gr.Interface(lambda x: x, gr.Image(), gr.Image()) | |
io1b = gr.Interface(lambda x: x, gr.Image(source="webcam"), gr.Image()) | |
io2a = gr.Interface(lambda x: x, gr.Image(source="canvas"), gr.Image()) | |
io2b = gr.Interface(lambda x: x, gr.Sketchpad(), gr.Image()) | |
io2c = gr.Interface( | |
lambda x: x, gr.Image(source="canvas", shape=(512, 512)), gr.Image() | |
) | |
io3a = gr.Interface( | |
lambda x: [x["mask"], x["image"]], | |
gr.Image(source="upload", tool="sketch"), | |
[gr.Image(), gr.Image()], | |
) | |
io3b = gr.Interface( | |
lambda x: [x["mask"], x["image"]], | |
gr.ImageMask(), | |
[gr.Image(), gr.Image()], | |
) | |
io3b2 = gr.Interface( | |
lambda x: [x["mask"], x["image"]], | |
gr.ImageMask(), | |
[gr.Image(), gr.Image()], | |
) | |
io3b3 = gr.Interface( | |
lambda x: [x["mask"], x["image"]], | |
gr.ImageMask(), | |
[gr.Image(), gr.Image()], | |
) | |
io3c = gr.Interface( | |
lambda x: [x["mask"], x["image"]], | |
gr.Image(source="webcam", tool="sketch"), | |
[gr.Image(), gr.Image()], | |
) | |
io4a = gr.Interface( | |
lambda x: x, gr.Image(source="canvas", tool="color-sketch"), gr.Image() | |
) | |
io4b = gr.Interface(lambda x: x, gr.Paint(), gr.Image()) | |
io5a = gr.Interface( | |
lambda x: x, gr.Image(source="upload", tool="color-sketch"), gr.Image() | |
) | |
io5b = gr.Interface(lambda x: x, gr.ImagePaint(), gr.Image()) | |
io5c = gr.Interface( | |
lambda x: x, gr.Image(source="webcam", tool="color-sketch"), gr.Image() | |
) | |
def save_image(image): | |
image.save("colorede.png") | |
return image | |
img = Image.new("RGB", (512, 512), (150, 150, 150)) | |
img.save("image.png", "PNG") | |
io5d = gr.Interface( | |
save_image, | |
gr.Image("image.png", source="upload", tool="color-sketch", type="pil"), | |
gr.Image(), | |
) | |
with demo: | |
md("# Different Ways to Use the Image Input Component") | |
md( | |
"**1a. Standalone Image Upload: `gr.Interface(lambda x: x, gr.Image(), gr.Image())`**" | |
) | |
io1a.render() | |
md( | |
"**1b. Standalone Image from Webcam: `gr.Interface(lambda x: x, gr.Image(source='webcam'), gr.Image())`**" | |
) | |
io1b.render() | |
md( | |
"**2a. Black and White Sketchpad: `gr.Interface(lambda x: x, gr.Image(source='canvas'), gr.Image())`**" | |
) | |
io2a.render() | |
md( | |
"**2b. Black and White Sketchpad: `gr.Interface(lambda x: x, gr.Sketchpad(), gr.Image())`**" | |
) | |
io2b.render() | |
md("**2c. Black and White Sketchpad with `shape=(512,512)`**") | |
io2c.render() | |
md("**3a. Binary Mask with image upload:**") | |
md( | |
"""```python | |
gr.Interface( | |
lambda x: [x['mask'], x['image']], | |
gr.Image(source='upload', tool='sketch'), | |
[gr.Image(), gr.Image()], | |
) | |
``` | |
""" | |
) | |
io3a.render() | |
md("**3b. Binary Mask with image upload:**") | |
md( | |
"""```python | |
gr.Interface( | |
lambda x: [x['mask'], x['image']], | |
gr.ImageMask(), | |
[gr.Image(), gr.Image()], | |
) | |
``` | |
""" | |
) | |
io3b.render() | |
md("**3c. Binary Mask with webcam upload:**") | |
md( | |
"""```python | |
gr.Interface( | |
lambda x: [x['mask'], x['image']], | |
gr.Image(source='webcam', tool='sketch'), | |
[gr.Image(), gr.Image()], | |
) | |
``` | |
""" | |
) | |
io3c.render() | |
md( | |
"**4a. Color Sketchpad: `gr.Interface(lambda x: x, gr.Image(source='canvas', tool='color-sketch'), gr.Image())`**" | |
) | |
io4a.render() | |
md("**4b. Color Sketchpad: `gr.Interface(lambda x: x, gr.Paint(), gr.Image())`**") | |
io4b.render() | |
md( | |
"**5a. Color Sketchpad with image upload: `gr.Interface(lambda x: x, gr.Image(source='upload', tool='color-sketch'), gr.Image())`**" | |
) | |
io5a.render() | |
md( | |
"**5b. Color Sketchpad with image upload: `gr.Interface(lambda x: x, gr.ImagePaint(), gr.Image())`**" | |
) | |
io5b.render() | |
md( | |
"**5c. Color Sketchpad with webcam upload: `gr.Interface(lambda x: x, gr.Image(source='webcam', tool='color-sketch'), gr.Image())`**" | |
) | |
io5c.render() | |
md("**Tabs**") | |
with gr.Tab("One"): | |
io3b2.render() | |
with gr.Tab("Two"): | |
io3b3.render() | |
md("**5d. Color Sketchpad with image upload and a default images**") | |
io5d.render() | |
if __name__ == "__main__": | |
demo.launch() | |