Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import spaces | |
| import torch | |
| from PIL import Image | |
| import numpy as np | |
| import cv2 | |
| import os | |
| from simple_lama_inpainting import SimpleLama | |
| big_lama_url = os.path.join(os.path.abspath(os.path.dirname(__file__)), 'model/big-lama.pt') | |
| def lama_inpainting(image: np.ndarray, mask: np.ndarray) -> np.ndarray: | |
| os.environ['LAMA_MODEL'] = big_lama_url | |
| lama: SimpleLama = SimpleLama() | |
| res = lama( | |
| Image.fromarray(cv2.cvtColor(image, cv2.COLOR_BGR2RGB)).convert("RGB"), | |
| Image.fromarray(cv2.cvtColor(mask, cv2.COLOR_BGR2RGB)).convert("L"), | |
| ) | |
| return cv2.cvtColor(np.array(res), cv2.COLOR_RGB2BGR) | |
| inpaint = gr.Interface( | |
| fn=lama_inpainting, | |
| inputs=[gr.Image(label="image"), gr.Image(label="mask")], | |
| outputs=gr.Image(), | |
| ) | |
| inpaint.launch() | |